Open Prompt Archive (OPA)
A portable, self-contained archive format for packaging AI agent prompts together with their session history, data assets, and execution metadata.
Get OPA Runner View Specification View on GitHub
Ready to run OPA files? Download OPA Runner — a cross-platform desktop app for opening and executing
.opaarchives in sandboxed containers. Available for Windows, macOS, and Linux.
Why OPA?
Running AI analysis on the server is expensive. OPA lets you package data with analysis instructions and distribute it to users who run it with their own AI — shifting costs, preserving privacy, and giving users the flexibility to add their own context.
What is OPA?
The Open Prompt Archive is a ZIP-based, portable archive format (.opa) that packages everything needed to execute an AI agent task:
- A prompt — the primary instruction for the agent
- Session history — prior conversation context for continuity
- Data assets — files the prompt references and the agent can access
- Metadata — manifest describing the archive and execution parameters
OPA archives are distributable units that any compatible client can extract and execute using any AI agent in a sandboxed container environment.
Get Started
Run OPA Files
Download OPA Runner to open and execute .opa files on your desktop.
Create OPA Files
Use an official library to generate OPA archives in your preferred language.
Read the Spec
Dive into the full specification to understand the format and build your own tools.
Explore Use Cases
See real-world examples of OPA in action, from inventory analysis to compliance audits.
Language Support
Official libraries are available for five languages:
| Language | Package | Install |
|---|---|---|
| Java | opa-java | Maven: ca.weblite:opa-core |
| JavaScript | opa-js | npm install opa-js |
| Python | opa-python | pip install opa-archive |
| PHP | opa-php | composer require opa/opa-php |
| Ruby | opa-ruby | gem install opa-ruby |
Key Design Principles
| Principle | Description |
|---|---|
| Agent-agnostic | No assumption about a specific AI provider, model, or API |
| Container-friendly | Straightforwardly extractable into a container filesystem |
| Human-readable | Manifest and prompt files use plain text formats (Markdown, JSON) |
| Toolchain compatible | Openable by standard ZIP tools (jar, unzip, 7-Zip) |
| Extensible | New capability fields can be added without breaking older clients |
| Minimal | A valid archive requires only a manifest and a prompt file |
Quick Example
A typical OPA archive contains:
sales-summary.opa
│
├── META-INF/
│ └── MANIFEST.MF
│
├── prompt.md
│
├── session/
│ ├── history.json
│ └── attachments/
│ └── previous-draft.md
│
└── data/
├── INDEX.json
├── q1/
│ ├── north-region.csv
│ └── south-region.csv
└── reference/
└── targets-2026.xlsx
Status
This specification is currently in Draft status (v0.1.0). Version 1.0 will be published following at least two independent interoperable implementations.