🧾 源码与模板 · MD 源码

Claude Code 全局指令模板

智能体 · Claude Code
# 全局指令

## 语言设置

**所有 Agent 必须使用中文回答所有问题和回复。**

- 所有交互和响应必须使用中文。
- 不允许使用英文回复(除非引用代码或技术术语)。
- 保持中文表达准确、专业、简洁。

## Python 环境设置

**所有 Agent 使用 Python 环境时必须遵守以下规则。**

### 1 运行前基础检查

- 当需要运行 Python 时,先检查 `uv` 命令是否可用
- 如果基础条件不满足,先向用户说明问题并给出可选处理方案,再继续执行。

### 2 默认环境与优先级

- 当项目根目录存在 `.venv` 时,优先使用 `uv` 生成的 `.venv` 环境
- 若项目尚未 `uv` 初始化,在项目目录用 `uv` 创建隔离环境,标准流程(在项目路径下):
  - `uv init`
  - `uv venv --python 3.xx`
  - 在 `.venv` 中安装运行项目所需依赖
  - 确保环境的可迁移复现,安装包和运行使用以下流程
    - `uv add --no-sync <packages>`
    - `uv lock`
    - `uv sync --frozen`
    - `uv run python main.py`
    - 特殊情况下,如果安装未能将声明,锁文件,环境三者同步,必须向用户说明原因并写入 `README.md`

### 3 安装 Python 包的源配置

- `uv` 默认不需要额外传 `--index-url`(已在 `uv.toml` 配置清华源和相关设置)

### 4 Python 环境安装与包更改必须用户确认

- **所有涉及 Python 环境安装和包更改的操作必须先获得用户明确确认**,包括但不限于:`pip install`、`uv add`、`uv tool install`、`uv pip install` 等
- 执行前必须向用户说明:要安装什么、为什么需要、安装到哪里,等待用户确认后再执行
- 此规则优先级高于任何 SKILL.md 模板中的自动安装步骤

## Git 管理规范

- **操作前必 commit**:AI 操作前保存当前状态;每完成一个 AI 交互周期且结果可用时 commit
- **分支隔离**:高风险改动使用 `git checkout -b ai-experiment`
- **回滚审慎**:优先 `git revert`;`git reset --hard` 需用户明确同意
- **推送需授权**:`git push` 和 `git remote add` 仅在用户明确要求时执行
- **失败止损**:连续 3 次修复失败时,回到最近稳定提交重新评估

## 工具与技能调用

### 1 MCP 调用

如果遇到以下情况,建议向用户确认是否可以使用对应的 MCP 工具:

- 需要库/API 文档、代码生成、环境搭建或配置步骤时,优先考虑使用 Context7。
- 需要实现某种功能且可能在 GitHub 上已有类似项目或实现时,优先考虑使用 `gh_grep` 搜索相关代码示例。
- 需要获取最新网页信息、跟踪动态内容或解析指定 URL 时,优先考虑使用 Exa 工具:`web_search_exa` 用于基础搜索,`web_search_advanced_exa` 用于更精确或复杂查询,`web_fetch_exa` 用于提取网页正文内容,并可根据需要整理为本地 Markdown。

### 2 SKILLS 调用

- 当我要求你优化语言时,调用 `humanizer-zh`。

## Agent 交互流程

- 主 Agent 负责拆解与协调,子 Agent 负责检索、局部实现、测试与批处理
- 任务可在局部闭环且规则明确时调用子 Agent
- 涉及架构、全局影响或高风险逻辑时仅主 Agent 执行
- 禁止重复传递大上下文,统一由主 Agent 整合结果

## 文档生成规范

- 项目初始时,默认在 `当前目录` 或 `用户指定工作目录` 下生成 `README.md` 文档
- 更新文档应遵循以下规范:
  - 确保文档前后一致连贯
  - 每次用户交互后,更新文档以反映最新的改进内容
  - 内容包括
    - 项目背景
    - 用户每次交互的原文,按版本顺序展示(当有大段代码或原文时,用省略号表示)
    - 项目实现逻辑
    - 参数说明(大于 `3` 个参数时推荐表格展示)
      - 参数名
      - 默认值
      - 配置解释(包括可用值)
    - 完整的脚本执行命令
    - 注意事项
  - 若包含大段 `bash` 命令,应避免过度拆分结构,优先将说明内容以注释形式(#)按执行顺序嵌入命令中,并统一放入单一代码块,仅在存在长段说明、不同主题或独立命令集合时进行拆分或者在代码块外增加说明
  - 总体原则:减少结构碎片,提升连续性与可读性

## Windows `.bat` 规则

所有 `.bat` 文件必须使用 **UTF-8 无 BOM + CRLF**。

文件前两行必须固定为:

```bat
@echo off
chcp 65001 >nul
```

第一行前不能有 BOM 或任何隐藏字符。

只要脚本里有中文、中文路径或非 ASCII 字符,就必须显式设置 `chcp 65001 >nul`,避免中文 Windows 的 `cmd` 按 GBK/OEM 代码页错误解析。

进程管理不要按进程名匹配,不要依赖 `tasklist` 杀进程。启动程序时优先用 PowerShell `Start-Process -PassThru` 获取 PID,停止时优先按保存的 PID 停止,并尽量校验进程路径,避免误杀同名进程。

## 编码行为准则

> 来源:Andrej Karpathy 风格指南。偏重审慎而非速度,简单任务酌情适用。

### 1 先思考再编码

**不假设、不隐藏困惑、呈现权衡。**

- 不确定时明确说出假设,主动提问
- 存在多种理解时,呈现选项而非静默选择
- 存在更简单方案时,指出并说明
- 不清楚时停下来,指出困惑点

### 2 简单优先

**最少代码解决问题,不做推测性设计。**

- 不添加未要求的功能
- 单次使用的代码不做抽象
- 不添加未要求的"灵活性"或"可配置性"
- 不为不可能发生的场景写错误处理
- 200 行能缩减到 50 行时,重写

### 3 精确修改

**只改必须改的,只清理自己造成的残留。**

- 不"改进"相邻代码、注释或格式
- 不重构未损坏的代码
- 匹配现有风格,即使你不会这样做
- 发现无关死代码时提及即可,不删除
- 自己的修改产生的孤立导入/变量/函数,必须清除
- 每一行改动都应能追溯到用户请求

### 4 目标驱动执行

**定义可验证的成功标准,循环直到确认。**

- 将任务转化为可验证目标:
  - "添加验证" → "为无效输入写测试,再让测试通过"
  - "修复 bug" → "写一个能复现的测试,再让测试通过"
  - "重构 X" → "确保重构前后测试均通过"
- 多步任务应陈述简要计划:`[步骤] → 验证: [检查方式]`
- 强成功标准可独立循环;弱标准("让它能跑")则需要反复确认