命令字典
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
从文件加载系统提示替换默认值
--system-prompt-file <path>claude --system-prompt-file ./custom-prompt.txt--system-prompt-file 是 Claude Code 的 CLI 启动 flag。它从指定文件加载系统提示,替换默认的系统提示。官方 CLI reference 的原文是:"Load system prompt from a file, replacing the default prompt"。
./custom-prompt.txt。官方文档还提醒:替换会丢掉整个默认提示,包括工具使用指引和安全指令。这些内容里你的任务仍然需要的部分,得自己补进文件里。
claude --system-prompt-file ./custom-prompt.txt
# 官方表格中的另一个示例
claude --system-prompt-file ./prompts/review.txt
官方文档列出的同族 flag 如下:
| Flag | 行为 |
|---|---|
--system-prompt | 用内联文本替换整个默认提示 |
--system-prompt-file | 用文件内容替换默认提示 |
--append-system-prompt | 在默认提示后追加文本 |
--append-system-prompt-file | 把文件内容追加到默认提示 |
--system-prompt-snapshot | 传 off 时,每次请求都重建系统提示 |
--system-prompt 与 --system-prompt-file 互斥,不能同时传。--append-system-prompt / --append-system-prompt-file)可以与任一替换类 flag 组合使用。--exclude-dynamic-system-prompt-sections 只在使用默认系统提示时生效。设置了 --system-prompt 或 --system-prompt-file 后,它会被忽略。--system-prompt-snapshot off 用来控制续接对话时是否重建提示,见下文"常见坑"。| 约束 | 原因 |
|---|---|
不能与 --system-prompt 同时使用 | 官方文档明确两者互斥 |
| 默认工具指引、安全指令、编码约定会一并丢失 | 官方文档:替换会丢弃整个默认提示,由使用者自己负责任务仍需要的内容 |
--exclude-dynamic-system-prompt-sections 被忽略 | 该 flag 只作用于默认系统提示 |
官方文档给出的选择依据如下:
官方文档还建议:需要可切换、可在项目内共享的持久人设时,用 output styles;需要 Claude 始终遵循的项目约定时,用 CLAUDE.md。
--resume / --continue 也一样。续接时换了文件,或不再传这个 flag,要等对话被 compact,或开始新对话后才生效。--system-prompt-snapshot off,让每次请求都重建提示。官方文档标注该 flag 需要 Claude Code v2.1.257 或更高版本。claude --help 不会列出所有 flag,所以 --help 里查不到它,不代表它不可用。