机制分层与工具设计
本页由 [[wiki/concepts/Skills、Agents 与工具设计]] 拆分而来(2026-07-03),内容原样搬移。
CLAUDE.md 分层治理与 Skill 准入判断
CLAUDE.md 不是越全越好——每行都有常驻成本,每轮对话重复加载,注意力被稀释的代价是隐蔽但真实的。多个来源独立验证了同一个现象:模型会”忽略”长尾指令,备份指令从第 1500 行提到硬约束区后模型立刻遵守。[[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄 CLAUDE.md 治理]]
三条件漏斗:什么该进 CLAUDE.md
判断一条指令是否该放进 CLAUDE.md 的三条件漏斗:
- 高频:是否每次会话都会用到?
- 稳定:行为是否已经固化,不再变化?
- 跨会话:是否跨越多个任务和项目?
三个条件同时满足才放进 CLAUDE.md。低频成套的做成 Skill,临时的留在对话,大段文档用 @ 路径引入。[[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄 三条件漏斗]]
分层维护体系
| 层级 | 位置 | 负责任务 | 建议行数 |
|---|---|---|---|
| 全局级 | ~/.claude/CLAUDE.md | 个人编码偏好、全局工具习惯、常用阻止列表 | 几十行 |
| 项目级 | ./CLAUDE.md | 项目范式、目录结构、测试约定、特有约束 | 100 行出头 |
| 路径级 | .claude/rules/*.md | 局部约束,支持 paths 限定不全局加载 | 不限但聚焦 |
| Skill 级 | skills/*/SKILL.md | 可复用流程封装,低频/成套指令 | 按需 |
放错层会导致个人偏好污染团队共享配置。项目级 CLAUDE.md 建议控制在 100 行出头,全局级几十行。官方建议 CLAUDE.md 控制在 200 行以内、指定 owner、像审代码一样审改动。[[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄 分层体系]] [[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic 七种方法]]
定期精简信号
当出现以下信号时应该精简 CLAUDE.md:行数越界(超两三百行)、模型反复忽略某条指令、出现临时字眼、同一件事写了多遍。建议每两三周精简一次,把稳定的流程下沉为 Skill,把临时约束移到对话中。CLAUDE.md 是维护出来的不是写出来的——核心能力不是写多好,而是判断什么该删、什么该下沉、什么该上提。[[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄 精简]]
与 Worktree 配合的上下文隔离
每个 Worktree 各带各自的 CLAUDE.md,实现任务切换时的上下文隔离——并行开发和高风险探索不串味。这是分层治理在并行开发场景中的自然延伸。[[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄 Worktree]]
矛盾:CLAUDE.md 写得越全越好,项目 /init 自动生成即可使用 vs CLAUDE.md 不是越全越好,每行都有常驻成本;/init 生成的初稿应大删特删 来自 [[raw/2026-06-19/吴师兄/面试官皱眉:-Claude Code 你用了半年,CLAUDE.md 多少行了?-我说两千多,他:那今天就到这吧.md|来源: 吴师兄]]
从”堆积”到”治理”的范式转变
扶苏半年单兵重构 30 万行代码的实践独立验证了 CLAUDE.md 治理的核心原则:CLAUDE.md 的核心能力不是写多好,而是判断什么该删、什么该下沉为 skill、什么该上提为全局层。 “维护”比”创作”更重要——重要的不是把规则写进 CLAUDE.md,而是把不该在 CLAUDE.md 的东西清理出去。扶苏的实践配置:CLAUDE.md ~200 行聚焦项目特有配置,所有编码知识下沉到 Skills 并做渐进式披露(前端 398 行 + 10 个资源文件,后端 304 行 + 11 个资源文件)。[[raw/2026-06-19/扶苏/Claude Code 深度实战:半年单兵重构 30 万行代码的硬核工程化指南.md|来源: 扶苏 CLAUDE.md 治理]]
提示词说服 vs 确定性执行的根本区分
本轮摄入多个来源揭示了 CLAUDE.md/Rules/Skills 与 Hooks/Permissions 之间的根本性区分:前者的本质是”提示词说服”——依赖模型理解和遵从,有概率性失败的风险;后者的本质是”确定性执行”——走代码执行路径,0 概率容差。“告诉 AI 怎么做”和”让事情自动发生”是两件不同的事。 Hooks + Permissions 走代码执行路径,CLAUDE.md/Rules/Skills 依赖模型理解——这两大类机制不可互相替代,分开看待有助于更精确的配置决策。[[raw/2026-06-13/TriAi/掌控 Claude Code:CLAUDE.md、Skills、Hooks、Subagents… 七种指令方式,一张表说清楚.md|来源: TriAI 确定性执行]]
矛盾:AI model quality has been declining (the “model got dumber” narrative common in AI discussions) vs Claude Code has actually significantly improved over recent months — output quality deterioration is usually caused by deteriorating prompt quality, not model regression 来自 [[raw/2026-06-19/扶苏/Claude Code 深度实战:半年单兵重构 30 万行代码的硬核工程化指南.md|来源: 扶苏]]
机制选择决策框架共识
本轮摄入中多个独立来源(TriAI、Anthropic 官方、扶苏)的实践趋于一致:事实放 CLAUDE.md、局部约束放路径限定的 Rules、流程放 Skills、隔离任务放 Subagents、确定性行为放 Hooks、角色定位放 Output Styles。放错层会导致个人偏好污染团队共享配置。全局级(~/.claude/)、项目级(./CLAUDE.md)、子目录级、skill 级——各管一段互不串味。[[raw/2026-06-19/扶苏/Claude Code 深度实战:半年单兵重构 30 万行代码的硬核工程化指南.md|来源: 扶苏 分层共识]]
七种定制机制全景比较
Anthropic 官方公开的七种 Claude Code 定制机制在加载时机、上下文压缩行为和权重三个维度上有根本差异。[[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic 七种方法]] [[raw/2026-06-13/TriAi/掌控 Claude Code:CLAUDE.md、Skills、Hooks、Subagents… 七种指令方式,一张表说清楚.md|来源: TriAI 七种机制]]
| 机制 | 加载时机 | 压缩后行为 | 权重 |
|---|---|---|---|
| 根目录 CLAUDE.md | 始终加载,全程保留 | 压缩后重新读取 | 常驻 |
| 子目录 CLAUDE.md | 仅在读取该目录文件时触发 | 按需加载 | 按需 |
| Rules(路径限定) | 仅在 paths 匹配时加载 | 同 CLAUDE.md | 按需 |
| Rules(无 paths) | 等同于根目录 CLAUDE.md | 同 CLAUDE.md | 常驻 |
| Skills | 启动仅加载名称和描述 | 调用后压缩时重新注入,多个 Skill 共享 token 预算,最早调用的先丢弃 | 按需调用 |
| Subagents | 独立上下文窗口运行 | 不参与主会话压缩,仅结果返回 | 完全隔离 |
| Hooks | 确定性执行,完全绕过上下文窗口 | 配置在主上下文之外 | 代码级 |
| Output Styles | 注入系统提示且永不压缩 | 但会替换默认编码指令 | 永久 |
| append-system-prompt | 追加到系统提示末尾 | 随系统提示一起压缩 | 可压缩 |
角色化选择框架
- 代码库事实 → CLAUDE.md
- 局部约束 → 路径限定 Rules
- 可复用流程 → Skills
- 隔离重活 → Subagents
- 确定性自动化 → Hooks
- 角色定位 → Output Styles
[[raw/2026-06-13/TriAi/掌控 Claude Code:CLAUDE.md、Skills、Hooks、Subagents… 七种指令方式,一张表说清楚.md|来源: TriAI 角色化选择]]
MCP 的隐性成本
Wise Wong 在 Codex 实践中揭示了 MCP 的四重隐性成本:每个 MCP 增加工具说明、权限请求、启动进程和上下文负担。 工具说明膨胀降低模型工具选择准确率,权限请求中断工作流,启动进程增加等待时间,上下文负担压缩其他工具和指令的空间。这不是反对 MCP——而是提醒选择 MCP 时需要平衡功能收益与隐性成本。一个工具看起来能干活不等于实际值得装。[[raw/2026-06-19/Wise Wong/交了200刀的学费,我总结了Codex的15个技巧.md|来源: Wise Wong MCP 成本]]
Skills vs Subagents 选择原则
能看到中间过程、需要逐步干预用 Skills;隔离运行、只要最终结论用 Subagents。[[raw/2026-06-14/金色传说大聪明/深入理解 Claude Code:从 CLAUDE.md 到 Hooks、Skills、Subagents.md|来源: 金色传说大聪明]]
Skills vs Slash Commands
核心区别在 UX 和封装形式:Slash Commands 单文件入口支持 / 自动补全,可显式编排复杂行为(在单条消息中并行启动多个 Subagents 做多渠道研究);Skills 是多文件目录结构,可包含辅助资源(scripts/references/assets)。两者都可启动 Subagents,但 Subagents 是保持主上下文清洁的关键手段。[[raw/2026-06-16/扶苏/Claude Code 深度定制指南:CLAUDE.md、Commands、Skills 与 Subagents.md|来源: 扶苏 Skills vs Commands]]
claudeMdExcludes
开发者可通过 claudeMdExcludes 配置项跳过不相关团队的子目录 CLAUDE.md 文件,避免无关上下文污染。[[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic claudeMdExcludes]]
Output Styles 的严重陷阱
自定义 Output Style 默认替换系统提示,会丢失默认编码指令(如何控制改动范围、何时加注释、安全问题处理、验证习惯)。设 keep-coding-instructions: true 可保留。[[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic Output Styles]] [[raw/2026-06-13/TriAi/掌控 Claude Code:CLAUDE.md、Skills、Hooks、Subagents… 七种指令方式,一张表说清楚.md|来源: TriAI Output Styles]]
Managed Settings
组织级强制管控,管理员部署无法被个人配置排除。这是 CLI 工具从个人效率升级到团队基础设施的标志性能力。[[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic Managed Settings]]
Plugin 打包共享
Skills、Subagents、Hooks、Output Styles 可以打包成 Plugin 在团队和项目间共享——这是 CLI 进入生态化阶段的关键架构决策。[[raw/2026-06-12/Anthropic/调教 Claude Code 的七种方法.md|来源: Anthropic Plugin]]
Hooks 机制深度解析(2026-06 新增)
八大事件类型
Hooks 支持 8 种事件类型覆盖 Agent 完整生命周期:[[raw/2026-06-14/金色传说大聪明/深入理解 Claude Code:从 CLAUDE.md 到 Hooks、Skills、Subagents.md|来源: 金色传说大聪明 Hooks]]
| 事件 | 触发时机 | 典型用途 |
|---|---|---|
| PreToolUse | 工具调用前 | 埋点统计、参数校验、权限检查 |
| PostToolUse | 工具调用后 | 结果处理、日志记录 |
| PermissionRequest | 权限请求时 | 自动审批或增强警告 |
| SessionStart | 会话启动时 | 环境初始化 |
| PreCompact | 压缩前 | 保护重要上下文不被压缩 |
| Stop | Agent 停止时 | 清理、报告 |
| SubagentStop | SubAgent 停止时 | 结果聚合 |
| UserPromptSubmit | 用户提交时 | 输入预处理 |
Hooks 的两种执行模式
确定性 Hooks(command/HTTP/mcp_tool)完全绕过上下文窗口,配置在主上下文之外,确定性执行。模型判断型 Hooks(prompt/agent)虽然触发条件是确定性的,但输出由 Claude 判断——比纯确定性 Hooks 更灵活。[[raw/2026-06-13/TriAi/掌控 Claude Code:CLAUDE.md、Skills、Hooks、Subagents… 七种指令方式,一张表说清楚.md|来源: TriAI Hooks 类型]]
Hook-based Skill Auto-Activation(扶苏实践)
扶苏在半年 30 万行代码重构中实现了基于 Hooks 的 Skill 自动激活系统,这是 Skills 与 Hooks 协同的高阶实践模式:[[raw/2026-06-19/扶苏/Claude Code 深度实战:半年单兵重构 30 万行代码的硬核工程化指南.md|来源: 扶苏 Hook 激活]]
UserPromptSubmit hook(预拦截):在用户输入进入模型前,通过关键词分析自动注入 Skill 激活提醒。Hook 扫描用户输入匹配 skill-rules.json 中的触发词表,命中后在系统提示中追加 Skill 使用建议。这让 Skill 的触发从”等模型被动匹配 description”升级为”Hook 主动预判推荐”。
Stop Event hook(事后检查):Agent 停止时扫描变更文件,匹配高风险模式库(如 db migration 缺少备份检查、API 签名变更缺少兼容性注意事项)。检测到符合阈值的问题自动进入修复流程或升级到专门 Sub-agent。
PM2 自主调试 + Hook 质量门禁:Claude Code 通过 PM2 进程管理实现真正自主的调试循环——pm2 logs 自动读取日志、pm2 restart 自动重启失败服务、pm2 monit 自动监控资源,全程无需人类介入。Build Checker hook 在构建完成后扫描编译错误,<=5 个错误自动调用修复脚本,>=5 个错误升级到 auto-error-resolver Sub-agent——避免主会话上下文被错误堆栈淹没。Error Handling Reminder hook 检测到数据库/API 操作时主动提示添加 Sentry 捕获,将异常处理制度化而非留待模型”记得”。
这套系统的核心模式是 “触发检测 + 自动响应”:Hook 作为确定性触发器检测条件,匹配后调用 Skill/Sub-agent 作为灵活执行体。
工具设计原则(保留原有)
- “像 agent 一样设计工具”这条主线没变,但新内容把它落到更具体的设计细节上:description 要写触发短语、时序位置和使用边界,不然 Skill 形同虚设。 [[raw/2026-04-24/方圆yo/Anthropic 给 Claude Code 设计工具的最佳实践.md|来源: 工具设计最佳实践]] [[raw/2026-04-27/青斧/工作流的 Skill 怎么写?从 7 个顶级 Skill 中提炼的模式与最佳实践.md|来源: 7个顶级Skill]]
- AskUserQuestion、Task、搜索接口的演进说明:好工具不是按钮越多越好,而是阻塞更少、上下文更准、结果更可验证。 [[raw/2026-04-24/方圆yo/Anthropic 给 Claude Code 设计工具的最佳实践 2.md|来源: 工具设计最佳实践 2]]
Goal 设计的四要素模型
Wise Wong 从 Codex 高频使用中提炼出 Goal/目标定义的完整模型:目标定义、允许范围、禁止事项、验证方式与停止条件——缺一不可。与 Anthropic 官方 /goal 的三要素模型互补:多来源独立提炼出高度一致的模式——具体结果 + 可验证标准 + 边界约束 + 停止条件。核心教训:Goal 不是愿望清单——含糊的 Goal 比没有 Goal 更有害,Agent 会朝着错误方向消耗更多资源。[[raw/2026-06-19/Wise Wong/交了200刀的学费,我总结了Codex的15个技巧.md|来源: Wise Wong Goal 四要素]]
护栏二分法:资源类 vs 认知类
梦朝思夕在 Loop Engineering 中提出了护栏的实用工程分类:资源类护栏(运行时间限额、API 调用上限、文件操作路径白名单)应焊死在系统层面,不可被 Agent 绕过,避免系统性崩溃或越权;认知类护栏(代码规范、设计原则、业务约束)应可插拔,按任务上下文动态启用或禁用。焊死资源边界是基础设施层的职责,灵活认知约束是 Skill 设计层的职责——两种护栏的工程责任完全不同。[[raw/2026-06-19/梦朝思夕/万字长文 - 带你由浅入深了解 Loop Engineering:从手动 Prompt 到设计系统的跃迁.md|来源: 梦朝思夕 护栏二分法]]
陌生项目命令安全清单
金先森的 Claude Code / Codex 命令安全表把资源类护栏落到了具体命令层:远程脚本下载后直接执行必须先展开审查;安装或初始化失败后不能让 Agent 自动补命令;陌生项目先放进隔离目录或容器;真实 .env、token、cookie、SSH 配置不能暴露;package.json scripts、pyproject.toml、setup.py 等入口要先解释;sudo、管理员 PowerShell、系统 PATH、shell profile、Git 全局配置、启动项这类长期配置变更必须单独确认。[[raw/2026-07-03/金先森是朝鲜族阿/Claude Code、Codex跑命令前,先复制这张安全表.md|来源: 命令安全表]]
这张表的本质不是”多写几条提醒”,而是把 Agent 的执行权限从默认放开改成计划驱动:先交命令计划,列明目的、可能修改文件、外部网络访问、风险等级和回滚方式;跑完再交命令账单。它和本页的护栏二分法一致:凡是会读密钥、改长期配置、访问不明域名、提升权限、执行外部脚本的动作,都属于资源类护栏,不能靠模型临场自觉。[[raw/2026-07-03/金先森是朝鲜族阿/Claude Code、Codex跑命令前,先复制这张安全表.md|来源: 命令安全表]]
Bash 工具作为高权限调用层
锦康对 Bash 工具的实现细节做了更底层的拆解:Bash 是 Agent 的高权限调用层,能简化工具列表,也能绕过很多专用工具边界,所以默认原则应是最小权限,读取用 Read、编辑用 Edit,只有确实需要 shell 能力时才用 Bash。工具 schema 中 command、timeout、description、run_in_background、dangerouslyDisableSandbox 分别对应执行内容、超时、中间态说明、后台运行和沙箱绕过;其中 dangerouslyDisableSandbox 应视为危险策略,不是普通参数。[[raw/2026-07-05/锦康/大模型应用开发-Bash工具实现和安全设计细节.md|来源: Bash工具实现]]
实现层的关键不是“能跑命令”,而是可中断、可观察、可截断、可恢复:Generator/streaming 模式比一次性 Promise 返回更适合长命令;大输出应持久化到文件,只把预览和路径返回给模型;stdout/stderr 的时序要保持一致;命令超时、主动中断和 cwd 自动恢复都应进入工具运行时。权限层则应先解析命令,再做静态检查、权限验证、模型验证和容器验证。tree-sitter/web-tree-sitter 这类 AST 解析能暴露 wrapper、subshell、变量展开、Unicode 空白等绕过风险;未知结构、危险节点、wrapper 去壳后仍不确定的命令,应进入 ask 或拒绝,而不是放给模型自行判断。[[raw/2026-07-05/锦康/大模型应用开发-Bash工具实现和安全设计细节.md|来源: Bash安全设计]]
结构化上下文压缩与交接模板
扶苏和 Wise Wong 独立验证了主动上下文管理的工程价值。扶苏的 Dev Docs Workflow 设定了明确的触发阈值:当上下文窗口使用率达到 15% 时,主动更新开发文档并通过 /compact 切到新会话——新会话读取 [task]-plan.md、[task]-context.md、[task]-tasks.md 三份文件恢复上下文。Wise Wong 则参考 Hermes Agent 的结构化压缩:约 70% 触发阈值 + 自定义交接摘要模板,模板包含历史上下文/目标/约束/进展/关键决策/相关文件/下一步/关键上下文 8 段结构。两个方案的共同本质是:把上下文作为一等工程约束来管理——上下文预算不是被动接受的限制,而是主动规划的变量。 [[raw/2026-06-19/扶苏/Claude Code 深度实战:半年单兵重构 30 万行代码的硬核工程化指南.md|来源: 扶苏 Dev Docs]] [[raw/2026-06-19/Wise Wong/交了200刀的学费,我总结了Codex的15个技巧.md|来源: Wise Wong 结构化压缩]]
跨平台链式工作流分工
本轮摄入揭示了 AI Coding 工具从竞争走向互补的趋势。Wise Wong 实践了 Claude Code 做规划分析(/plan),Codex 做长线执行(/goal) 的跨平台链式工作流——Claude Code 的思维链深度更适合复杂设计决策,Codex 的长上下文窗口和 Fast mode 更适合批量执行。李伟山进一步区分:Codex/Claude Code 负责纯编码(代码库直接操作),WorkBuddy 处理一切需要理解/记忆/信息管理的任务。工具分工不是谁更强的问题,而是谁更适合哪一类任务——以及如何在任务边界上编排。[[raw/2026-06-19/Wise Wong/交了200刀的学费,我总结了Codex的15个技巧.md|来源: Wise Wong 跨平台]] [[raw/2026-06-18/李伟山/20年架构老兵的AI探索,让WorkBuddy帮你超越身边的人.md|来源: 李伟山 工具分工]]
图像优先开发流程
Wise Wong 提出了一种新的多阶段设计工作流:先用 gpt-image-2 生成原型图 → 绘制完整视觉稿 → 输出设计规范 → 更新到 AGENTS.md 长期指导开发。 AI 有了视觉参照后产出的 UI 不会千篇一律。这个流程将”图像→规范→代码”串成完整的开发链路,与上文 [[wiki/concepts/Agents 编排与 Loop Engineering#Agents 正在从角色模板升级为协作单元|GPT-image-2 Skills]] 形成互补——从”单次生图”升级为”视觉规范驱动的持续开发”。“图像优先”的本质是对模型偏见的结构化纠正:模型的 UIKit 知识偏向可以通过视觉效果锚定,使输出更接近用户实际期望而非模型默认倾向。[[raw/2026-06-19/Wise Wong/交了200刀的学费,我总结了Codex的15个技巧.md|来源: Wise Wong 图像优先]]
Claude Code 的设计基础设施
- 深度拆解出 Claude Code 内部 12 个可复用的 Agentic Harness 设计模式,涵盖 agent loop、工具编排、上下文管理等核心环节。 [[raw/2026-05-08/兔兔AGI/深度拆解 Claude Code:12 个可复用的 Agentic Harness 设计模式.md|来源: 12个Harness设计模式]]
- Anthropic 官方发布 12 个生产级 MCP 设计模式,覆盖工具设计、上下文管理、错误处理等场景,是 MCP Server 开发的事实标准参考。 [[raw/2026-05-08/兔兔AGI/Anthropic 官方生产级 Agent 最佳实践:12 个可复用的 MCP 设计模式.md|来源: 12个MCP设计模式]]
Claude Code 官方配置插件
- claude-code-setup:只读配置顾问,扫描项目后按 MCP / Skills / Hooks / Subagents 五类推荐最佳配置
- my-claude-code-setup:2300+ 星社区项目,提供三套 CLAUDE.md 模板(个人开发/团队协作/开源项目)
这两个工具补上了”如何让新手快速配出一套好用的 Claude Code 环境”的空白,与上文 [[#Claude Code 的设计基础设施|设计基础设施]] 和 [[wiki/concepts/Skill 治理、进化与安全#Skills 管理:两派方法|Skills 管理两派]] 形成从配置到管理的完整链路。
[[raw/2026-05-18/AI兴观点/90% 的 Claude Code 用户都没有用对,这个官方插件才是正确打开方式.md|来源: 官方插件]]
MCP、CLI 与 Skills:三层分工框架
独行者 木子李提出了一个消解 “Bash vs MCP” 张力的优雅框架:这三者不是替代关系,而是三层分工。
- 能力层(MCP):标准化暴露外部能力——定义 “这个服务能提供什么”
- 调用层(CLI):提供调用入口——“怎么高效调用”
- 任务层(Skills):编排流程——“怎么把多个调用串成完成一件事”
CLI 看起来更模型友好不是因为形式优势,而是”语料红利”(corpus dividend)——预训练语料中有几十亿条 CLI 示例。“调用层缺失”才是真问题——能力暴露不等于高效调用,需要独立的运行时做渐进式披露、结果处理和组合性。
这个框架消解了 [[wiki/concepts/上下文管理与 Harness Engineering]] 中记录的”Bash vs MCP”张力——不是二选一,是不同层的分工。MCP 没替代 CLI(就像 API 没替代 shell),Skills 也没替代 MCP。
[[raw/2026-05-27/MCP、CLI 与 SKILLS:它们不是替代关系,而是 AI 工具调用体系的三层分工.md|来源: 三层分工]]
Skill 的 HTTP 底层交互流(协议映射)
从 OpenAI 兼容协议层面看,Skill 在协议层完全不存在。张敏用实际的 HTTP 请求拆解证明了:Skill = 动态注入的 system prompt 片段 + 预定义的 tool schema + 多轮 tool calling 循环。整个过程就是:在 system prompt 里告诉 LLM”你有这些技能手册可以查”→ LLM 通过 Read 工具自己去读手册 → LLM 按手册说的步骤通过 Shell/Read 等工具一步步执行。 [[raw/2026-06-02/张敏/大模型的Agent Skill功能,在LLM HTTP底层交互流中是怎么承载的?.md|来源: HTTP底层交互]]
7 步交互拆解:
- 在 system prompt 注入 Skill 的 name + description(启动时扫描目录,只加载摘要,不加载全文)
- 用户发问触发匹配——LLM 看到用户提到 mp.weixin.qq,匹配到 mp-read skill 描述
- LLM 按”先读 Skill 文件”指令,发起 Read(SKILL.md) tool call
- Cursor 执行 Read,SKILL.md 全文通过 role: “tool” 进入上下文窗口
- LLM 按 Skill 指令做前置检查(which mp-read、Read(cookie.txt))
- LLM 执行核心命令(mp-read URL,带 block_until_ms 参数)
- Shell 输出回传给 LLM,LLM 生成最终纯文本响应
协议映射表:Skill 发现 = 纯客户端行为;Skill 摘要 = 注入 system prompt 文本;Skill 加载 = LLM 发起 Read(SKILL.md);Skill 指令执行 = LLM 按内容自主发起后续 tool_calls;渐进式加载 = 先在 system prompt 放摘要(省 token),需要时再 Read 全文;scripts/ = Shell tool call 执行脚本;references/ = Read tool call 按需读取参考文档。 [[raw/2026-06-02/张敏/大模型的Agent Skill功能,在LLM HTTP底层交互流中是怎么承载的?.md|来源: 张敏 协议映射表]]
[[raw/2026-05-28/大模型的Agent Skill功能,在LLM HTTP底层交互流中是怎么承载的?.md|来源: HTTP底层交互]]
Chromium AI Coding 体系参考
Chromium 在 agents/ 目录下构建了完整的 AI Coding 基础设施,供 Gemini CLI / Claude Code / GitHub Copilot 三款工具共用,是已知最大的开源 AI 编程治理参考。包括:AI Policy(人类始终是最终责任人)、Prompts 四层分层组合(common.minimal.md → common.md 8 步标准工作流 → Templates 平台模板 → Task Prompts 自定义命令)、Skills 18+ 个按需激活专家模块、Agentic RAG 三层知识增强架构、15+ 个 Eval 评估测试用例、3 个大规模 Projects 工程治理项目。 [[raw/2026-06-01/腾讯程序员/深入解析Chromium的 AI Coding 开发体系.md|来源: Chromium AI Coding]]
Prompts 分层架构要点:common.minimal.md 定义基本规范(构建前先确认目录、Stay on task 不修无关 TODO、注释只写”为什么”不写”做了什么”等约束正是针对 LLM 天然倾向的纠正);common.md 定义 8 步标准工作流(深度理解代码为强制第一步不可跳过);Templates 强制 AI 在动手前先阅读平台架构文档。 [[raw/2026-06-01/腾讯程序员/深入解析Chromium的 AI Coding 开发体系.md|来源: Chromium Prompts]]
Agentic RAG 三层:静态路由表(knowledge_base.md,任务关键词→文档路径的 if-then 规则引擎)→ chromium-docs Skill(Python 脚本 2000+ md 文件本地索引,三分索引设计 doc/keyword/category)→ MCP 扩展(blink-spec、build-information 等实时外部知识)。与传统 RAG 的核心差异:“Consult, then Answer”——AI 主动查阅而非被动检索。 [[raw/2026-06-01/腾讯程序员/深入解析Chromium的 AI Coding 开发体系.md|来源: Chromium Agentic RAG]]
Agent 评测套件:15 个 eval 用例覆盖日常开发典型场景(adapt_builder、fix_broken_test、fuzzing、cl-description 等),promptfoo 自动化断言检查文件变更、内容、工具调用。本质上是”AI Agent 的单元测试”——修改提示词后跑一遍确保行为没有退化。Pass@K 机制适应 LLM 非确定性输出。 [[raw/2026-06-01/腾讯程序员/深入解析Chromium的 AI Coding 开发体系.md|来源: Chromium Eval]]
MCP/CLI/Skills:三层分工框架嵌入
风夏的 StarAgent WebTerminal 实践进一步印证了三层分工框架:CLI(wt CLI 提供稳定手脚)→ Skill(描述操作方法、风险边界、推荐命令模板)→ Agent(动态规划、执行、观察、复盘)。Skill 的核心价值不是”让 Agent 背下来”,而是”把能制度化的制度化,把能流程化的流程化”——CLI 负责真正挥锤子,Skill 只告诉 Agent 什么时候该登录、什么时候该 run、什么时候该停手问人。 [[raw/2026-06-01/风夏/全是 Web 没 CLI 怎么行:一次把 StarAgent WebTerminal 改造成.md|来源: 风夏 三层分工]]
工具治理四类体系
叶小钗的完整工具治理体系提供了一种实用主义视角:后端 API 不能直接当 Agent 工具用——需要一层专门的”工具适配层”。
工具数量阈值:约 10 个管理方便,50+ 进入检索和路由问题。三种做法:按业务域动态加载、先检索再调用、职责固定 Agent 拆分。
错误分类与策略矩阵:参数错误→引导修正、超时→退避重试、权限→禁止自动重试、业务规则→详细解释、高风险→审计+幂等+转人工。工具结果统一返回 error_type / retryable / suggested_action 结构字段,让模型后续推理有明确依据。
工具参数三分类:用户明确提供的 / 模型可从上下文提取的 / 系统自动补齐的——只有前两类出现在 schema 中,第三类由工程层解决。
[[raw/2026-05-27/Tools 治理经验分享:Agent 需要什么工程执行环境?.md|来源: Tools治理]]