PromptPro: Advanced Prompt Manage and Versioning System
Promptpro is a powerful, flexible, and developer-friendly prompt management system that revolutionizes how you manage, version, and organize your AI prompts. With built-in versioning, tagging, encryption, and a beautiful TUI interface, ppro is the ultimate tool for prompt engineers, AI developers, and anyone serious about prompt management.
Promptpro can be installed via python pip install promptpro, while underneath build with Rust 🦀, providing extremly fast speed. You can using any of your prompt in any language, any project, by simply given a unique key, and every single time you edit your prompt, there will be automatically version store, you never need multi files / messed up json yamls cross different agent projects.
Promptpro support both python and rust out of box!
✨ Key Features
- 🔐 Secure Vault: Optional password-encrypted vault dumps for sensitive prompt data
- 📦 Complete Backup: Full vault export/import functionality with binary format
- 🔄 Automatic Versioning: Every prompt change is automatically versioned
- 🏷️ Smart Tagging: Tag versions with "dev", "stable", "release", and custom tags
- 💻 Beautiful TUI: Intuitive terminal user interface for easy navigation
- 📝 Rich History: Track all changes with timestamps and optional messages
- ⚡ Blazing Fast Performance: Optimized storage with efficient retrieval (powered by Rust)
- 🛠️ Developer Friendly: Comprehensive CLI and library API
🚀 Quick Start
Installation
Python:
pip install promptpro
Rust:
cargo install promptpro
Install from source:
# Clone the repository
Basic Usage
ppro is the short form of promptpro. after install.sh it will available in your path.
# Add a new prompt
|
# Add with a key
# Update an existing prompt
# Get the latest version
# Get a specific version or tag
# Tag a version
# Show history
# Open the TUI interface
📦 Backup & Restore
Export Your Vault
# Export without encryption (unencrypted binary)
# Export with password encryption
Import Your Vault
# Import unencrypted vault
# Import encrypted vault
🎮 TUI Interface
Navigate your prompts with the intuitive terminal interface:
- Arrow Keys / hjkl: Navigate between panels and items
- ← →: Switch between the 4 columns (Keys, Versions, Content, Tags)
- Enter / x: Apply or toggle tags on selected versions
- e: Edit content in the current panel
- o: Open external editor (like vim, nano)
- q: Quit the application
- Ctrl+S: Save when in edit mode
🔧 Advanced CLI Commands
Tag Management
# Tag a specific version
# Promote a tag to the latest version
# The 'dev' tag is automatically promoted to latest version on updates
History & Retrieval
# Show full history for a prompt
# Get prompt to a file
# Get specific version
# Get by tag
🛠️ Programmatic API Usage
ppro can be easily integrated into both Rust and Python applications.
Rust API
Add to Cargo.toml
[]
= { = "path/to/promptpro" } # or git source
Basic Rust API Example
High level, write a PromptManager singleton:
use Result;
use Lazy;
use ;
use Arc;
use RwLock;
// Our global PromptManager singleton
// Static global instance
static MANAGER: = new;
// Use
let pm = get;
let prompt = pm
.get_prompt
.await
.map_err?;
Low level API:
use ;
// Open the default vault
let vault = open_default?;
// Add a new prompt
vault.add?;
// Update an existing prompt
vault.update?;
// Get latest version
let content = vault.get?;
// Tag a version
vault.tag?;
// Get by tag
let stable_content = vault.get?;
// Get history
let history = vault.history?;
Backup & Restore API (Rust)
use PromptVault;
// Dump vault to binary file (with optional encryption)
let vault = open_default?;
vault.dump?;
// Or without encryption
vault.dump?;
// Restore from binary file
let restored_vault = restore?;
Complete Rust Example Program
use ;
use Result;
async
🐍 Python Bindings
ppro also provides Python bindings built with PyO3, making it easy to integrate prompt management into Python applications.
Installation
The Python package can be built and installed using Maturin:
Or if building from source:
Basic Python Usage
=
=
🎯 Why Choose ppro?
For Prompt Engineers
- Version Control: Track every iteration of your prompts
- A/B Testing: Maintain multiple versions and compare effectiveness
- Rollback Capability: Instantly return to previous versions
- Tag Management: Organize prompts by stability, project, or context
For AI Developers
- API Integration: Easy programmatic access to your prompts
- Environment Management: Different tags for dev/staging/prod
- Team Collaboration: Share and sync prompt collections
- Performance: Fast retrieval and minimal overhead
For Security-Conscious Teams
- Encryption: Optional password protection for sensitive prompts
- Binary Format: Secure, tamper-resistant backup format
- Local Storage: Full control over your prompt data
- Audit Trail: Complete history with timestamps
🏷️ Tagging System
Special Tags
dev: Automatically points to the latest version on updatesstable: Manually set for production-ready versionsrelease: For major releases or milestones
Custom Tags
You can create any custom tag names to organize your prompts:
# Create custom tags
📊 Use Cases
AI Model Development
- Track prompt evolution during model training
- A/B test different prompt variations
- Maintain production vs. experimental prompts
Content Generation
- Template management for marketing campaigns
- Document generation prompts
- Personalized content creation
Research & Experimentation
- Maintain experiment logs with associated prompts
- Compare prompt effectiveness across models
- Share prompts within research teams
🤝 Contributing
We welcome contributions! Feel free to:
- 🐛 Report bugs and issues
- 💡 Suggest new features
- 🔧 Submit pull requests
- 📖 Improve documentation
📄 License
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
GPL-3.0 License:
- You can freely use, study, share, and modify this software
- You must distribute source code when sharing
- You must license derivative works under the same terms
- You must preserve the original copyright notice and license
For more details, see the LICENSE file.
ppro - Taking prompt management to the next level! 🚀
Made with ❤️ for the AI development community.