前言

安装

  • brew 安装
# 安装
brew install --cask claude-code

# 升级
brew upgrade claude-code

# 查看帮助
claude --help

# 卸载
brew uninstall --cask claude-code

使用

  • 启动
cd your-project
claude
  • 基本使用
分类 操作 快捷键 / 指令 说明 适用场景
指令 Slash 命令 /xxx 调用内置命令(如 summarize、review 等) 快速触发预设能力
上下文 文件引用 @xxx 引入文件/代码作为上下文 分析指定文件
编辑 换行(Windows/Linux) Ctrl + J 在输入框内换行(不发送) 编写多行 prompt
编辑 换行(Mac) Option + Enter 同上 Mac 用户
输入 粘贴图片(Windows/Linux) Ctrl + V 粘贴剪贴板图片 贴报错截图
输入 粘贴图片(Mac) Cmd + V 同上 Mac 用户
编辑 删除整行输入 Ctrl + U 清空当前输入行 快速重写 prompt
控制 中断当前输入 Ctrl + C 清空当前输入(一次) 输入错误时取消
控制 退出程序 Ctrl + C(连续两次) 退出 Claude Code ,相当于 /exit 结束 CLI
历史 搜索历史 prompt Ctrl + R 类似 bash reverse search 快速复用旧 prompt
  • 认证和模型配置文件路径 ~/.claude /settings.json

CC-Switch

安装

brew tap farion1231/ccswitch
brew install --cask cc-switch

# 升级
brew upgrade --cask cc-switch

# 卸载
brew uninstall --cask cc-switch

使用

  • 然后在Application中找到 CC Switch 双击打开。
  • 在顶部选择Claude
  • 添加一个供应商,比如这里选择 MiniMax,根据提示只需要填入 APIKey 保存即可
  • 如果添加了多个 供应商 ,需要选择激活哪个
  • 然后在终端打开 claude,输入 /model 选择我们刚刚创建的供应商即可。

Claudecode 相关配置

第三方API配置

  • 基本上各个大模型的Code Plan官方文档中都会有相关说明,这里以Minimax为例,在~/.claude/settings.json中添加如下配置:
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-api-xxx",
    "ANTHROPIC_BASE_URL": "https://api.minimaxi.com/anthropic",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "MiniMax-M2.5",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "MiniMax-M2.5",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "MiniMax-M2.5",
    "ANTHROPIC_MODEL": "MiniMax-M2.5"
  }
}

Minimax官方更推荐使用 CC-Switch 进行配置

  • 编辑或新增 ~/.claude.json 文件,并在其中添加或修改如下配置:
{
  "hasCompletedOnboarding": true
}

表示:
用户已经完成首次使用向导
不再显示欢迎页/教程
不再弹出初始化配置
不再要求选择偏好
CLI 或 IDE 插件不再执行首次初始化流程

去掉system prompt中的随机字符请求头

  • 大模型服务提供商缓存 system prompt(系统提示词),本质上是为了:
降低推理成本
提升响应速度
提高吞吐量
减少重复 token 计算
支持长上下文场景
  • 目前,大部分模型API服务提供商都会缓存system prompt,这就要求我们的system prompt不能随意变化,否则就无法使用缓存
  • 而我们在使用claudecode时发现,每次请求大模型时,system prompt被分为三个BLOCK,而最上方的第一个BLOCK会自动添加如下类似内容:
x-anthropic-billing-header: cc_version=2.1.141.390; cc_entrypoint=cli; cch=67a03;
  • 其中的cch每次请求都会发生变化,感觉上像是一个随机符,这就导致了每次计算system prompt的hash时都会不同,无法命中缓存。

缓存匹配原理
✔ 按 token stream 前缀逐段匹配,关键点:必须“连续前缀命中”
Block 1 tokens match?
↓ yes
Block 2 tokens match?
↓ yes
Block 3 tokens match?
↓ no
stop cache scan

如果此时检查 Block 1 时就不能匹配,则缓存匹配会立刻停止,即便后面的内容完全一致也不会使用缓存

  • 怀疑claudecode是有意这样做的,目的就是增加我们使用其它大模型的使用成本并降低推理速度,而Anthropic在处理system prompt时会先去掉这个随机字符请求头,所以Anthropic不会受到影响,毕竟claudecodeAnthropic的产品,更希望我们订阅其自己的大模型。
  • 不过claudecode没有把这条路测底堵死,解决方法就是在~/.claude/settings.json中添加如下配置,就可以去掉system prompt中的随机字符请求头
{
  "env": {
    "CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
  }
}

状态栏配置

  • ~/.claude/settings.json中添加如下配置:
{
	"statusLine": {
	    "type": "command",
	    "command": "~/.claude/statusline.sh"
  	}
}  
  • ~/.claude/statusline.sh
# Read JSON data that Claude Code sends to stdin
input=$(cat);

# Extract fields using jq
model=$(echo "$input" | jq -r '.model.display_name');

dir=$(echo "$input" | jq -r '.workspace.current_dir');

used=$(echo "$input" | jq -r '.context_window.used_percentage // empty');

if [ -n "$used" ] && [ "$used" != "null" ];
then
    echo "[$model] | $dir | $used% context";
else
    echo "[$model] | $dir  | 0% context";
fi

权限配置

  • 您可以使用 /permissions 查看和管理 Claude Code 的工具权限。此 UI 列出所有权限规则和它们来自的 settings.json 文件。
  • Allow 规则让 Claude Code 使用指定的工具而无需手动批准。
  • Ask 规则在 Claude Code 尝试使用指定工具时提示确认。
  • Deny 规则防止 Claude Code 使用指定的工具。
  • 规则按顺序评估:deny -> ask -> allow。第一个匹配的规则获胜,因此 deny 规则始终优先。
  • 权限模式:Claude Code 支持多种权限模式来控制工具的批准方式。在您的设置文件中设置 defaultMode
模式 描述
default 标准行为:在首次使用每个工具时提示权限
acceptEdits 自动接受会话的文件编辑权限
plan Plan Mode:仅允许分析,不可修改文件或执行命令
dontAsk 自动拒绝工具调用,除非通过 /permissionspermissions.allow 预先授权
bypassPermissions 跳过所有权限提示(需在安全环境中使用,存在风险)
  • 一个示例:** 表示任意路径,:*==* 表示任意多个字符
{
  "permissions": {
    "defaultMode": "acceptEdits",

    "allow": [
      "Read(**)",
      "Edit(**)",
      "Write(**)",

      "Bash(ls:*)",
      "Bash(cat:*)",
      "Bash(grep:*)",
      "Bash(find:*)",

      "Bash(git status:*)",
      "Bash(git diff:*)",
      "Bash(git log:*)",
      "Bash(git branch:*)",

      "Bash(npm:*)",
      "Bash(pnpm:*)",
      "Bash(yarn:*)",

      "Bash(mvn:*)",
      "Bash(gradle:*)",

      "Bash(python:*)",
      "Bash(pip:*)",

      "Bash(docker ps:*)",
      "Bash(docker images:*)"
    ],

    "ask": [
      "Bash(git commit:*)",
      "Bash(git push:*)",
      "Bash(git pull:*)",

      "Bash(docker build:*)",
      "Bash(docker run:*)",

      "Bash(kubectl:*)"
    ],

    "deny": [
      "Read(.env)",
      "Read(.env.*)",
      "Read(**/secrets/**)",
      "Read(**/*.pem)",
      "Read(**/*.key)",

      "Bash(rm -rf:*)",
      "Bash(sudo:*)",
      "Bash(curl:*)",
      "Bash(wget:*)"
    ]
  }
}

配置文件

  • 使用全局和项目级设置以及环境变量配置 Claude Code。
功能 User 位置 Project 位置 Local 位置
Settings ~/.claude/settings.json .claude/settings.json .claude/settings.local.json
Subagents ~/.claude/agents/ .claude/agents/
MCP servers ~/.claude.json .mcp.json ~/.claude.json(每个项目)
Plugins ~/.claude/settings.json .claude/settings.json .claude/settings.local.json
CLAUDE.md ~/.claude/CLAUDE.md CLAUDE.md.claude/CLAUDE.md CLAUDE.local.md
  • 当在多个作用域中配置相同的设置时,更具体的作用域优先:

    • Managed(最高)- 无法被任何内容覆盖
    • 命令行参数 - 临时会话覆盖
    • Local - 覆盖项目和用户设置
    • Project - 覆盖用户设置
    • User(最低)- 当没有其他内容指定设置时应用
  • settings.json 支持多个选项,具体参看 Settings可用设置

CLAUDE.md 和 Rules

CLAUDE.md

  • CLAUDE.md 文件是 markdown 文件,为项目、你的个人工作流或整个组织为 Claude 提供持久指令。你用纯文本编写这些文件;Claude 在每个会话开始时读取它们。
  • CLAUDE.md 文件在每个会话开始时加载到上下文窗口中,与你的对话一起消耗令牌。上下文窗口可视化显示 CLAUDE.md 相对于其余启动上下文的加载位置。因为它们是上下文而不是强制配置,你编写指令的方式会影响 Claude 遵循它们的可靠性。具体、简洁、结构良好的指令效果最好。
  • CLAUDE.md 文件可以使用 @path/to/import 语法导入其他文件。导入的文件在启动时展开并加载到上下文中,与引用它们的 CLAUDE.md 一起。允许相对路径和绝对路径。相对路径相对于包含导入的文件解析,而不是工作目录。导入的文件可以递归导入其他文件,最大深度为五跳。
有关项目概述,请参阅 @README,有关此项目的可用 npm 命令,请参阅 @package.json。

# 其他指令
- git 工作流 @docs/git-instructions.md
  • 每个 CLAUDE.md 文件目标在 200 行以下。较长的文件消耗更多上下文并降低遵守度。
范围 位置 目的 用例示例 共享对象
托管策略 • macOS: /Library/Application Support/ClaudeCode/CLAUDE.md
• Linux / WSL: /etc/claude-code/CLAUDE.md
• Windows: C:\Program Files\ClaudeCode\CLAUDE.md
由 IT / DevOps 管理的组织范围指令 公司编码标准、安全策略、合规要求 组织中的所有用户
用户指令 ~/.claude/CLAUDE.md 所有项目的个人偏好 代码样式偏好、个人工具快捷方式 仅你(所有项目)
项目指令 ./CLAUDE.md./.claude/CLAUDE.md 项目的团队共享指令 项目架构、编码标准、常见工作流 通过源代码控制共享的团队成员
本地指令 ./CLAUDE.local.md 个人项目特定偏好(通常加入 .gitignore 本地沙箱 URL、测试数据、调试配置 仅你(当前项目)
  • 工作目录下的 CLAUDE.mdCLAUDE.local.md 文件在启动时完整加载。子目录中的文件在 Claude 读取这些目录中的文件时按需动态加载。
~/workspace/my-project/
├── CLAUDE.md                    # 启动时完整加载(项目共享规则)
├── CLAUDE.local.md              # 启动时完整加载(个人本地规则)
├── .gitignore
├── README.md
│
├── backend/
│   ├── CLAUDE.md                # 进入 backend 时按需加载
│   ├── src/
│   │   └── main/
│   └── pom.xml
│
└── frontend/
    ├── CLAUDE.md                # 进入 frontend 时按需加载
    ├── src/
    └── package.json

运行 /init 自动生成起始 CLAUDE.md。Claude 分析你的代码库并创建一个包含构建命令、测试指令和它发现的项目约定的文件。如果 CLAUDE.md 已存在,/init 会建议改进而不是覆盖它。从那里进行细化,添加 Claude 不会自己发现的指令。
设置 CLAUDE_CODE_NEW_INIT=1 以启用交互式多阶段流程。/init 询问要设置哪些工件:CLAUDE.md 文件、skills 和 hooks。然后它使用 subagent 探索你的代码库,通过后续问题填补空白,并在写入任何文件之前呈现可审查的提案。

Rules 是什么?

  • 对于较大的项目,你可以使用 .claude/rules/ 目录将指令组织到多个文件中。这使指令保持模块化并更容易让团队维护。规则也可以 范围限定到特定文件路径,因此它们仅在 Claude 处理匹配文件时加载到上下文中,减少噪音并节省上下文空间。
  • 在你的项目的 .claude/rules/ 目录中放置 markdown 文件。每个文件应涵盖一个主题,具有描述性文件名,如 testing.md 或 api-design.md。所有 .md 文件都被递归发现,因此你可以将规则组织到子目录中,如 frontend/ 或 backend/
your-project/
├── .claude/
│   ├── CLAUDE.md           # 主项目指令
│   └── rules/
│       ├── code-style.md   # 代码样式指南
│       ├── testing.md      # 测试约定
│       └── security.md     # 安全要求
  • 规则可以使用带有 paths 字段的 YAML frontmatter 范围限定到特定文件。这些条件规则仅在 Claude 处理与指定模式匹配的文件时适用。
---
paths:
  - "src/**/*.{ts,tsx}"
  - "lib/**/*.ts"
  - "tests/**/*.test.ts"
---
  • 这意味着这条规则只在模型处理匹配路径的文件时才会被注入。没有 paths frontmatter 的规则在启动时加载,优先级与 .claude/CLAUDE.md 相同。
  • 格式化后的 Rules 内容会被 注入到 messages 的最前面
  • Rules 不走 tool_use 协议。它既不是工具,也不需要模型主动调用。它是被动注入到每次 API 调用的上下文中,模型在推理时自然会“看到”并遵循这些规则。

交互模式

  • 快速命令
快捷键 描述 注释
/(在开始) 命令或 skill 请参阅内置命令和 skills
!(在开始) Bash 模式 直接运行命令并将执行输出添加到会话
@ 文件路径提及 触发文件路径自动完成
  • 内置命令:在下表中,<arg> 表示必需的参数,[arg] 表示可选参数。
命令 目的
/add-dir <path> 将新的工作目录添加到当前会话
/agents 管理 agent 配置
/branch 创建对话分支
/btw <question> 提出快速侧问题(不进入主对话)by the way 的缩写
/chrome 配置 Chrome 中的 Claude 设置
/clear 清除对话历史并释放上下文(别名:/reset/new
/compact [instructions] 压缩对话,可指定压缩重点
/config 打开设置界面(别名:/settings
/context 可视化当前上下文使用情况
/copy 复制最后一个助手响应(支持代码块选择)
/cost 显示令牌使用统计
/desktop 在桌面应用继续会话(别名:/app
/diff 查看 git 差异及每轮变更
/doctor 诊断 Claude Code 安装和配置
/exit 退出 CLI(别名:/quit
/export [filename] 导出当前对话
/extra-usage 配置额外使用额度
/fast [on|off] 切换快速模式
/feedback [report] 提交反馈(别名:/bug
/fork [name] 创建对话分支 ,现在会自动跳到 /branch
/help 显示帮助
/hooks 管理工具 hook 配置
/ide 管理 IDE 集成
/init 使用 CLAUDE.md 初始化项目
/insights 分析会话行为和使用情况,会生成一份HTML报告,会给你一些使用建议
/install-github-app 安装 GitHub 集成
/install-slack-app 安装 Slack 集成
/keybindings 配置快捷键
/login 登录账户
/logout 登出账户
/loop 定时重复执行,/loop 5m 获取系统时间
/mcp 管理 MCP server
/memory 管理 CLAUDE.md 内存
/mobile 下载移动应用(别名:/ios/android
/model [model] 切换 AI 模型
/model opusplan Pro订阅用户适用。plan模式使用 Opus模型,build模式使用 Sonnet模型,节省用量
/passes 分享试用资格
/permissions 管理权限(别名:/allowed-tools
/plan 进入 Plan Mode
/plugin 管理 plugins
/pr-comments [PR] 查看 PR 评论
/privacy-settings 隐私设置(部分订阅可用)
/release-notes 查看更新日志
/reload-plugins 重载插件
/remote-control 必须登录的是Anthropic帐号。启用远程控制(别名:/rc),会生成一个url,在浏览器中打开就可以与claudecode会话
/remote-env 配置远程环境
/rename [name] 重命名会话
/resume [session] 恢复会话(别名:/continue
/review 已弃用(建议使用 plugin)
/rewind 回退对话或代码(别名:/checkpoint
/sandbox 切换沙箱模式
/security-review 扫描代码安全问题
/simplify 同时启用3个agent,分别从代码复用、代码指令、运行效率三个维度审查你的代码改动
/skills 列出 skills
/stats 使用统计可视化
/status 查看系统状态
/statusline 配置状态栏
/stickers 订购贴纸
/tasks 管理后台任务
/terminal-setup 配置终端快捷键
/theme 修改主题
/upgrade 升级订阅
/usage 查看使用限制
/vim 切换 Vim 模式

ClaudeCode 内置 Tools

  • 一、🤖 任务编排 / Agent 系统
Tool 功能 使用时机 关键约束
Agent 启动子代理执行复杂任务 多步骤自动化 用于 orchestration
TaskCreate 创建任务列表 任务拆解 支持依赖关系
TaskList 列出所有任务 查看进度/可执行任务 用于调度决策
TaskGet 获取任务详情 查询上下文 单任务查看
TaskUpdate 更新任务状态 标记完成/废弃 ⚠️必须及时标记完成
TaskOutput 获取任务输出 获取执行结果 支持 block
TaskStop 停止任务 中断执行 长任务终止
AskUserQuestion 向用户提问 需要用户决策 唯一交互中断方式
  • 二、🧭 规划模式(Plan Mode)
Tool 功能 使用时机 关键约束
EnterPlanMode 进入规划模式 复杂实现前 必须先规划
ExitPlanMode 退出规划模式 提交计划后 不执行逻辑
  • 三、📂 文件系统操作
Tool 功能 使用时机 关键约束
Read 读取文件 所有文件操作前 可读不存在文件
Write 写入文件 创建/覆盖文件 ⚠️必须先 Read
Edit 精确替换 小范围修改 ⚠️严格匹配字符串
Glob 路径匹配 查找文件 支持 **/*.ts
Grep 内容搜索 搜索代码 ⚠️禁止用 bash grep
  • 四、💻 执行环境
Tool 功能 使用时机 关键约束
Bash 执行 shell 命令 编译/运行/系统操作 ❌不要用于搜索
  • 五、🌐 网络能力
Tool 功能 使用时机 关键约束
WebFetch 获取网页 抓取页面内容 ❌不支持登录态
WebSearch 搜索信息 获取外部知识 返回结构化结果
  • 六、📓 数据与 Notebook
Tool 功能 使用时机 关键约束
NotebookEdit 修改 Jupyter 数据分析场景 直接替换 cell
  • 七、🧩 扩展能力
Tool 功能 使用时机 关键约束
Skill 调用技能 /command 触发 类似插件
  • 八、🌿 Git 工作树(Worktree)
Tool 功能 使用时机 关键约束
EnterWorktree 创建并进入 worktree 用户明确要求 ⚠️必须用户显式提及
ExitWorktree 退出 worktree 结束隔离开发 仅作用当前 session
  • 九、⏰ 定时任务(Cron 系统)
Tool 功能 使用时机 关键约束
CronCreate 创建定时任务 提醒/自动执行 ⚠️避免 0/30 分钟
CronList 查看任务 查询当前调度 session 内有效
CronDelete 删除任务 取消调度 需 jobId

Plugins

  • 配置文件位置
方法 Skill 调用名称 存放位置 适用场景 优点 限制
独立(.claude 目录) /hello 项目内 .claude/ 个人工作流、项目级定制、快速实验 轻量、无配置成本、即写即用 ❌ 不易共享 ❌ 无版本管理 ❌ 跨项目复用差
插件(.claude-plugin) /plugin-name:hello .claude-plugin/plugin.json 团队共享、社区分发、标准化能力 ✅ 可复用 ✅ 可版本化 ✅ 可发布 ❌ 需要结构化配置 ❌ 初始成本更高
  • 插件结构概览
目录 / 文件 位置 作用 / 目的 是否必需 说明
.claude-plugin/ 插件根目录 插件元信息目录,包含 plugin.json 可选 若所有组件使用默认位置,可省略
plugin.json .claude-plugin/ 插件清单(名称、版本、入口等) 推荐 插件的核心描述文件
commands/ 插件根 定义 Skills(Markdown 文件) 常用 每个 .md 文件对应一个 /command
agents/ 插件根 自定义 Agent 定义 可选 扩展 AI 行为(专用 agent)
skills/ 插件根 高级 Skill(带 SKILL.md 可选 比 commands 更复杂的能力封装
hooks/ 插件根 事件钩子(hooks.json 可选 用于生命周期/事件触发
.mcp.json 插件根 MCP Server 配置 可选 扩展外部工具能力
.lsp.json 插件根 LSP Server 配置 可选 提供代码补全/分析能力
settings.json 插件根 插件默认配置 可选 启用插件时自动应用
插件根目录
├── .claude-plugin/
│   └── plugin.json
├── commands/        # 轻量技能(/xxx)
├── skills/          # 复杂技能(结构化)
├── agents/          # 自定义 Agent
├── hooks/           # 生命周期钩子
├── .mcp.json        # 外部工具扩展
├── .lsp.json        # 语言服务
└── settings.json    # 默认配置
  • 常见错误:不要将 commands/agents/skills/hooks/ 放在.claude-plugin/目录内。只有 plugin.json 应该在 .claude-plugin/ 内。所有其他目录必须在插件根级别。

通过市场发现和安装Plugin

  • 1.通过 /plugin 命令调出 plugin 的管理界面进行安装与管理
❯ /plugin

────────────────────────────────────────────────────────────────────────────────────────────
  Plugins  Discover   Installed   Marketplaces   Errors

  Discover plugins (1/82)
  ╭──────────────────────────────────────────────────────────────────────────────────────╮
  │ ⌕ Search…                                                                            │
  ╰──────────────────────────────────────────────────────────────────────────────────────╯

  ❯ ◯ frontend-design · claude-plugins-official · 324K installs
      Create distinctive, production-grade frontend interfaces ...

    ◯ context7 · claude-plugins-official [Community Managed] · 168.8K installs
      Upstash Context7 MCP server for up-to-date documentation ...

    ◯ code-review · claude-plugins-official · 148.8K installs
      Automated code review for pull requests using multiple sp...

    ◯ github · claude-plugins-official · 126.1K installs
      Official GitHub MCP server for repository management. Cre...

    ◯ code-simplifier · claude-plugins-official · 121.2K installs
      Agent that simplifies and refines code for clarity, consi...
   ↓ more below

  type to search · Space to toggle · Enter to details · Esc to back
  • 2.通过 /plugin 命令直接安装
# 从claude的plugin官方市场进行安装(前提是官方市场必须含有该插件)
/plugin install superpowers@claude-plugins-official

# 添加一个第三方plugin市场
/plugin marketplace add obra/superpowers-marketplace
# 从第三方市场安装插件
/plugin install superpowers@superpowers-marketplace
  • 3.通过 claude plugin 命令安装
# 从claude的plugin官方市场进行安装(前提是官方市场必须含有该插件)
claude plugin install superpowers@claude-plugins-official

# 添加一个第三方plugin市场
claude plugin marketplace add obra/superpowers-marketplace
# 从第三方市场安装插件
claude plugin install superpowers@superpowers-marketplace

# 查看插件
claude plugin list
# 删除插件
claude plugin uninstall superpowers@superpowers-marketplace

# 查看市场
claude plugin marketplace list
# 删除第三方市场
claude plugin marketplace remove obra/superpowers-marketplace
  • 插件安装后的位置: ~/.claude/plugins/cache/ + market-name/plugin-name/version

如何使用 plugin

  • plugin 也是 skill,通常大模型可以自由判断是否使用,我们也可以通过 skill-name 来强制使用
  • 比如我们上面安装的superpowers,其拥有如下skills
分类 技能名称 中文名称 说明
Testing(测试) test-driven-development 测试驱动开发 使用 RED-GREEN-REFACTOR 循环(红-绿-重构),并包含常见测试反模式参考
Debugging(调试) systematic-debugging 系统化调试 四阶段问题定位流程(包含根因追踪、防御性设计、基于条件等待等技术)
verification-before-completion 完成前验证 在结束前确认问题已真正修复,而非表面解决
Collaboration(协作) brainstorming 头脑风暴 使用苏格拉底式提问进行设计优化与方案推演
writing-plans 编写计划 制定详细的实施计划(可执行级别)
executing-plans 执行计划 按批次执行任务,并设置检查点
dispatching-parallel-agents 并行代理调度 使用多个子代理并发执行任务
requesting-code-review 请求代码评审 提交评审前的检查清单
receiving-code-review 接收代码评审 如何有效回应评审反馈
using-git-worktrees 使用 Git Worktrees 利用 worktree 实现并行开发分支
finishing-a-development-branch 完成开发分支 合并 / PR 决策流程
subagent-driven-development 子代理驱动开发 双阶段评审:先检查规格一致性,再检查代码质量
Meta(元能力) writing-skills 编写技能 按最佳实践创建新的技能(包含测试方法论)
using-superpowers 使用 Superpowers 技能系统的整体介绍与使用指南
  • superpowers 推荐组合
    • 简单场景:brainstorming(设计) --> writing-plans(计划) --> executing-plans(执行)
    • 复杂场景: brainstorming --> writing-plans --> test-driven-development(先写测试用例) --> executing-plans --> systematic-debugging(出现问题时) --> verification-before-completion(验证是否修复)

Agents

  • 在 Claude Code 中创建和使用专门的 AI subagents,用于特定任务的工作流和改进的上下文管理。
  • 可以通过 /agents 命令进行创建,也可以手工创建
位置 范围 优先级 如何创建
--agents CLI 标志 当前会话 1(最高) 启动 Claude Code 时传递 JSON
.claude/agents/ 当前项目 2 交互式或手动
~/.claude/agents/ 所有项目 3 交互式或手动
插件的 agents/ 目录 启用插件范围 4(最低) 随 plugins 安装
  • 通过 @ 关联 要使用的 agent

Skills

  • 自定义命令已合并到 skills 中。 .claude/commands/deploy.md 中的文件和 .claude/skills/deploy/SKILL.md 中的 skill 都会创建 /deploy 并以相同的方式工作。你现有的 .claude/commands/ 文件继续工作。Skills 添加了可选功能:支持文件的目录、控制你或 Claude 是否调用它们的 frontmatter,以及 Claude 在相关时自动加载它们的能力。
位置 路径 适用于
企业 请参阅托管设置 组织内所有用户
个人 ~/.claude/skills/<skill-name>/SKILL.md 所有项目
项目 .claude/skills/<skill-name>/SKILL.md 当前项目
插件 <plugin>/skills/<skill-name>/SKILL.md 启用插件范围
  • 当 skills 在各个级别共享相同名称时,更高优先级的位置获胜:企业 > 个人 > 项目。插件 skills 使用 plugin-name:skill-name 命名空间,因此它们不能与其他级别冲突。如果你在 .claude/commands/ 中有文件,它们的工作方式相同,但如果 skill 和命令共享相同名称,skill 优先
  • Frontmatter 参考
字段 必需 描述
name Skill 显示名称;默认使用目录名。仅支持小写字母、数字和连字符(≤64 字符)
description 推荐 描述功能及使用场景;用于决定何时触发。默认取 Markdown 首段
argument-hint 自动完成提示参数格式(如 [issue-number][filename] [format]
disable-model-invocation 设为 true 禁止自动触发,仅允许 /name 手动调用;默认 false
user-invocable 设为 false/ 菜单隐藏;用于内部或背景 skill;默认 true
allowed-tools 激活该 skill 时无需额外授权即可使用的工具列表
model 指定 skill 激活时使用的模型
context 设为 fork 表示在子 agent 上下文中运行
agent context: fork 时指定使用的 subagent 类型
hooks 该 skill 生命周期内生效的 hooks 配置
变量 描述
$ARGUMENTS 调用 skill 时传递的全部参数;若未在内容中显式使用,则自动追加为 ARGUMENTS: <value>
$ARGUMENTS[N] 按 0 基索引访问参数,如 $ARGUMENTS[0] 表示第一个参数
$N $ARGUMENTS[N] 的简写,如 $0 表示第一个参数、$1 表示第二个参数
${CLAUDE_SESSION_ID} 当前会话 ID;用于日志、生成会话相关文件或关联输出
${CLAUDE_SKILL_DIR} skill 所在目录(包含 SKILL.md);用于引用绑定脚本/文件(适用于任意工作目录)
  • 一个简单的示例
---
name: git-init
description: 将当前目录初始化为git仓库,自动创建.gitignore并提交文件,可选推送到远程仓库
argument-hint: [remote_url]
allowed-tools: Read, Write, Bash(git *), Glob
disable-model-invocation: true
---

请执行以下步骤:

1. 首先使用 `git init` 将当前目录初始化为 git 仓库

2. 检查当前目录是否已存在 `.gitignore` 文件(使用 Glob 工具搜索)

3. 如果不存在 `.gitignore`,根据当前目录的文件来推断项目类型并创建合适的 `.gitignore`:
   - 如果有 `package.json` → Node.js 项目
   - 如果有 `Cargo.toml` → Rust 项目
   - 如果有 `go.mod` → Go 项目
   - 如果有 `pom.xml` 或 `build.gradle` → Java 项目
   - 如果有 `*.py` 文件 → Python 项目
   - 如果有 `*.html` 或 `*.css` 或 `*.js` 文件 → Web 项目
   - 如果有 `*.swift` → Swift 项目
   - 如果有 `*.kt` → Kotlin 项目

4. 使用 `git add .` 添加所有文件

5. 使用 `git commit -m "Initial commit"` 提交

6. 如果命令中包含了远程仓库 URL(在斜杠命令后以空格分隔给出):
   - 使用 `git remote add origin $ARGUMENTS` 添加远程仓库
   - 使用 `git push -u origin master` 或 `git push -u origin main` 推送到远程

MCP

  • 添加远程 HTTP 服务器
# 基本语法
claude mcp add --transport http <name> <url>

# 真实示例:连接到 Notion
claude mcp add --transport http notion https://mcp.notion.com/mcp

# 带有 Bearer 令牌的示例
claude mcp add --transport http secure-api https://api.example.com/mcp \
  --header "Authorization: Bearer your-token"
  • 添加本地 stdio 服务器
# 基本语法
claude mcp add [options] <name> -- <command> [args...]

# 真实示例:添加 Airtable 服务器
claude mcp add --transport stdio --env AIRTABLE_API_KEY=YOUR_KEY airtable \
  -- npx -y airtable-mcp-server
  • 管理您的服务器
# 列出所有配置的服务器
claude mcp list

# 获取特定服务器的详细信息
claude mcp get github

# 删除服务器
claude mcp remove github

# (在 Claude Code 中)检查服务器状态
/mcp
  • MCP 安装范围
范围 存储位置 适用范围 特点说明
本地(local) 项目级用户配置(默认,不共享)~/.claude.json :项目路径字段下 当前项目 + 当前用户 默认范围,仅自己可用;适合实验配置或敏感凭据
项目(project) 项目根目录 .mcp.json 项目所有成员 可提交到版本控制;团队共享统一 MCP 工具
用户(user) 用户级配置(全局)~/.claude.json : mcpServers 字段下 当前用户的所有项目 跨项目复用;适合常用工具或个人基础设施
# 显式指定安装范围 --scope
claude mcp add --transport http stripe --scope local https://mcp.stripe.com
  • 支持环境变量
${VAR} - 扩展为环境变量 VAR 的值
${VAR:-default} - 如果设置了 VAR,则扩展为 VAR,否则使用 default
  • 扩展位置: 环境变量可以在以下位置扩展:
command - 服务器可执行文件路径
args - 命令行参数
env - 传递给服务器的环境变量
url - 对于 HTTP 服务器类型
headers - 对于 HTTP 服务器身份验证
  • 带有变量扩展的示例:
{
  "mcpServers": {
    "api-server": {
      "type": "http",
      "url": "${API_BASE_URL:-https://api.example.com}/mcp",
      "headers": {
        "Authorization": "Bearer ${API_KEY}"
      }
    }
  }
}

LSP

Java

  • 安装对应的LSP服务器
brew install jdtls
  • jdk版本要求17+
  • claudecode中安装对应的插件:jdtls-lsp,这个是官方插件,直接在 /plugin 中搜索安装即可。一般情况下插件说明中会有相应的安装要求和使用说明介绍。
  • 如何使用:claudecode在读取文件时会根据文件后缀进行匹配,自动决定是否使用 LSP 功能,你也可以在给claude的要求中明确说明要 使用LSP去分析
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐