Monitor Display
Related source file:
src/agentmux/monitor/render.py
The control pane renders a live status box with the following sections:
- Feature request — the initial feature description from
requirements.md - Pipeline stages — progress through the workflow (
product_management,architecting,planning,implementing,reviewing,completing,done)- Always-visible stages:
product_management,planning,implementing,reviewing,completing - Optional phases (shown only when active):
designing,fixing - Displayed with
▶for active,·for inactive
- Always-visible stages:
- Pipeline metadata — human-readable event label (e.g. "plan ready" for
plan_written), review iteration count, subplan count- During staged implementation, metadata also shows execution group details:
- active execution group index / total groups
- active group mode (
serialorparallel) - overall progress through all execution groups
- During staged implementation, metadata also shows execution group details:
- Agents — list of active agents only (WORKING/IDLE), with provider/model info
- Inactive agents are filtered out of the AGENTS section
- For parallel coder mode, only non-inactive
coder_<n>workers are shown - Agent rows use a shared
[role] secondary-infoformat - Coder rows use the explicit
namefrom04_planning/execution_plan.yaml - Reviewer rows show the current review iteration, and designer rows show the feature being designed
- Research tasks — progress on code and web research (if any)
- Event log — recent timeline entries with timestamps: phase transitions plus filtered handover-relevant file creations from
created_files.log- Phase-transition entries are rendered in white for contrast
- Includes workflow artifacts such as
plan.md,tasks.md, researchsummary.md/detail.md/done,design.md, review handoff files, implementationdone_*, and completion artifacts - Excludes runtime noise such as
context.md, prompt files, request files, temp files, and other orchestration internals - File path entries are wrapped in OSC 8 terminal hyperlinks with
file://URLs for IDE Ctrl-click support; the visible text shows the relative path while the hyperlink target is the absolute path on disk
Key constants
ALWAYS_VISIBLE_STATES— phases shown in all cases (defined inshared/phase_catalog.py)OPTIONAL_PHASES— phases hidden until they are the active phase (defined inshared/phase_catalog.py)MONITOR_FILE_EVENT_PATTERNS— fnmatch globs for monitor-relevant file events; derived fromPhaseEntry.monitor_file_patternsacrossPHASE_CATALOGinshared/phase_catalog.py; re-exported frommonitor/state_reader.pyfor backward compatibilityEVENT_LABELS/PHASE_EVENT_LABELS— mapping of internal event names (e.g.plan_written) to user-friendly labels (e.g. "plan ready"); derived fromPhaseDescriptor.event_labelsacrossPHASE_REGISTRYinworkflow/phase_registry.py; re-exported asEVENT_LABELSfrommonitor/state_reader.py
Staged implementation display notes
- The monitor should represent implementing as grouped work, not only a single undifferentiated
implementingphase. - Group labels are derived from orchestrator-managed state and should stay consistent with
04_planning/execution_plan.yaml.
Component split
agentmux/monitor/__init__.pyowns the monitor command loop and pane refresh cadenceagentmux/monitor/state_reader.pyowns runtime-state inspection, log parsing, and event label mappingagentmux/monitor/render.pyowns ANSI rendering and screen composition