ARTICLE DETAIL

资讯详情

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

Claude Code 扩展点怎么选:CLAUDE.md、Skills、subagents、hooks、MCP 与 plugins 的配置骨架与验证

Claude Code 扩展点怎么选:CLAUDE.md、Skills、subagents、hooks、MCP 与 plugins 的配置骨架与验证 1. 先搞清楚这六类扩展到底插在哪Claude Code 的扩展机制经常被混在一起讲但它们在代理循环里插入的位置完全不同。你可以把一次会话想象成一条流水线会话启动 → 加载上下文 → 模型思考 → 调用工具 → 执行动作 → 返回结果。CLAUDE.md 插在「加载上下文」这一步每个会话都会读Skills 是模型在思考时按需调用的知识包subagents 是模型决定「这件事我自己干太乱派个分身去干」时开出的隔离循环hooks 挂在生命周期事件上比如文件编辑后、工具调用前属于后台自动化MCP 是把外部服务接成工具让模型能查数据库、发消息plugins 则是把上面这些东西打包分发。选型的核心判断只有一句话这件事是「每次都要知道」还是「用到才需要」是「模型自己决定」还是「事件强制触发」每次都要知道的规则写进 CLAUDE.md可复用的工作流写成 Skill需要隔离上下文或并行跑的交给 subagent必须在某个事件上无条件执行的用 hook要连外部系统的走 MCP要分发给团队或跨项目复用的用 plugin 打包。我见过最常见的误用是把一大堆项目规范全塞进 CLAUDE.md结果每次会话都吃掉几千 token模型还容易忽略重点。另一个极端是把该强制执行的检查写成 Skill指望模型每次都记得调用结果漏掉。下面按这六类逐个给骨架和验证动作最后讲怎么用 TaoToken 统一 Key 通道。2. TaoToken 前置统一 Key 与 API 通道在配这些扩展之前先把模型通道理顺。Claude Code 默认走 Anthropic 官方端点但如果你希望用统一的 Key 管理、方便切换模型或做用量观察可以把它指向 TaoToken 的兼容通道。TaoToken 提供的是标准 API 接入官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 基址是 https://taotoken.net/api 。你需要先拿到一个 API Key。登录后进控制台在 API Keys 页面创建一个复制出来。这个 Key 后面会写进环境变量Claude Code 和 MCP 配置都会读它。# 写入 shell 配置按你实际用的 shell 选一个 echo export ANTHROPIC_BASE_URLhttps://taotoken.net/api ~/.bashrc echo export ANTHROPIC_API_KEYsk-你的TaoToken密钥 ~/.bashrc source ~/.bashrc # 验证环境变量生效 echo $ANTHROPIC_BASE_URL echo $ANTHROPIC_API_KEY | head -c 8注意ANTHROPIC_BASE_URL不要带末尾斜杠也不要带 UTM 参数UTM 只用于官网跳转统计。配好后 Claude Code 启动时会读这两个变量。如果你用的是 zsh把~/.bashrc换成~/.zshrc。提示Key 不要提交进 Git。建议放在 shell 的私有配置里或者用.env并加进.gitignore。3. 六类扩展的配置骨架与最小验证3.1 CLAUDE.md每次会话都加载的持久上下文CLAUDE.md 放在项目根目录Claude Code 启动时会自动读取。它适合写「始终执行」的规则包管理器用哪个、提交前跑什么、目录结构约定。# 项目约定 ## 包管理 - 使用 pnpm不要用 npm 或 yarn - 安装依赖pnpm add pkg ## 提交前 - 运行 pnpm lint 和 pnpm test - 提交信息用中文格式类型: 描述 ## 目录 - 源码在 src/测试在 tests/ - 不要修改 generated/ 下的文件验证动作在项目里启动 Claude Code直接问「这个项目用什么包管理器」它应该能答出 pnpm。如果答不出检查 CLAUDE.md 是否在启动目录下。3.2 Skills可复用的知识与工作流Skill 是一个 markdown 文件放在.claude/skills/目录下文件名就是调用名。你可以用/deploy这样的命令手动调用模型也会在相关时自动加载。--- name: deploy description: 部署清单包含构建、测试、发布步骤 --- # 部署流程 1. 运行 pnpm build 2. 运行 pnpm test全部通过才继续 3. 更新 version 字段 4. 执行 pnpm publish 5. 在 CHANGELOG.md 追加本次变更验证动作在会话里输入/deploy看它是否按步骤执行。如果没反应确认文件路径是.claude/skills/deploy.md且 frontmatter 格式正确。3.3 subagents隔离上下文的专用工作者subagent 适合「读很多文件但只返回关键结论」的任务。配置放在.claude/agents/下每个 agent 一个文件。--- name: researcher description: 研究代码库中某个功能的实现只返回关键发现 tools: Read, Grep, Glob --- 你是一个代码研究员。收到任务后在代码库中搜索相关实现 阅读必要文件最后只返回 - 涉及的文件路径 - 核心逻辑摘要不超过 200 字 - 潜在风险点 不要返回大段代码不要修改任何文件。验证动作让主会话调用这个 subagent 去研究某个功能观察返回结果是否只有摘要而不是一堆文件内容。3.4 hooks生命周期事件上的强制自动化hooks 配在.claude/settings.json里挂在事件上比如文件编辑后自动跑 lint。这是「必须执行」的自动化不依赖模型记性。{ hooks: { PostToolUse: [ { matcher: Edit|Write, hooks: [ { type: command, command: pnpm eslint --fix $CLAUDE_FILE_PATH } ] } ] } }验证动作让 Claude Code 编辑一个.ts文件故意留个格式问题看保存后是否自动被 eslint 修掉。如果没触发检查 matcher 是否匹配工具名以及命令里的文件路径变量是否正确。3.5 MCP连接外部服务MCP 让模型能调用外部工具。配置在.claude/settings.json或全局配置里指向一个 MCP server。{ mcpServers: { filesystem: { command: npx, args: [-y, modelcontextprotocol/server-filesystem, /path/to/allowed/dir] } } }验证动作启动 Claude Code 后问「列出 MCP 可用的工具」看 filesystem 相关工具是否出现。如果没出现检查 npx 是否能正常拉包以及路径是否有权限。3.6 plugins打包分发plugin 是把 CLAUDE.md、Skills、subagents、hooks、MCP 配置打成一个包方便团队共享。结构大致如下my-plugin/ ├── plugin.json ├── CLAUDE.md ├── skills/ │ └── deploy.md ├── agents/ │ └── researcher.md └── settings.jsonplugin.json里声明名称、版本、包含哪些组件。验证动作把 plugin 目录放到.claude/plugins/下重启会话看里面的 Skill 是否能被/调用出来。4. 验证请求与成功结果配完上面这些做一次端到端验证。先确认通道通curl -s https://taotoken.net/api/v1/messages \ -H x-api-key: $ANTHROPIC_API_KEY \ -H anthropic-version: 2023-06-01 \ -H content-type: application/json \ -d { model: claude-sonnet-4-20250514, max_tokens: 64, messages: [{role: user, content: 回复 OK}] }返回里能看到content字段带文本说明 Key 和基址都对。然后在项目里启动 Claude Code依次验证问项目约定CLAUDE.md 生效、输入/deploySkill 生效、让 subagent 研究一个功能隔离上下文生效、编辑文件看 lint 是否自动跑hook 生效、问 MCP 工具列表MCP 生效。全部通过说明六类扩展的骨架都立住了。5. 本篇常见错排查CLAUDE.md 不生效最常见是文件不在启动目录或者文件名大小写不对。Claude Code 只读当前工作目录及父目录的 CLAUDE.md子目录里的不会自动加载。Skill 调不出来检查.claude/skills/路径以及 frontmatter 的name和description是否都有。缺 description 时模型不会自动加载只能手动/调用。hook 不触发matcher 写的是工具名不是文件类型。Edit|Write匹配编辑和写入工具如果你用的是别的工具名要对应改。命令里的$CLAUDE_FILE_PATH变量在部分版本里叫法不同先用echo打出来确认。MCP 连不上先单独在终端跑一遍npx命令确认包能拉下来、路径有权限。MCP server 启动失败时 Claude Code 通常只在日志里提示不会弹窗。subagent 返回一堆代码说明它的 prompt 没约束好。在 agent 文件里明确写「只返回摘要不要返回代码块」并限制可用工具去掉 Write 和 Edit。Key 报 401检查ANTHROPIC_API_KEY是否有多余空格或换行以及ANTHROPIC_BASE_URL是否误带了 UTM 参数。基址只到/api后面不要加/v1。6. 按场景选型与接入入口回到选型本身给你一张对照表需求选什么关键判断每次会话都要知道的规则CLAUDE.md不写会出错且每次都相关可复用的工作流Skill用到才需要可手动或自动触发隔离上下文、并行任务subagent读多写少只要结论事件强制自动化hook不能靠模型记性必须无条件跑连外部服务MCP需要查库、发消息、控浏览器团队分发plugin上面几类要打包共享通道层面如果你要长期跑编码任务或 Agent 工作流建议用 Coding Plan 统一管理用量入口在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 只是想先验证模型对话是否通用模型对话页面更快地址是 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 接入细节和参数说明看文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。先把 Key 和基址配好再按上面的骨架逐个加扩展比一上来全塞进去稳得多。
返回列表