Set Up Your Machine
Set up drwn once per machine. After this path you will have an installed CLI, a local store under ~/.agents/drwn, a chosen set of machine-wide default skills and MCP servers, and a clean first write into the downstream tool config.
Prerequisites
- Bun 1.2+
- npm (for the published package and npm-backed skill bundles)
- Node.js (for optional MCP servers that spawn Node processes)
The published package and checkout mode both run the TypeScript CLI through Bun.
Install
curl -fsSL https://bun.sh/install | bash
npm install -g darwinian
drwn --version
Confirm the install
drwn status summarizes the effective harness for the current directory. Outside any configured project it reflects machine state only.
drwn status
drwn status --json
You should see the resolved store path under ~/.agents/drwn, the list of enabled targets (claude, codex, cursor), and counts for skills and MCP servers. If store.initialized is false, the first store-mutating command will initialize it; nothing is broken.
Inspect the built-in inventory
The built-in library is the catalog of skills and MCP servers the packaged harness knows about. Listing it tells you what is available before you decide what to activate.
drwn library list
drwn library list skills
drwn library list mcp
Drill into a single entry to see what it does:
drwn library show <name>
See current machine defaults
Machine defaults live in ~/.agents/drwn/machine.json. On a fresh install the lists are empty.
drwn library defaults list
Add machine-wide defaults
Decide which skills and MCP servers should be active across every project that does not override them. Skills go through library defaults add skill; MCP servers through library defaults add mcp:
drwn library defaults add skill <skill-name>
drwn library defaults add mcp <server-name>
For example, to make a code reviewer skill and the context7 documentation MCP server part of every project by default:
drwn library defaults add skill reviewer
drwn library defaults add mcp context7
drwn library defaults list
You can remove a default the same way:
drwn library defaults remove skill <skill-name>
drwn library defaults remove mcp <server-name>
Preview, then write
drwn write --dry-run shows the exact changes the write would make to ~/.claude, ~/.codex, and ~/.cursor. Read it before running the unguarded write.
drwn write --dry-run
drwn write
Verify
After the first write, confirm the downstream state matches:
drwn status
drwn doctor
ls ~/.claude/skills
ls ~/.codex/skills
drwn doctor is report-only — if anything looks wrong it tells you what without mutating. The downstream skill directories should contain copied skill directories for each of your curated and default skills.
Cross-References
- Local Store for the layout under
~/.agents/drwn - MCP Servers for how MCP server definitions flow through the layers
- Override for One Project when one project needs a different effective harness
- Reading Doctor when the first write surfaces issues