GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — RFC-001: Multi-Agent Visual Indicator for Active Sessions by vikramrajj · Pull Request #818 · CommandCodeAI/command-code ConversationSummaryThis PR adds RFC-001 — a detailed design proposal for implementing a multi-agent visual indicator in the Command Code CLI, as requested in issue #817. What's Included
Key Design Decisions
Visual Inspiration
Next StepsIf approved, implementation would proceed in three phases:
Related issue: #817
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsDraft RFC for showing active agents in session with visual indicators. Includes TypeScript interfaces, component designs, and integration approach. Co-authored-by: CommandCodeBot <[email protected]>
ahrazzle
suggested changes
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| @@ -0,0 +1,336 @@ | |||
| # RFC-001: Multi-Agent Visual Indicator for Active Sessions | |||
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Creating a new top level rfcs/ directory and numbering this document RFC-001 is a convention decision. The repository has no contributing guide, no pull request template and no other rfcs path, so the maintainers may want to weigh in before this becomes the pattern for later documents.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| /** Show token usage on completion */ | ||
| showUsage: boolean; | ||
| /** Animation enabled for running state */ | ||
| animate: boolean; |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This option is declared here, defaulted at line 104, and listed in the settings block at line 254, but no component in the document reads it. The same holds for showUsage (line 92), color (line 58) and progress (line 67). Implementing or removing them would keep the specification honest.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
|
||
| ### Status Badge Component | ||
|
|
||
| ```typescript |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This fence is labelled typescript but contains JSX, which does not parse as .ts (TS1005 errors start at line 33 of the block). It parses as .tsx, leaving only the unresolved module and cross-block names. Labelling the fence tsx would save an implementer the detour.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| <Box borderStyle="round" borderColor={color} paddingX={1} marginRight={1}> | ||
| <Text color={color}>{icon} </Text> | ||
| <Text bold>{agent.name}</Text> | ||
| <Text dimColor> — {truncate(agent.description, 40)}</Text> |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
agent.description here and agent.error at line 238 are agent-produced text rendered into the terminal. Truncating to 40 characters does not strip ANSI escape sequences or newlines, and the document states no sanitisation rule anywhere. Worth specifying before implementation.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| </Box> | ||
|
|
||
| {/* Detailed badges (if style is 'detailed') */} | ||
| {config.style === 'detailed' && ( |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This is the only style branch in the component. The minimal style declared at line 88 therefore renders identically to compact, and the dots-only rendering shown in the mockup at line 285 is not produced by any code in the document.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| id: agentId, | ||
| name: params.agentName, | ||
| description: params.taskDescription, | ||
| status: 'running', |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
handleAgentStart always writes running, and handleAgentComplete at line 237 writes only completed or failed. The queued and killed members of AgentStatus (line 50) have no production path, although the summary line counts queued at line 190 and the mockups show both.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| startedAt: Date.now(), | ||
| }; | ||
| sessionState.activeAgents.set(agentId, activeAgent); | ||
| renderAgentStatusBar(); // Trigger re-render |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
renderAgentStatusBar is not defined anywhere in the document, and neither are truncate (line 154), generateId (line 220), AgentStartParams (line 219) or AgentResult (line 234). Mutating an entry of a Map does not by itself re-render an Ink tree, so the render trigger needs a defined mechanism.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
|
||
| ```json | ||
| { | ||
| "agentIndicator": { |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Issue #817 proposes showAgentIndicator and agentIndicatorStyle with the values compact, detailed or none. This block uses a different key and field set and uses minimal where the issue uses none. Aligning the two or recording the divergence would help whoever implements it.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
At least 1 approving review is required to merge this pull request.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.