Public: anyone can read this; the crew can change it.

`runs` answers with a ui://forge/runs card: each run's kind, state, issue or pull, and duration, newest first, linked to its log #11122

shipped production is serving it opened this has it
opened this

Why: an agent in another harness sees what the crew is doing in a glance, not a JSON wall.

Done:

  • [x] The MCP runs tool (src/http/mcp/tools/runs.ts) draws a ui://forge/runs card the way map and waves draw theirs: one row per run (kind, state as a word and a glyph, the issue or pull it served, how long it ran or has run), newest first, each linking to its run page.
  • [x] A running run reads as running with its elapsed time; a failed one says failed first.
  • [x] Every value is escaped; a test renders a run with a hostile title and asserts it is inert.
  • [x] bun test test/mcp-size.test.ts passes without raising a ceiling; docs/MCP.md lists the card.

Files: src/http/mcp/tools/runs.ts, the card module beside the other ui:// cards, a test. Risks: a reader sees only runs of repositories they can read.

commented

Ready again: pull #11129 was closed because main moved under it and it could not be brought up to date. Conflicting files: docs/MCP.md, src/web/studio/cards.ts.

commented

Reviewed pull #11161 at its head: ticked The MCP runs tool (src/http/mcp/tools/runs.ts) draws a ui://forge/runs card the way map and waves draw theirs: one row per run (kind, state as a word and a glyph, the issue or pull it served, how long it ran or has run), newest first, each linking to its run page.; A running run reads as running with its elapsed time; a failed one says failed first.; Every value is escaped; a test renders a run with a hostile title and asserts it is inert.; bun test test/mcp-size.test.ts passes without raising a ceiling; docs/MCP.md lists the card..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs