以下操作均在Ubuntu 22.04

安装

Claude Code 文档

curl -fsSL https://claude.ai/install.sh | bash

使用

设置API KEY(推荐)

# 设置环境变量
export ANTHROPIC_AUTH_TOKEN="sk-ant-xxxxxxxxxx"
export ANTHROPIC_BASE_URL="https://api.anthropic.com" # 可选,默认就是这个

初次使用(设置主题、登录、信任文件夹)

cd project_path
claude

设置API KEY可以免登录,如下图,建议使用推荐值即可

  • Enter = 执行命令
  • Shift+Enter = 插入换行(方便输入多行命令)
    20251128123943
    未设置API KEY,会提示登录,如下图:
    20251128124119

主界面

20251128125022

操作快捷键

快捷键 功能描述 使用方法
双击 ctrl + c/exit 退出claude ctrl + c需连续按
? 显示快捷键 在输入框中输入?会显示所有快捷键列表,再次输入?或点击外部可关闭
! 启动 Bash 命令模式 ! + 要执行的命令,例如 !ls -la!pwd
/ 打开斜杠命令菜单 输入/后会出现命令列表,如/reset、/help等,用方向键选择后回车
@ 引用或附加文件路径 输入@后可以从已上传的文件中选择引用,或上传新文件
# 记忆/学习功能 输入#后跟需要Claude记住的关键信息或概念
tab 切换思考(推理)过程显示 在Claude回复时按tab键可以显示/隐藏其思考过程
双击 esc 清空输入内容 快速连续按两次esc键,立即清空当前输入框中的所有内容
ctrl + _ 撤销上一步操作 在编辑文本时使用,可撤销上一次的输入或修改
shift + tab 自动接受编辑建议 当Claude提供编辑建议时,使用此快捷键快速接受所有建议
ctrl + z 暂停当前对话 暂停当前对话并返回系统命令行,输入fg命令可恢复对话
ctrl + o 切换详细输出模式 切换简洁输出和详细输出模式,获取更完整的技术细节
ctrl + v 粘贴图片 直接粘贴剪贴板中的图片到输入框,Claude会读取图片内容
ctrl + t 显示待办事项列表 打开任务管理面板,查看和管理已设置的待办事项
shift + ⏎ 输入换行(而不发送消息) 在需要换行时使用,避免直接回车就发送消息

常用工作流

可以通过快捷键Shift+Tab切换两种模式:
20251205162916

CLAUDE.md 是什么?

CLAUDE.md 是项目文档,类似于 README.md,但专门为Claude Code提供开发指导。当Claude进入项目时,会自动读取这个文件来了解项目架构、常见操作、代码结构等。核心作用:

  • 减少重复询问 - 不需要每次都解释项目结构
  • 提供上下文 - 让Claude快速理解代码库的”大图景”
  • 标准化流程 - 统一开发规范和操作方式

生成方式:

  1. 使用 /init 命令会自动扫描项目并生成(详见「/init 深度用法」章节)
  2. 使用 # 命令,如 #call me kk,会在 CLAUDE.md 文件记录这句话

常规对话模式(默认)

适用于文件查看、简单修改、单点问题解决

特点

  • 直接对话,看到什么说什么
  • 可用工具:Read, Edit, Bash, Glob, Grep
  • 适合小任务:改bug、加注释、查看代码

Plan模式

适用于复杂任务、多步骤开发、需要架构决策

Plan流程

初始理解 → 并行探索 → 制定计划 → 确认方案 → 开始执行
↓ ↓ ↓ ↓ ↓
Read-only Task(Explore) Task(Plan) AskUser ExitPlanMode

示例

  1. plan模式下告诉claude你要干什么,并根据提示回答和纠正问题
    20251205170635

20251205171723

20251205172458

  1. 新会话如何继续之前执行的计划
    根据第一步我们知道claude会在~/.claude/plans/创建计划文档,
    > `path/to/your_plan.md`告诉我这个计划执行到哪个阶段了?还是哪些没有实现?

进阶功能

非交互式调用(CI / 自动化场景)

默认情况下 Claude Code 需要终端交互,适合日常开发。但在脚本、CI Pipeline、定时任务中,需要用 --print 配合 --permission-mode

# 典型用法:把提示词通过管道传入,直接拿到输出
echo "解释这段代码的作用" | claude --print --permission-mode bypassPermissions ./src/utils.js

# 复杂场景:结合 heredoc 传入多行提示
claude --print --permission-mode bypassPermissions << 'EOF'
Review this function and suggest improvements:
@./src/api.js
EOF

**--print**:让 Claude Code 直接输出结果到 stdout,不再显示进度、思考过程等交互内容。

**--permission-mode bypassPermissions**:跳过所有权限确认(如执行危险命令、访问特定目录),相当于提前给所有操作授权。注意这是 危险操作,仅在完全信任输入源时使用。

常见组合:

# 适合 CI:安全地审查 PR
claude --print --permission-mode bypassPermissions --model sonnet "Review this diff: $(git diff)"

# 适合脚本:自动修复 lint 错误
claude --print --permission-mode bypassPermissions "Fix ESLint errors: $(npx eslint --format json)"

settings.json 完整配置

Claude Code 的配置文件位于 ~/.claude/settings.json,以下是比较实用的字段:

{
"env": {
"ANTHROPIC_AUTH_TOKEN": "<YOUR_API_KEY>",
"ANTHROPIC_BASE_URL": "https://api.anthropic.com"
},
"api_key": "<API_KEY>",
"api_timeout_ms": 300000,
"compact_threshold": 150000,
"output_format": "pretty", // 或 "stream-json", "null"
"temperature": 1,
"theme": "dark",
"language": "zh-CN",
"dangerously_skip_auth": false,
"cursor": "pointer"
}
字段 类型 说明
env object 环境变量,会被 Claude Code 读取,覆盖系统环境变量
api_key string 直接写 API Key(env.ANTHROPIC_AUTH_TOKEN 的简写)
api_timeout_ms number 单次 API 请求超时(毫秒),默认较大,可调小用于快速失败
compact_threshold number 上下文达到多少 token 时触发自动压缩
output_format string pretty(默认): 带颜色输出;stream-json: 流式 JSON;null: 无输出
temperature number 模型温度,0-1,影响创造性
theme string 界面主题:dark / light
language string 界面语言,不影响模型思考语言
dangerously_skip_auth boolean 跳过登录验证(仅测试环境使用)

claude –doctor 环境检查

运行以下命令检查 Claude Code 的环境是否正常:

claude --doctor

会检查:

  • API Key 是否配置且有效
  • 网络连接是否正常
  • 依赖是否完整
  • 配置是否有明显错误

输出示例:

✓ API key configured
✓ Network connection OK
✓ Settings file valid

使用第三方API

在 AI 编程工具里使用 M2

  1. 清理Anthropic环境变量
    export ANTHROPIC_AUTH_TOKEN=""
    export ANTHROPIC_BASE_URL=""
  2. 编辑或创建Claude Code的配置文件,路径为~/.claude/settings.json,在该文件中添加或更新env字段。
    {
    "env": {
    "ANTHROPIC_BASE_URL": "https://api.minimaxi.com/anthropic",
    "ANTHROPIC_AUTH_TOKEN": "<MINIMAX_API_KEY>",
    "API_TIMEOUT_MS": "3000000",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1,
    "ANTHROPIC_MODEL": "MiniMax-M2",
    "ANTHROPIC_SMALL_FAST_MODEL": "MiniMax-M2",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "MiniMax-M2",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "MiniMax-M2",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "MiniMax-M2"
    }
    }

各字段说明:

字段 说明
ANTHROPIC_BASE_URL 第三方 API 地址(MiniMax 国内加速地址)
ANTHROPIC_AUTH_TOKEN 第三方 API Key
API_TIMEOUT_MS 请求超时(毫秒),大文件/长任务建议调大
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 禁用非必要流量(如匿名使用统计),调用第三方 API 时建议设为 1,避免多余请求浪费配额
ANTHROPIC_MODEL 默认模型
ANTHROPIC_SMALL_FAST_MODEL 轻量快速模型(简单任务自动降级)
ANTHROPIC_DEFAULT_SONNET/OPUS/HAIKU_MODEL 分别对应平衡/复杂/最快场景的模型名

/init 深度用法

/init 不只是”扫描项目”这么简单,实际流程更细致:

# 标准流程
cd /path/to/project
claude
> /init

扫描行为:

  • 读取项目根目录的 CLAUDE.md(如果存在,跳过生成)
  • 分析语言/框架类型(通过 package.json*.pyprojCargo.toml 等)
  • 扫描源码目录结构(默认忽略 node_modulesvendor__pycache__.git 等)
  • 生成项目摘要写入根目录的 CLAUDE.md

可调参数:

  • --no-input:不提问,直接生成并写入 CLAUDE.md(适合自动化脚本)
  • --dir <path>:指定要扫描的子目录(默认整个项目)
  • --output <file>:指定输出文件名(默认 CLAUDE.md
# 自动化场景:不提问,直接生成
claude --print --permission-mode bypassPermissions /init --no-input

# 只扫描 src 目录
claude /init --dir ./src

生成的 CLAUDE.md 内容示例:

# Project Overview
- Type: Node.js/TypeScript API Server
- Framework: Express.js
- Key Files: src/index.ts, src/routes/*.ts
- Build: npm run build
- Tests: npm test

SSH 远程开发

Claude Code 支持在远程服务器上运行,典型场景是 SSH 连到开发机或服务器:

# 直接 SSH 过去跑
ssh user@your-server.com
cd /path/to/project
claude

# 或通过 SSH Tunnel 代理本地 Claude Code 流量(减少服务器上直接存 API Key)
ssh -L 8080:localhost:8080 user@your-server.com

注意事项:

  • 服务器首次运行会要求信任目录(输入 y
  • 建议在本地配置好 ~/.claude/settings.json 的 API Key,通过 SSH Tunnel 不需要在服务器存 Key
  • 服务器性能影响响应速度,网络延迟是主要瓶颈
  • 推荐搭配 screentmux 使用,断连不丢会话:
# 创建持久会话
screen -S claude

# 恢复会话
screen -r claude

多会话管理

日常开发中常需要同时维护多个项目会话,Claude Code 没有内置会话列表,但可以用以下方式管理:

方式一:不同终端窗口

  • 每个项目开一个终端,互不干扰
  • 最简单直接

方式二:使用 --session 指定会话文件

# 保存当前会话到指定文件
claude --save-session ~/claude-sessions/myproject.json

# 恢复某个会话继续工作
claude --resume-session ~/claude-sessions/myproject.json

方式三:plans 目录管理
Plan 模式的计划文件会保存在 ~/.claude/plans/,可以用有意义的名称命名:

# 重命名计划文件,方便识别
mv ~/.claude/plans/auto-generated.md ~/.claude/plans/myproject-redesign.md

# 继续之前的工作
claude
> /plan ~/.claude/plans/myproject-redesign.md

方式四:项目内会话隔离
在项目根目录放 .claude 子目录,存放项目级别的会话和配置:

mkdir -p .claude
# 项目特定的 settings
echo '{"env":{"ANTHROPIC_MODEL":"sonnet"}}' > .claude/settings.json

个人使用技巧

解决程序报错

  1. 保存程序运行报错前后的日志
  2. 进入项目源码目录
  3. 运行claude
  4. 输入提示词:根据path/to/log日志内容分析程序报错原因并修改错误

总结

Claude Code 是一个强大的 AI 编程助手,通过合理的配置和使用,可以显著提升开发效率。建议:

  • 首次使用时配置 API KEY 避免频繁登录
  • 复杂任务使用 Plan 模式,简单任务使用常规模式
  • 善用 CLAUDE.md 记录项目上下文,配合 /init 自动化生成
  • 自动化场景优先用 --print + --permission-mode bypassPermissions
  • 远程开发推荐配合 screen/SSH Tunnel 使用,保证会话持久性
  • 定期查看官方文档获取最新功能

相关链接