Build a rig

Initialize a rig

rig init — write a manifest by inspecting what's already in the folder.

cd path/to/agent-workspace
rig init

By default this is an interactive wizard. It scans the folder, infers most of the manifest, and asks you to confirm or fill in the rest.

What gets inferred

FromInto
Folder name[rig].name (you can change it)
Your git config[rig].author (asked, you can override)
.mcp.json[mcp].config + [mcp].servers
.env.example placeholders[env].required + [env].template
Shell scripts, package.json, etc.[tools].required
.claude/settings.json permissions[permissions].allow / [permissions].deny
.claude/settings.json plugin hints[plugins].required
Folder shape (data/, scripts/, …)[package].include / [local].dirs

You're shown each inference and asked whether to accept it. Accepting all defaults is fine; you can refine later by editing rig.toml directly.

What gets written

  • rig.toml at the workspace root.
  • .claude/skills/rig/SKILL.md — the skill that teaches Claude Code in this workspace how to interpret rig doctor and repair gaps.
  • .claude/CLAUDE.md — minimal hint pointing Claude at the skill (created if absent; otherwise left alone).
  • .rigignore placeholder (only if you ask for one) — additive excludes beyond the defaults.

Nothing else. rig init is read-mostly: it doesn't install MCP servers, doesn't write env values, doesn't create folders. Setup happens in rig install.

Flags

FlagWhat
--forceOverwrite an existing rig.toml. Otherwise refuses.
--author <name>Set author explicitly (skips the prompt).
--jsonMachine-readable summary of what was written.
--plainNon-interactive defaults.

After init

Read the generated rig.toml. Then:

Making it collaborative later

Add a [sync] section to rig.toml (see collab manifest) and run rig share --enable. You don't need to re-init the rig.