闲碎记事本 闲碎记事本
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

YAN

我要偷偷记录...
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • java

  • linux

  • docker

  • redis

  • nginx

  • mysql

  • 其他

  • 环境搭建

  • Vibe Coding

    • Vibe Coding
    • MCP 协议说明与实现
    • MCP 使用
    • AI 引导与子任务
      • 项目规范注入
        • Claude Code — CLAUDE.md
        • Codex — AGENTS.md
      • Claude Code 引导技巧
        • 权限模式 — 控制AI的自主程度
        • Subagents — 开子任务
        • 自定义 Slash Command
      • 项目级 MCP 与 Skill 配置
        • 配置层级(优先级从高到低)
        • 项目级 MCP 配置
        • 项目级 Skill(自定义命令)
        • 敏感信息隔离
        • Hooks — 自动化触发
        • 追加系统提示
        • 动态引导 — 执行中补充信息
      • Codex 引导技巧
        • 审批模式
        • 非交互模式
        • 指定模型
        • 自定义 Instructions
      • 实战:引导 AI 做代码审查
        • Claude Code
        • Codex
    • OpenClaw 迁移记录
  • Git

  • 知识库
  • Vibe Coding
YAN
2026-05-29
目录

AI 引导与子任务

AI 编程工具装好了不等于好用——怎么"指挥"它才是关键。本文记录 Claude Code 和 Codex 的引导技巧:项目规范注入、计划模式、子任务拆分、自定义命令。

相关文档:Claude Code (opens new window) | Codex (opens new window)

# 项目规范注入

不管是 Claude Code 还是 Codex,核心思路都一样:把项目规则写进文件,让 AI 每次启动自动读取。

# Claude Code — CLAUDE.md

在项目根目录放一个 CLAUDE.md,Claude Code 启动时自动加载。

# CLAUDE.md

## 项目概述
VuePress 1.9.5 + vuepress-theme-vdoing 构建的知识库

## 开发命令
- npm run dev     # 开发服务器
- npm run build   # 构建

## 代码规范
- 回复使用中文
- frontmatter 包含 title、date、permalink、categories
- 知识库文章放 01.知识库/,随笔放 _posts/随笔/
- 目录用数字前缀排序(01.、02.)

支持多级 CLAUDE.md:

项目根/
├── CLAUDE.md              # 全局规范
├── frontend/
│   └── CLAUDE.md          # 前端特定规范
└── backend/
    └── CLAUDE.md          # 后端特定规范

Claude Code 在 frontend/ 目录工作时,会同时加载根目录和 frontend/ 的 CLAUDE.md。

还有用户级全局配置 ~/.claude/CLAUDE.md,所有项目生效:

# ~/.claude/CLAUDE.md

- 始终用中文回复
- 代码风格精简,不要写多余注释
- 修改前先检索相关代码

# Codex — AGENTS.md

Codex 用 AGENTS.md,作用和 CLAUDE.md 一样:

# AGENTS.md

## 项目概述
Spring Boot 3.2 + MyBatis Plus 后端项目

## 规范
- 使用 Java 17
- 数据库迁移用 Flyway
- API 返回统一用 Result<T> 包装

Codex 也会读取项目根目录的 AGENTS.md,支持多级目录。


# Claude Code 引导技巧

# 权限模式 — 控制AI的自主程度

Claude Code 有四种权限模式,交互界面中按 Shift+Tab 循环切换:

模式 说明 适用场景
Plan 只读规划,不改代码不执行命令 大重构前先看方案、不确定影响范围
Manual(默认) 每次写操作和命令执行都要确认 日常开发,需要把控每一步
Auto-Accept Edits 自动接受文件编辑,执行命令仍需确认 改动多但信任 AI 的编辑能力
YOLO(--dangerously-skip-permissions) 全自动,不弹任何确认 跑测试、CI 等可信任务
# 启动时指定模式
claude --permission-mode plan          # 规划模式
claude --permission-mode auto-edit     # 自动接受编辑
claude --dangerously-skip-permissions  # 全自动(YOLO)

# 交互界面中切换
# 按 Shift+Tab 在四种模式间循环

实际使用建议:

  • 新项目不熟代码 → 先 Plan 看方案,确认后切 Manual 执行
  • 日常迭代 → Manual,关键步骤过一眼
  • 大量重复改动(重命名、批量替换)→ Auto-Accept Edits
  • CI/CD 流水线 → YOLO,反正在沙箱里跑

# Subagents — 开子任务

Claude Code 内置 Agent 机制,可以让主会话派生子任务并行处理。

交互式使用:直接在对话中让 Claude 开子任务:

帮我检查 src/ 下所有文件的 lint 问题,开子任务并行处理

命令行使用:

# 指定 agent 类型
claude --agent Explore "搜索所有调用 deprecated API 的地方"

# 动态定义子 agent
claude --agents '{"reviewer":{"description":"代码审查","prompt":"你是代码审查员,检查代码质量和安全性"}}'

内置 Agent 类型:

Agent 用途
Explore 只读搜索,快速定位代码位置
Plan 设计实现方案,不执行修改
general-purpose 通用多步骤任务
claude 默认 catch-all

# 自定义 Slash Command

把常用引导逻辑封装成命令,放在 .claude/commands/ 目录,天然是项目级的——每个项目的命令互不影响:

<!-- .claude/commands/review.md -->
审查当前 git diff 的代码变更,关注:
1. 潜在的 bug
2. 性能问题
3. 安全漏洞
4. 代码风格

输出格式:按严重程度排序,给出具体修改建议。

使用:

# 在交互界面输入
/review

# 带参数
/review --fix

用户级全局命令放 ~/.claude/commands/,所有项目通用。项目级和用户级同名时,项目级优先。


# 项目级 MCP 与 Skill 配置

每个项目的 MCP Server 和 Skill 需求不同——Java 项目要数据库 MCP,前端项目要浏览器 MCP。Claude Code 支持三个层级的配置。

# 配置层级(优先级从高到低)

层级 路径 作用域
项目本地 .claude/settings.local.json 当前项目,不提交 git
项目共享 .claude/settings.json 当前项目,提交 git 共享给团队
用户全局 ~/.claude/settings.json 所有项目

# 项目级 MCP 配置

# 添加项目级 MCP(写入 .claude/settings.json)
claude mcp add --scope project mysql npx -y @benborla29/mcp-server-mysql

# 添加用户级 MCP(所有项目生效)
claude mcp add --scope user github npx -y @modelcontextprotocol/server-github

也可以直接编辑 .claude/settings.json:

{
  "mcpServers": {
    "mysql": {
      "command": "npx",
      "args": ["-y", "@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_USER": "root",
        "MYSQL_PASSWORD": "xxx"
      }
    },
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

实际项目配置示例:

项目 A(Java 后端)/.claude/settings.json:
  MCP: mysql、github、context7

项目 B(前端)/.claude/settings.json:
  MCP: puppeteer、filesystem、context7

项目 C(Python 脚本)/.claude/settings.json:
  MCP: sqlite、sequential-thinking

每个项目进去自动加载对应的 MCP,互不干扰。

# 项目级 Skill(自定义命令)

Skill 就是 .claude/commands/ 下的 Markdown 文件,项目级和用户级分开:

项目根/
├── .claude/
│   └── commands/
│       ├── deploy.md      # 项目专属:部署流程
│       ├── db-migrate.md  # 项目专属:数据库迁移
│       └── test-api.md    # 项目专属:API 测试

~/.claude/
└── commands/
    ├── review.md          # 通用:代码审查
    └── submit.md          # 通用:提交规范

项目级 Skill 示例(.claude/commands/deploy.md):

执行部署流程:
1. 运行 npm run build
2. 执行 deploy.sh 部署到测试环境
3. 验证健康检查接口 /api/health
4. 输出部署结果

# 敏感信息隔离

MCP 的密钥、Token 不要写进 .claude/settings.json(会提交 git),放在 .claude/settings.local.json:

// .claude/settings.local.json(加进 .gitignore)
{
  "mcpServers": {
    "mysql": {
      "command": "npx",
      "args": ["-y", "@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_PASSWORD": "真实的数据库密码"
      }
    }
  }
}

# Hooks — 自动化触发

Hooks 可以在特定事件发生时自动执行脚本,实现自动化引导:

// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "command": "npx prettier --write $CLAUDE_FILE_PATH"
      }
    ],
    "Stop": [
      {
        "command": "npm run lint"
      }
    ]
  }
}
  • PostToolUse — 每次 AI 编辑文件后自动格式化
  • Stop — AI 完成任务后自动跑 lint

# 追加系统提示

临时调整 AI 行为,不改 CLAUDE.md:

# 追加到默认提示后面
claude --append-system-prompt "始终使用 TypeScript,不要用 any"

# 完全替换系统提示
claude --system-prompt "你是一个 Python 专家,只回答 Python 相关问题"

# 动态引导 — 执行中补充信息

AI 在执行任务时不需要停下来等你说完——你可以随时插入补充信息,不用打断它当前的工作。

直接输入:AI 正在跑的时候,直接打字回车,消息会在当前轮次中生效。Claude Code 会把这个消息作为"途中补充"处理,不当作新的独立对话:

# AI 正在重构代码,你突然想到一个约束
别忘了保留原来的 @Deprecated 注解

AI 会收到这条补充,调整后续行为。不需要等它停下来,也不用重新解释上下文。

/btw:专门用于"顺便说一句"的场景。AI 正在处理 A 任务,你突然想到 B 任务的约束,用 /btw 插入,不影响 A 的执行:

# AI 正在写 API 接口
/btw 接口返回值用 Result<T> 包装,不要直接返回实体

# AI 继续写,但会把这条约束纳入

实际使用技巧:

场景 操作
AI 方向跑偏 直接输入纠正方向,不用等它跑完
想到遗漏的约束 /btw 补充约束条件
AI 在读错文件 直接说"看 src/utils/ 不是 src/lib/"
临时改需求 直接输入"改为支持分页查询"
补充上下文 粘贴错误日志或代码片段

核心原则:动态引导的价值在于省一轮对话。不用等 AI 跑完发现错了再重来,在它跑的过程中就把方向纠正过来。


# Codex 引导技巧

# 审批模式

Codex 有三种审批模式,控制 AI 的自主程度:

# suggest(默认)— 每步都要确认
codex --approval-mode suggest "重构 UserService"

# auto-edit — 自动编辑文件,但执行命令需要确认
codex --approval-mode auto-edit "修复所有 lint 错误"

# full-auto — 全自动,不确认(谨慎使用)
codex --approval-mode full-auto "运行测试并修复失败的用例"

# 非交互模式

单次任务直接出结果,不进入交互:

# 打印模式
codex -q "分析这个项目的架构"

# 指定输出格式
codex -q --output-format json "列出所有 TODO 注释"

# 指定模型

# 使用指定模型
codex --model o4-mini "优化这段 SQL 查询"

# 在 AGENTS.md 中固定模型
# codex 默认使用配置的模型

# 自定义 Instructions

Codex 支持在 AGENTS.md 中写更详细的引导:

# AGENTS.md

## 编码规范
- 优先使用 Stream API,不要写 for 循环
- 所有 public 方法必须写 Javadoc
- 异常处理用全局 @ControllerAdvice,不要在业务代码里 try-catch

## 提交规范
- commit message 格式:type(scope): description
- type 只允许:feat、fix、refactor、docs、chore

# 实战:引导 AI 做代码审查

# Claude Code

# 方式一:自定义命令
# .claude/commands/review.md
审查 git diff 的变更,按 bug / 性能 / 安全 / 风格 分类输出

# 执行
/review

# 方式二:Subagent
claude --agent Explore "搜索所有 @Deprecated 标注的方法,列出替代方案"

# Codex

# suggest 模式,逐步确认
codex --approval-mode suggest "审查 src/ 目录的代码质量,列出需要改进的地方"
#Claude Code#Codex#Vibe Coding
上次更新: 2026/08/18, 01:07:41
MCP 使用
OpenClaw 迁移记录

← MCP 使用 OpenClaw 迁移记录→

最近更新
01
Windows 和 Linux 环境下免密使用 SSH
08-11
02
Gradle 使用指南
05-29
03
Node.js 版本管理与环境隔离
05-29
更多文章>
Theme by Vdoing | Copyright © 2022-2026 YAN | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式