用于统一管理/同步规范与提示文件的 CLI。
npm install @yuchenrx/pmt-cliprompts_root)。
status 查看所有 link 状态(不扫描磁盘)。
bash
pmt init
`
2)交互选择一个 prompt 并创建 link:
`bash
pmt link
`
3)或指定 prompt 名:
`bash
pmt link rules
`
4)或指定目标路径:
`bash
pmt link rules docs/AGENTS.md
`
5)查看 link 状态:
`bash
pmt status
`
安装
$3
`bash
npm i -g @yuchenrx/pmt-cli
`
该包发布的是 Windows 二进制文件,其他平台请从源码构建。
$3
要求:Bun。
`bash
bun install
bun run pmt
`
命令
常用命令:
- pmt init:初始化全局配置 / prompt root
- pmt set :保存一个命名 source(本地路径/URL)
- pmt use :切换当前 source
- pmt link [name] [file] [scope]:创建 link 文件(不传 name 默认交互选择;-i 可强制交互)
- pmt status:查看 link 状态
- pmt open-config [scope](别名 open):打开配置所在文件夹
- pmt insert :插入占位符
- pmt apply [files...]:将当前 source 应用到目标文件
查看完整参数:
`bash
pmt --help
pmt --help
`
配置
配置文件:
- 项目配置:.promptslotrc.json
- 全局配置:~/.promptslotrc.json
- 链接记录:.promptslot-links.json
- 索引文件:.promptslot-index.json
常用字段:
- prompts_root:全局 prompt 仓库目录
- prompts_dir:项目 prompts 目录(fallback)
- link_default:默认 link 文件名
- sources:name -> 文件路径/URL
- current:当前激活的 source 名
最小示例(.promptslotrc.json):
`json
{
"prompts_root": "C:/Users/you/prompts",
"link_default": "AGENTS.md"
}
`
链接模式
1)硬链接:文件系统级实时同步
2)软链接:文件系统级实时同步
3)Meta-link:头部 + hash(无法链接时降级)
Meta-link 用于跨盘、只读或 URL 等场景。
重命名追踪
- 创建 meta-link 后自动启动后台重命名守护。
- 仅监听已有 link 文件所在目录。
- 不做全盘扫描,仅更新 .promptslot-links.json。
构建
`bash
bun run build
`
输出:dist/pmt.exe
发布(维护者)
通过 GitHub Actions 自动发布:push tag 即触发。
1)创建并推送 semver tag:
`bash
git tag vX.Y.Z
git push origin vX.Y.Z
`
2)工作流 .github/workflows/release.yml 会:
- 执行 bun test
- 构建 dist/pmt.exe
- 创建 GitHub Release,并上传二进制
- 发布 npm 包(npm publish --access public)
注意:
- 如果 npm 账号开启了“发布需要 2FA”,CI 必须使用可绕过 OTP 的 token(Automation token 或启用 bypass 2FA 的 granular token),否则 npm publish 会报 EOTP。
CLI 名称覆盖
`bash
CLI_NAME=pmt
``