Drafted Skills

One skill library.
Every project. Claude and Codex.

A skill is reusable operating knowledge an agent loads automatically. Curate skills once in Drafted, pin the ones a project needs, and both Claude and Codex pick them up at the start of every session — no copy-pasting .claude/skills between repos, no Claude-only lock-in.

Browse the library See how it works
What a skill is

A folder of instructions an agent reads on its own.

At its core a skill is a SKILL.md — the instructions, plus a name, a description, and the trigger text that tells the agent when to reach for it. The description is the trigger: when the task matches, the agent loads the skill before it acts.

Alongside it, a skill can carry scripts/ it can run, references/ it can cite, and templates/ it can fill in. It encodes how to do a class of work well — evidence-first debugging, a checking-engineer calc pass, a categorized legal redline — not just whether the agent can.

code-review/
code-review/
├─ SKILL.md # name · description · triggers
├─ scripts/ # runnable, offline
│ └─ lint.mjs
├─ references/ # standards to cite
│ └─ checklist.md
└─ templates/ # scaffolds to fill in
└─ review.md
The model

Three layers: registry, manifest, cache.

Curate skills centrally, pin them per project, run them locally. The same shape as a package registry.
1 · REGISTRY

Drafted is the registry

The canonical skill content, org-scoped and behind auth. It's the source of truth — what you browse, search, create, and improve in the Drafted app. The mature, ready-today part, with 30+ curated skills out of the box.

2 · MANIFEST

A project pins which skills

Each project lists the skills it uses and pins each to a version — drafted:<slug>@<hash> for a pinned skill from the library, or repo:<path> for one that lives in the repo itself.

3 · CACHE

The local cache is the runtime

Pinned skills are materialized into a local cache and run from there — including their scripts, offline. The cache is the contract the agent reads at session start.

Drafted : skills :: a package registry : packages. Curate centrally, “install” locally, run locally.
The differentiator

The same skills work in Claude and Codex.

Claude has a native skills system; Codex reads instruction files only. The Causeway runtime injects your pinned skills into both at session start — so one source of truth drives both agents.
One source
Drafted skill library
Pinned per project, materialized into the local cache once.
Claude Injected block
Surfaced at session start as a “Project skills” block — each skill with its description and local cache path.
Codex Generated index
The Causeway runtime generates a <causeway-skills> index Codex reads as instructions — the same skills, made legible to an agent with no native skill loading.
That “Claude and Codex from one source” angle is the thing a team copy-pasting .claude/skills into each repo can't do. Codex support is a generated index, not native skill loading — honest, and still the difference.
The loop

Improve a skill once. Every project can adopt it.

Skills compound instead of drifting per-repo — improvements are available instantly but adopted deliberately.
1

Curate

Create and refine the skill in Drafted, the registry.

2

Pin

Add it to a project's manifest, pinned to a version.

3

Materialize

It's cached locally and injected at the start of every session.

4

Flag

When the skill is improved upstream, the pin is flagged.
⚠ outdated → @e7f0291

5

Adopt

Bump the pin to take the better version — on your terms.

The pin is the consent boundary: improvements never change silently under a project. You see that a better version exists, then choose to adopt it. Improve a skill once and every project that uses it can pick up the upgrade.
Fresh & accountable

Versioned, org-scoped, and traceable.

Versioned pins

Every pin is a content hash of the skill bundle. Freshness is a hash comparison — the pinned hash against the current canonical — so “outdated” is a fact, not a guess.

No silent changes

Pins don't move on their own. A project runs exactly the version it pinned until someone bumps it.

Org-scoped content

Skills live inside your org behind auth — you only ever resolve your own org's skills. The registry is the trust boundary for what a project can pull.

Local execution, with provenance

Scripts run locally on your machine — they are not sandboxed. The trust model is org-scoped content plus a provenance marker, so you know where a skill came from. Treat a skill's scripts as code you're choosing to run.

Get started

Browse the library today. Wire up the local pipeline when you're ready.

What's solid vs. what's new

The library and the Claude + Codex value are ready now — browse, search, create, and improve skills in the app. The per-project local pipeline (materializing pins into a local cache and injecting them at session start) is real but new — it shipped this week and is lightly dogfooded so far. It runs with the Drafted CLI installed and, today, via the Causeway runtime that materializes pins and injects them — not something every editor does natively.

Prerequisite for the local pipeline: install the Drafted CLI
npm install -g drafted@latest
1

Curate in Drafted

Browse the curated library, search for what you need, or author your own skill in the app.

Browse the library
2

Pin in a project

Add the skills a project needs to its manifest, pinned to a version you control.

drafted:<slug>@<hash>
3

Both agents load them

With the CLI and Causeway runtime, pinned skills materialize locally and are injected at session start — in Claude and Codex.

Start a session

Curate once.
Compound everywhere.

Build your team's skill library and run it across every project — and both agents.

Browse the library