Claude Code 概述
了解 Claude Code,一个由 Anthropic 开发的智能编程工具。目前处于测试版研究预览阶段。
Claude Code 是一个智能编程工具,它运行在您的终端中,能够理解您的代码库,并通过自然语言命令帮助您更快地编程。通过直接集成到您的开发环境中,Claude Code 简化了您的工作流程,无需额外的服务器或复杂的设置。
Claude Code 的主要功能包括:
- 跨代码库编辑文件和修复错误
- 回答关于代码架构和逻辑的问题
- 执行和修复测试、代码检查和其他命令
- 搜索 git 历史记录、解决合并冲突,以及创建提交和 PR
研究预览版
Code 目前处于测试版研究预览阶段。我们正在收集开发者对 AI 协作偏好的反馈,了解哪些工作流程最能从 AI 辅助中受益,以及如何改进代理体验。
这个早期版本将根据用户反馈不断发展。我们计划在未来几周内增强工具执行的可靠性、对长时间运行命令的支持、终端渲染,以及 Claude 对其自身能力的认知。
报告错误可以直接使用 /bug
命令或通过我们的 GitHub 仓库。
核心功能和工作流程
Claude Code 直接在您的终端中运行,理解您的项目上下文并采取实际行动。无需手动添加文件到上下文中 - Claude 会根据需要探索您的代码库。Claude Code 默认使用 claude-3-7-sonnet-20250219
。
安全性和隐私设计
您的代码安全至关重要。Claude Code 的架构确保:
- 直接 API 连接:您的查询直接发送到 Anthropic 的 API,无需中间服务器
- 在您工作的地方工作:直接在您的终端中运行
- 理解上下文:保持对整个项目结构的感知
- 采取行动:执行实际操作,如编辑文件和创建提交
从问题到解决方案只需几秒钟
开始之前
检查系统要求
- 操作系统:macOS 10.15+、Ubuntu 20.04+/Debian 10+ 或通过 WSL 的 Windows
- 硬件:最低 4GB RAM
- 软件:
- 网络:需要互联网连接进行身份验证和 AI 处理
安装和认证
安装 Claude Code
在终端中运行:npm install -g @anthropic-ai/claude-code
导航到您的项目
cd your-project-directory
启动 Claude Code
claude
启动完成认证
按照一次性 OAuth 流程使用您的 Console 账户。您需要在 console.anthropic.com 上有活跃的计费。
初始化您的项目
对于首次使用的用户,我们建议:
- 使用
claude
启动 Claude Code - 尝试一个简单的命令,如
summarize this project
- 使用
/init
生成 CLAUDE.md 项目指南 - 让 Claude 将生成的 CLAUDE.md 文件提交到您的仓库
使用 Claude Code 完成常见任务
Claude Code 直接在您的终端中运行,理解您的项目上下文并采取实际行动。无需手动添加文件到上下文中 - Claude 会根据需要探索您的代码库。
理解不熟悉的代码
自动化 Git 操作
智能编辑代码
测试和调试代码
鼓励深入思考
对于复杂问题,明确要求 Claude 深入思考:
使用命令控制 Claude Code
CLI 命令
命令 | 描述 | 示例 |
---|---|---|
claude | 启动交互式 REPL | $ claude |
claude "query" | 使用初始提示启动 REPL | $ claude "解释这个项目" |
claude -p "query" | 运行一次性查询,然后退出 | $ claude -p "解释这个函数" |
cat file | claude -p "query" | 处理管道内容 | $ cat logs.txt | claude -p "解释" |
claude config | 配置设置 | $ claude config set --global theme dark |
claude update | 更新到最新版本 | $ claude update |
claude mcp | 配置模型上下文协议服务器 | $ claude mcp add pyright_lsp |
CLI 标志:
--print
:不进入交互模式,直接打印响应--verbose
:启用详细日志记录--dangerously-skip-permissions
:跳过权限提示(仅在没有互联网的 Docker 容器中)
斜杠命令
在会话中控制 Claude 的行为:
命令 | 用途 |
---|---|
/bug | 报告错误(将对话发送给 Anthropic) |
/clear | 清除对话历史 |
/compact | 压缩对话以节省上下文空间 |
/config | 查看/修改配置 |
/cost | 显示令牌使用统计 |
/doctor | 检查 Claude Code 安装的健康状况 |
/help | 获取使用帮助 |
/init | 使用 CLAUDE.md 指南初始化项目 |
/login | 切换 Anthropic 账户 |
/logout | 从 Anthropic 账户注销 |
/pr_comments | 查看拉取请求评论 |
/review | 请求代码审查 |
/terminal-setup | 安装 Shift+Enter 键绑定用于换行(仅限 iTerm2 和 VSCode) |
管理权限和安全性
Claude Code 使用分层权限系统来平衡功能和安全性:
工具类型 | 示例 | 需要批准 | ”是的,不要再问” 行为 |
---|---|---|---|
只读 | 文件读取、LS、Grep | 否 | 不适用 |
Bash 命令 | Shell 执行 | 是 | 对项目目录和命令永久有效 |
文件修改 | 编辑/写入文件 | 是 | 直到会话结束 |
Claude 可用的工具
Claude Code 可以访问一组强大的工具,帮助它理解和修改您的代码库:
工具 | 描述 | 需要权限 |
---|---|---|
AgentTool | 运行子代理来处理复杂的多步骤任务 | 否 |
BashTool | 在您的环境中执行 shell 命令 | 是 |
GlobTool | 基于模式匹配查找文件 | 否 |
GrepTool | 在文件内容中搜索模式 | 否 |
LSTool | 列出文件和目录 | 否 |
FileReadTool | 读取文件内容 | 否 |
FileEditTool | 对特定文件进行定向编辑 | 是 |
FileWriteTool | 创建或覆写文件 | 是 |
NotebookReadTool | 读取和显示 Jupyter 笔记本内容 | 否 |
NotebookEditTool | 修改 Jupyter 笔记本单元格 | 是 |
防止提示注入
提示注入是攻击者试图通过插入恶意文本来覆盖或操纵 AI 助手指令的技术。Claude Code 包含几个防范这些攻击的保护措施:
- 权限系统:敏感操作需要明确批准
- 上下文感知分析:通过分析完整请求来检测潜在的有害指令
- 输入净化:通过处理用户输入来防止命令注入
- 命令黑名单:阻止从网络获取任意内容的危险命令,如
curl
和wget
处理不受信任内容的最佳实践:
- 在批准前审查建议的命令
- 避免直接将不受信任的内容通过管道传递给 Claude
- 验证对关键文件的建议更改
- 使用
/bug
报告可疑行为
虽然这些保护措施显著降低了风险,但没有系统能完全免疫所有攻击。在使用任何 AI 工具时都要保持良好的安全实践。
配置网络访问
Claude Code 需要访问:
- api.anthropic.com
- statsig.anthropic.com
- sentry.io
在容器化环境中使用 Claude Code 时,请将这些 URL 加入白名单。
优化您的终端设置和配置环境
Claude Code 在正确配置的终端中效果最佳。请遵循这些指南来优化您的体验。
支持的 shell:
- Bash
- Zsh(目前不支持 Fish shell)
主题和外观
Claude 无法控制您终端的主题。这由您的终端应用程序处理。您可以在入门时或随时通过 /config
命令将 Claude Code 的主题与您的终端匹配
换行
您有几种在 Claude Code 中输入换行的选项:
- 快速转义:输入
\
后按 Enter 创建换行 - 键盘快捷键:在正确配置的情况下按 Option+Enter(Meta+Enter)
要在您的终端中设置 Option+Enter:
对于 Mac Terminal.app:
- 打开设置 → 配置文件 → 键盘
- 勾选”将 Option 键用作 Meta 键”
对于 iTerm2 和 VSCode 终端:
- 打开设置 → 配置文件 → 按键
- 在常规下,将左/右 Option 键设置为”Esc+”
iTerm2 和 VSCode 用户提示:在 Claude Code 中运行 /terminal-setup
自动配置 Shift+Enter 作为更直观的替代方案。
通知设置
通过适当的通知配置,永不错过 Claude 完成任务的时机:
终端铃声通知
启用任务完成时的声音提醒:
对于 macOS 用户:别忘了在系统设置 → 通知 → [您的终端应用] 中启用通知权限。
iTerm 2 系统通知
对于 iTerm 2 任务完成提醒:
- 打开 iTerm 2 首选项
- 导航到配置文件 → 终端
- 启用”静音铃声”和”空闲时发送通知”
- 设置您首选的通知延迟
请注意,这些通知是 iTerm 2 特有的,在默认的 macOS 终端中不可用。
处理大量输入
在处理大量代码或长指令时:
- 避免直接粘贴:Claude Code 可能难以处理非常长的粘贴内容
- 使用基于文件的工作流:将内容写入文件并让 Claude 读取
- 注意 VS Code 限制:VS Code 终端特别容易截断长粘贴内容
通过配置这些设置,您将创建一个更流畅、更高效的 Claude Code 工作流程。
有效管理成本
Claude Code 为每次交互消耗令牌。典型使用成本每位开发者每天在 5-10 美元之间,但在密集使用期间可能超过每小时 100 美元。
跟踪您的成本
- 使用
/cost
查看当前会话使用情况 - 查看退出时显示的成本摘要
- 在 Anthropic Console 中检查历史使用情况
- 设置 支出限制
减少令牌使用
- 压缩对话: 当上下文变大时使用
/compact
- 编写具体查询: 避免触发不必要扫描的模糊请求
- 分解复杂任务: 将大任务分解为重点交互
- 任务间清除历史: 使用
/clear
重置上下文
成本可能因以下因素显著变化:
- 被分析的代码库大小
- 查询的复杂性
- 被搜索或修改的文件数量
- 对话历史长度
- 压缩对话的频率
对于团队部署,我们建议从小规模试点组开始,以建立使用模式,然后再进行更广泛的推广。
与第三方 API 一起使用
连接到 Amazon Bedrock
如果您没有启用提示缓存,还需要设置:
需要标准 AWS SDK 凭证(例如,~/.aws/credentials
或相关环境变量如 AWS_ACCESS_KEY_ID
、AWS_SECRET_ACCESS_KEY
)。联系 Amazon Bedrock 获取提示缓存以降低成本并提高速率限制。
连接到 Google Vertex AI
Vertex AI 上的 Claude Code 目前仅支持 us-east5
区域。确保您的项目在这个特定区域有配额分配。
需要通过 google-auth-library 配置标准 GCP 凭证。为获得最佳体验,请联系 Google 获取更高的速率限制。
开发容器参考实现
Claude Code 为需要一致、安全环境的团队提供开发容器配置。这个预配置的 devcontainer 设置 与 VS Code 的 Remote - Containers 扩展和类似工具无缝协作。
容器的增强安全措施(隔离和防火墙规则)允许您运行 claude --dangerously-skip-permissions
来绕过无人值守操作的权限提示。我们已包含一个参考实现,您可以根据需要进行自定义。
虽然 devcontainer 提供了实质性的保护,但没有系统能完全免疫所有攻击。始终保持良好的安全实践并监控 Claude 的活动。
主要特性
- 生产就绪的 Node.js:基于 Node.js 20,带有基本开发依赖
- 安全设计:自定义防火墙仅限制对必要服务的网络访问
- 开发者友好工具:包括 git、带生产力增强的 ZSH、fzf 等
- 无缝 VS Code 集成:预配置扩展和优化设置
- 会话持久性:在容器重启之间保留命令历史和配置
- 随处可用:兼容 macOS、Windows 和 Linux 开发环境
4 步开始使用
- 安装 VS Code 和 Remote - Containers 扩展
- 克隆 Claude Code 参考实现 仓库
- 在 VS Code 中打开仓库
- 当提示时,点击”在容器中重新打开”(或使用命令面板:Cmd+Shift+P → “Remote-Containers: 在容器中重新打开”)
配置细分
devcontainer 设置由三个主要组件组成:
- devcontainer.json:控制容器设置、扩展和卷挂载
- Dockerfile:定义容器镜像和已安装工具
- init-firewall.sh:建立网络安全规则
安全特性
容器通过其防火墙配置实现多层安全方法:
- 精确访问控制:仅限制出站连接到白名单域名(npm 注册表、GitHub、Anthropic API 等)
- 默认拒绝策略:阻止所有其他外部网络访问
- 启动验证:容器初始化时验证防火墙规则
- 隔离:创建与主系统分离的安全开发环境
自定义选项
devcontainer 配置设计为可适应您的需求:
- 根据您的工作流程添加或删除 VS Code 扩展
- 为不同硬件环境修改资源分配
- 调整网络访问权限
- 自定义 shell 配置和开发工具
下一步
许可和数据使用
Claude Code 作为测试版研究预览版根据 Anthropic 的商业服务条款提供。
我们如何使用您的数据
我们旨在完全透明地说明我们如何使用您的数据。我们可能会使用反馈来改进我们的产品和服务,但我们不会使用您在 Claude Code 中的反馈来训练生成模型。鉴于其潜在的敏感性,我们仅存储用户反馈记录 30 天。
反馈记录
如果您选择向我们发送关于 Claude Code 的反馈,例如您的使用记录,Anthropic 可能会使用该反馈来调试相关问题并改进 Claude Code 的功能(例如,减少类似错误在未来发生的风险)。我们不会使用此反馈来训练生成模型。
隐私保护措施
我们已实施多项保护措施来保护您的数据,包括敏感信息的有限保留期、对用户会话数据的访问限制,以及明确禁止使用反馈进行模型训练的政策。
许可
© Anthropic PBC。保留所有权利。使用受 Anthropic 的商业服务条款约束。
Was this page helpful?