Agent OrchestrationFleet phase 2 — Live operator surface

Agent Tag Protocol (`<jackin:*>` operator-surface markers)

Status: Open — design proposal only, no code shipped (Phase 2, Agent Orchestration Program)

Shipped facts

Nothing has landed yet. There is no tag-parsing module, no AgentTagEvent type, no agent_provided snapshot, and no jackin tags set/unset CLI in the tree; the runtime output stream that would feed a parser (the same stream agent runtime status consumes) is otherwise unconsumed for this purpose. The console has no rendering for captured repo/issue/PR/link/status values, and there is no published skill bundle instructing agents to emit <jackin:*> tags.

Remaining work

  1. Parser module that consumes the runtime's structured output and emits AgentTagEvents for the V1 vocabulary: <jackin:repo>, <jackin:issue>, <jackin:pr>, <jackin:link>, <jackin:status> (plus <multicode:*> compatibility aliases).
  2. Defensive parsing: ignore tags inside fenced code blocks, silently skip malformed tags, drop values over 4 KiB, and validate extracted URLs/paths.
  3. In-memory per-instance index (repo/issue/pr/link: Vec<String>, status: Option<String>) feeding console rendering and GitHub link tracking.
  4. Console rendering of captured links next to the agent row, routed through the operator handler system for click handling.
  5. jackin tags set/unset <instance> <kind> <value> CLI for manual repair, marked operator-provided and taking display precedence over agent-emitted values.
  6. One published skill bundle (separate repo, e.g. jackin-project/jackin-skills) instructing agents to emit the tags.

Out of scope

  • Persistence of tag history — V1 is in-memory only; persistent storage layer would add it later.
  • Tag protocol versioning (<jackin:repo version="2">) — add the attribute only if compatibility ever needs to break.
  • Tag emission from jackin to the agent (reverse direction).

On this page