【AI】【Claude Code】 基本使用

Claude Code 的基本使用

  • Overview
  • [Claude Code 安装](#Claude Code 安装)
    • [Claude Code CLI](#Claude Code CLI)
    • [VSCode Claude 安装](#VSCode Claude 安装)
  • 交互模式
    • 操作说明
      • [/ ------ 操作型命令](#/ —— 操作型命令)
      • [@ ------ 上下文注入](#@ —— 上下文注入)
      • [! -- Bash 命令](#! -- Bash 命令)
  • 项目目录结构
  • 作用域

|---|
| |

Overview


Claude Code 是 Anthropic 推出的面向开发者的 AI 编程协作工具。它的定位不是聊天,而是在本地代码仓库中执行高权限、可上下文感知的工程任务。

Claude Code 不是一个代码生成器,而是一个能读项目、懂上下文、遵守约束的 AI 编程搭档。

Claude Code 是 Agent(智能体工具),不是 Chat(聊天工具)。

Claude Code 的核心理念是协作,而不是替代。人负责目标、约束、判断和审美,AI 负责执行、分析、对比和重复劳动。


官方文档:「中文」 「英文

GitHub 开源:claude-code


|---|
| |

Claude Code 安装


Claude Code 有几种不同的使用方式:Web、App、CLI 和编辑器集成(VS Code 等)。


Claude Code CLI


安装:「Claude Code CLI 安装与使用

第三方 AI API:「Claude Code API 配置


VSCode Claude 安装


VSCode Claude Code 基本的安装和使用:「VS Code 安装 Claude Code


Windows 下使用 VSCode Claude Code:

① 安装 VS Code 和 Claude Code for VS Code 插件

② 安装 Git Bash,并设置环境变量

③ 如果需要第三方 AI API,配置流程如下:

  • 打开 C:\Users${username}\AppData\Roaming\Code\User\setting.json 文件(也可以通过 VS Code 打开)

  • 添加如下内容:

  • 重启 VS Code


|---|
| |

交互模式


使用 Claude Code 最简单直接的方法就是问他问题,然后它回答。

但是,Claude Code 并不是一个单纯的聊天工具,而是一个具备工程上下文、权限控制和执行能力的开发协作系统。

因此,在处理任务时,它有三种核心的思维模式(也就是工作模式或交互模式):Ask(询问)、Plan(规划)和 Edit(编辑)

在 VS Code 插件中可以手动切换交互模式:

使用 Claude Code 时,其实不需要手动切换交互模式,Claude 会根据的指令内容,自动判断当前应进入哪一种模式。

  • Ask:只看不动

    Ask 模式是 Claude Code 的默认安全模式。该模式下,Claude 可以读取代码,可以进行分析、解释、推理,绝对不会修改任何文件,也不会执行任何 Shell 命令。

  • Plan:谋定而后动

    该模式下,Claude 不会直接改代码,只会先给出完整的实施方案,通常以步骤列表(TODO List)的形式呈现。用户确认方案后,才进入 Edit 阶段执行。

  • Edit:直接执行

    当你已经明确知道要改哪、改成什么,并且改动风险可控,此时就可以直接进入 Edit 模式。

    在该模式下,Claude 会定位相关文件,生成精确的 Diff(差异修改)。这个过程中,可能会请求执行测试、构建等命令。

    默认情况下,所有的所有写入操作都需要用户确认。

Ask 是搞清楚问题,Plan 是避免走弯路,Edit 是谨慎执行。

在 VS Code Claude 中,使用 shift +tab 可以在三种工作模式之间进行切换。


操作说明


Claude Code 的输入框不是纯聊天框,而是一个:AI + 编辑器 + 命令调度器的融合终端。

在 Claude Code 的输入框输入一些特殊字符,可以触发不同的功能:


/ ------ 操作型命令


/ 是 Claude Code 中触发内置命令工具的核心符号,类似终端命令行的指令前缀,用于告诉 Claude 执行特定操作而非单纯生成文本。

/ 后紧跟命令关键词,是 Claude Code 区分自然语言对话和代码操作指令的关键。

在对话框输入 / 会自动弹出命令列表:

一些常见高频命令的功能如下:

命令 作用
/help 查看全部能力
/clear 清空对话
/plan 进入 Plan Mode
/model 切换模型
/context 查看上下文使用情况
/export 导出对话
/status 环境状态
/tasks 管理后台任务
/theme 主题切换
/memory 编辑 CLAUDE.md

在 VS Code Claude 中,使用 /context 命令可以看到如下图所示的上下文使用情况:


@ ------ 上下文注入


@ 是引用文件或目录,在输入文件名的时候,Claude Code 会主动联想。

@ 的一些基本使用示例如下:

  • 引用单个文件

    shell 复制代码
    @main.py 帮我检查 bug
    @npm-debug.log 找出失败原因
  • 引用多个文件

    shell 复制代码
    @main.py @main2.py 这两个是否有重复逻辑?
  • 引用目录:@ + 路径

    shell 复制代码
    @src/ 分析项目结构并给出优化建议

! -- Bash 命令


通过在输入前加上 !,可以直接运行 bash 命令,无需通过 Claude。

例如,查看当前目录下的文件:


|---|
| |

项目目录结构


使用 Claude Code 的时候,整个项目的目录结构应该是这样的:

shell 复制代码
your-project/
├── src                          项目代码
│   ├── api/                     项目代码
│   ├── services/                项目代码
│   └── models/                  项目代码
├── CLAUDE.md                    ← 团队共享指令,提交到 git
├── CLAUDE.local.md              ← 个人覆盖,被 git 忽略
└── .claude/
    ├── settings.json            ← 权限 + 配置,提交到 git
    ├── settings.local.json      ← 个人权限,被 git 忽略
    ├── commands/                ← 自定义斜杠命令
    │   ├── review.md            →  /project:review
    │   ├── fix-issue.md         →  /project:fix-issue
    │   └── deploy.md            →  /project:deploy
    ├── rules/                   ← 模块化指令文件(全局生效)
    │   ├── code-style.md
    │   ├── testing.md
    │   └── api-conventions.md
    ├── skills/                  ← 自动调用的工作流
    │   ├── security-review/
    │   │   └── SKILL.md
    │   └── deploy/
    │       └── SKILL.md
    └── agents/                  ← 子代理角色定义
        ├── code-reviewer.md
        └── security-auditor.md

  • src

    src 就是项目目录,包含当前项目相关的所有文件。

  • CLAUDE.md

    Claude 进入项目时第一个读取的文件,相当于项目欢迎手册。

    CLAUDE.md 通常放在项目根目录,所有团队成员共享,它告诉 Claude:这个项目是什么、如何运行、有什么约定。

    CLAUDE.md 的用法和 Skill 一样,基本就是 ## 后面加一个标题,表示描述的内容,然后后面直接写内容即可。

    例如,设置一些写代码时的常用规则。

    shell 复制代码
    ## Code Conventions
    - 使用 snake_case 命名变量
    - 所有 API 需要写单元测试
    - PR 合并前必须通过 CI
  • CLAUDE.local.md

    个人专属的覆盖层,优先级高于 CLAUDE.md 之上,用于个性化设置或者临时指令。

    比如,你从 GItHub 上拉一个项目下来,准备优化某一部分内容,你就可以在 CLAUDE.local.md 中写一些和本次优化相关的命令或规则。

  • .claude/settings.json -- 权限与配置中心

    给 Claude Code 设置权限,控制 Claude 允许或禁止执行哪些操作。

    该文件一般是团队共享的配置文件,用做团队安全基线。

  • settings.local.json

    个人本地权限覆盖,临时放开或收紧某些权限,不影响团队其他成员。

  • .claude/commands/ -- 自定义斜杠命令

    该目录下每个 .md 文件会自动映射为一条 /project:文件名 命令。

    比如,你再 .claude/commands/ 目录下放一个 my_data.md 文件,文件中的内容如下:

    输入 /my_date 之后,Claude Code 最终会输出如下内容:

  • .claude/rules/ -- 模块化行为规则

    CLAUDE.md 中的规则拆分模块化存放,Claude 在整个会话中始终遵守。适合存放长期稳定执行的行为约定,避免 CLAUDE.md 过于臃肿。

  • .claude/skills/ -- 自动调用的工作流

    Skills 是更高级的复合工作流。当 Claude 判断某个任务适合某个 skill 时,会自动读取并执行对应的 SKILL.md,无需手动调用。

    Commands 需要用户主动输入斜杠命令触发,是"工具箱",而 Skills 由 Claude 根据上下文自动判断是否调用,是"智能本能"。

  • .claude/agents/ -- 子代理角色

    定义可被主 Claude 实例派遣的专业子代理。

    在复杂任务中,主代理将子任务委派给对应专家角色,实现多代理协作。

    子代理在隔离上下文中运行,拥有独立的权限范围。

    子代理本质上是带 YAML frontmatter 的 Markdown 文件。

    示例:agents/code-reviewer.md

    shell 复制代码
    ---
    name: code-reviewer
    description: 资深代码审查员,专注代码质量与可维护性
    ---
    
    # 代码审查员
    
    ## 角色定位
    你是一名拥有 10 年经验的资深工程师,专注于代码可读性、性能优化和最佳实践。
    
    ## 审查重点
    - 命名是否清晰表达意图
    - 函数/类的单一职责原则
    - 边界条件和错误处理
    - 性能瓶颈(N+1 查询、不必要的循环等)
    
    ## 权限
    只读访问,不直接修改文件。
    
    ## 输出格式
    使用 Markdown 表格输出,包含:问题位置、严重程度、建议方案。

作用域


settings.json 是一个配置文件,Claude Code 使用作用域系统来决定配置文件的生效范围。

Claude Code 中有如下四个作用域:

当多个作用域中有相同的配置的时,优先级从高到底的排序如下:

  1. Managed (highest) - can't be overridden by anything
  2. Command line arguments - temporary session overrides
  3. Local - overrides project and user settings
  4. Project - overrides user settings
  5. User (lowest) - applies when nothing else specifies the setting

除了 setting.json 之外,Claude Code 的一些其他文件也有类似的作用域:

相关推荐
Mr_hwt_12320 小时前
Windows安装Claude Code详细教程(含apikey配置)
windows·ai编程·claude code
caicongyang1 天前
Superpowers Hook 机制深度解析
hook·claude code·skills·superpowoer
布朗克1681 天前
Claude Code提示词入门:CLAUDE.md编写完全指南
提示词·claude code
小坏讲微服务1 天前
SpringBoot整合SpringAI配置多平台API密钥
java·人工智能·spring boot·后端·flask·ai编程·claude code
Fzuim1 天前
Claude Code AskUserQuestion 交互式提问机制深度解析
ai·agent·claude code
overwizard1 天前
AI工程双剑:gstack与Superpowers实战指南
人工智能·claude code·vibe-coding·skills·cc switch
二月夜1 天前
Claude Code 接入 DeepSeek V4
deepseek·claude code
带娃的IT创业者2 天前
Claude Code 源码泄露事件深度剖析:当 AI 编程工具不再“透明”
人工智能·ai编程·ai安全·源码泄露·claude code·工程伦理
Justinyh2 天前
安装与体验 Claude code、CC Switch、SuperPowers
大模型·agent·claude code·cc switch·superpowers