Claude Code 核心介绍笔记
[!abstract] 核心定位
Claude Code 是 [[Anthropic]] 官方推出的命令行(CLI)AI 编程助手。
它是真正的 Agentic(代理式) 开发工具,运行在 Terminal 中,能够直接访问文件系统、运行命令并管理 [[Git]]。
1. 什么是 Claude Code?
与网页版 Claude 不同,Claude Code 直接运行在终端中,具备自主规划和执行能力。
- 运行环境:Terminal / CLI(直接与代码库和工具链交互)。
- 交互方式:自然语言指令 $\rightarrow$ AI 自动拆解任务 $\rightarrow$ 执行文件读写/命令运行 $\rightarrow$ 结果反馈。
- 核心差异:不仅仅是代码补全(Autocomplete),而是能够自主规划、执行、调试的 AI 员工。
2. 核心功能:Agent Teams (智能体集群)
[!important] 关键更新 (v2.1.32)
基于 [[Claude 3 Opus|Opus 4.6]] 模型,将开发模式从“单兵作战”升级为“团队协作”。
架构模式 (BOSS + Workers)
- BOSS (主代理)
- 驱动模型:[[Claude 3 Opus|Opus 4.6]]
- 职责:充当“架构师”或“项目经理”。负责理解复杂需求、拆解任务、管理全局上下文。
- Workers (员工/子代理)
- 职责:由 BOSS 自动创建(如
Frontend-dev,Backend-dev)。 - 特点:每个子代理拥有独立的上下文窗口,专注于特定任务,避免上下文污染。
- 职责:由 BOSS 自动创建(如
解决了什么痛点?
| 模式 | 描述 | 问题/优势 |
|---|---|---|
| Old (Manual) | 手动使用 [[BMAD]] 框架或 Prompt 编排 | 操作门槛高,无脑并行容易导致代码冲突。 |
| New (Native) | Claude Code 原生内置 | 用户只需提需求,AI 自动完成分工、协作和代码合并。 |
3. 关键技术概念
[[Model Context Protocol]] (MCP)
- 定义:一种通用标准,用于连接 Claude 和外部数据源/工具。
- 作用:通过 MCP,Claude Code 可以安全地连接到 GitHub、Google Drive、PostgreSQL 或本地环境,获取原本无法访问的上下文。
[[Claude Skills]] (技能系统)
- 定义:基于文件系统的能力扩展包。
- 原理:
- 在
.claude/skills目录中创建SKILL.md文件。 - 渐进式加载 (Progressive Disclosure):系统只在需要时加载特定技能的详细指令,节省 Token。
- 在
- 用途:教 Claude 团队特定的代码规范、部署流程或专有工具使用方法。
4. 常用指令速查
[!example] CLI Commands
claude: 启动交互式会话/init: 初始化项目配置/bug: 报告当前会话中的错误/clear: 清除上下文(注意:在 Agent Teams 模式下,BOSS 会保留关键记忆)/compact: 压缩当前会话历史以节省 Token
5. 总结:为什么选择 Claude Code?
相比于 IDE 插件(如 [[Cursor]] 或 [[GitHub Copilot|Copilot]]),Claude Code 更像是一个能够独立干活的远程员工。
特别是配合 Opus 4.6 和 Agent Teams 功能后,它具备了处理大规模重构和复杂功能开发的全局视野,而不仅仅是补全光标后的几行代码。
相关资源
- [[BMAD]] Framework: Breakthrough Method for Agile AI-Driven Development。一种主张通过详细规范文档(Spec)驱动多智能体协作的方法论。Claude Code 将此流程自动化了。
- 视频教程: Building more effective AI agents (Anthropic 官方讲解 Orchestrator-Workers 模式)
核心概念:什么是 Skills?
定义:Skills 是一个按需加载的提示词(上下文)管理系统。
-
传统模式:把所有提示词、背景、规则一次性塞给 AI(费 Token,易遗忘)。
-
Skills 模式:AI 先看目录(元数据),需要用到具体规则时,再去读取对应的文件(省 Token,更精准)。
-
本质:它不是简单的 Prompt,而是一个容器/框架,用来组织工作流、任务说明和代码工具。
一、为什么用?(核心价值)
-
节省 Token:
-
系统启动时只加载
SKILL.md的简介(Metadata)。 -
执行任务时,只读取特定的子文件(例如:只读
methods/03-market.md消耗 330 token,而不是读整个库 1000+ token)。
-
-
管理便捷:像管理笔记一样管理提示词。使用文件夹结构,随时更新,版本可控。
-
标准化输出:将个人经验(检查清单、方法论)固化为代码/文档,保证每次输出都在及格线以上。
二、什么时候用?(判断标准)
公式: 任务重复发生 + 有一套方法论/检查清单 = 必须用 Skills
| 适用场景 |
不适用场景 |
|---|---|
| 写作检查(反复做+有清单) | 一次性任务 |
| 代码审查(反复做+有规范) | 纯创意/脑暴工作 |
| 周报生成(反复做+有模板) | 简单问答 |
| API 对接(如对接 Nano Banana 生图) |
三、怎么实现?(技术原理)
1. 文件结构
所有 Skills 存放在 ~/.claude/skills/ 目录下。
Plaintext
~/.claude/skills/my-skill/ ← 你的技能文件夹
├── SKILL.md ← 核心大脑(元数据 + 指令)
└── templates/ ← 资源仓库(你自己定义的规则、模板)
└── check-list.md
2. 运行逻辑
-
启动:Claude 自动读取所有 Skills 的
name和description。 -
匹配:用户提问 $\rightarrow$ Claude 发现匹配某 Skill 的简介 $\rightarrow$ 激活该 Skill。
-
索引:读取
SKILL.md中的路径指令。 -
执行:根据指令去读取
templates/下的具体文件,执行任务。
3. 从 0 创建步骤
-
建文件夹:在
~/.claude/skills/下新建目录。 -
写配置:创建
SKILL.md,包含 YAML 头(元数据)和正文(指令)。 -
加资源:放入你的方法论、模板文件。
- 懒人技巧:直接把需求发给 Claude,让它帮你生成完整的文件结构和内容。
四、高阶玩法:动态迭代工作流
作者提出的**“写作-迭代”闭环**是 Skills 的精髓:
-
沉淀方法论:
- 将“我是谁”、“用户画像”、“评分标准”写进 Skills 文件。
-
辅助写作:
-
写完文章扔给 Claude:“调用写作助手帮我打分”。
-
Claude 自动调取
check-list.md进行检查(如:密度是否够?痛点是否清晰?)。
-
-
自动迭代(最重要):
-
成功了:告诉 Claude “这篇文章数据好,分析原因并更新到 methods 文件里”。
-
失败了:告诉 Claude “数据差,诊断问题并更新检查清单,下次避坑”。
-
学到了:看到别人的好观点,直接让 Claude “把这个技巧加到我的写作库里”。
-
总结
Claude Code Skills 不是黑科技,而是“工程化”的 Prompt 管理。
它把“每次都要复制粘贴的 Prompt”变成了“即插即用的插件”,并且让你的 AI 助手随着你的经验积累,变得越来越懂你,越来越强。
[!NOTE] HOW TO USE?
- 测试 skill - 尝试"帮我创建一个 README"
- 打包 skill(可选)- 分享给他人使用
- 继续改进 - 根据实际使用体验迭代
Skills 和Plugins的区别
在 Claude Code (CLI) 的架构中,Skills (技能) 和 Plugins (插件) 是两个不同层级的概念。
简单来说:Skills 是“内容/能力”,而 Plugins 是“包装/快递盒”。
一图看懂关系
$$\text{Plugin (插件)} = \text{包装盒} \begin{cases} \text{Skills (技能)} \ \text{MCP Servers (工具连接)} \ \text{Agents (子智能体)} \ \text{Hooks (自动化脚本)} \end{cases}$$
你编写的是 Skills,但如果你想把这些 Skills 打包分享给别人或者在多个项目间通用,你就需要把它们做成 Plugins。
1. 核心区别对比
| 特性 | Skills (技能) | Plugins (插件) |
|---|---|---|
| 本质 | “大脑的知识” | “分发的包裹” |
| 形式 | 一个包含 SKILL.md 的文件夹 |
一个包含 plugin.json 的目录结构 |
| 作用 | 教 Claude 怎么做具体任务(如:写周报、审代码) | 用于安装、分享、管理一组功能 |
| 加载方式 | 按需加载(Claude 觉得需要时才读取详细内容) | 安装即用(作为环境的一部分存在) |
| 命名空间 | 通常直接使用(如 /review) |
带有命名空间(如 /my-plugin:review)以防冲突 |
| 包含关系 | Skill 是最小单位 | Plugin 可以包含多个 Skills, MCPs, Agents |
2. 深度解析:Skills (技能)
Skills 是这一套系统的灵魂。 它们是纯文本的指令集(Markdown),告诉 Claude 如何执行特定工作流。
-
特点:
-
轻量级:核心就是一个 Markdown 文件。
-
省 Token:Claude 启动时只读标题和简介。只有当真正要用时,才会读取详细的操作步骤。
-
场景:
-
规范流程:比如“每次提交代码前,必须检查 console.log 是否删除”。
-
特定任务:比如“把这篇 Markdown 文章转换成幻灯片格式”。
-
-
3. 深度解析:Plugins (插件)
Plugins 是为了解决“分享”和“复杂集成”问题的。 如果你写了一套超棒的 Python 开发技能,想发给全公司的同事用,你不能让他们每个人都去复制粘贴文件夹,这时候你就做一个 Plugin。
-
特点:
-
容器化:它可以把 Skills、MCP 工具(比如连接数据库的能力)、以及自动化脚本(Hooks)打包在一起。
-
防冲突:插件里的 Skill 会自动加上前缀(Namespacing),防止你的
/test和同事的/test打架。 -
场景:
-
团队标准化:公司发布一个
ACME-Dev-Plugin,安装后所有员工都拥有统一的代码审查 Skill 和数据库连接 MCP。 -
开源分享:你在 GitHub 上发布一个插件,别人一行命令
/plugin add就能用。
-
-
4. 举个栗子:做一道菜
-
Skills (食谱):
-
你写了一张纸,上面写着《红烧肉做法》:第一步切肉,第二步焯水…
-
Claude 看了这张纸,学会了做红烧肉。
-
这就是 Skill。
-
-
MCP (厨具):
-
Claude 需要一个高压锅来炖肉。但他自己只是个“大脑”,没有手。
-
MCP 就是连接“高压锅”的接口,让 Claude 能控制高压锅。
-
这就是 MCP。
-
-
Plugins (料理包):
-
你把《红烧肉食谱》(Skill)、《回锅肉食谱》(Skill) 和 一个《智能高压锅驱动程序》(MCP) 打包在一个箱子里,以此命名为“川菜大师套装”。
-
别人拿到这个箱子,一键安装,既有了食谱,也有了锅。
-
这就是 Plugin。
-
总结建议
- 如果你是个人开发者,想优化自己的工作流:只写 Skills 就够了。直接在
~/.claude/skills/下创建文件夹即可,最简单、最快。 - 如果你是团队 Leader,想统一团队规范:把 Skills 打包成 Plugin。这样新人入职,只需运行一条指令
/plugin add my-team-plugin,他的 Claude 就自动学会了团队所有的开发规范。