Pi 可以创建提示词模板。让它为你的工作流构建一个模板。
提示词模板
提示词模板是 Markdown 片段,可展开为完整提示词。在编辑器中输入 /name 来调用模板,其中 name 是不带 .md 的文件名。
位置
Pi 从以下位置加载提示词模板:
- 全局:
~/.pi/agent/prompts/*.md - 项目:
.pi/prompts/*.md(仅在项目受信任后) - 包:
prompts/目录或package.json中的pi.prompts条目 - 设置:包含文件或目录的
prompts数组 - CLI:
--prompt-template <path>(可重复)
使用 --no-prompt-templates 禁用发现。
格式
---
description: Review staged git changes
---
Review the staged changes (`git diff --cached`). Focus on:
- Bugs and logic errors
- Security issues
- Error handling gaps
- 文件名会成为命令名。
review.md会变成/review。 description是可选的。如果缺失,则使用第一行非空内容。argument-hint是可选的。设置后,该提示会在自动补全下拉菜单中显示在描述之前。
参数提示
在 frontmatter 中使用 argument-hint,以便在自动补全中显示预期参数。使用 <尖括号> 表示必填参数,使用 [方括号] 表示可选参数:
---
description: Review PRs from URLs with structured issue and code analysis
argument-hint: '<PR-URL>'
---
这会在自动补全下拉菜单中渲染为:
→ pr <PR-URL> — Review PRs from URLs with structured issue and code analysis
is <issue> — Analyze GitHub issues (bugs or feature requests)
wr [instructions] — Finish the current task end-to-end
cl — Audit changelog entries before release
用法
在编辑器中输入 /,后接模板名称。自动补全会显示可用模板及其描述。
/review # Expands review.md
/component Button # Expands with argument
/component Button "click handler" # Multiple arguments
参数
模板支持位置参数、默认值和简单切片:
$1、$2、... 位置参数$@或$ARGUMENTS表示所有参数拼接后的内容${1:-default}在 arg 1 存在且非空时使用 arg 1,否则使用default${@:N}表示从第 N 个位置开始的参数(从 1 开始计数)${@:N:L}表示从 N 开始的L个参数
示例:
---
description: Create a component
---
Create a React component named $1 with features: $@
默认值对可选参数很有用:
Summarize the current state in ${1:-7} bullet points.
用法:/component Button "onClick handler" "disabled support"
加载规则
prompts/中的模板发现是非递归的。- 如果你想使用子目录中的模板,请通过
prompts设置或包清单显式添加它们。