PromGit —— version your prompts like code, and gate regressions before they ship.
PromGit —— 把 prompt 当代码管理:快照、历史、离线体检,分数回退直接拦在 CI 门禁里。
团队改 prompt 全凭手感:改完"感觉更顺了",两周后才发现某类 badcase 率翻倍。promgit 给 prompt 库加上版本链 + 分数基线:每次改动跑一遍离线体检,分数比基线退步就退出码 1 拦下合并——不接 LLM 也能拦住 80% 的典型退化(泄密、模板破损、必需小节丢失、无限膨胀)。
python -m promgit init # 生成 .promgit/ 与 prompts/
# 放几个 prompt 进 prompts/*.md(支持 frontmatter: id / model / ...)
python -m promgit snapshot --require 边界与降级,质量标准 # 建立基线
python -m promgit check # CI 里跑;分数回退 → exit 1| 检查 | 默认规则 | 权重 |
|---|---|---|
| forbidden | 疑似 API key / AWS AKIA / 硬编码 token 正则;--forbidden 追加 |
40 |
| required | --require 小节标题必须存在(如「边界与降级」) |
30 |
| vars | 未配对花括号(模板变量写坏的高发信号) | 15 |
| length | 正文超长告警(prompt 膨胀) | 15 |
- name: prompt regression gate
run: python -m promgit check --threshold 80 --json > gate.json || exit 1- 离线优先:不调 LLM 也有确定性的分数(同输入恒同输出),CI 才敢用;
- frontmatter id 为准:文件改名不断链;重 id 直接报错;
- 历史即 JSONL:
.promgit/history.jsonl一行一快照,diff/审计都友好。
MIT
pip install -e .git clone https://github.com/qianbrady/promgitpip install -e .- Run
promgit --help- full usage on screen
$ promgit --helpIssues and PRs welcome - run pytest locally before submitting.