AI Agent开发Git工作流:Prompt和代码一起版本管理
🩺 摘要
System Prompt改了一个词导致Agent行为大变,找不回旧版本了。Prompt跟代码一样需要版本管理。
📝 详情
做过一个项目,为了调试把System Prompt改了十几次,最后忘了原始版本是什么。花了两小时才找回一个备份。
从那以后,Agent项目的所有文件都进了Git。
什么需要进Git
| 文件 | 为什么 |
|---|---|
| System Prompt | 改一个词Agent行为大变 |
| 工具定义/描述 | 影响Agent选工具的准确率 |
| 配置参数 | Temperature、模型选择等 |
| 测试用例 | 回归测试的依赖 |
推荐的文件结构
agent-project/
├── prompts/
│ ├── system_prompt_v1.md
│ ├── system_prompt_v2.md
│ └── prompts.md (当前使用的)
├── tools/
│ ├── tool_definitions.yaml
│ └── tool_descriptions.md
├── config/
│ └── agent_config.yaml
└── tests/
└── test_cases.json
总结
Prompt也是代码。 放进Git里,改了什么、为什么改、什么时候改的——一目了然。
分支策略
main — 生产环境(稳定)
├── staging — 预发布(测试通过)
├── dev — 开发(日常开发)
├── prompt/xxx — Prompt修改分支
└── tool/xxx — 工具添加分支
每次改System Prompt或工具描述,都开新分支。合并前用A/B测试验证效果。
.gitignore配置
Agent项目特别要注意哪些文件不能进Git:
# .gitignore
.env
*.key
config/production.yaml
logs/
__pycache__/
.venv/
*.pyc
.DS_Store
API Key、日志、缓存文件——这些绝对不能提交。特别是.env文件,里面可能包含多个API Key,泄露了就是安全事件。
💬 评论 (0)