Code Dungeon · The User Guide

Chapter III

Your guild

Your guild is the people who do the work. Each of them is a real coding agent (Claude Code by default; Codex or OpenCode if you have them) running in its own terminal on this machine, each in its own git worktree, so nobody steps on anyone else's changes.

Coders

Coders pick up GitHub issues, write the change, run the project's checks, push a branch and open a pull request. Each has a trade and may have a specialty: an issue labelled swarm:<specialty> goes to a free specialist first, but anyone can take it.

Testers

Testers wear aprons and work in the assay room. They test pull requests and never change them. Every chamber always has at least one tester, and can have up to three. When every tester is busy, a free coder who didn't write the pull request covers for them.

The DungeonMaster

The DungeonMaster runs the dungeon for you. He studies each new chamber, writes its QA brief, turns your project briefs into GitHub issues, gives coders work that fits the project and puts forward recruits. When a project needs art, he asks for it drawn in code first, and from a modelling tool like Blender only where that clearly looks better. He also reviews the whole dungeon every so often (Settings in the ledger sets how often). Write to him on your scroll (P).

Recruiting

There are three ways to add someone to a chamber:

  • Accept a recruit the DungeonMaster puts forward. They wait on the chairs along the great hall's east wall: press E on one to read their credentials, then recruit or decline. The Recruits tab of your scroll shows the same list.
  • Aim at an empty bench in a chamber and press E (or click it and confirm).
  • Use the Guild tab of the Overlord's ledger.

By default every recruit waits for your yes. In the ledger's Settings you can switch to auto-approve while a chamber is under the guild cap; anyone beyond the cap still waits for you.

Letting someone go

Open their terminal (press E on their bench) or find them in the Guild tab, and press Let go. Their worktree is removed; any branches they pushed stay on GitHub. The last tester in a chamber can't be let go.