Skip to content

War Room Schema

A war-room is an isolated execution environment for a single epic or task. Each room is a directory under .agents/war-rooms/ containing structured files that track state, communication, and artifacts.

.agents/war-rooms/room-001/
├── config.json # Room configuration
├── lifecycle.json # State machine definition
├── brief.md # Assignment description
├── channel.jsonl # Communication log
├── status # Current state (single line)
├── state_changed_at # ISO timestamp of last transition
├── retries # Current retry count (integer)
├── task-ref # Task reference (e.g., EPIC-001)
├── audit.log # Audit trail
├── progress.json # Progress snapshot
├── TASKS.md # Sub-task checklist
├── artifacts/ # Output files
│ └── ...
├── skills/ # Room-local skill overrides
│ └── ...
└── memory/ # Room-local memory entries
└── ...
{
"room_id": "room-001",
"task_ref": "EPIC-001",
"plan_id": "bc0a7c93bcbf",
"depends_on": ["PLAN-REVIEW"],
"created_at": "2026-04-03T11:04:01Z",
"working_dir": "/path/to/project",
"assignment": {
"title": "Build the grid system",
"description": "Full epic description...",
"assigned_role": "game-engineer",
"candidate_roles": ["game-engineer", "game-qa"],
"type": "epic"
},
"goals": {
"definition_of_done": [],
"acceptance_criteria": [],
"quality_requirements": {
"test_coverage_min": 80,
"lint_clean": true,
"security_scan_pass": true
}
},
"constraints": {
"max_retries": 3,
"timeout_seconds": 900,
"budget_tokens_max": 500000
},
"status": {
"current": "developing",
"retries": 0,
"started_at": "2026-04-03T11:04:01Z",
"last_state_change": "2026-04-03T11:04:01Z"
},
"skill_refs": [
"detect-ui",
"unity-dev-principles",
"create-lifecycle"
]
}
Field Type Description
room_id string Unique room identifier (room-NNN)
task_ref string Epic or task reference (EPIC-NNN)
plan_id string Hash linking to the source plan
depends_on string[] Task refs this room depends on
created_at string ISO 8601 creation timestamp
working_dir string Absolute path to working directory
Field Type Description
title string Short assignment title
description string Full assignment description
assigned_role string Primary role for this room
candidate_roles string[] All roles involved in the lifecycle
type string "epic", "task", or "review"
Field Type Description
definition_of_done string[] Checklist items for completion
acceptance_criteria string[] Testable acceptance criteria
quality_requirements object Minimum quality thresholds
Field Type Description
max_retries int Max retries before failed-final
timeout_seconds int Max time for any single agent run
budget_tokens_max int Token budget cap
Field Type Description
current string Current lifecycle state
retries int Number of retries consumed
started_at string When work began
last_state_change string Last state transition timestamp

Some state is stored as plain files for easy shell access:

File Content Example
status Current state name developing
state_changed_at ISO timestamp 2026-04-03T11:04:01Z
retries Integer count 1
task-ref Task reference EPIC-001

Contains the assignment description in markdown. This is injected into the agent’s prompt as the task context. It is generated from the plan’s epic description.

Written by agents to report progress:

{
"percent": 75,
"message": "Implemented 3 of 4 tasks",
"updated_at": "2026-04-03T11:19:34Z"
}

A checklist of sub-tasks within the epic:

- [x] TASK-001 — Grid dot rendering
- [x] TASK-002 — Coordinate mapping
- [ ] TASK-003 — Content rect calculation

Append-only log of all state transitions, agent invocations, and system events. Used for debugging and compliance.