Prompt Delivery
Manicode delivers prompts to your team through a dedicated Git repository, your prompt repository. When new or improved prompts are released, Manicode opens an update pull request there and merges it into the main branch.
How It Works
- Manicode publishes a release.
- Manicode delivers it to your prompt repo. It opens an update PR listing every prompt added, updated, or removed, then merges it into the main branch.
- You pull and copy. Pull the main branch, read the PR description for what changed, and copy the updated prompts you use into your code. See Quick Start for adding a prompt to your tool.
What an Update PR Contains
- Title:
Update prompts to YYYY.MM.DD-HHMM, the release being delivered - Branch:
prompts/YYYY.MM.DD-HHMM - Description: the release version and source commits, followed by the prompts added, updated, and removed, listed by id (for example
python/django/5.2)
Your Prompt Repo
Your prompt repo has this layout:
prompts/
├── VERSION which release this is
├── index.json every prompt's id, name, version, and last review date
└── <group>/<technology>/<version>/
└── prompt.md the prompt for that technology version
- Prompt files — One
prompt.mdper technology per version, for exampleprompts/python/django/5.2/prompt.md. See Prompt Library for what a prompt contains. Groups are language ecosystems (python,js,jvm,dotnet,go,php,ruby,rust,swift,dart,beam,native) plusinfra,cloud,policy,spec, andshellfor technologies without one host language. index.json— A list of every prompt in the release. Use it to look up a prompt's path, or to check when it was last reviewed.- A
VERSIONfile — Metadata recording which release this is and where it came from.
A prompt's id is its path without the file name, for example python/django/5.2. Each supported version of a technology is a separate prompt, so Django 5.2 and Django 6.0 each have their own file.
Here is an index.json entry:
"python/django/5.2": {
"uuid": "c0827183-bb14-4354-8856-76a103e16ef8",
"name": "Django",
"version": "5.2",
"last_reviewed": "2026-09-29",
"path": "python/django/5.2/prompt.md"
}
The uuid stays the same for a given prompt across releases, so you can use it to join with your own records.
Finding a Prompt
To find the prompt for a technology and see which versions are available:
jq -r '.prompts | to_entries[] | select(.value.name == "Django") | "\(.key) reviewed \(.value.last_reviewed)"' prompts/index.json
python/django/5.2 reviewed 2026-09-29
python/django/6.0 reviewed 2026-09-12
python/django/6.1 reviewed 2026-09-12
Use the version that matches what your project runs. When you upgrade a framework, switch to that version's prompt. If a release removes a prompt you use, search the same way for the version that replaces it.
Versioning
Releases use a date-based format: YYYY.MM.DD-HHMM in UTC (e.g., 2026.10.07-1430). A later date means a newer release.
The VERSION file included in every release contains:
version: 2026.10.07-1430
source_sha: 0559d73b9d821f8abc9da967623fe7cf2ec2eafc
context_sha: aab803f1d43c5090e86fa7cef452b6683531e04b
aegis_commit: 71093f23bfbee22378fb69c39d8c1b8473bc1216
released_at: 2026-10-07T14:30:00Z
| Field | Description |
|---|---|
version | Date-based version identifier |
source_sha, context_sha, aegis_commit | The Manicode source commits that produced this release. Include them when you report an issue with a prompt. |
released_at | UTC timestamp of when the release was created |