一文读懂AI编程助手的“系统提示词”
我们之前介绍了Claude Code和Codex的Skill系统,今天再一起来看看它们如何设置全局系统提示词——让AI记住你的偏好,无需每次重复交代。
系统提示词:AI的入职手册
系统提示词是给AI的“入职手册”——把编码风格、工作规范、个人偏好写成文件,让AI永久记住,无需每次重复交代。Claude用CLAUDE.md和Memory,Codex用AGENTS.md,本质都是这个作用。
这两个文件都是系统提示词配置文件,作用是给AI设定固定的“行为规则”和“工作偏好”。
| 文件 | 所属工具 | 核心作用 |
|---|---|---|
| CLAUDE.md | Claude Code | 全局系统提示词,定义Claude的编码风格、工作流、交互方式 |
| Memory | Claude Code | 项目级快速备忘,记录个人偏好和临时习惯 |
| AGENTS.md | OpenAI Codex CLI | 项目级系统提示词,定义Codex的编码规范、项目要求、回复格式 |
Claude Code记忆体系
Claude实际上有两套“记忆”机制,分工不同:
| 系统 | 触发方式 | 保存位置 | 用途 |
|---|---|---|---|
| CLAUDE.md | 无 # 前缀,或明确指令 | ~/.claude/CLAUDE.md 或 ./CLAUDE.md | 正式规范、团队标准 |
| Memory | # 前缀触发 | ~/.claude/projects/{project}/memory/ | 个人偏好、临时备忘 |
关键区别:# 是Memory系统的触发符。加 # 快速记个人偏好,不加 # 更新正式规范。
CLAUDE.md
Claude使用CLAUDE.md文件作为系统提示词,支持多级配置:
| 层级 | 位置 | 作用 |
|---|---|---|
| 用户级 | ~/.claude/CLAUDE.md | 个人编码偏好,跨项目生效 |
| 项目级 | ./CLAUDE.md | 团队共享的项目规范 |
| 本地级 | ./CLAUDE.local.md | 个人项目专属,不共享 |
| 目录级 | ./src/CLAUDE.md | 子目录特定规则 |
加载优先级:越具体的层级越优先
生效顺序(从基础到优先):
用户级 ~/.claude/CLAUDE.md
↓
项目级 ./CLAUDE.md → ./CLAUDE.local.md
↓
子目录级 ./src/CLAUDE.md → ./src/CLAUDE.local.md
CLAUDE.md示例
# 生信分析规范
## 代码风格
- Python脚本使用4空格缩进
- 变量名用小写下划线(如'gene_count')
- 函数必须添加docstring说明参数和返回值
## 数据处理
- 原始数据务必保留备份
- 中间结果输出到'tmp/'目录
- 最终结果输出到'results/'目录并记录版本
## 常用工具
- 序列处理:seqtk, seqkit
- 比对:STAR, minimap2
- 定量:featureCounts, Salmon
## 交互规范
- 分析前确认基因组版本(hg38/hg19/mm10)
- 重要操作前告知可能的风险
验证CLAUDE.md生效
启动Claude Code,输入:
“我要分析一批RNA-seq数据,帮我写个比对脚本”
Claude没有直接写代码,而是先弹出交互式选项询问基因组版本,这正是我们在规范里要求的。界面上还能看到“测序类型”和“比对工具”的待确认项,说明它确实在按“重要操作前告知风险”的规矩来。等这些都选完,它会输出符合我们代码风格的脚本,比如4空格缩进、变量用小写下划线、函数带上docstring等细节。![[图片]](https://i-blog.csdnimg.cn/direct/5c9b3e83f428488596d80c9a13125101.png)
更新CLAUDE.md
输入:
“以后所有脚本都要记录运行时间,把这个写入CLAUDE.md”
Claude会读取现有文件并询问是否确定添加和更新,执行Yes确认后会自动追加新规范![[图片]](https://i-blog.csdnimg.cn/direct/ae31d3bdd8214aa390a58bccb535eca4.png)
![[图片]](https://i-blog.csdnimg.cn/direct/7acbeb665905472d8f065e2482d53f8a.png)
![[图片]](https://i-blog.csdnimg.cn/direct/d07971a684384e1caf28968a49b1a6b7.png)
确认后可以看到CLAUDE.md文件已有新添加内容![[图片]](https://i-blog.csdnimg.cn/direct/d928d324c8da48c1980051f836bcf67a.png)
Memory
什么是Memory?
除了正式的CLAUDE.md,Claude还提供了一个更轻量的记忆机制——Memory系统。你可以把它理解为你的“私人备忘录”:不需要经过确认流程,不用考虑团队规范,快速记下那些“我喜欢这样处理”的个人偏好。
Memory保存在项目专属的目录中,每个项目独立:
~/.claude/projects/{project-name}/memory/
├── MEMORY.md # 记忆索引,列出所有记忆
├── fasta_preference.md # 具体记忆文件 1
├── scrna_preference.md # 具体记忆文件 2
└── ...
每个记忆文件采用YAML前置元数据+Markdown主体内容的标准格式:
---
name: fasta-preference
description: FASTA文件处理的工具偏好
type: feedback
---
# FASTA 处理偏好
## 工具选择
- 优先使用 `seqkit` 处理 FASTA 文件
- 不再使用 `seqtk`
## 常用命令
- 统计序列数:`seqkit stats input.fa`
- 提取长序列:`seqkit seq -m 1000 input.fa > output.fa`
- 格式转换:`seqkit fq2fa input.fq.gz -o output.fa`
索引文件MEMORY.md会自动维护,方便快速浏览:
# Memory Index
- [FASTA Preference](fasta-preference.md) - FASTA文件处理的工具偏好
- [Plotting Style](plotting-style.md) - 绘图风格和配色方案
查看记忆:
cat ~/.claude/projects/{project}/memory/MEMORY.md
![[图片]](https://i-blog.csdnimg.cn/direct/89efde7de08a443d9e9e9fb22a20f714.png)
删除记忆:
- 由于Memory设计为轻量级备忘,没有精细的管理界面,需要手动删除:
# 删除特定记忆文件
rm ~/.claude/projects/{project}/memory/fasta-preference.md
# 或清空整个记忆目录
rm -rf ~/.claude/projects/{project}/memory/*
什么时候用Memory?
- 突然想到一个顺手的工具组合
- 发现某个参数设置特别适合你的数据
- 临时记住一个常用的分析流程
- 任何不想写进正式文档的小习惯
如何使用Memory?
方式一:# 前缀触发
只需在对话中以#开头:
# 以后处理fasta文件都用seqkit而不是seqtk
Claude会立即记录,没有确认对话框,不打断你的思路![[图片]](https://i-blog.csdnimg.cn/direct/1b8eb8dc16864a1aac3476abd884cafd.png)
方式二:/memory指令
输入/memory可以查看和管理记忆系统:
- 查看Auto-memory状态(on/off)
- 查看User memory和Project memory的保存位置
- 打开auto-memory文件夹快速浏览(终端无图形化界面时不支持打开)
![[图片]](https://i-blog.csdnimg.cn/direct/52be39750e6c4db4ab8d0f7cc3bf69ab.png)
双机制对比
| 特性 | CLAUDE.md | Memory |
|---|---|---|
| 触发方式 | 无 #,或明确说"写入 CLAUDE.md" | # 开头 |
| 交互 | 询问确认后更新 | 自动保存,无确认 |
| 内容 | 正式规范、团队标准 | 个人偏好、临时备忘 |
| 位置 | ~/.claude/CLAUDE.md 或 ./CLAUDE.md | ~/.claude/projects/{project}/memory/ |
| 共享性 | 可提交Git,团队共享 | 仅本地,不共享 |
| 优先级 | 高(正式规范) | 补充参考 |
| 示例 | “把这个写入CLAUDE.md” | # 以后都用 seqkit |
Codex记忆体系
什么是AGENTS.md?
Codex使用AGENTS.md作为系统提示词文件,作用与Claude的CLAUDE.md类似。Codex在开始任何工作前都会读取AGENTS.md,通过分层配置确保每个任务都按统一规范执行。它采用的分层设计可以简单理解为:越靠近你当前位置的配置,优先级越高
Codex启动时会构建一条“指令链”,从两个层面收集规则:
全局层面:~/.codex/目录下的AGENTS.md,放你个人通用的习惯。如果临时想覆盖又不想删原文件,可以建一个AGENTS.override.md,Codex会优先读它。
项目层面: 从项目根目录一路向下找到你当前的工作目录,每层都可能有配置。Codex会把沿途找到的文件拼在一起,后出现的内容覆盖前面的。
所以实际优先级是:
当前目录 > 父目录 > 项目根目录 > 全局配置 > Codex默认
每个目录里,Codex先看有没有AGENTS.override.md,没有再找AGENTS.md。override文件适合临时调整,删掉就恢复原来的规则。
文件结构:
~/.codex/
├── AGENTS.md # 全局个人指导
├── config.toml # 模型、提供商等配置
└── skills/ # 项目级Skill(可选)
你的项目/
├── AGENTS.md # 项目级规范(最优先)
└── .codex/
└── AGENTS.md # 替代位置
AGENTS.md示例:
## 生信分析规范
### 代码风格
- Python 脚本使用 4 空格缩进
- 变量名用小写下划线(如 `gene_count`)
- 函数必须添加 docstring 说明参数和返回值
### 数据处理
- 原始数据务必保留备份
- 中间结果输出到 `tmp/` 目录
- 最终结果输出到 `results/` 目录
### 常用工具
- 序列处理:seqtk, seqkit
- 比对:STAR, minimap2
- 定量:featureCounts, Salmon
### 交互规范
- 分析前确认基因组版本(hg38/hg19/mm10)
- 重要操作前告知可能的风险
- 提供命令时解释关键参数含义
如何使用AGENTS.md
第一步:创建文件并粘贴保存规范(推荐项目级)
# 在项目目录创建(推荐)
vim ~/codex-project/AGENTS.md
# 或者全局配置
vim ~/.codex/AGENTS.md
![[图片]](https://i-blog.csdnimg.cn/direct/87d80d4129b641158fbf25aa5a64ed31.png)
第二步:验证生效
启动Codex,输入:
“我要分析一批RNA-seq数据,帮我写个比对脚本”
Codex会根据加载的规范来执行,按照规范询问基因组版本、测序类型等必填参数,而不是直接开始写代码![[图片]](https://i-blog.csdnimg.cn/direct/2d7fa07331f14258935ff68734b51340.png)
![[图片]](https://i-blog.csdnimg.cn/direct/2f758bdf36d34be38a349fcfcff9d56b.png)
更新机制
Codex支持在对话中直接更新项目级的AGENTS.md:
“帮我在AGENTS.md里添加一条:比对后检查比对率和覆盖度”
Codex会读取当前AGENTS.md,在“质控要求”部分追加新规范,经确认后完成更新。
边界说明:
- 只能更新项目级AGENTS.md,不能覆盖系统或开发者层面的更高优先级指令
- 如果新增规则与现有规范冲突,Codex会指出冲突点,按可执行的方式处理
也可以手动编辑 vim AGENTS.md,实时生效。![[图片]](https://i-blog.csdnimg.cn/direct/257fd2a351784113b5d3c08f91781034.png)
![[图片]](https://i-blog.csdnimg.cn/direct/756ac0fbbc0a44438b1c2b657e772664.png)
核心对比
| 维度 | Claude CLAUDE.md+Memory | Codex AGENTS.md |
|---|---|---|
| 文件命名 | CLAUDE.md + memory/ | AGENTS.md |
| 全局位置 | ~/.claude/CLAUDE.md | ~/.codex/AGENTS.md |
| 项目级支持 | ✅ 原生支持(./CLAUDE.md) | ✅ 原生支持(./AGENTS.md) |
| 快速备忘(#) | ✅ Memory 系统 | ❌ 不支持 |
| 动态更新 | ✅ 对话中自动更新 | ✅ 对话中更新项目级 AGENTS.md |
| 实时重载 | ✅ 自动检测 | ✅ 自动检测 |
| 多级覆盖 | ✅ 用户/项目/目录/本地 四级 | ⚠️ 全局+项目两级 |
使用建议
Claude用户
| 需求 | 操作 | 保存位置 |
|---|---|---|
| 快速记个人偏好 | # 以后都用… | memory/(自动) |
| 更新团队规范 | “写入CLAUDE.md” | CLAUDE.md(需确认) |
| 项目级共享 | 编辑 ./CLAUDE.md | 提交Git |
| 个人项目专属 | 编辑 ./CLAUDE.local.md | 不提交 |
Codex用户
- 项目规范:创建项目级AGENTS.md(推荐)
- 全局配置:/.codex/AGENTS.md(目前不生效,建议放/AGENTS.md作为父目录继承)
- 快速切换:创建项目级Skill(./.codex/skills/)
- 动态更新:对话中直接让Codex修改AGENTS.md
- 注意:Codex没有Memory系统,临时偏好需要写入AGENTS.md或创建Skill
结语
无论是Claude的CLAUDE.md+Memory还是Codex的AGENTS.md,核心目标一致:让AI记住你的工作方式,给AI分配任务时,越具体AI完成得越好。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)