Skip to content

Version Pinning ​

Lock prompts to specific versions for stability in production.

Why pin versions? ​

Prompt authors can update their prompts at any time. Without pinning, you always get the latest version — which could include breaking changes like renamed variables or different behavior.

Pin in the CLI ​

Use @version syntax:

bash
pod summarize@2

Pin in code ​

javascript
const prompt = await pod("summarize@2", { content: "..." });

Pin in projects ​

Use pod install to lock versions in promptodex.json:

bash
pod install summarize@2
json
{
  "prompts": {
    "summarize": "2"
  }
}

After pinning, pod summarize in that project always uses version 2, regardless of what's latest in the registry.

Pin in collections ​

Collections support per-item pinning. When you add a prompt to a collection, choose whether to pin it:

  • Unpinned — the collection always resolves to the latest version of that prompt
  • Pinned — the collection locks to the exact version you saved

This is useful for curating a stable bundle of prompts that a team or pipeline can install with:

bash
pod collection install production-stack

Items pinned in the collection install that version; unpinned items install latest.

When to update ​

  • Review new versions on promptodex.com before updating
  • Test the new version locally before updating promptodex.json
  • Update with: pod install summarize@3
EnvironmentApproach
DevelopmentUse latest (pod summarize) for newest features
StagingPin versions, test before promoting
ProductionAlways pin (pod summarize@2 or via promptodex.json)

Released under the MIT License.