ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

一天一个开源项目(第69篇):second-brain-skills - 用 TaoToken 统一 Key 把 Claude Code 变成知识工作专家的 Skill 工具集

一天一个开源项目(第69篇):second-brain-skills - 用 TaoToken 统一 Key 把 Claude Code 变成知识工作专家的 Skill 工具集 1. 为什么我把 Claude Code 改造成了知识工作台Claude Code 默认是个很称职的编程助手读代码、改 Bug、跑测试都顺手。但如果你同时还要写技术文档、做演示汇报、维护 SOP、剪产品视频就会发现它的默认能力只覆盖了工作的一小块。每次都要重新贴一遍品牌规范、重新描述文档结构context window 被大量重复信息占满真正干活的空间反而被压缩。second-brain-skills 这个开源项目解决的就是这个问题。它由 AI Agent 工程师 Cole Medin 开源核心思路是把 Claude Code 的 Skill 机制用起来通过一套精心设计的目录结构和 Markdown 指令文件让 AI 在需要某个专业能力时才动态加载对应的指令、模板和工具。项目内置了品牌生成、PPT 制作、SOP 文档、Skill 创建向导、MCP 客户端、Remotion 视频生成六类 Skill覆盖了独立开发者从内容创作到技术文档的大部分场景。它适合谁一人公司、独立开发者、需要同时处理技术和内容的技术写作者以及想把 Claude Code 从编程工具升级成通用知识工作平台的深度用户。这篇文章会带你从零把 second-brain-skills 跑起来并用 TaoToken 统一 Key 打通 API 通道最后验证一条完整的知识问答链路。2. TaoToken 前置统一 Key 与 API 通道在动手之前先把 API 通道理顺。Claude Code 以及它调用的 MCP 服务都需要访问模型接口如果每个服务各配一套 Key管理起来会很乱。TaoToken 的作用就是提供一个统一的 API 入口你只需要维护一份 Key就能让 Claude Code 和各类 MCP 服务走同一条通道。具体操作分三步。第一步访问官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 注册账号。第二步进入控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 创建一个 API Key。第三步把 Key 填到 Claude Code 的配置里。这里有个容易踩的坑Claude Code 的配置文件和 MCP 服务的配置文件是分开的很多人只改了其中一个结果 Skill 能触发但 MCP 调用报 401。下面两节我会把两份配置都给出来。注意API Key 属于敏感凭证不要提交到 Git 仓库。建议放在环境变量或本地未跟踪的配置文件里。如果你还没决定用哪个模型可以先到模型对话 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel_chatutm_campaignrewrite 页面测试一下接口是否通确认能正常返回再往下走。3. 可复制配置settings.json 与 config.toml 骨架3.1 克隆项目与目录结构先把项目拉下来看清楚它的组织方式git clone https://github.com/coleam00/second-brain-skills.git cd second-brain-skills每个 Skill 遵循统一的目录约定.claude/skills/ └── skill-name/ ├── SKILL.md # 必须触发条件 工作流指令 ├── scripts/ # 可选可执行脚本 ├── references/ # 可选参考文档运行时按需加载 └── assets/ # 可选模板文件不自动进 contextSKILL.md 的 YAML frontmatter 里description字段是 Claude Code 决定何时激活这个 Skill 的关键相当于触发词典。正文部分写详细工作流只有被触发时才加载进上下文。3.2 Claude Code 的 settings.jsonClaude Code 的配置文件通常放在~/.claude/settings.json把 API 通道指向 TaoToken{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-your-taotoken-key }, permissions: { allow: [ Read, Write, Bash(git:*), Bash(python:*) ] } }ANTHROPIC_BASE_URL指向 TaoToken 的 API 地址ANTHROPIC_API_KEY填你在控制台创建的 Key。这样 Claude Code 的所有模型请求都走统一通道。3.3 MCP 服务的 config.tomlMCP Client Skill 需要一份独立的配置。项目里给了示例复制一份再改cd .claude/skills/mcp-client/references/ cp example-mcp-config.json mcp-config.json如果你更习惯 TOML 格式可以这样写[mcp_servers.sequential-thinking] transport stdio command npx args [-y, modelcontextprotocol/server-sequential-thinking] [mcp_servers.github] transport stdio command npx args [-y, modelcontextprotocol/server-github] env { GITHUB_PERSONAL_ACCESS_TOKEN your-github-token } [mcp_servers.zapier] transport sse url https://mcp.zapier.com/api/v1/connect headers { Authorization Bearer your-zapier-key }MCP Client 支持四种传输协议stdio 走本地子进程SSE 走服务器推送事件Streamable HTTP 走 HTTP 流式传输FastMCP 走 Bearer Token 认证。配置里通过transport字段自动选择你不需要改代码。3.4 安装 Python 依赖MCP Client 依赖 Python 的 mcp 和 fastmcp 库pip install mcp fastmcp装完后可以用python -c import mcp; print(mcp.__version__)确认版本正常输出。4. 验证请求跑通一条知识问答链路配置写完了得验证它真的能跑。我设计了一条从知识库读取到 MCP 调用的完整链路。4.1 准备 Markdown 知识库在项目根目录建一个知识库文件夹knowledge/ ├── brand/ │ └── tone-of-voice.md ├── docs/ │ └── deploy-runbook.md └── index.mdindex.md写一个简单的索引告诉 Skill 有哪些知识可用# 知识库索引 - brand/tone-of-voice.md品牌声音与语调规范 - docs/deploy-runbook.mdDocker 部署操作手册4.2 触发 Skill 做一次知识问答进入项目目录打开 Claude Codecd second-brain-skills claude在对话里输入自然语言触发读取 knowledge/index.md然后根据 docs/deploy-runbook.md 的内容 帮我总结 Docker 部署的三个关键步骤并检查是否有遗漏的前置条件。Claude Code 会先读取索引文件识别到需要文档处理能力激活对应的 Skill再按需加载deploy-runbook.md。整个过程你不需要手动指定加载哪个文件。4.3 验证 MCP 调用再测一条 MCP 链路连接 sequential-thinking MCP帮我拆解把 second-brain-skills 接入 CI 流程这个任务。如果配置正确你会看到 Claude Code 调用 MCP 服务并返回结构化的任务拆解。这一步能同时验证 API 通道和 MCP 配置是否都通了。4.4 成功结果长什么样一次正常的调用应该满足三个特征Skill 被正确触发你能看到它读取了对应的 SKILL.md、知识文件按需加载不是一次性全读进来、MCP 返回结构化结果。如果这三点都满足说明整条链路打通了。5. 本篇常见错排查清单配置过程中最容易出问题的地方集中在 API 通道和 MCP 连接上下面是我整理的高频报错对照。报错现象可能原因排查动作401 UnauthorizedAPI Key 错误或未生效检查 settings.json 里的 Key 是否与控制台一致Skill 不触发description 字段描述不清检查 SKILL.md 的 frontmatter确保触发词覆盖你的说法MCP 连接超时transport 配置与服务器不匹配确认 stdio 用 commandSSE 用 urlcontext 爆满知识文件被全量加载检查是否误把大文件放在 assets 而非 referencesnpx 命令找不到Node.js 未安装或版本过低运行node -v确认版本建议 18 以上Python 导入失败mcp 库未装或虚拟环境不对重新pip install mcp fastmcp并确认解释器路径几个补充说明。第一401 报错最常见的原因是 Key 里带了多余空格复制时容易带上。第二Skill 不触发往往不是配置问题而是你的自然语言说法和 description 里的触发词差距太大可以适当补充同义词。第三MCP 的 stdio 模式需要本地有对应的命令行工具比如 GitHub MCP 需要 npxZapier MCP 需要网络可达。如果排查完还是不通可以到接入文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 对照接口说明确认 base_url 和认证方式没有写错。6. 把 Skill 用成长期工作流跑通一次不算完真正有价值的是把它变成日常习惯。我的做法是给每个高频场景固定一个 Skill写技术文档走 SOP Creator做汇报走 PPTX Generator剪产品视频走 Remotion Video Creator。每次只需要用自然语言描述需求Skill 会自动加载对应的模板和规范。如果你打算长期用 Claude Code 做编码和 Agent 任务可以了解一下 Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite它针对长时间编码场景做了通道优化。日常管理 Key 和查看用量到 API Keys https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite 页面操作就行。最后分享一个实用技巧新建 Skill 时先写 description 再写正文。description 决定了 Skill 会不会被触发正文决定了触发后干得好不好。很多人反过来写结果 Skill 写得很详细却从来不触发。把触发词想清楚比把工作流写长更重要。
返回列表