Add a director command to list running ward engineers #874

Closed
opened 2026-07-09 22:28:49 +00:00 by coilyco-ops · 2 comments
Member

Add a ward agent command that lets a director/read-only surface list currently running engineer containers.

Problem:

  • Director sessions can dispatch engineers and can stop a specific engineer with ward agent stop <ref|container>.
  • There is no visible ward agent list / ward agent ps command in ward v0.493.0.
  • The fallback would be docker ps, but director containers may not have direct Docker daemon access, and raw Docker output is not issue-aware.
  • We needed to answer which engineer was carrying coilyco-gaming/factory-game-v3#18; the issue reservation had the answer, but there was no fleet/list command.

Requested command:

  • Add a director-surface command, name to choose with repo conventions, likely ward agent list or ward agent ps.
  • It should run through the same dispatch broker / host-side docker access model as ward agent stop, not require the director container to talk to Docker directly.
  • It should list running engineer containers with useful fields.

Suggested fields:

  • container name / run name
  • harness
  • repo
  • issue number/ref
  • branch
  • host
  • age / reserved-at / started-at if available
  • status if available

Acceptance criteria:

  • From a director read-only surface, ward agent list or equivalent prints active engineer runs.
  • Output includes enough information to identify the engineer for an issue, for example engineer-codex-factory-game-v3-18.
  • The command does not stop or mutate containers.
  • It uses ward labels/reservations where available rather than fragile container-name parsing only.
  • It has a machine-readable output option if that is already standard for ward commands, or at least a stable text/table format.
  • Docs/help text mention the relationship to ward agent stop --print.

Out of scope:

  • Managing advisor/director/session containers unless the existing broker model makes that trivial. Engineer runs are the immediate need.
  • Full monitoring UI.
  • Changing reservation semantics.
Add a `ward agent` command that lets a director/read-only surface list currently running engineer containers. Problem: * Director sessions can dispatch engineers and can stop a specific engineer with `ward agent stop <ref|container>`. * There is no visible `ward agent list` / `ward agent ps` command in `ward v0.493.0`. * The fallback would be `docker ps`, but director containers may not have direct Docker daemon access, and raw Docker output is not issue-aware. * We needed to answer which engineer was carrying `coilyco-gaming/factory-game-v3#18`; the issue reservation had the answer, but there was no fleet/list command. Requested command: * Add a director-surface command, name to choose with repo conventions, likely `ward agent list` or `ward agent ps`. * It should run through the same dispatch broker / host-side docker access model as `ward agent stop`, not require the director container to talk to Docker directly. * It should list running engineer containers with useful fields. Suggested fields: * container name / run name * harness * repo * issue number/ref * branch * host * age / reserved-at / started-at if available * status if available Acceptance criteria: * From a director read-only surface, `ward agent list` or equivalent prints active engineer runs. * Output includes enough information to identify the engineer for an issue, for example `engineer-codex-factory-game-v3-18`. * The command does not stop or mutate containers. * It uses ward labels/reservations where available rather than fragile container-name parsing only. * It has a machine-readable output option if that is already standard for ward commands, or at least a stable text/table format. * Docs/help text mention the relationship to `ward agent stop --print`. Out of scope: * Managing advisor/director/session containers unless the existing broker model makes that trivial. Engineer runs are the immediate need. * Full monitoring UI. * Changing reservation semantics.
Author
Member

WARD-RESERVATION: held 🔒

reservation details

Holder: container engineer-codex-ward-874 on host kais-macbook-pro-2.local.

Reserved by ward agent --harness codex (reserved 2026-07-09T22:28:54Z). Concurrent ward agent runs are blocked until it finishes or the reservation goes stale (1h TTL). --force overrides.

Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).

run seed context — what this run is carrying (ward#609)
  • Resolved: coilyco-flight-deck/ward#874 · branch issue-874 · harness codex · workflow pull-request
  • Run: engineer-codex-ward-874 · ward v0.493.0 · dispatched 2026-07-09T22:28:54Z
  • Comment thread: 0 included in the pre-flight read, 0 stripped (ward's own automated comments).

Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.493.0).

— Codex, via ward agent

<!-- ward-agent-reservation --> WARD-RESERVATION: held 🔒 <details><summary>reservation details</summary> Holder: container `engineer-codex-ward-874` on host `kais-macbook-pro-2.local`. Reserved by `ward agent --harness codex` (reserved 2026-07-09T22:28:54Z). Concurrent `ward agent` runs are blocked until it finishes or the reservation goes stale (1h TTL). `--force` overrides. **Do not comment on or edit this issue to steer the run while it is reserved.** The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a **new issue, dispatched fresh**. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494). <details><summary>run seed context — what this run is carrying (ward#609)</summary> - **Resolved:** `coilyco-flight-deck/ward#874` · branch `issue-874` · harness `codex` · workflow `pull-request` - **Run:** `engineer-codex-ward-874` · ward `v0.493.0` · dispatched `2026-07-09T22:28:54Z` - **Comment thread:** 0 included in the pre-flight read, 0 stripped (ward's own automated comments). Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.493.0). </details> </details> <!-- ward-agent-signature --> — Codex, via `ward agent`
Author
Member

Closing after verification during the ward/aos usability sweep.

The requested director command now exists and works from this read-only director surface:

  • ward agent list / warded list lists running engineer containers through the dispatch broker.
  • Help text describes it as director-surface, read-only, issue-aware.
  • It reports ref, harness, repo, issue, branch, host, reservation time, start time, age, and status.
  • ward agent ps is documented as the alias.
  • --json is documented for stable machine-readable output.

The only prior comment was an old reservation, so the tracker state was stale-open rather than unfinished.

Closing after verification during the ward/aos usability sweep. The requested director command now exists and works from this read-only director surface: * `ward agent list` / `warded list` lists running engineer containers through the dispatch broker. * Help text describes it as `director-surface, read-only, issue-aware`. * It reports ref, harness, repo, issue, branch, host, reservation time, start time, age, and status. * `ward agent ps` is documented as the alias. * `--json` is documented for stable machine-readable output. The only prior comment was an old reservation, so the tracker state was stale-open rather than unfinished.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
coilyco-flight-deck/ward#874
No description provided.