Claude Code 终端 AI 编程助手

Posted on Oct 25, 2025

了解 Anthropic 的智能编程工具 Claude Code,它运行在你的终端中,帮你比以往更快地将创意转化为代码。

核心功能

  • 自然语言编程:用简单描述构建功能、修复 Bug
  • 代码库理解:快速掌握复杂项目结构和架构
  • 自动化开发:执行日常任务、管理 Git、运行测试
  • 终端集成:在你熟悉的环境中工作,无需切换工具

快速开始

前提条件

  • Node.js 18+
  • Claude.ai 或 Anthropic Console 账户
# 安装
npm install -g @anthropic-ai/claude-code

# 进入项目目录
cd your-project

# 启动 Claude Code
claude
# 首次使用会提示登录

核心工作流

理解新代码库

> 这个项目是做什么的?
> 解释主要架构模式
> 找到用户认证相关文件

修复 Bug

> npm test 出现错误,请修复
> 用户提交空表单的问题,添加验证

代码重构

> 将回调改为 async/await
> 为工具函数添加单元测试

Git 操作

> 我修改了哪些文件?
> 用描述性信息提交更改
> 创建 feature/auth 分支

高级功能

子代理系统

创建专门的 AI 助手处理特定任务:

/agents  # 管理子代理
> 使用 code-reviewer 子代理检查我的更改

计划模式

安全分析代码库而不做修改:

claude --permission-mode plan
> 分析认证系统并建议改进方案

自定义命令

创建可重用斜杠命令:

# 创建项目命令
echo "分析性能问题并建议优化" > .claude/commands/optimize.md
# 使用命令
> /optimize

配置管理

设置文件层级

  • 企业策略:组织级标准和安全策略
  • 项目设置
  • 用户设置:个人偏好(~/.claude/settings.json

权限控制

{
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test:*)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl:*)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  },
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp"
  }
}

可用设置

settings.json 支持多个选项:

描述 示例
apiKeyHelper 自定义脚本,在 /bin/sh 中执行,生成认证值。此值将作为 X-Api-Key 和 Authorization: Bearer 标头发送给模型请求 /bin/generate_temp_api_key.sh
cleanupPeriodDays 基于最后活动日期本地保留聊天记录的时间(默认:30天) 20
env 将应用于每个会话的环境变量 {"FOO": "bar"}
includeCoAuthoredBy 是否在 git 提交和拉取请求中包含 co-authored-by Claude 署名(默认:true false
permissions 权限结构见下表。👇
hooks 配置在工具执行前后运行的自定义命令。参见钩子文档 {"PreToolUse": {"Bash": "echo 'Running command...'"}}
disableAllHooks 禁用所有钩子 true
model 覆盖 Claude Code 使用的默认模型 "claude-3-5-sonnet-20241022"
statusLine 配置自定义状态行以显示上下文。参见statusLine 文档 {"type": "command", "command": "~/.claude/statusline.sh"}
outputStyle 配置输出样式以调整系统提示。参见输出样式文档 "Explanatory"
forceLoginMethod 使用 claudeai 限制登录到 Claude.ai 账户,console 限制登录到 Anthropic Console(API 使用计费)账户 claudeai
forceLoginOrgUUID 指定组织的 UUID 以在登录期间自动选择它,绕过组织选择步骤。需要设置 forceLoginMethod "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
enableAllProjectMcpServers 自动批准项目 .mcp.json 文件中定义的所有 MCP 服务器 true
enabledMcpjsonServers 从 .mcp.json 文件中批准的特定 MCP 服务器列表 ["memory", "github"]
disabledMcpjsonServers 从 .mcp.json 文件中拒绝的特定 MCP 服务器列表 ["filesystem"]

权限设置

描述 示例
allow 允许工具使用的权限规则数组。注意: Bash 规则使用前缀匹配,不是正则表达式 [ "Bash(git diff:*)" ]
ask 在工具使用时要求确认的权限规则数组。 [ "Bash(git push:*)" ]
deny 拒绝工具使用的权限规则数组。使用此选项也可以排除敏感文件不被 Claude Code 访问。注意: Bash 模式是前缀匹配,可以被绕过(参见Bash 权限限制 [ "WebFetch", "Bash(curl:*)", "Read(./.env)", "Read(./secrets/**)" ]
additionalDirectories Claude 可以访问的额外工作目录
defaultMode 打开 Claude Code 时的默认权限模式 "acceptEdits"
disableBypassPermissionsMode 设置为 "disable" 以防止激活 bypassPermissions 模式。参见托管策略设置 "disable"

配置系统的关键点

  • 内存文件(CLAUDE.md):包含 Claude 在启动时加载的指令和上下文
  • 设置文件(JSON):配置权限、环境变量和工具行为
  • 斜杠命令:可以在会话期间使用 /command-name 调用的自定义命令
  • MCP 服务器:使用额外的工具和集成扩展 Claude Code
  • 优先级:更高级别的配置(企业)覆盖较低级别的配置(用户/项目)
  • 继承:设置被合并,更具体的设置添加到或覆盖更广泛的设置

实用技巧

高效提问

  • 具体明确:“修复登录后白屏问题” 而非 “修复 Bug”
  • 分步说明:将复杂任务拆解为多个步骤
  • 提供上下文:包含错误信息、复现步骤

终端集成

  • # 开头:快速添加记忆到 CLAUDE.md
  • / 开头:使用斜杠命令
  • ! 开头:直接执行 Bash 命令
  • @文件路径:引用文件内容

会话管理

claude --continue    # 继续最近会话
claude --resume      # 选择恢复会话
/claer              # 清除对话历史

开发体验

实时协作

  • 直接编辑文件并征求确认
  • 运行命令验证更改
  • 自动处理合并冲突

上下文感知

  • 自动读取相关文件
  • 理解项目结构和依赖
  • 保持编码规范和风格

企业特性

  • 安全合规:数据本地处理,企业级隐私保护
  • 成本控制:详细的令牌使用统计
  • 团队协作:共享配置和自定义命令
  • 扩展集成:支持 MCP 协议连接外部工具

Claude Code 将 AI 编程助手直接集成到你的开发工作流中,通过自然语言交互提升编码效率,同时保持对代码的完全控制。