
Currently, there is no persistent editing functionality for the MainPrompt.
If you modify it manually, your changes will be lost when switching prompts.
💡 Workaround:
To retain changes, you must edit the prompt template directly and use the prompt switcher to reload it. Be aware that this method does NOT create backups.
Persistent editing is not yet supported — use with caution.
Multilingual CLI tool to manage prompt sets for local AI agents with file system access.
- Multilingual Support: Fully available in German and English
- Main Prompt Management: Clear distinction between Main Prompts and Platform Prompts
- Platform Prompt Templates: Predefined templates in both languages
- Easy Prompt Switching: Choose from all templates in the template directory
- Create New Prompts: Interactive creation with nano
- Config Management: Configurable paths and settings
- Private Templates: Separate management of private prompts per language
- YAML Header Support: Shows name and project information
- Colored Output: Clear display with color highlighting
- Cross-Platform: Works on Linux, Mac, and Windows
The tool supports:
- 🇬🇧 English
- 🇩🇪 German (Default)
The language can be changed at any time via the main menu.
- Bash Shell
- Linux/Unix System (tested on Ubuntu/Debian)
- jq (JSON processor) - for config management
- Write permissions in the system prompts directory
- Clone the repository:
git clone https://github.com/GaboCapo/mainprompt-manager.git
cd mainprompt-manager
- Make executable (if not already):
chmod +x prompt-manager.sh
- ( Optional: Create a symbolic link for system-wide access: ) in Development
sudo ln -s $(pwd)/prompt-manager.sh /usr/local/bin/prompt-manager
./prompt-manager.sh
The tool shows a main menu with the following options:
- Switch Main Prompt: Shows all available prompts for selection
- Create New Main Prompt: Interactive creation of a new prompt
- Edit Config: Adjust paths and settings
- Create/Show Platform Prompt: Generate a platform-specific prompt
- Open Platform Prompt Directory: Opens the folder with generated platform prompts
- Open Main Prompt Directory: Opens the folder with all system prompts
- Change Language: Switch between German and English
- Quit: Exit the program
- Choose option 2 in the main menu
- Enter a name for the prompt
- The editor (nano) opens with a template
- Edit the template as desired
- Save and close the editor (Ctrl+O, Enter, Ctrl+X)
- Optional: Activate the new prompt immediately
- Choose option 4 in the main menu
- Select a template from the available options
- Confirm the detected paths
- The generated prompt contains:
- Automatically detected username
- Correct path to the MainPrompt
- Instructions in the selected language
- Copy the generated text to the prefered platform
- Choose option 3 in the main menu
- The config opens automatically in nano
- Edit the JSON config:
prompt_dir
: Directory for system promptsmain_prompt_filename
: Name of the main prompt filetemplate_dir
: Directory for templates (relative to script)language
: Language for prompts (de/en)ui_language
: Language for UI (de/en)
- Save and restart the tool
The tool supports private templates for personal prompts:
Public Templates (templates/[language]/main-prompts/
):
- Version controlled in Git
- For general, shareable prompts
- Ideal for team collaboration
Private Templates (templates/[language]/private-templates/
):
- NOT version controlled in Git (.gitignore)
- For personal/confidential prompts
- Remain local on your system
- Project Switching: Quickly switch between different project contexts
- Prompt Versioning: Test different versions of a prompt
- Team Collaboration: Share common prompts within the team
- Development Workflow: Different prompts for Dev/Test/Prod
- Multilingual Work: Work with prompts in different languages
- Check if
.md
files exist in the configured directory - Ensure you have read permissions for the directory
- Check write permissions in the system prompts directory
- Ensure sufficient disk space is available
- Restart the tool after changing the language
- Check if the config.json was saved correctly
This project is licensed under the MIT License - see LICENSE file for details.
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
For questions or suggestions, please open an issue in the GitHub repository.