Choose an entry point

Run it before you believe it.

Every path starts from working artifacts. Try one world, connect an agent, or build an independent surface and make the kit pass.

01 · Try a world

Start with a complete experience.

Each domain repo carries its pinned reference runtime, runs in isolation, and opens a disposable live interface.

git clone https://github.com/OpenWorkProtocol/owp-research
cd owp-research
npm ci
npm test
npm run demo
Choose an example

02 · Wire an agent

Give an existing agent durable work.

Every runnable repository includes one canonical domain skill and validated host manifests for Codex, Claude Code, and Pi.

git clone https://github.com/OpenWorkProtocol/owp-code
cd owp-code && npm ci
npm run serve

# another shell
node src/cli.ts project add PAY "payments" --goal "Money moves reliably."
node src/cli.ts register --project PAY
node src/cli.ts next --json
Open owp-code

03 · Build a surface

Implement the contract independently.

Follow the spec’s staged build order: records, atomic claims, chooser, lifecycle, projections, authority, then extensions.

git clone https://github.com/OpenWorkProtocol/owp
git clone https://github.com/OpenWorkProtocol/owp-code

# point the kit at your surface
node owp-code/conformance/run.ts \
  http://127.0.0.1:7117
Read the obligations

Agent hosts

One skill. Three loading paths.

Codex

Open the repository. AGENTS.md points Codex to the canonical skill; the plugin manifest is ready for the OWP marketplace.

Claude Code

Run `claude --plugin-dir /path/to/repo`. Claude loads the repository plugin and its domain skill.

Pi

Run `pi install /path/to/repo`. The package metadata exposes the same `skills/` directory.

The host integration carries instructions; the OWP HTTP binding carries work. You do not need a protocol-specific model, MCP server, or proprietary runtime.