Claude Code 是 Anthropic(Claude AI 的开发者)于2025年初推出的命令行工具。它不是简单的代码补全AI,而是“代理式”(agentic)助手,能根据你的自然语言指令,自主规划步骤、执行任务。比如,你说“帮我构建一个React组件”,它会分析你的代码库、生成代码、测试并集成。它生活在你的终端(terminal)中,支持各种编程语言和环境,帮助开发者加速从想法到代码的过程。
与其他AI编码工具(如 GitHub Copilot)不同,Claude Code 更注重整个项目级别的协作:它能读取整个代码库、使用 bash 命令、查看 git 历史,甚至运行测试。研究显示,使用它能让开发速度提升5倍以上!
优势:适合团队协作,减少重复工作;局限:更偏向开发者,不适合非技术用户;需要命令行基础。
由于Claude 禁止CN地区访问,直接访问 Anthropic 官网(anthropic.com)或 Claude Code 文档(code.claude.com)可能被屏蔽。下载工具或使用 API 也需要翻墙。但别担心,有简单解决方案!
欢迎使用Claude Code!这个强大的AI编程助手能够帮助您提高编程效率,自动化开发任务。
使用npm进行全局安装:
bash
npm install -g @anthropic-ai/claude-code@latest
重要: 不要使用 sudo npm install -g,这可能导致权限问题和安全风险。
更新,官方推出了,不依赖于nodejs 的客户端:

安装方式:
sh
curl -fsSL https://claude.ai/install.sh | bash
sh
brew install --cask claude-code
powershell
irm https://claude.ai/install.ps1 | iex
老用户迁移:
如果我们之前已经安装过 Claude Code,迁移方法也非常简单。首先我们要确保关闭所有的 Claude code 会话窗口,然后在终端输入:
这条命令会自动下载原生可执行文件,并替换旧的 npm 版本。但在实测中,建议大家在使用 claude install 后再打开终端输入:
sh
npm uninstall -g @anthropic-ai/claude-code
通过这条命令就可以确保把旧版本给删除了。
安装完成后,导航到您的项目 目录并启动Claude Code:
bash
cd your-awesome-project
claude --version
# 正确显示出版本号,说明安装成功




创建或编辑配置文件:
bash
# 用户设置 (全局)
~/.claude/settings.json
# 项目设置 (项目级)
.claude/settings.json
配置文件示例:
json
{
"env": {
"ANTHROPIC_API_KEY": "您的APIkey",
"ANTHROPIC_BASE_URL": "https://api.yixia.ai/",
"CLAUDE_CODE_MAX_OUTPUT_TOKENS":64000,
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC":1,
"CLAUDE_MODEL": "Claude模型名称,例如:claude-4-sonnet"
},
"permissions": {
"allow": [],
"deny": []
}
}
Claude Code采用保守的权限策略,默认需要用户确认可能修改系统的操作。您可以自定义允许的工具列表:
/permissions 命令添加或移除工具settings.json 文件进行批量配置--allowedTools CLI标志设置会话特定权限配置Claude可以访问的附加工作目录:
json
{
"permissions": {
"additionalDirectories": ["../docs/", "../shared/"]
}
}
购买了API之后,只需要修改这个脚本第8行的readonly API_KEY="",填上你的APIkey(令牌),再将这个脚本保存为claudecode.sh,然后打开终端:
bash
chmod +x claudecode.sh
./claudecode.sh
跟着提示走就好了。
bash
#!/bin/bash
# ==============================================================================
# 🔧 配置区域 - 请在这里设置您的 API 配置
# ==============================================================================
# 🔑 API 密钥 - 请填入您的 API 密钥
readonly API_KEY="修改这里"
# 🌐 API 基础地址 - 请填入您的 API 基础地址 (例如: "https://api.yixia.ai/")
readonly API_BASE_URL="https://api.yixia.ai/"
# ==============================================================================
# 以下内容请勿修改
# ==============================================================================
# 脚本常量
readonly CLAUDE_COMMAND="claude"
readonly NPM_PACKAGE="@anthropic-ai/claude-code"
readonly CLAUDE_DIR="$HOME/.claude"
readonly SETTINGS_FILE="$CLAUDE_DIR/settings.json"
# 检测操作系统
detect_os() {
case "$(uname -s)" in
Darwin)
echo "macos"
;;
Linux)
echo "linux"
;;
*)
echo "unknown"
;;
esac
}
# 检查配置是否完整
check_config() {
if [ -z "$API_KEY" ] || [ -z "$API_BASE_URL" ]; then
echo "❌ 配置不完整!请编辑脚本并填入以下信息:"
echo " - API_KEY: 您的 API 密钥"
echo " - API_BASE_URL: API 基础地址 (例如: https://api.yixia.ai/)"
exit 1
fi
}
# 安装 Homebrew (仅限 macOS)
install_homebrew() {
if ! command -v brew &> /dev/null; then
echo "正在安装 Homebrew..."
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 添加 Homebrew 到 PATH
if [[ -f "/opt/homebrew/bin/brew" ]]; then
eval "$(/opt/homebrew/bin/brew shellenv)"
elif [[ -f "/usr/local/bin/brew" ]]; then
eval "$(/usr/local/bin/brew shellenv)"
fi
echo "✅ Homebrew 安装完成"
else
echo "ℹ️ Homebrew 已安装"
fi
}
# 在 macOS 上安装软件包
install_macos_packages() {
install_homebrew
# 安装 Node.js (包含 npm)
if ! command -v node &> /dev/null; then
echo "正在安装 Node.js..."
brew install node
echo "✅ Node.js 安装完成"
else
echo "ℹ️ Node.js 已安装"
fi
# 安装 jq
if ! command -v jq &> /dev/null; then
echo "正在安装 jq..."
brew install jq
echo "✅ jq 安装完成"
else
echo "ℹ️ jq 已安装"
fi
# 安装 Python3
if ! command -v python3 &> /dev/null; then
echo "正在安装 Python3..."
brew install python3
echo "✅ Python3 安装完成"
else
echo "ℹ️ Python3 已安装"
fi
}
# 在 Linux 上安装软件包
install_linux_packages() {
# 检测 Linux 发行版
if command -v apt-get &> /dev/null; then
# Ubuntu/Debian
echo "检测到 Ubuntu/Debian 系统"
# 更新包管理器
echo "正在更新包管理器..."
sudo apt-get update
# 安装 Node.js
if ! command -v node &> /dev/null; then
echo "正在安装 Node.js..."
# 安装 NodeSource 仓库
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
echo "✅ Node.js 安装完成"
else
echo "ℹ️ Node.js 已安装"
fi
# 安装 jq
if ! command -v jq &> /dev/null; then
echo "正在安装 jq..."
sudo apt-get install -y jq
echo "✅ jq 安装完成"
else
echo "ℹ️ jq 已安装"
fi
# 安装 Python3
if ! command -v python3 &> /dev/null; then
echo "正在安装 Python3..."
sudo apt-get install -y python3 python3-pip
echo "✅ Python3 安装完成"
else
echo "ℹ️ Python3 已安装"
fi
elif command -v yum &> /dev/null; then
# CentOS/RHEL
echo "检测到 CentOS/RHEL 系统"
# 安装 Node.js
if ! command -v node &> /dev/null; then
echo "正在安装 Node.js..."
curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo bash -
sudo yum install -y nodejs
echo "✅ Node.js 安装完成"
else
echo "ℹ️ Node.js 已安装"
fi
# 安装 jq
if ! command -v jq &> /dev/null; then
echo "正在安装 jq..."
sudo yum install -y jq
echo "✅ jq 安装完成"
else
echo "ℹ️ jq 已安装"
fi
# 安装 Python3
if ! command -v python3 &> /dev/null; then
echo "正在安装 Python3..."
sudo yum install -y python3 python3-pip
echo "✅ Python3 安装完成"
else
echo "ℹ️ Python3 已安装"
fi
elif command -v pacman &> /dev/null; then
# Arch Linux
echo "检测到 Arch Linux 系统"
# 安装 Node.js
if ! command -v node &> /dev/null; then
echo "正在安装 Node.js..."
sudo pacman -S --noconfirm nodejs npm
echo "✅ Node.js 安装完成"
else
echo "ℹ️ Node.js 已安装"
fi
# 安装 jq
if ! command -v jq &> /dev/null; then
echo "正在安装 jq..."
sudo pacman -S --noconfirm jq
echo "✅ jq 安装完成"
else
echo "ℹ️ jq 已安装"
fi
# 安装 Python3
if ! command -v python3 &> /dev/null; then
echo "正在安装 Python3..."
sudo pacman -S --noconfirm python python-pip
echo "✅ Python3 安装完成"
else
echo "ℹ️ Python3 已安装"
fi
else
echo "❌ 不支持的 Linux 发行版,请手动安装以下软件包:"
echo " - Node.js (包含 npm)"
echo " - jq"
echo " - python3"
exit 1
fi
}
# 安装 Claude Code
install_claude_code() {
if command -v "$CLAUDE_COMMAND" &> /dev/null; then
echo "ℹ️ Claude Code 已安装"
else
echo "正在安装 Claude Code..."
if ! command -v npm &> /dev/null; then
echo "❌ npm 未安装,无法安装 Claude Code"
exit 1
fi
if ! npm install -g "$NPM_PACKAGE"; then
echo "❌ Claude Code 安装失败"
exit 1
fi
echo "✅ Claude Code 安装完成"
fi
}
# 配置 Claude Code
configure_claude_code() {
echo "正在配置 Claude Code..."
# 创建 .claude 目录
if [ ! -d "$CLAUDE_DIR" ]; then
mkdir -p "$CLAUDE_DIR"
fi
# 备份原配置(如果存在)
if [ -f "$SETTINGS_FILE" ]; then
cp "$SETTINGS_FILE" "$SETTINGS_FILE.backup"
echo "ℹ️ 原配置已备份为 settings.json.backup"
fi
# 创建新的配置文件
cat > "$SETTINGS_FILE" << EOF
{
"env": {
"ANTHROPIC_API_KEY": "$API_KEY",
"ANTHROPIC_BASE_URL": "$API_BASE_URL",
"CLAUDE_CODE_MAX_OUTPUT_TOKENS": 64000,
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1
},
"permissions": {
"allow": [],
"deny": []
},
"apiKeyHelper": "echo '$API_KEY'"
}
EOF
echo "✅ 配置文件创建完成"
}
# 主函数
main() {
echo "🚀 Claude Code 自动安装配置脚本"
echo "=================================="
# 检查配置
check_config
# 检测操作系统
OS=$(detect_os)
echo "检测到操作系统: $OS"
# 根据操作系统安装依赖
case "$OS" in
"macos")
install_macos_packages
;;
"linux")
install_linux_packages
;;
*)
echo "❌ 不支持的操作系统: $OS"
exit 1
;;
esac
# 安装 Claude Code
install_claude_code
# 配置 Claude Code
configure_claude_code
echo "🎉 所有配置完成!"
echo "配置文件位置: $SETTINGS_FILE"
echo "现在您可以使用 'claude' 命令了!"
}
# 运行主函数
main "$@"

bash
claude "explain this project"
bash
claude -p "explain this function"
bash
cat logs.txt | claude -p "explain"
claude update - 更新claude code到最新版本claude -c - 继续最近的对话claude -r <session-id> - 恢复特定会话claude mcp - 配置MCP服务器Ctrl+C: 取消当前输入或生成Ctrl+D: 退出Claude Code会话Ctrl+L: 清除终端屏幕Up/Down: 浏览命令历史Esc + Esc: 编辑上一条消息\ + Enter: 适用于所有终端Option+Enter: macOS默认Shift+Enter: 执行/terminal-setup后可用Claude Code提供丰富的命令行选项来自定义其行为:
命令
描述
示例
claude
启动交互式REPL
claude
claude "query"
带初始提示启动REPL
claude "explain this project"
claude -p "query"
通过SDK查询后退出
claude -p "explain this function"
cat file | claude -p "query"
处理管道内容,将文件内容通过管道传递给Claude Code 进行分析或处理
cat logs.txt | claude -p "explain"
claude -c
继续最近的对话
claude -c
claude update
更新到最新版本
claude update
claude commit
创建一个Git提交
claude commit
标志
描述
示例
--allowedTools
允许的工具列表
--allowedTools "Bash(git log:*)" "Read"
--verbose
启用详细日志
claude --verbose
--model
设置使用的模型
claude --model claude-sonnet-4
--permission-mode
指定权限模式
claude --permission-mode plan
--dangerously-skip-permissions
跳过权限提示(谨慎使用)
claude --dangerously-skip-permissions
启用vim风格编辑:
Esc: 进入NORMAL模式i: 在光标前插入a: 在光标后插入o: 在下方新建行h/j/k/l: 左/下/上/右移动w: 下一个单词0: 行首$: 行尾gg: 文本开头G: 文本结尾Claude Code提供多种斜杠命令来增强交互体验:
命令
描述
示例
/help
显示帮助信息
/help
/clear
清除对话历史
/clear
/config
管理配置
/config
/permissions
管理权限
/permissions
/vim
启用vim模式
/vim
/compact
压缩对话,降低Token使用量
/compact
/doctor
检查安装健康状况
/doctor
命令
描述
功能
/init
初始化项目
自动生成CLAUDE.md文件
/terminal-setup
设置终端
配置键盘快捷键
/project:<command>
项目特定命令
运行项目自定义命令
您可以创建自定义斜杠命令:
.claude/commands/ 目录创建Markdown文件$ARGUMENTS 占位符示例:.claude/commands/fix-github-issue.md
markdown
请分析并修复GitHub issue: $ARGUMENTS。
请按以下步骤操作:
1. 使用 `gh issue view` 获取issue详情
2. 理解问题描述
3. 搜索相关代码文件
4. 实现必要的修复
5. 编写并运行测试
6. 确保代码通过lint检查
7. 创建描述性的提交信息
8. 推送并创建PR
如果你刚加入一个新项目,想要快速了解其结构,你可以按照以下步骤进行:
cd /path/to/projectclaude> 给我一个代码库概览> 解释这里使用的主要架构模式> 关键的数据模型有哪些?> 认证是如何处理的?小技巧:
当你需要定位与某个功能相关的代码时,可以按如下方式操作:
> 查找处理用户认证的文件> 这些认证文件是如何协同工作的?> 从前端到数据库,跟踪登录过程小技巧:
遇到错误时,你可以通过以下方法找出并修复问题:
> 我在运行 npm test 时看到错误> 提供一些修复 user.ts 中 @ts-ignore 的方法> 更新 user.ts,添加你建议的 null 检查小技巧:
当需要更新旧代码,采用现代的编程模式时,可以按照以下步骤进行:
> 查找我们代码库中弃用的 API> 建议如何重构 utils.js,使用现代 JavaScript 特性> 重构 utils.js,使用 ES2024 特性,同时保持原有行为> 对重构后的代码运行测试小技巧:
若需要为未覆盖的代码添加测试,可以按如下步骤进行:
> 查找 NotificationsService.swift 中未覆盖的函数> 为通知服务添加测试> 为通知服务中的边缘情况添加测试用例> 运行新测试,修复任何失败小技巧:
当你需要为你的更改创建一个文档清晰的 pull request 时,按以下步骤操作:
> 总结我对认证模块所做的更改> 创建一个 PR> 增强 PR 描述,补充有关安全性改进的更多信息> 添加关于如何测试这些更改的信息小技巧:
如果你需要添加或更新代码文档,可以按照以下步骤操作:
> 查找 auth 模块中没有适当 JSDoc 注释的函数> 为 auth.js 中未注释的函数添加 JSDoc 注释> 改进生成的文档,增加更多上下文和示例> 检查文档是否符合我们项目的标准小技巧:
如果你需要在代码库中使用图像或让 Claude 分析图像内容,按照以下步骤进行:
> 分析此图像:/path/to/your/image.png
> 这张图显示了什么?> 描述一下这张截图中的 UI 元素> 这个图表中有什么问题吗?
> 这是错误的截图,是什么导致了它?> 这是当前的数据库架构,我们需要如何修改以支持新特性?
> 生成与这个设计草图匹配的 CSS> 用什么 HTML 结构可以重建这个组件?小技巧:
为了存储重要的项目信息、约定和常用命令,你可以设置一个 CLAUDE.md 文件:
为你的代码库初始化 CLAUDE.md 文件:> /init
小技巧:
你可以将 CLAUDE.md 文件添加到你运行 Claude 的文件夹、父目录(Claude 会自动读取这些文件)或子目录(Claude 会按需拉取这些文件)。
将 Claude 添加到你的构建脚本:
json
// package.json
{
...
"scripts": {
...
"lint:claude": "claude -p '你是一个代码检查工具,请查看与主分支的差异,并报告任何与拼写错误相关的问题。每个问题的文件名和行号要在一行上,描述在第二行。不要返回任何其他文字。'"
}
}
通过 Claude 管道传输数据:
bash
cat build-error.txt | claude -p '简明扼要地解释这个构建错误的根本原因' > output.txt
如果你想通过将 Claude 连接到专用工具和外部服务器来增强其功能,请按以下步骤操作:
claude mcp add <name> <command> [args...]claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
claude mcp listclaude mcp get my-serverclaude mcp remove my-server小技巧:
-s 或 --scope 标志与 project(默认)或 global 一起指定配置的存储位置-e 或 --env 标志设置环境变量(例如,-e KEY=value)如果你希望 Claude 具有只读权限来查询 PostgreSQL 数据库和检查架构,按照以下步骤操作:
bash
claude mcp add postgres-server /path/to/postgres-mcp-server --connection-string "postgresql://user:pass@localhost:5432/mydb"
> 描述一下我们用户表的架构> 系统中最新的订单有哪些?> 展示客户和发票之间的关系小技巧:
Claude Code 支持连接到主流IDE:
> /ideClaude Code 支持 Claude 4 Opus 与 Claude 4 Sonnet 灵活切换:
> /modelClaude Code 支持压缩上下文以节省点数:
/compact [您的描述]Claude Code 能够恢复以前的对话:
claude --continueclaude --resumeClaude Code 可以处理图像信息:
> 分析这个图像:/path/to/your/image.png> 这是错误的截图。是什么导致了它?> 这个图像显示了什么?> 描述这个截图中的UI元素> 生成CSS以匹配这个设计模型> 什么HTML结构可以重新创建这个组件?Claude Code 支持深入思考:
> 我需要使用OAuth2为我们的API实现一个新的身份验证系统。深入思考在我们的代码库中实现这一点的最佳方法。> 思考这种方法中潜在的安全漏洞> 更深入地思考我们应该处理的边缘情况Claude Code 支持使用自然语言操作Git,如:
> 提交我的更改> 创建一个 pr> 哪个提交在去年十二月添加了 markdown 测试?> 在 main 分支上变基并解决任何合并冲突您可以使用工作树创建隔离的编码环境:
bash
# 创建带有新分支的工作树
git worktree add ../project-feature-a -b feature-a
# 或使用现有分支创建工作树
git worktree add ../project-bugfix bugfix-123
bash
# 导航到您的工作树
cd ../project-feature-a
# 在这个隔离环境中运行Claude Code
claude
Claude Code 支持多种高级功能:
Claude Code 将记忆存储在~/.claude中,如果没有特殊要求,请不要删除此目录。
TryAllAI 向您承诺不会替换您请求的模型,绝不掺杂其他模型。这是由于Claude Code在使用简单任务时,不会使用Claude 4 系列模型。
此类问题在WSL上常见,是Agent自身的错误。我们推荐您使用MacOS/Ubuntu,这类环境往往问题较少。
您可以执行以下命令清理Claude Code的登录信息:
这通常是网络问题,请您退出后使用claude -c重新执行。如果问题依然存在,请联系售后支持。
claude -cClaude Code是一个强大的AI编程助手,通过合理的配置和使用,可以显著提高您的开发效率。建议您:
祝您使用愉快!如有问题,请参考官方文档或社区支持。
启动 Claude Code:终端运行 claude,进入交互模式。
npm test。claude use CODE_REVIEW project_path=~/my-app提示:用 /slash 命令如 /slashplan 预览步骤;多会话并行(如 git worktrees);日志查看 ~/.claude/activity.log。
Claude Code 让编码更高效有趣!如果有问题,欢迎评论或查官方文档。2025年,它将继续更新,敬请期待。