finchtoys/finch-releases/community-manager
Claude Code and agent skill by finchtoys/finch-releases
- community
Checking that the SKILL.md file is still in the repository.
管理 finch-releases 仓库 community/ 目录下的官方扩展和技能推荐索引。 当用户提到「管理社区推荐」「更新扩展列表」「添加新扩展到社区」「更新技能索引」「同步中英文注册表」 「发布推荐配置」「社区扩展管理」「官方技能列表」等涉及 community/*.json 的操作时触发此 skill。 也适用于用户说「加一个新的社区扩展到推荐列表」「把这个技能放到社区推荐里」「更新一下 MCP Bridge 的描述」 「把 XX 标记为已弃用」「检查一下社区推荐配置有没有问题」等涉及推荐清单维护的场景。 此 skill 只管理 JSON 注册文件本身,不涉及 extensions/* 和 skills/* 的源码文件。
Install
npx vskill@latest install finchtoys/finch-releases/community-managerSKILL.md
Community Manager — finch-releases 推荐索引管理
核心定位
管理 community/ 目录下的 4 个 JSON 注册文件,这些文件是 Finch App 市场和社区网站的数据源:
| 文件 | 内容 | 用途 | |
|---|---|---|---|
community/mini-tools.json | 小工具推荐索引(英文) | Finch App 小工具市场数据源 | |
community/skills.json | 技能推荐索引(英文) | Finch 技能市场数据源 | |
community/mini-tools.zh-CN.json | 小工具中文覆盖 | 中文界面降级回退到英文 | |
community/skills.zh-CN.json | 技能中文覆盖 | 中文界面降级回退到英文 |
这些文件通过 Cloudflare Worker 发布到 community.finchwork.app。Worker 源码位于相邻项目的 ../finch/scripts/community.finchwork.app/worker.js;发布后必须执行本 skill 的「发布与缓存刷新」流程,不能只等待 TTL。
文件格式规范
mini-tools.json 条目 schema
skills.json 条目 schema
zh-CN 覆盖条目 schema(只含用户可见字段)
分类标签固定列表
productivity(效率) | developer(开发) | creative(创意) | research(研究) | finance(金融) | commerce(电商) | education(教育)
格式规则
- 2 空格缩进,条目按
id字母序排列 - 英文文件保留完整字段,中文覆盖只含
id/name/description - 末尾换行,不允许尾随逗号
工作目录
发布与缓存刷新
完成 JSON 修改并通过 validate.py 后,按以下流程发布;不要只推送 GitHub 后等待缓存过期。
- 提交并推送
community/*.json变更到main。 - 编辑
../finch/scripts/community.finchwork.app/worker.js,将CACHE_VERSION递增(例如v2→v3)。版本化 cache key 会让所有 PoP 绕过旧的caches.default条目;cache.delete()只保证当前 PoP 清理,不能作为全局刷新方案。 - 部署 Worker。当前 Worker 名称为
fancy-feather-a91f:
``bash npx wrangler deploy ../finch/scripts/community.finchwork.app/worker.js \ --name fancy-feather-a91f \ --compatibility-date 2026-08-28 ``
部署前确认已运行 npx wrangler login 或在安全环境设置了 CLOUDFLARE_API_TOKEN。不要把 token 写入仓库。
- 调用 Worker 的受保护 purge 接口,并请求索引完成预热。
PURGE_SECRET必须同时配置在 Cloudflare Worker 的 Secret variables 与本机 `finch-releases/.env`;.env必须被 Git 忽略,绝不在聊天、日志或提交中暴露。.env可能包含签名等非 Shell 格式字段,不要 `source .env`。- 仅在进程内读取
PURGE_SECRET;不要输出、记录或提交该密钥。
``bash node -e ' const fs = require("node:fs"); const { execFileSync } = require("node:child_process"); const line = fs.readFileSync(".env", "utf8").split(/\r?\n/) .find((value) => value.startsWith("PURGE_SECRET=")); if (!line) throw new Error("PURGE_SECRET is not configured"); const raw = line.slice("PURGE_SECRET=".length).trim(); const quoted = raw[0] === "\"" || raw.charCodeAt(0) === 39; const secret = quoted && raw.at(-1) === raw[0] ? raw.slice(1, -1) : raw; execFileSync("curl", [ "-sS", "--fail-with-body", "-X", "POST", "https://community.finchwork.app/purge?file=mini-tools.json", "-H", Authorization: Bearer ${secret}, ], { stdio: "inherit" }); ' ``
新 CACHE_VERSION 首次 purge 返回 "deleted": false 属正常;接着访问索引,确认 X-Cache: MISS 且内容已更新,即完成预热。若返回 401,检查本机 .env 与 Cloudflare Secret 是否完全一致并已重新部署;若返回 404,说明线上 Worker 尚未部署包含 /purge 路由的版本。
- 验证线上内容。首次响应应为
X-Cache: MISS,之后访问会变为HIT:
``bash curl -sS -D - 'https://community.finchwork.app/mini-tools.json' | \ grep -E 'X-Cache|"id": "markdown-editor"' ``
Worker 的 JSON 缓存只保留caches.default一层;不要为 JSON 上游fetch()再设置cf.cacheTtl,否则 purge 后仍可能读取到旧的上游缓存。
操作指令
概览
| 操作 | 用户可能的说法 | 使用脚本 | |
|---|---|---|---|
| 查看 | 「看看现在有什么扩展」「列出所有技能」「显示 mcp 的详情」 | 直接 Read | |
| 新增 | 「加一个新扩展到推荐」「把这个技能加进去」 | manage_registry.py add | |
| 更新 | 「改一下 xx 的描述」「把 categories 改成 xx」 | manage_registry.py update | |
| 弃用 | 「把 xx 标记为不再推荐」「下架 xx」 | manage_registry.py deprecate | |
| 恢复 | 「取消弃用 xx」 | manage_registry.py undeprecate | |
| 校验 | 「检查一下配置文件有没有问题」 | validate.py |
为什么用脚本而不是直接 Edit JSON? JSON 数组的 Edit 操作容易破坏格式(尾逗号、缩进不对、字母序错乱)。用 Python 脚本保证写入格式一致,自动排序。查看和展示变更摘要时用 Read 工具即可。
前置:收集用户意图
每次操作前先 Read 相关 JSON 文件了解当前状态,然后和用户确认字段。不要跳过收集环节直接写入。
操作 1:查看(使用 Read 工具)
展示格式示例:
操作 2:新增(使用脚本)
交互流程:
- Read 当前文件,确认现有条目
- 逐项收集用户输入,必须同时询问中英文
- 必填:
id,version,name(英),author,description(英),repo version优先从extensions/<id>/package.json#version读取,社区扩展查 npm registry 获取- 中文必填:
name_zh,description_zh - 选填:
npm(仅扩展),extensionType(默认community),installScope,categories,featured - 校验 id 格式(小写字母、数字、连字符)和唯一性
- 执行脚本
操作 3:更新(使用脚本)
支持的更新字段:
- 英文:
version,name,author,description,repo,npm,extensionType,installScope,categories,featured - 中文:
name_zh,description_zh(传入这两个字段会自动更新或创建 zh-CN 条目)
操作 4:删除(使用脚本)
Finch 端暂未支持 deprecated 过滤,所以「拿掉」= 直接删除条目(包括 zh-CN 覆盖)。等 Finch 支持 deprecated 过滤后再改为软删除方案。
操作 5:校验(使用脚本)
校验内容:
- JSON 合法性 — 每个文件是否能被解析
- 必填字段 — mini-tools: id/version/name/author/description/repo;skills: id/name/author/description/repo
- id 格式 — 小写字母、数字、连字符
- id 唯一性 — 无重复 id
- 分类合规 — categories 只使用固定 7 个分类 ID
- 字母序 — 条目按 id 排序
- 中文覆盖完整 — 每个英文条目有对应 zh-CN 条目
- 中文覆盖无多余 — zh-CN 中无已移除的条目
- 扩展 id 一致性 — 检查 id 是否与
extensions/<id>/package.json#finch.id匹配
操作 6:同步中文覆盖(交互式)
当英文文件新增了条目但 zh-CN 还没跟随时执行:
- 运行
validate.py找出缺失的 zh-CN 条目 - 逐条询问用户对应的中文 name 和 description
- 用
manage_registry.py update逐条写入
变更摘要规范
每次修改后,在对话中输出以下格式的摘要:
重要原则
- community/*.json 是 Finch App 市场的数据源,格式错误会导致 App 端解析失败。每次修改后用
validate.py自我校验。 - zh-CN 覆盖是可选降级,新增条目时必须同时写入。更新纯技术字段(repo, npm 等)不需要同步中文。
- deprecated 是软删除,保留条目但 Finch 端过滤不显示。永远不要删除条目。
- 字母序让 diff 清晰可读,脚本自动处理排序,无需手动插入位置。
- 变更摘要是给用户的,不是 commits,用户据此决定是否 git commit。
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.finch/skills/community-manager/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/finchtoys/finch-releases/community-manager)