外观
配置系统
Claude Code 如何加载设置、解决冲突并编排可扩展性。
配置优先级(5 层)
Claude Code 通过严格的优先级层次解析设置。高优先级层覆盖低优先级层。了解这一机制可以避免"为什么我的配置不生效?"的疑惑。
ASCII 版本
Plain
优先级(从高到低)
═══════════════════════════
1. CLI 参数 ← --model、--system-prompt
2. 环境变量 ← ANTHROPIC_API_KEY
3. 项目 .claude/ ← settings.json、settings.local.json
4. 全局 ~/.claude/ ← settings.json、CLAUDE.md
5. 内置默认值 ← 硬编码的兜底值来源:「配置系统」 — 第 ~3760 行
Skills(技能模块)vs 命令 vs 智能体 — 何时使用各方
三种可扩展性机制,各有不同的用途和权衡。选错抽象方式会导致过度工程化或自动化能力不足。
ASCII 版本
Plain
Skills(技能模块) 命令 智能体
位置: .claude/skills/ .claude/commands/ .claude/agents/
触发方式: /技能名 /命令名 任务工具
作用域: 跨项目 本项目 任意场景
复杂度: 中(捆绑) 低(模板) 高(自主)
使用场景: 可复用能力 快速快捷操作 复杂任务来源:「可扩展性系统」 — 第 ~4495、~5025、~3900 行
智能体生命周期与作用域隔离
子智能体与父级完全隔离运行。它们接收上下文的副本,但不共享任何状态。理解这一点可以避免"为什么子智能体看不到 X?"的困惑。
ASCII 版本
Plain
父级 ──Task(prompt, tools)──► 子智能体
│
[隔离执行]
- 读取文件
- 编辑文件
- bash(如已允许)
│
父级 ◄───── 文本结果 ───────────────┘
(不共享状态,没有副作用回传)来源:「子智能体」 — 第 ~3900 行
Hooks(钩子)事件流水线
Hooks(钩子)让你可以在 Claude Code 生命周期的关键节点运行自定义代码——用于安全扫描、日志记录、强制执行或通知。执行顺序非常重要。
ASCII 版本
Plain
会话开始
│ (InstructionsLoaded 钩子 — v2.1.69+)
用户消息
│
UserPromptSubmit ──退出码 2──► 反馈给 Claude(循环)
│ 退出码 0
PreToolUse ──退出码 1──► 已阻止
│ 退出码 0
▼
工具执行
│
PostToolUse
│
还有工具?──是──► PreToolUse(循环)
│ 否
会话结束
│
Stop / SessionEnd 钩子
│
完成
另外:PreCompact ──► /compact ──► PostCompact
钩子类型:bash(退出码 0/1/2)| http POST JSON(v2.1.63+)来源:「Hooks 系统」 — 第 ~5350 行 | UserPromptSubmit + HTTP 钩子:v2.1.63+ | InstructionsLoaded:v2.1.69+
相关文章
来源:飞书 · AI Spark 知识库 | 原文(最新版):https://lcnniolukk80.feishu.cn/wiki/Fi0ewYzkEiaIpuka5s4c5iAQnjh | 归档:2026-06-04