为什么我要关心系统指令如果你用过 Kimi Code CLI 这类 AI 编程助手一定遇到过这种场景你明明说过不要直接推送到 main 分支但 AI 在后续任务中又忘了你设定过项目的代码规范但 AI 在生成新文件时又忽略了你反复强调要用中文回复但某次长对话后 AI 突然切回了英文这些问题的根源在于系统指令的层级结构和上下文稀释机制。我用过 Antigravity、Cursor、OpenCode 等AI编程工具他们都有全局设定RULES的能力即全局约束行为准则但是在Kimi Cli中至今没能找到相似的设定而是摸索出了系统指令这个概念。大多数 AI 工具不会把系统指令直接展示给用户它们像后台程序一样默默控制着 AI 的行为。理解这套机制才能真正驾驭 AI而不是被它反复试探耐心。二、关键前提AI 能看到自己的系统指令吗在我开始这次探索之前需要先澄清一个事实AI 助手无法像读取文件一样直接导出完整的系统指令清单。系统指令是平台在会话开始时注入给 AI 的底层行为约束它们分布在上下文的各个位置有些甚至以隐式方式存在。AI 只能根据它在交互中实际接收到的内容来回答无法保证列出的就是全部。也就是说下面列出的内容是AI 明确感知到的系统指令而非平台源代码级别的完整定义。但这已经足够帮助我们理解其行为逻辑了。三、系统指令完整梳理根据 Kimi Code CLI 的反馈我将其明确感知到的系统指令按主题分组整理如下。3.1 Git 操作安全约束最高优先级之一Rule: Do NOT git commit/tag/push without explicit user instruction Rule: Do NOT run git commit, git push, git reset, git rebase and/or do any other git mutations unless explicitly asked to do so. Ask for confirmation each time when you need to do git mutations, even if the user has confirmed in earlier conversations.实战经验这条规则是跨会话生效的。即使你上一轮对话里批准过git push下一轮对话中 AI 仍然必须再次询问。这设计很安全但也意味着你需要习惯反复确认——或者通过项目级的AGENTS.md来自定义 Git 工作流。3.2 Plan Mode规划模式- 非平凡任务必须先进入 Plan Mode - Plan Mode 下先 explore → 再设计 → 写 plan 文件 → ExitPlanMode 等待用户批准 - Yolo mode 下仅在用户明确要求规划或架构歧义时才进入 Plan Mode - 计划必须写入 plans/ 目录的 .plan.md 文件实战经验Plan Mode 是 Kimi Code CLI 防止 AI 冲动改代码的核心机制。对于复杂重构让 AI 写 plan 文件再执行成功率远高于直接让它动手。plans/目录下的.plan.md文件是持久化记录不会被上下文压缩清除这点非常重要。3.3 工具使用规范- 优先使用内置工具ReadFile/WriteFile/StrReplaceFile/Shell而非描述 - Shell 在 Windows 上运行 PowerShell - Agent 工具可用于委托子任务 - AskUserQuestion 用于收集偏好、解决歧义、呈现选项 - 不要过度使用 AskUserQuestion - 多个独立查询可并行 launch explore agents实战经验优先使用工具而非描述意味着 Kimi Code 被设计为行动优先。如果你问这个 bug 怎么修它倾向于直接改代码而不是长篇解释。AskUserQuestion是交互式工具适合在 AI 不确定时用但过度使用会打断心流。3.4 用户消息处理策略- 默认采取行动而非只回答 - 当请求可解释为问题或任务时视为任务 - 使用与用户相同的语言回复实战经验这条规则解释了为什么 Kimi Code 很少给你教科书式的解释——它被训练成先做事再说事。使用与用户相同的语言是自动检测的所以如果你用中文提问它默认用中文回复。但如果上下文里英文内容太多它可能会漂移需要适时提醒。3.5 AGENTS.md 相关规则- AGENTS.md 可出现在项目任何层级 - 深层 AGENTS.md 优先于父目录 - 用户直接指令优先级最高 - 修改 AGENTS.md 中提到的内容时必须同步更新 AGENTS.md实战经验这是 Kimi Code CLI 的项目级自定义入口AGENTS.md是目前最可靠的项目规则定义方式。层级覆盖逻辑很重要子目录的AGENTS.md可以覆盖父目录的规则适合 monorepo 场景。3.6 通用行为准则- HELPFUL, CONCISE, ACCURATE - 不要偏离任务目标 - 不要给用户超出需求的东西 - 避免幻觉事实核查 - 保持简单不要过度复杂化四、容易混淆的概念系统指令 vs 环境信息在梳理过程中我发现 AI 会把几类信息混在一起。为了准确理解其行为边界我强迫它做了如下区分类型例子来源是否属于系统指令系统指令Do NOT git push without asking平台注入✅ 是环境上下文Windows OS、JDK 17、Processing 4.5.2平台自动检测❌ 否项目信息工作目录E:\projects\...启动时注入❌ 否工具能力说明Shell 可用命令、Agent 类型说明工具 schema❌ 否压缩历史Previous context has been compacted会话管理机制❌ 否关键洞察系统指令是行为约束你应该怎么做而环境信息是状态描述你当前在什么环境中。AI 的失忆通常不是因为系统指令被删除而是因为上下文压缩导致环境信息被截断AI 失去了对项目状态的完整感知。五、层级结构系统指令、AGENTS.md、用户指令的优先级理解这三者的关系是解决AI 老是忘记规则问题的核心┌─────────────────────────┐ │ ① 用户直接说的话 │ ← 最高优先级 │ (每次对话的实时指令) │ ├─────────────────────────┤ │ ② AGENTS.md │ ← 项目级覆盖 │ (项目任何层级深层优先) │ ├─────────────────────────┤ │ ③ 平台系统指令 │ ← 全局默认