1. 前置条件

依赖 版本要求 检查命令
Node.js 18.0+ (推荐 20 LTS 或更高) node -v
npm 9.0+ npm -v
DeepSeek API Key 从 DeepSeek 平台获取 platform.deepseek.com 在这里插入图片描述

安装 Node.js、npm

# macOS 推荐使用 Homebrew 安装
brew install node@22

# 或从官网下载安装包
# https://nodejs.org/en/download

安装完成后执行 node -vnpm -v 确认版本符合要求。


2. 安装 Claude Code CLI

# 全局安装 Claude Code CLI
npm install -g @anthropic-ai/claude-code

# 验证安装
claude --version

  • 安装完成后检查 ~/.claude.json(注意是文件,不是文件夹),不存在就创建一个:
{
  "hasCompletedOnboarding": true
}

hasCompletedOnboarding: true 用于跳过 Claude 官方的登录验证。

3. 配置.claude/settings.json(不拘于deepseek,其他的适配Anthropic的都可以)

创建或编辑 ~/.claude/settings.json(注意是 .claude 文件夹下):

{
    "env": {
        "ANTHROPIC_AUTH_TOKEN": "Deepseek的apikey",
        "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
        "ANTHROPIC_MODEL": "deepseek-v4-pro[1m]",
        "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-v4-flash",
        "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-v4-pro[1m]",
        "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-v4-pro[1m]",
        "CLAUDE_CODE_SUBAGENT_MODEL": "deepseek-v4-flash",
        "CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
    },
    "model": "opus[1m]",
    "enabledPlugins": {
        "rust-analyzer-lsp@claude-plugins-official": true,
        "code-simplifier@claude-plugins-official": true,
        "claude-md-management@claude-plugins-official": true,
        "gitlab@claude-plugins-official": true,
        "frontend-design@claude-plugins-official": true,
        "andrej-karpathy-skills@karpathy-skills": true
    },
    "mcpServers":{
        "filesystem":{
            "type":"stdio",
            "command":"npx",
            "args":[
                "-y",
                "@modelcontextprotocol/server-filesystem"
            ],
            "env":{}
        }
    },
    "language":"chinese",
    "effortLevel":"high",
    "theme":"light"
}

配置说明:

环境变量 说明
ANTHROPIC_BASE_URL 固定连接 DeepSeek 的 Anthropic 兼容端点
ANTHROPIC_MODEL 主力模型,设最强
ANTHROPIC_DEFAULT_HAIKU_MODEL 轻量模型,用 flash
ANTHROPIC_DEFAULT_SONNET_MODEL / OPUS_MODEL 均指向最强模型
CLAUDE_CODE_SUBAGENT_MODEL 子 agent 用 flash,省 token
CLAUDE_CODE_ATTRIBUTION_HEADER 设为 "0" 防止 Claude 魔术字导致缓存不命中
  • 此时就配置完成了,然后在你的项目根目录检查并启动claude

    ## 检查claude版本
    claude -v
    ## 启动Claude
    claude
    
  • 开始估计会让你配置一些展示样式我不过多赘述了,然后是信任项目目录,最终效果如图:

在这里插入图片描述

多模型切换

Claude Code 接入其他模型同理,只需替换 ANTHROPIC_BASE_URLANTHROPIC_AUTH_TOKEN、模型名即可。如果你同时使用多个模型提供商(如 DeepSeek + Anthropic 官方),推荐使用 cc-switch 工具快速切换,避免频繁手动改配置。详见 4.2 基础命令

4. 基础使用指南

Claude Code CLI 启动后可以在终端直接与 AI 对话,内置了一套指令集,以下是常用命令。

4.1 常用基础指令

  1. /init : 新项目执行初始化,Claude 会扫描你的项目,于项目根目录生成记录你项目信息的 CLAUDE.md 文件,你可以在这个文件上添加规则约束 Claude

  2. /context: 查看当前会话上下文还剩多少空间,上下文空间不多时 AI 容易乱回复

  3. /compact: 压缩会话,AI 自动压缩上下文信息,提高会话空间利用率

  4. /exit: 退出当前会话

  5. /clear: 空间不够时可以清空上下文(等同于重开会话)

  6. /resume: 退出会话后,重新启动 Claude 时可以用这个命令找到历史会话继续;同样你也可以在终端执行 claude --continue 继续上次的会话

  7. /model: 选择模型和思考程度,简单的会话可以切到轻量模型节省 token

  8. /plugin : 插件管理,你可以在这里找到帮助开发的插件(注意安装过多插件会增加 token 消耗)

  9. /agents: 让子 agent 并行执行任务,类似多线程并行

  10. /skills: 技能管理,安装一些能帮助开发的 skill(类似 plugin)

  11. /mcp: MCP 服务器管理,可接入外部工具扩展 Claude 的能力

  12. /memory: 记忆管理,工作的关键信息可以让 Claude 帮你持久化记忆

  13. /btw: 执行任务过程中可以用这个命令临时与 Claude 对话(by the way)

  14. /hook: 钩子配置,比如任务执行完成后触发提醒通知


4.2 基础命令

  1. @: 引用本地文件,让 Claude 直接读取项目文件内容

    @./CLAUDE.md 帮我分析这个文件说了啥
    
  2. !: 在终端执行 shell 命令(不会在 Claude 会话中执行,而是直接调用系统 shell)

    !openspec init --tools claude
    
  3. cc-switch:如果你有多套模型的 API Key(比如同时用 DeepSeek 和 Anthropic 官方),可以使用 cc-switch 工具快速切换配置,无需手动改 settings.json。

    # 下载地址:https://github.com/farion1231/cc-switch/releases
    
    # 安装后可以快速切换预设的配置方案
    cc-switch deepseek   # 切换到 DeepSeek 配置
    cc-switch anthropic  # 切换到 Anthropic 官方配置
    

4.3 交互规范化

  • CLI 终端最好不要说些无效的信息,不然会很浪费token(日常会话可以下一个qwen app),示例如下:

    # 无效信息
    你怎么又弄错了,真是大笨蛋。
    ## 有效信息
    这个解法有问题,@***/*.java位置不能这样写.....(要提供具体的问题点)
    
  • 需求提示词(prompt):最好写规范的md文档,要写需求的大致背景,改动点和返回,最终效果等,需要详细一点,实例:

    # 背景
    xxx(大致说一下,可以不写)
    # 需求描述
    @XX/XX/XX.java   之前内容...现在...(需求描述)
    # 功能点
    1. xxx
    2. xxx 
    # 工作
    1. xxx
    2. xxx
    

4.4 规则约束

  • claude 规则约束十分必要,不然ai出的代码风格迥异, 常用的约束就是在claude.md里添加 规则相关提示词,示例:

    ## 规则约束
    - 每个方法前必须有JavaDoc注释,说明功能、参数和返回值,创建类要声明作者,抽象方法大致描述接口,实现类要描述ork细节
    - 变量命名要有意义,避免使用单字母或无意义的缩写
    - 魔法值要定义为常量,避免在代码中真接使用,与当前业务耦合的常量放在当前类上,公共常量放在Constant类中
    - 异常处理要明确,尽量使用自定义异常类,避免直接抛出 Exception 或RuntimeBxception
    # Task Step
    ## rule
    你是一个注重经验沉淀的A1助于。在每次成功执行完用户的开发任务(如修复 Bug、编写复杂功能、配置环境)后,你必须执行以下“记忆沉淀"动作:
    - 自我评估:判断当前任务是否具有复用价值,或者是否包含容易出错的配置细节
    - 生成记录:如果是,请自动生成一段简短的Markdown记录
    - 执行写入:调用文件编辑工具,将记录追加到项目根目录的 .claude/LEARNINGs.md文件中。
    ### template
    - 记录模板:
    ```text
    [cxecntortime]任务类型:[功能开发/Bug修复/环境配置]
    关键上下文:[例如:Spring Boot 3.x,JDK 17]
    解决方案摘要:[一句话概括]
    注意事项:[例如:必须使用pnpm而非npm,否则会导致依赖冲突]
    ```
    
  • 可以配置成全局的规则约束

4.5 行为约束

  • 行为约束也很重要,不然ai写一个小功能能改几十个类,常用行为约束借助于 plugin karpathy
## 添加marketplace
/plugin marketplace add forrestchang/andrej-karpathy-skills
## 安装karpathy插件(建议选全局安装,之后的项目可以直接执行/andrej-karpathy-skills:karpathy-guidelines 启用插件)
/plugin install andrej-karpathy-skills@karpathy-skills
## 安装好后reload 
/reload-plugins
## 启用
/andrej-karpathy-skills:karpathy-guidelines

5. 进阶版

5.1 OpenSpec

5.1.1 什么是 OpenSpec

OpenSpec 是一套规格驱动开发(Spec-Driven Development)方法论和工具链,与传统开发流程的对比:

环节 传统流程 OpenSpec + Claude Code
需求定义 PRD 文档、口述 标准化的 .spec.md 文件
接口设计 口头约定、wiki OpenAPI / JSON Schema
代码实现 手写全部代码 Claude Code 根据 Spec 生成
代码审查 人工 Review Claude Code 检查 Spec 一致性
文档同步 经常过时 Spec 即文档,代码即实现
5.1.2 安装 OpenSpec + claude集成
npm install -g @fission-ai/openspec@latest
##验证
openspec --version
## 验证ok,初始化项目(终端输命令,非claude)
openspec init --tools claude 
## 然后可以启动claude 执行claud的项目初始化
  • claude 集成好openspec后,cc会多4条命令

    1. /opsx:explore 关键命令,需求模糊时,可以用这个命令与ai交流需求,不清楚的ai会向你确认,多轮会话后,ai明确了需求会让你创建提案
    2. /opsx:proposal 创建变更提案(spec),相当于规划行动路线方针(cc要执行什么任务,怎么执行任务)
    3. /opsx:apply 根据上面生成的提案,让cc执行代码开发
    4. /opsx:archive 提案归档,cc代码执行完成后验证无误后,执行归档,相当于任务记录,这个归档文件能全员共享,能让ai更了解项目
5.1.3 编写第一个 Spec (套话可以不用太关注)

以用户管理 API 为例,创建 specs/api/users.spec.md

# Users API Specification

## 概述
用户管理模块的 RESTful API,提供用户的 CRUD 操作。

## 技术约束
- 框架: Express.js (Node.js)
- 数据库: PostgreSQL
- 认证: JWT Bearer Token
- 序列化: JSON
- 分页: 基于 offset/limit 的游标分页
- 错误格式: RFC 7807 Problem Details

---

## GET /api/v1/users

### 描述
获取用户列表,支持分页和筛选。

### 请求
```http
GET /api/v1/users?page=1&limit=20&status=active&role=admin
Authorization: Bearer <token>
```

**Query Parameters:**

| 参数 | 类型 | 必填 | 默认值 | 说明 |
|------|------|------|--------|------|
| page | integer | 否 | 1 | 页码(从 1 开始) |
| limit | integer | 否 | 20 | 每页数量(最大 100) |
| status | string | 否 | - | 用户状态: `active`, `inactive`, `suspended` |
| role | string | 否 | - | 角色筛选 |
| search | string | 否 | - | 用户名/邮箱模糊搜索 |

### 响应

**200 OK:**
```json
{
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "username": "john_doe",
      "email": "john@example.com",
      "display_name": "John Doe",
      "role": "admin",
      "status": "active",
      "avatar_url": "https://cdn.example.com/avatars/john.jpg",
      "created_at": "2025-01-15T08:30:00Z",
      "updated_at": "2026-01-20T14:22:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 142,
    "total_pages": 8
  }
}
```


### 业务规则
- 普通用户只能查看自己的信息
- 管理员可查看所有用户
- 软删除用户默认不返回(除非查询参数 `include_deleted=true`,且仅管理员可用)
- 搜索结果按 `created_at` 降序排列

---


## 数据模型

### User 实体

| 字段 | 类型 | 约束 | 说明 |
|------|------|------|------|
| id | UUID | PK, 默认 gen_random_uuid() | 主键 |
| username | VARCHAR(32) | UNIQUE, NOT NULL | 用户名 |
| email | VARCHAR(255) | UNIQUE, NOT NULL | 邮箱 |
| password_hash | VARCHAR(255) | NOT NULL | bcrypt 哈希 |
| display_name | VARCHAR(100) | - | 显示名称 |
| role | user_role ENUM | NOT NULL, DEFAULT 'viewer' | 角色 |
| status | user_status ENUM | NOT NULL, DEFAULT 'active' | 状态 |
| avatar_url | TEXT | - | 头像 URL |
| created_at | TIMESTAMPTZ | NOT NULL, DEFAULT NOW() | 创建时间 |
| updated_at | TIMESTAMPTZ | NOT NULL, DEFAULT NOW() | 更新时间 |
| deleted_at | TIMESTAMPTZ | - | 软删除时间 |

### 索引
- `idx_users_username` (username) — 唯一索引,用于登录查找
- `idx_users_email` (email) — 唯一索引,用于邮箱查找
- `idx_users_status` (status) — 用于按状态筛选
- `idx_users_role` (role) — 用于按角色筛选
- `idx_users_created_at` (created_at DESC) — 用于排序

---
## 安全要求
- 所有端点均需 JWT 认证(`Authorization: Bearer <token>`)
- 密码字段永远不返回给客户端
- `password_hash` 字段永远不包含在序列化输出中
- 请求速率限制:每 IP 100 次/分钟(用户创建端点 10 次/分钟)
- CORS 仅允许白名单域名
- 所有输入需做 XSS 和 SQL 注入防护
  • 配置 OpenSpec 项目

编辑 openspec.yaml

# OpenSpec 项目配置
version: "1.0"
name: my-api-project
description: User Management API Service

# 规格文件路径
specs:
  paths:
    - specs/api/**/*.spec.md
    - specs/models/**/*.schema.json
    - specs/workflows/**/*.flow.md

# 代码生成配置
generation:
  output_dir: src/
  language: typescript
  framework: express
  orm: drizzle
  database: postgresql

# 校验规则
validation:
  # 代码生成后自动运行校验
  auto_validate: true
  rules:
    # 确保所有端点都有实现
    - rule: endpoint_coverage
      severity: error
    # 确保数据模型与 Spec 一致
    - rule: schema_consistency
      severity: error
    # 确保业务规则被正确实现
    - rule: business_rules
      severity: warning

# Claude Code 配置
claude:
  # Claude Code 读取的上下文文件
  context_file: CLAUDE.md
  # 在 task 执行前自动加载 Spec
  auto_load_specs: true
  # 自定义指令模板
  templates:
    generate: "根据 spec 文件 {{spec}} 生成完整的实现代码"
    review: "审查代码 {{files}} 是否符合 spec {{spec}} 的定义"
    update: "根据 spec 变更 {{diff}} 更新对应的实现代码"
5.1.4 开发循环
1. 先编写需求相关的提示词(prompt)或需求文件
2. 然后使用`/opsx:explore` 命令,让ai读取你的提示词文件,多轮会话明确需求
3. 执行`/opsx:proposal` 创建变更提案
4. 提案创建好使用 `/opsx:apply` 根据上面生成的提案,让cc执行代码开发
5. 执行`/opsx:archive` 提案归档

5.2 推荐 Skill 与 Plugin

除了上文提到的 karpathy-guidelines(行为约束),以下是一些实用的 Skill/Plugin:

名称 类型 说明
code-review Skill 对当前变更进行代码审查,按严重程度分级
simplify Skill 审查代码的复用性、简洁性和效率,自动修复
verify Skill 运行应用验证代码变更是否真正生效
security-review Skill 对当前分支的变更进行安全审查
run Skill 自动启动项目并截图验证功能
frontend-design Plugin 前端 UI 设计辅助
rust-analyzer-lsp Plugin Rust 语言 LSP 支持

提示:Skill 和 Plugin 越多,每次会话注入的上下文也越多,token 消耗相应增加。建议按需启用,不要贪多。

安装方式:

# Plugin 通过官方 marketplace 安装
/plugin install <plugin-name>@claude-plugins-official

# 第三方 marketplace 需要先注册
/plugin marketplace add <marketplace-url>
/plugin install <plugin-name>@<marketplace-name>

6. Superpowers:让 AI 写出可靠代码的 Skill 套件(这段AI写的比较啰嗦)

6.1 什么是 Superpowers

SuperpowersJesse Vincentobra)团队开发的一套 Claude Code Skill 集合,核心理念是用工程纪律约束 AI,让它从"写得快"变成"写得可靠"

模糊需求 ──→  Brainstorming ──→  Writing Plans ──→  Subagent 执行
                                                    ↓
                                                TDD 循环
                                                    ↓
                                                审查验证

Superpowers 与传统 AI 编码的区别:

维度 传统方式 Superpowers
需求处理 直接开工,边写边改 先用 brainstorming 明确需求
任务分解 AI 自行判断,容易跑偏 拆成 2-5 分钟的小任务,精确到文件路径
代码质量 依赖事后 review TDD 驱动,先写测试再写代码
调试方式 猜原因、反复试 系统性调试 + 根因追溯
验证 靠人肉看 每个任务有验证步骤,禁止跳过
上下文管理 一个会话干到底 每个任务用独立 subagent,上下文干净

6.2 安装

# 方式一:通过官方 marketplace 安装(推荐)
/plugin install superpowers@claude-plugins-official

# 方式二:通过 Superpowers 自有 marketplace
/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers@superpowers-marketplace

安装后执行 /reload-plugins 即可生效。

6.3 核心 Skill 详解

brainstorming — 需求澄清(苏格拉底式提问)

当你只有一个模糊的想法时,用这个 skill 和 AI 对话。它会像苏格拉底一样持续追问,帮你理清:

  • 到底要做什么
  • 边界在哪里
  • 有哪些隐含假设
# 启动后,AI 会进入提问模式,多轮对话直到需求明确
/brainstorm 我想给用户系统加个权限管理
writing-plans — 写执行计划

需求明确后,将任务拆解为 2-5 分钟 的小步骤,每步包含:

  • 精确的文件路径
  • 具体的操作描述
  • 验证方式(怎么判断做完了)
/write-plan
executing-plans — 按计划执行

严格按 writing-plans 的步骤逐条执行,每完成一步就验证一步。

/execute-plan
subagent-driven-development — 子 Agent 驱动开发

每个任务启动全新的 subagent,配合 两阶段审查

  1. 子 agent 执行任务 → 提交代码
  2. 审查 agent 检查变更 → 通过则合并,不通过则打回

好处:每个 subagent 上下文干净,不会受到历史对话干扰。

test-driven-development — TDD 红绿重构

严格遵循 RED → GREEN → REFACTOR 循环:

  1. RED:先写一个失败的测试
  2. GREEN:用最少代码让测试通过
  3. REFACTOR:在测试保护下重构
systematic-debugging — 系统性调试

不是"感觉问题出在这里"地瞎试,而是:

  1. 先看日志和错误信息
  2. 用二分法缩小范围
  3. 确认根因后再修
root-cause-tracing — 根因追溯

禁止治标不治本。每修一个 bug 必须追溯到根本原因,而不是加个 try-catch 掩盖问题。

verification-before-completion — 完成前验证

每个任务完成后必须运行验证,不通过不能标记为完成。

requesting-code-review — 请求代码审查

按严重程度分级的代码审查:

  • Critical:阻塞性问题,必须修复
  • Warning:建议修复
  • Info:可选改进
using-git-worktrees — Git Worktree 隔离

每个任务在独立的 git worktree 中执行,任务之间完全隔离,不会互相干扰。完成后 worktree 自动清理。

writing-skills — 编写你自己的 Skill

Superpowers 提供了一套编写自定义 Skill 的方法论。你可以把团队的最佳实践沉淀成可复用的 skill 文件。

6.4 标准开发工作流

┌──────────────────────────────────────────────────────────────────┐
│                  Superpowers 标准开发循环                          │
├──────────────────────────────────────────────────────────────────┤
│                                                                  │
│   ① /brainstorm                                                  │
│      模糊想法 → 苏格拉底式追问 → 明确需求                          │
│           │                                                      │
│           ▼                                                      │
│   ② /write-plan                                                  │
│      拆解为 2-5 分钟的小任务,精确到文件路径                        │
│           │                                                      │
│           ▼                                                      │
│   ③ /execute-plan                                                │
│      每个任务用独立 subagent 执行                                  │
│           │                                                      │
│      ┌────┴────┐                                                 │
│      │         │                                                 │
│      ▼         ▼                                                 │
│   TDD 循环   直接实现(简单任务)                                   │
│      │         │                                                 │
│      ├─────────┘                                                 │
│      ▼                                                           │
│   ④ 验证 (verification-before-completion)                         │
│           │                                                      │
│      ┌────┴────┐                                                 │
│      │         │                                                 │
│     通过      失败 → 系统性调试 → 修复                              │
│      │                                                        │
│      ▼                                                        │
│   ⑤ 代码审查 (requesting-code-review)                          │
│           │                                                   │
│      ┌────┴────┐                                              │
│      │         │                                              │
│     通过      有问题 → 修复 → 再审查                            │
│      │                                                        │
│      ▼                                                        │
│   ⑥ 归档 / 合并                                                │
│                                                                  │
└──────────────────────────────────────────────────────────────────┘

6.5 Superpowers 生态

除了核心 skill 套件,Superpowers 社区还提供:

插件 说明
superpowers-chrome 通过 Chrome DevTools Protocol 直接操控浏览器,零依赖
superpowers-developing-for-claude-code 开发自定义 Plugin / Skill / MCP Server 的工具集
episodic-memory 增强型记忆管理,让 AI 记住跨会话的上下文
private-journal-mcp 私人日记 MCP 服务器

6.6 使用建议

  • 不是每个任务都需要全套流程。简单修个 typo 直接让 Claude 做就行,复杂功能开发才走 brainstorming → plan → execute 流程。
  • TDD 是 Superpowers 的灵魂。刚开始可能觉得慢,但习惯了会发现整体效率更高——因为返工大幅减少。
  • Subagent 隔离是精髓。每个任务独立上下文,不会出现"聊着聊着 AI 忘了最初要干嘛"的情况。
  • 可以只取部分 skill 用。比如只用 brainstorming + writing-plans,或者只用 test-driven-development,按需组合。

7. openspec+superpowers组合用法

  • 考提示词:
## TASK STEP
### Explore phase(/opsx:explore)
- Trigger: 功能需求会话结束时,评估业务理解与改动是否全面
- Branch:
    - IF 逻辑清晰 OR 简单编辑/修复 -> 提示退出explore,直接执行。
    - IF 方案不明确 -> 建议使用 '/superpowers:brainstorming'细化方案。
- Note:最终执行或提变更提案由用户决定

### Knowledge Retention
- Trigger: 成功完成开发任务(or其他)
- Condition: 任务具有复用价值 OR 包含易错配置细节 OR 问题排查完成。
- Action: 建议用户沉淀记录到`.claude/LEARNINGS.md`
    ...

spec不能隐式触发superpowers的头脑风暴,两者是独立的插件,所以我用提示词讨巧的使用!

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐