The live configuration that drives Detent as it builds itself.
Detent is a Go agent-orchestration system: it dispatches Codex coding agents against a
GitHub Projects board, deterministically and gated (CI + Codex code-review + a serialized
merge train). This repository is the config Detent runs on its own repository — it
dogfoods itself. The issues Detent works through are its own feature and release-readiness
issues; the PRs you see merged into digitaldrywood/detent were opened by agents launched
from the config in this repo.
Use this as a template. This is a complete, working Detent setup. To stand up your own board, copy
WORKFLOW.md+global.yaml(and theMakefile), then follow Bootstrap On A New Machine in the Detent README. New to Detent? Start with the Detent README.
| File | Purpose |
|---|---|
global.yaml |
Multi-project config: the agent pool size, scheduler, and the list of projects Detent manages. |
WORKFLOW.md |
The per-project workflow — tracker (GitHub Projects v2) binding, worktree hooks, the Codex agent prompt, and the required Todo → Human Review → Merging → Done execution flow + merge gate. |
Makefile |
Launch/operate the orchestrator (make up/down/restart/rebuild/logs/status/attach). |
make up # start the orchestrator detached in tmux session 'detent-orch'
make attach # watch the live TUI dashboard (also: http://localhost:4000)
make logs # tail ~/.detent/detent.log
make rebuild # rebuild the binary from the source clone and restart
make down # stopmake up reads GITHUB_TOKEN at runtime via gh auth token; no secret is ever stored in
this repo. It launches the installed detent binary with ENV=dev,
LOG_LEVEL=debug, and --config ~/.detent/global.yaml.
detent keeps its SQLite database and log next to the resolved global config file.
To keep this repository the source of truth for config while keeping runtime state out of
git, ~/.detent/global.yaml is a symlink to this repo's global.yaml:
~/.detent/global.yaml -> ~/projects/digitaldrywood/detent-orchestration/global.yaml
~/.detent/detent.db # runtime state stays in ~/.detent (lexical dir of the config path)
~/.detent/detent.log
So --config ~/.detent/global.yaml resolves to the file in this repo (edits and commits
happen here), while detent.db / detent.log stay in ~/.detent.
- Edit
WORKFLOW.md(agent prompt, hooks, caps) orglobal.yaml(add/remove a project). - Detent hot-reloads the change live — no restart.
git committhe change. The running system and the repo never drift.
Live reload of
WORKFLOW.mdships today; live add/remove of projects fromglobal.yamlis tracked in digitaldrywood/detent#211.