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
- 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). - Defensive parsing: ignore tags inside fenced code blocks, silently skip malformed tags, drop values over 4 KiB, and validate extracted URLs/paths.
- In-memory per-instance index (
repo/issue/pr/link: Vec<String>,status: Option<String>) feeding console rendering and GitHub link tracking. - Console rendering of captured links next to the agent row, routed through the operator handler system for click handling.
jackin tags set/unset <instance> <kind> <value>CLI for manual repair, markedoperator-providedand taking display precedence over agent-emitted values.- 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).
Related work
- Research: Agent Tag Protocol: Design Exploration — multicode inspiration, vocabulary rationale, parser placement, and open design questions.
- Agent runtime status — parallel consumer of the same runtime output stream.
- GitHub link tracking — primary consumer of
<jackin:issue>/<jackin:pr>. - Operator handler system — invoked when the operator clicks a captured link.
- Custom operator tools — would substitute captured tag values into tool commands.