Claude Code 专家技能
本技能提供关于使用Claude Code的全面指导,Claude Code是Anthropic的代理编码工具。
何时使用本技能
当用户需要帮助时使用本技能:
- 了解Claude Code的功能和能力
- 设置和配置Claude Code
- 使用斜杠命令、钩子和插件
- 使用MCP服务器和代理技能
- 解决Claude Code问题
- 理解Claude Code使用最佳实践
- 在企业环境中部署Claude Code
- 在IDE(VS Code、JetBrains)中使用Claude Code
核心概念
什么是Claude Code?
Claude Code是Anthropic的代理编码工具,驻留在您的终端中,帮助您更快地将想法转化为代码。关键功能包括:
- 代理能力:Claude自主规划、执行和验证任务
- 终端集成:直接在命令行中工作
- IDE支持:VS Code和JetBrains IDE的扩展
- 可扩展性:插件、技能、斜杠命令和MCP服务器
- 企业就绪:SSO、沙箱、监控和合规功能
架构组件
-
子代理:用于特定任务的专用AI代理
planner:研究和创建实施计划code-reviewer:审查代码质量和安全性tester:运行测试和验证实施debugger:调查和诊断问题docs-manager:管理技术文档ui-ux-designer:设计和实现UI/UXdatabase-admin:数据库优化和管理- 以及许多其他专用代理
-
代理技能:扩展功能的模块化能力
- 包含指令、元数据和资源
- 由Claude自动发现和使用
- 在项目和团队之间可共享
-
斜杠命令:用户定义的操作,扩展为提示
- 位于
.claude/commands/中 - 使用
/command-name执行 - 可以接受参数
- 位于
-
钩子:响应事件执行的Shell命令
- 工具执行前后钩子
- 用户提示提交钩子
- 可定制的验证和自动化
-
MCP服务器:模型上下文协议集成
- 连接外部工具和服务
- 提供资源、工具和提示
- 支持远程和本地服务器
安装与设置
前提条件
- macOS、Linux或Windows(WSL2)
- Node.js 18+或Python 3.10+
- 来自Anthropic控制台的API密钥
安装
# 通过npm安装(推荐)
npm install -g @anthropic-ai/claude-code
# 或通过pip安装
pip install claude-code
认证
# 使用API密钥登录
claude login
# 或设置环境变量
export ANTHROPIC_API_KEY=your_api_key
首次运行
# 启动交互式会话
claude
# 运行特定任务
claude "implement user authentication"
# 在特定目录中使用
cd /path/to/project
claude
常见工作流
1. 功能实现
# 使用cook命令进行功能工作
/cook implement user authentication with JWT
# 或从规划开始
/plan implement payment integration with Stripe
2. 错误修复
# 快速修复
/fix:fast the login button is not working
# 复杂调试
/debug the API returns 500 errors intermittently
# 修复类型错误
/fix:types
3. 代码审查与测试
# 审查最近更改
claude "review my latest commit"
# 运行测试
/test
# 修复测试失败
/fix:test the user service tests are failing
4. 文档
# 创建初始文档
/docs:init
# 更新现有文档
/docs:update
# 总结更改
/docs:summarize
5. Git操作
# 提交更改
/git:cm
# 提交并推送
/git:cp
# 创建拉取请求
/git:pr feature-branch main
斜杠命令参考
开发命令
/cook [task]:实现功能/plan [task]:研究和创建实施计划/debug [issue]:调试技术问题/test:运行测试套件/refactor:提高代码质量
修复命令
/fix:fast [issue]:快速修复/fix:hard [issue]:带有规划的复杂问题/fix:types:修复TypeScript错误/fix:test [issue]:修复测试失败/fix:ui [issue]:修复UI问题/fix:ci [url]:修复CI/CD问题/fix:logs [issue]:分析日志并修复
文档命令
/docs:init:创建初始文档/docs:update:更新现有文档/docs:summarize:总结代码库
Git命令
/git:cm:暂存和提交/git:cp:暂存、提交和推送/git:pr [branch] [base]:创建拉取请求
规划命令
/plan:two [task]:创建两种方法的计划/plan:ci [url]:规划CI/CD修复/plan:cro [issue]:创建CRO优化计划
内容命令
/content:fast [request]:快速文案写作/content:good [request]:高质量文案/content:enhance [issue]:增强现有内容/content:cro [issue]:转化率优化
设计命令
/design:fast [task]:快速设计/design:good [task]:高质量设计/design:3d [task]:使用Three.js的3D设计/design:screenshot [path]:从截图设计/design:video [path]:从视频设计
部署命令
/deploy:使用dx up部署/deploy-check:检查部署准备情况
其他命令
/brainstorm [question]:头脑风暴功能/ask [question]:回答技术问题/scout [prompt]:侦察目录/watzup:审查最近更改/bootstrap [requirements]:引导新项目/journal:写日志条目
代理技能
创建技能
技能位于.claude/skills/中,包含:
- skill.md:主要技能指令
- skill.json:元数据和配置
示例skill.json:
{
"name": "my-skill",
"description": "Brief description of when to use this skill",
"version": "1.0.0",
"author": "Your Name"
}
示例skill.md结构:
# 技能名称
描述此技能的作用。
## 何时使用本技能
Claude应激活此技能的具体场景。
## 指令
Claude遵循的逐步指令。
## 示例
技能使用的具体示例。
技能最佳实践
- 清晰激活标准:明确定义何时应使用技能
- 简洁指令:专注于基本信息
- 可操作指导:提供Claude可遵循的清晰步骤
- 示例:包括预期输入/输出的具体示例
- 范围限制:保持技能专注于特定领域
通过API使用技能
技能可与Claude API一起使用:
import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY });
const response = await client.messages.create({
model: 'claude-sonnet-4-5-20250929',
max_tokens: 4096,
skills: [
{
type: 'custom',
custom: {
name: 'document-creator',
description: 'Creates professional documents',
instructions: 'Follow corporate style guide...'
}
}
],
messages: [{ role: 'user', content: 'Create a project proposal' }]
});
MCP服务器集成
什么是MCP?
模型上下文协议(MCP)允许Claude Code连接到外部工具和服务。
配置
MCP服务器在.claude/mcp.json中配置:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "your_github_token"
}
}
}
}
常见MCP服务器
- @modelcontextprotocol/server-filesystem:文件系统访问
- @modelcontextprotocol/server-github:GitHub集成
- @modelcontextprotocol/server-postgres:PostgreSQL数据库
- @modelcontextprotocol/server-brave-search:网页搜索
- @modelcontextprotocol/server-puppeteer:浏览器自动化
远程MCP服务器
通过HTTP/SSE连接到MCP服务器:
{
"mcpServers": {
"remote-service": {
"url": "https://api.example.com/mcp",
"headers": {
"Authorization": "Bearer token"
}
}
}
}
钩子系统
钩子类型
- 工具前钩子:在工具调用前执行
- 工具后钩子:在工具调用后执行
- 用户提示提交钩子:当用户提交提示时执行
配置
钩子在.claude/hooks.json中配置:
{
"hooks": {
"pre-tool": {
"bash": "echo 'Running bash command: $TOOL_ARGS'"
},
"post-tool": {
"write": "./scripts/format-code.sh"
},
"user-prompt-submit": "./scripts/validate-request.sh"
}
}
钩子环境变量
在钩子脚本中可用:
$TOOL_NAME:被调用工具的名称$TOOL_ARGS:工具参数的JSON字符串$TOOL_RESULT:工具执行结果(仅工具后)$USER_PROMPT:用户的提示文本(仅用户提示提交)
使用案例
- 文件写入后代码格式化
- Bash执行前安全验证
- 成本跟踪和预算
- 自定义日志和监控
- 与外部系统集成
插件系统
插件结构
插件是扩展的打包集合:
my-plugin/
├── plugin.json # 插件元数据
├── commands/ # 斜杠命令
├── skills/ # 代理技能
├── hooks/ # 钩子脚本
├── mcp/ # MCP服务器配置
└── README.md # 文档
plugin.json示例
{
"name": "my-plugin",
"version": "1.0.0",
"description": "Plugin description",
"author": "Your Name",
"homepage": "https://github.com/user/plugin",
"commands": ["commands/*.md"],
"skills": ["skills/*/"],
"hooks": "hooks/hooks.json",
"mcpServers": "mcp/mcp.json"
}
安装插件
# 从GitHub安装
claude plugin install gh:username/repo
# 从本地路径安装
claude plugin install ./path/to/plugin
# 从npm安装
claude plugin install npm:package-name
# 列出已安装插件
claude plugin list
# 卸载插件
claude plugin uninstall plugin-name
创建插件市场
组织可以创建私有插件市场:
{
"marketplaces": [
{
"name": "company-internal",
"url": "https://plugins.company.com/catalog.json",
"auth": {
"type": "bearer",
"token": "${COMPANY_PLUGIN_TOKEN}"
}
}
]
}
配置与设置
设置层次结构
- 全局设置:
~/.claude/settings.json - 项目设置:
.claude/settings.json - 环境变量
- 命令行标志
关键设置
{
"model": "claude-sonnet-4-5-20250929",
"maxTokens": 8192,
"temperature": 1.0,
"thinking": {
"enabled": true,
"budget": 10000
},
"sandboxing": {
"enabled": true,
"allowedPaths": ["/workspace"],
"networkAccess": "restricted"
},
"outputStyle": "default",
"memory": {
"enabled": true,
"location": "project"
}
}
模型配置
可用模型别名:
opusplan:用于规划的Claude Opus,带扩展思考sonnet:最新Claude Sonnethaiku:用于快速响应的Claude Haiku
输出样式
为不同使用案例自定义Claude行为:
# 列出可用输出样式
ls ~/.claude/output-styles/
# 使用特定输出样式
claude --output-style technical-writer
# 创建自定义输出样式
cat > ~/.claude/output-styles/my-style.md <<EOF
You are a [role]. Follow these guidelines:
- [Guideline 1]
- [Guideline 2]
EOF
企业功能
身份与访问管理
SSO集成:支持SAML 2.0和OAuth 2.0 RBAC:基于角色的访问控制 用户管理:集中用户配置
安全与合规
沙箱:文件系统和网络隔离 审计日志:全面的活动日志 数据驻留:区域特定部署选项 合规:SOC 2、HIPAA、GDPR合规
部署选项
Amazon Bedrock:通过AWS Bedrock部署 Google Vertex AI:通过GCP Vertex AI部署 自托管:使用Docker/Kubernetes的本地部署 LLM网关:与LiteLLM和其他网关集成
监控与分析
OpenTelemetry:内置遥测支持 使用分析:跟踪团队生产力指标 成本管理:监控和控制API成本 自定义仪表板:构建组织特定仪表板
网络配置
代理支持:HTTP/HTTPS代理配置 自定义CA:信任自定义证书机构 mTLS:相互TLS认证 IP允许列表:按IP限制访问
IDE集成
Visual Studio Code
安装官方扩展:
- 打开VS Code
- 在扩展中搜索“Claude Code”
- 安装并认证
功能:
- 内联聊天
- 代码操作
- 差异视图
- 终端集成
JetBrains IDE
支持的IDE:
- IntelliJ IDEA
- PyCharm
- WebStorm
- PhpStorm
- GoLand
- RubyMine
安装:
- 打开设置 → 插件
- 搜索“Claude Code”
- 安装并认证
CI/CD集成
GitHub Actions
示例工作流:
name: Claude Code CI
on: [push, pull_request]
jobs:
claude-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: anthropic/claude-code-action@v1
with:
command: '/fix:types && /test'
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GitLab CI/CD
示例管道:
claude-review:
image: node:18
script:
- npm install -g @anthropic-ai/claude-code
- claude login --api-key $ANTHROPIC_API_KEY
- claude '/fix:types && /test'
only:
- merge_requests
高级功能
扩展思考
为复杂问题启用深度推理:
# 全局启用扩展思考
claude config set thinking.enabled true
# 设置思考预算
claude config set thinking.budget 15000
# 在API中使用
const response = await client.messages.create({
model: 'claude-sonnet-4-5-20250929',
thinking: {
type: 'enabled',
budget_tokens: 10000
},
messages: [...]
});
提示缓存
通过缓存重复上下文降低成本:
const response = await client.messages.create({
model: 'claude-sonnet-4-5-20250929',
system: [
{
type: 'text',
text: 'You are a coding assistant...',
cache_control: { type: 'ephemeral' }
}
],
messages: [...]
});
检查点
自动跟踪和回滚更改:
# 启用检查点
claude config set checkpointing.enabled true
# 查看检查点
claude checkpoint list
# 回滚到检查点
claude checkpoint restore <checkpoint-id>
# 创建手动检查点
claude checkpoint create "before refactoring"
内存管理
控制Claude如何记住上下文:
# 启用内存
claude config set memory.enabled true
# 设置内存位置(全局/项目/无)
claude config set memory.location project
# 查看存储的内存
claude memory list
# 清除内存
claude memory clear
故障排除
常见问题
认证失败
# 重新登录
claude logout
claude login
# 验证API密钥
echo $ANTHROPIC_API_KEY
MCP服务器连接问题
# 测试MCP服务器
npx @modelcontextprotocol/inspector
# 检查MCP配置
cat .claude/mcp.json
性能问题
- 减少上下文窗口大小
- 启用提示缓存
- 使用适当模型(Haiku用于速度)
- 清除内存缓存
权限错误
- 检查文件权限
- 验证沙箱设置
- 审查钩子配置
调试模式
启用详细日志:
# 启用调试日志
export CLAUDE_DEBUG=1
claude
# 或使用调试标志
claude --debug "implement feature"
获取帮助
- 文档:https://docs.claude.com/claude-code
- GitHub问题:https://github.com/anthropics/claude-code/issues
- 支持:support.claude.com
- 社区:discord.gg/anthropic
最佳实践
1. 项目组织
- 将
.claude/目录保留在版本控制中 - 记录自定义命令和技能
- 与团队共享插件配置
- 使用项目特定设置
2. 安全
- 从不提交API密钥
- 使用环境变量处理秘密
- 在生产中启用沙箱
- 执行前审查钩子脚本
- 审计插件来源
3. 性能优化
- 为重复上下文使用提示缓存
- 为任务选择适当模型
- 在钩子中实现速率限制
- 监控令牌使用
- 为批量操作使用批处理
4. 团队协作
- 标准化跨项目的斜杠命令
- 通过插件市场共享有用技能
- 记录自定义配置
- 设置CI/CD集成
- 使用一致的内存设置
5. 成本管理
- 在钩子中设置预算限制
- 通过分析API监控使用
- 为简单任务使用Haiku
- 实施缓存策略
- 跟踪每项目成本
API参考
管理API
获取使用报告
GET /v1/admin/claude-code/usage
获取成本报告
GET /v1/admin/usage/cost
列出用户
GET /v1/admin/users
消息API
创建消息
POST /v1/messages
流式消息
POST /v1/messages (with stream=true)
计数令牌
POST /v1/messages/count_tokens
文件API
上传文件
POST /v1/files
列出文件
GET /v1/files
删除文件
DELETE /v1/files/:file_id
模型API
列出模型
GET /v1/models
获取模型
GET /v1/models/:model_id
技能API
创建技能
POST /v1/skills
列出技能
GET /v1/skills
更新技能
PATCH /v1/skills/:skill_id
结论
Claude Code是一个强大的代理编码工具,可以显著加速开发工作流。通过利用其通过技能、插件、MCP服务器和钩子的可扩展性,您可以创建一个高度定制的开发环境,以满足团队的需求。
从基本命令开始简单,然后随着需求增长,逐渐采用高级功能,如自定义技能、MCP集成和企业部署选项。