Show HN: Promptctl – AI提示词的Git管理工具
Promptctl 是一个专为AI提示词设计的版本控制工具,类似于Git,支持提示词的版本记录、差异比较、回滚等操作。通过简单的命令行界面,开发者可以轻松管理LLM提示词的生命周期,包括提交、日志查看、搜索、导出、复制、重命名及自动监控文件变化等功能。该工具使用Go语言编写,零外部依赖,所有数据存储在.promptctl/store.json中。
提示词(Prompt)在AI应用开发中扮演着关键角色,然而它们的版本管理却常常被忽视。Promptctl正是为解决这一问题而诞生的命令行工具,它像Git一样为AI提示词提供版本控制功能。该工具由Naya AI开发,作者是Shawnaya Williams,以MIT许可证开源。
核心功能
Promptctl支持完整的版本生命周期管理。用户可以通过commit命令保存提示词版本,支持从标准输入或文件读取内容,并可附带消息、模型标签和自定义标签。log命令显示版本历史,支持预览片段和标签过滤。diff命令对比版本差异,高亮显示变化。rollback命令可非破坏性回滚到任意历史版本,并创建新版本。此外,show命令查看特定版本内容,search搜索内容或标签,export导出为Markdown文档,copy复制整个版本历史到新名称,rename重命名提示词,delete删除提示词及其所有版本。
自动监控与高级功能
watch命令可监控文件变化并自动提交,适合在用编辑器编辑提示词时自动记录每次保存,支持设置轮询间隔。prune命令可保留最新N个版本以清理历史。stats命令显示存储库整体统计信息。completion生成shell补全脚本。
技术实现
Promptctl完全使用Go标准库编写,无任何外部依赖,编译为单个二进制文件,部署简单。所有数据存储在项目根目录的.promptctl/store.json中,类似.git目录。建议将.promptctl/加入.gitignore,但如果团队需要共享版本,可仅跟踪store.json文件。
路线图
项目未来计划包括远程同步(S3、GitHub Gist)、终端并排差异视图、VS Code扩展等。欢迎社区贡献。
总的来说,Promptctl为提示工程提供了专业的版本管理方案,有助于提升AI应用开发的效率和可维护性。