@agents-inc/cli 0.78.0 → 0.80.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +2 -2
  3. package/dist/{chunk-XA7WF3BI.js → chunk-3C6AXGR7.js} +3 -3
  4. package/dist/{chunk-VDVLM3KB.js → chunk-3HWFTE3S.js} +8 -4
  5. package/dist/chunk-3HWFTE3S.js.map +1 -0
  6. package/dist/{chunk-7JQIMEUX.js → chunk-3SCIYMRK.js} +3 -3
  7. package/dist/{chunk-OOWNDQCG.js → chunk-3WDZKBCE.js} +6 -4
  8. package/dist/chunk-3WDZKBCE.js.map +1 -0
  9. package/dist/{chunk-FSK4TQX7.js → chunk-4R6I6A3U.js} +3225 -134
  10. package/dist/chunk-4R6I6A3U.js.map +1 -0
  11. package/dist/{chunk-MUCQ27HV.js → chunk-4R72372U.js} +2 -2
  12. package/dist/{chunk-Q755X6QF.js → chunk-4VFBRV76.js} +4 -4
  13. package/dist/{chunk-F4IZ3UAS.js → chunk-55AZIEK6.js} +4 -4
  14. package/dist/{chunk-XYPAOBBV.js → chunk-633YIZOU.js} +2 -2
  15. package/dist/{chunk-N2XGUAJU.js → chunk-6YJXWQCI.js} +2 -12
  16. package/dist/chunk-6YJXWQCI.js.map +1 -0
  17. package/dist/{chunk-32HX6UYI.js → chunk-BN73X3JN.js} +59 -2
  18. package/dist/chunk-BN73X3JN.js.map +1 -0
  19. package/dist/{chunk-B4C2S5LP.js → chunk-BORVYGIX.js} +17 -15
  20. package/dist/chunk-BORVYGIX.js.map +1 -0
  21. package/dist/{chunk-YFHVP3VA.js → chunk-F4VG5XWZ.js} +3 -3
  22. package/dist/{chunk-NKLNT7N7.js → chunk-H3NQGJMB.js} +2 -2
  23. package/dist/{chunk-QD3GQ2CH.js → chunk-II3ISVCE.js} +6 -5
  24. package/dist/chunk-II3ISVCE.js.map +1 -0
  25. package/dist/{chunk-FUWUCKES.js → chunk-LO4X32JC.js} +2 -2
  26. package/dist/{chunk-D4T3HHE7.js → chunk-MNJAF4K2.js} +2 -2
  27. package/dist/{chunk-KVRR4PEJ.js → chunk-NJCU7OC2.js} +5 -5
  28. package/dist/{chunk-U2KFFRRX.js → chunk-NZAJTLEK.js} +2 -2
  29. package/dist/{chunk-HANGA633.js → chunk-OBTC2FD7.js} +5 -5
  30. package/dist/chunk-OBTC2FD7.js.map +1 -0
  31. package/dist/{chunk-EO6KJI5D.js → chunk-PPBUSAKG.js} +913 -33
  32. package/dist/chunk-PPBUSAKG.js.map +1 -0
  33. package/dist/{chunk-OTMIGYBB.js → chunk-RTHAMTDE.js} +6 -6
  34. package/dist/{chunk-KQDGLEBF.js → chunk-TJXBRYM4.js} +10 -10
  35. package/dist/chunk-TJXBRYM4.js.map +1 -0
  36. package/dist/{chunk-7LBYURQR.js → chunk-TQ363UUH.js} +2 -2
  37. package/dist/{chunk-N34D3ROY.js → chunk-TXFQBYOX.js} +8 -5
  38. package/dist/chunk-TXFQBYOX.js.map +1 -0
  39. package/dist/{chunk-IFCASC6R.js → chunk-TZY7WNWO.js} +2 -2
  40. package/dist/{chunk-SJNUTUSJ.js → chunk-W6PIVGMH.js} +5 -5
  41. package/dist/{chunk-W46L2PXK.js → chunk-WZGROC5L.js} +2 -2
  42. package/dist/{chunk-OIHZ2YH3.js → chunk-XFL7EIM7.js} +7 -7
  43. package/dist/{chunk-7HGMFJ4Y.js → chunk-YDB5KXMG.js} +3 -3
  44. package/dist/commands/build/marketplace.js +4 -4
  45. package/dist/commands/build/plugins.js +8 -8
  46. package/dist/commands/build/stack.js +8 -8
  47. package/dist/commands/compile.js +8 -8
  48. package/dist/commands/config/index.js +8 -8
  49. package/dist/commands/config/path.js +7 -7
  50. package/dist/commands/config/show.js +8 -8
  51. package/dist/commands/diff.js +7 -7
  52. package/dist/commands/doctor.js +7 -7
  53. package/dist/commands/edit.js +23 -23
  54. package/dist/commands/eject.js +7 -7
  55. package/dist/commands/import/skill.js +7 -7
  56. package/dist/commands/info.js +7 -7
  57. package/dist/commands/init.js +23 -23
  58. package/dist/commands/list.js +7 -7
  59. package/dist/commands/new/agent.js +8 -8
  60. package/dist/commands/new/marketplace.js +9 -9
  61. package/dist/commands/new/skill.js +8 -8
  62. package/dist/commands/outdated.js +7 -7
  63. package/dist/commands/search.js +7 -7
  64. package/dist/commands/uninstall.js +7 -7
  65. package/dist/commands/update.js +8 -8
  66. package/dist/commands/validate.js +7 -7
  67. package/dist/components/wizard/category-grid.js +2 -2
  68. package/dist/components/wizard/category-grid.test.js +11 -11
  69. package/dist/components/wizard/domain-selection.js +9 -9
  70. package/dist/components/wizard/source-grid.js +2 -2
  71. package/dist/components/wizard/source-grid.test.js +11 -11
  72. package/dist/components/wizard/stack-selection.js +8 -8
  73. package/dist/components/wizard/step-agents.js +9 -9
  74. package/dist/components/wizard/step-agents.test.js +13 -13
  75. package/dist/components/wizard/step-agents.test.js.map +1 -1
  76. package/dist/components/wizard/step-build.js +9 -9
  77. package/dist/components/wizard/step-build.test.js +12 -12
  78. package/dist/components/wizard/step-confirm.js +4 -4
  79. package/dist/components/wizard/step-confirm.test.js +10 -10
  80. package/dist/components/wizard/step-settings.js +7 -7
  81. package/dist/components/wizard/step-settings.test.js +10 -10
  82. package/dist/components/wizard/step-sources.js +9 -9
  83. package/dist/components/wizard/step-sources.test.js +12 -12
  84. package/dist/components/wizard/step-stack.js +9 -12
  85. package/dist/components/wizard/step-stack.test.js +19 -111
  86. package/dist/components/wizard/step-stack.test.js.map +1 -1
  87. package/dist/components/wizard/wizard-layout.js +10 -10
  88. package/dist/components/wizard/wizard-tabs.js +1 -1
  89. package/dist/components/wizard/wizard-tabs.test.js +12 -23
  90. package/dist/components/wizard/wizard-tabs.test.js.map +1 -1
  91. package/dist/components/wizard/wizard.js +21 -21
  92. package/dist/config-exports.js +1 -1
  93. package/dist/hooks/init.js +23 -23
  94. package/dist/{loader-JMOO2A7C.js → loader-LI3EM4VG.js} +4 -4
  95. package/dist/{source-loader-D3VIG3GM.js → source-loader-TPUCZELX.js} +7 -7
  96. package/dist/source-manager-PJ5APXX2.js +19 -0
  97. package/dist/src/agents/meta/agent-summoner/workflow.md +10 -10
  98. package/dist/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
  99. package/dist/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
  100. package/dist/src/agents/meta/convention-keeper/examples.md +71 -0
  101. package/dist/src/agents/meta/convention-keeper/intro.md +11 -0
  102. package/dist/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  103. package/dist/src/agents/meta/convention-keeper/output-format.md +134 -0
  104. package/dist/src/agents/meta/convention-keeper/workflow.md +258 -0
  105. package/dist/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
  106. package/{src/agents/meta/documentor → dist/src/agents/meta/scribe}/workflow.md +1 -1
  107. package/dist/src/agents/planning/web-pm/workflow.md +1 -1
  108. package/dist/stores/wizard-store.js +7 -7
  109. package/dist/stores/wizard-store.test.js +19 -13
  110. package/dist/stores/wizard-store.test.js.map +1 -1
  111. package/package.json +1 -1
  112. package/src/agents/meta/agent-summoner/workflow.md +10 -10
  113. package/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
  114. package/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
  115. package/src/agents/meta/convention-keeper/examples.md +71 -0
  116. package/src/agents/meta/convention-keeper/intro.md +11 -0
  117. package/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  118. package/src/agents/meta/convention-keeper/output-format.md +134 -0
  119. package/src/agents/meta/convention-keeper/workflow.md +258 -0
  120. package/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
  121. package/{dist/src/agents/meta/documentor → src/agents/meta/scribe}/workflow.md +1 -1
  122. package/src/agents/planning/web-pm/workflow.md +1 -1
  123. package/dist/chunk-32HX6UYI.js.map +0 -1
  124. package/dist/chunk-B4C2S5LP.js.map +0 -1
  125. package/dist/chunk-EO6KJI5D.js.map +0 -1
  126. package/dist/chunk-FSK4TQX7.js.map +0 -1
  127. package/dist/chunk-HANGA633.js.map +0 -1
  128. package/dist/chunk-KQDGLEBF.js.map +0 -1
  129. package/dist/chunk-N2XGUAJU.js.map +0 -1
  130. package/dist/chunk-N34D3ROY.js.map +0 -1
  131. package/dist/chunk-OOWNDQCG.js.map +0 -1
  132. package/dist/chunk-QD3GQ2CH.js.map +0 -1
  133. package/dist/chunk-VDVLM3KB.js.map +0 -1
  134. package/dist/source-manager-FPYFJRR7.js +0 -19
  135. /package/dist/{chunk-XA7WF3BI.js.map → chunk-3C6AXGR7.js.map} +0 -0
  136. /package/dist/{chunk-7JQIMEUX.js.map → chunk-3SCIYMRK.js.map} +0 -0
  137. /package/dist/{chunk-MUCQ27HV.js.map → chunk-4R72372U.js.map} +0 -0
  138. /package/dist/{chunk-Q755X6QF.js.map → chunk-4VFBRV76.js.map} +0 -0
  139. /package/dist/{chunk-F4IZ3UAS.js.map → chunk-55AZIEK6.js.map} +0 -0
  140. /package/dist/{chunk-XYPAOBBV.js.map → chunk-633YIZOU.js.map} +0 -0
  141. /package/dist/{chunk-YFHVP3VA.js.map → chunk-F4VG5XWZ.js.map} +0 -0
  142. /package/dist/{chunk-NKLNT7N7.js.map → chunk-H3NQGJMB.js.map} +0 -0
  143. /package/dist/{chunk-FUWUCKES.js.map → chunk-LO4X32JC.js.map} +0 -0
  144. /package/dist/{chunk-D4T3HHE7.js.map → chunk-MNJAF4K2.js.map} +0 -0
  145. /package/dist/{chunk-KVRR4PEJ.js.map → chunk-NJCU7OC2.js.map} +0 -0
  146. /package/dist/{chunk-U2KFFRRX.js.map → chunk-NZAJTLEK.js.map} +0 -0
  147. /package/dist/{chunk-OTMIGYBB.js.map → chunk-RTHAMTDE.js.map} +0 -0
  148. /package/dist/{chunk-7LBYURQR.js.map → chunk-TQ363UUH.js.map} +0 -0
  149. /package/dist/{chunk-IFCASC6R.js.map → chunk-TZY7WNWO.js.map} +0 -0
  150. /package/dist/{chunk-SJNUTUSJ.js.map → chunk-W6PIVGMH.js.map} +0 -0
  151. /package/dist/{chunk-W46L2PXK.js.map → chunk-WZGROC5L.js.map} +0 -0
  152. /package/dist/{chunk-OIHZ2YH3.js.map → chunk-XFL7EIM7.js.map} +0 -0
  153. /package/dist/{chunk-7HGMFJ4Y.js.map → chunk-YDB5KXMG.js.map} +0 -0
  154. /package/dist/{loader-JMOO2A7C.js.map → loader-LI3EM4VG.js.map} +0 -0
  155. /package/dist/{source-loader-D3VIG3GM.js.map → source-loader-TPUCZELX.js.map} +0 -0
  156. /package/dist/{source-manager-FPYFJRR7.js.map → source-manager-PJ5APXX2.js.map} +0 -0
  157. /package/dist/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
  158. /package/dist/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
  159. /package/dist/src/agents/meta/{documentor → scribe}/examples.md +0 -0
  160. /package/dist/src/agents/meta/{documentor → scribe}/intro.md +0 -0
  161. /package/dist/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
  162. /package/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
  163. /package/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
  164. /package/src/agents/meta/{documentor → scribe}/examples.md +0 -0
  165. /package/src/agents/meta/{documentor → scribe}/intro.md +0 -0
  166. /package/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
@@ -5,17 +5,17 @@ import {
5
5
  import {
6
6
  getDomainDisplayName,
7
7
  isAgentName
8
- } from "./chunk-7JQIMEUX.js";
8
+ } from "./chunk-3SCIYMRK.js";
9
9
  import {
10
10
  useRowScroll
11
11
  } from "./chunk-SQ7WINEU.js";
12
12
  import {
13
13
  useWizardStore
14
- } from "./chunk-N34D3ROY.js";
14
+ } from "./chunk-TXFQBYOX.js";
15
15
  import {
16
16
  matrix,
17
17
  typedKeys
18
- } from "./chunk-FSK4TQX7.js";
18
+ } from "./chunk-4R6I6A3U.js";
19
19
  import {
20
20
  CLI_COLORS,
21
21
  UI_SYMBOLS
@@ -96,7 +96,7 @@ var BUILT_IN_AGENT_GROUPS = [
96
96
  label: "Skill Summoner",
97
97
  description: "Create technology-specific skills"
98
98
  },
99
- { id: "documentor", label: "Documentor", description: "AI-focused documentation" }
99
+ { id: "scribe", label: "Scribe", description: "AI-focused documentation" }
100
100
  ]
101
101
  }
102
102
  ];
@@ -271,4 +271,4 @@ var StepAgents = () => {
271
271
  export {
272
272
  StepAgents
273
273
  };
274
- //# sourceMappingURL=chunk-HANGA633.js.map
274
+ //# sourceMappingURL=chunk-OBTC2FD7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/components/wizard/step-agents.tsx"],"sourcesContent":["import { Box, Text, useInput } from \"ink\";\nimport React, { useMemo, useState } from \"react\";\nimport { CLI_COLORS, UI_SYMBOLS } from \"../../consts.js\";\nimport { matrix } from \"../../lib/matrix/matrix-provider.js\";\nimport { useWizardStore } from \"../../stores/wizard-store.js\";\nimport type { AgentName, MergedSkillsMatrix } from \"../../types/index.js\";\nimport { isAgentName } from \"../../utils/type-guards.js\";\nimport { typedKeys } from \"../../utils/typed-object.js\";\nimport { useMeasuredHeight } from \"../hooks/use-measured-height.js\";\nimport { useRowScroll } from \"../hooks/use-row-scroll.js\";\nimport { getDomainDisplayName } from \"./utils.js\";\nimport { ViewTitle } from \"./view-title.js\";\n\ntype AgentItem = {\n id: AgentName;\n label: string;\n description: string;\n};\n\ntype AgentGroup = {\n label: string;\n items: AgentItem[];\n};\n\nconst BUILT_IN_AGENT_GROUPS: AgentGroup[] = [\n {\n label: \"Web\",\n items: [\n {\n id: \"web-developer\",\n label: \"Web Developer\",\n description: \"Frontend features, components, TypeScript\",\n },\n { id: \"web-reviewer\", label: \"Web Reviewer\", description: \"UI component code review\" },\n { id: \"web-researcher\", label: \"Web Researcher\", description: \"Frontend pattern discovery\" },\n {\n id: \"web-tester\",\n label: \"Web Tester\",\n description: \"Frontend tests, E2E, component tests\",\n },\n { id: \"web-pm\", label: \"Web PM\", description: \"Implementation specs and planning\" },\n {\n id: \"web-architecture\",\n label: \"Web Architecture\",\n description: \"App scaffolding, foundational patterns\",\n },\n {\n id: \"web-pattern-critique\",\n label: \"Web Pattern Critique\",\n description: \"Critique patterns against industry standards\",\n },\n ],\n },\n {\n label: \"API\",\n items: [\n {\n id: \"api-developer\",\n label: \"API Developer\",\n description: \"Backend routes, database, middleware\",\n },\n { id: \"api-reviewer\", label: \"API Reviewer\", description: \"Backend and config code review\" },\n { id: \"api-researcher\", label: \"API Researcher\", description: \"Backend pattern discovery\" },\n ],\n },\n {\n label: \"CLI\",\n items: [\n {\n id: \"cli-developer\",\n label: \"CLI Developer\",\n description: \"CLI commands, interactive prompts\",\n },\n { id: \"cli-tester\", label: \"CLI Tester\", description: \"CLI application tests\" },\n { id: \"cli-reviewer\", label: \"CLI Reviewer\", description: \"CLI code review\" },\n ],\n },\n {\n label: \"Meta\",\n items: [\n {\n id: \"pattern-scout\",\n label: \"Pattern Scout\",\n description: \"Extract codebase patterns and standards\",\n },\n { id: \"agent-summoner\", label: \"Agent Summoner\", description: \"Create and improve agents\" },\n {\n id: \"skill-summoner\",\n label: \"Skill Summoner\",\n description: \"Create technology-specific skills\",\n },\n { id: \"scribe\", label: \"Scribe\", description: \"AI-focused documentation\" },\n ],\n },\n];\n\n/** IDs of all built-in agents for fast lookup. */\nconst BUILT_IN_AGENT_IDS = new Set<string>(\n BUILT_IN_AGENT_GROUPS.flatMap((group) => group.items.map((a) => a.id)),\n);\n\n/** Convert a kebab-case agent ID to a title-case label. */\nfunction agentIdToLabel(id: string): string {\n return id\n .split(\"-\")\n .map((w) => w.charAt(0).toUpperCase() + w.slice(1))\n .join(\" \");\n}\n\ntype FocusId = AgentName | \"continue\";\n\ntype ListRow =\n | { type: \"header\"; label: string }\n | { type: \"spacer\" }\n | { type: \"agent\"; agent: AgentItem };\n\nfunction buildAgentGroups(matrix: MergedSkillsMatrix): AgentGroup[] {\n const customAgentIds: string[] = [];\n for (const stack of matrix.suggestedStacks) {\n for (const agentName of typedKeys(stack.skills)) {\n if (!BUILT_IN_AGENT_IDS.has(agentName) && !customAgentIds.includes(agentName)) {\n customAgentIds.push(agentName);\n }\n }\n }\n\n if (customAgentIds.length === 0) return BUILT_IN_AGENT_GROUPS;\n\n // Group custom agents by explicit domain (from metadata.yaml) or kebab prefix fallback\n const customGroupMap = new Map<string, AgentItem[]>();\n for (const agentId of customAgentIds) {\n const explicitDomain = isAgentName(agentId) ? matrix.agentDefinedDomains?.[agentId] : undefined;\n const domainKey = explicitDomain ?? (agentId.split(\"-\")[0] || \"custom\");\n const groupLabel = getDomainDisplayName(domainKey);\n if (!customGroupMap.has(groupLabel)) {\n customGroupMap.set(groupLabel, []);\n }\n // Boundary cast: custom agent names from marketplace stacks are not in the AgentName union\n customGroupMap.get(groupLabel)!.push({\n id: agentId as AgentName,\n label: agentIdToLabel(agentId),\n description: \"Custom agent\",\n });\n }\n\n const customGroups: AgentGroup[] = [];\n for (const [label, items] of customGroupMap) {\n customGroups.push({ label, items });\n }\n\n return [...BUILT_IN_AGENT_GROUPS, ...customGroups];\n}\n\nfunction buildFlatRows(groups: AgentGroup[]): ListRow[] {\n return groups.flatMap((group, groupIndex): ListRow[] => [\n ...(groupIndex > 0 ? [{ type: \"spacer\" as const }] : []),\n { type: \"header\" as const, label: group.label },\n ...group.items.map((agent): ListRow => ({ type: \"agent\", agent })),\n ]);\n}\n\nfunction buildFocusableIds(groups: AgentGroup[]): FocusId[] {\n return [...groups.flatMap((group) => group.items.map((a) => a.id)), \"continue\"];\n}\n\nexport const StepAgents: React.FC = () => {\n const selectedAgents = useWizardStore((s) => s.selectedAgents);\n const agentConfigs = useWizardStore((s) => s.agentConfigs);\n const agentGroups = useMemo(() => buildAgentGroups(matrix), []);\n const flatRows = useMemo(() => buildFlatRows(agentGroups), [agentGroups]);\n const focusableIds = useMemo(() => buildFocusableIds(agentGroups), [agentGroups]);\n\n const [focusedId, setFocusedId] = useState<FocusId>(focusableIds[0]!);\n const { ref: listRef, measuredHeight: listHeight } = useMeasuredHeight();\n\n const focusedRowIndex =\n focusedId !== \"continue\"\n ? flatRows.findIndex((row) => row.type === \"agent\" && row.agent.id === focusedId)\n : -1;\n const { scrollEnabled, scrollTop } = useRowScroll({\n focusedIndex: Math.max(0, focusedRowIndex),\n itemCount: flatRows.length,\n availableHeight: listHeight,\n });\n\n useInput((input, key) => {\n if (key.escape) {\n useWizardStore.getState().goBack();\n return;\n }\n\n const currentIdx = focusableIds.indexOf(focusedId);\n\n if (key.upArrow || input === \"k\") {\n const nextIdx = currentIdx <= 0 ? focusableIds.length - 1 : currentIdx - 1;\n setFocusedId(focusableIds[nextIdx]!);\n return;\n }\n\n if (key.downArrow || input === \"j\") {\n const nextIdx = currentIdx >= focusableIds.length - 1 ? 0 : currentIdx + 1;\n setFocusedId(focusableIds[nextIdx]!);\n return;\n }\n\n if (key.return) {\n useWizardStore.getState().setStep(\"confirm\");\n return;\n }\n\n if (input === \" \" && focusedId !== \"continue\") {\n useWizardStore.getState().toggleAgent(focusedId);\n }\n });\n\n // Sync focusedAgentId so the wizard-level S key handler can toggle agent scope\n React.useEffect(() => {\n useWizardStore.getState().setFocusedAgentId(focusedId === \"continue\" ? null : focusedId);\n }, [focusedId]);\n\n const selectedCount = selectedAgents.length;\n const continueLabel =\n selectedCount > 0 ? `Continue with ${selectedCount} agent(s)` : \"Continue without agents\";\n\n const isContinueFocused = focusedId === \"continue\";\n\n const rowElements = flatRows.map((row, index) => {\n switch (row.type) {\n case \"header\":\n return (\n <Box key={`header-${row.label}`} flexShrink={0}>\n <Text dimColor bold>\n {\" \"}\n {row.label}\n </Text>\n </Box>\n );\n case \"spacer\":\n return (\n <Box key={`spacer-${index}`} flexShrink={0}>\n <Text> </Text>\n </Box>\n );\n case \"agent\": {\n const isFocused = row.agent.id === focusedId;\n const isSelected = selectedAgents.includes(row.agent.id);\n const checkbox = isSelected ? \"[\\u2713]\" : \"[ ]\";\n const pointer = isFocused ? UI_SYMBOLS.CHEVRON : UI_SYMBOLS.CHEVRON_SPACER;\n const agentConfig = agentConfigs.find((ac) => ac.name === row.agent.id);\n const scope = agentConfig?.scope ?? \"global\";\n return (\n <Box key={row.agent.id} flexShrink={0}>\n <Text>\n <Text color={isFocused ? CLI_COLORS.PRIMARY : undefined}>{pointer}</Text>\n <Text\n color={isSelected || isFocused ? CLI_COLORS.PRIMARY : undefined}\n bold={isFocused}\n >\n {\" \"}\n {checkbox}{\" \"}\n </Text>\n <Text color={scope === \"global\" ? CLI_COLORS.WARNING : \"#eee\"}>\n {scope === \"global\" ? \"[G]\" : \"[P]\"}\n </Text>\n <Text\n color={isSelected || isFocused ? CLI_COLORS.PRIMARY : undefined}\n bold={isFocused}\n >\n {\" \"}\n {row.agent.label}\n </Text>\n <Text dimColor> {row.agent.description}</Text>\n </Text>\n </Box>\n );\n }\n }\n });\n\n return (\n <Box flexDirection=\"column\" width=\"100%\" flexGrow={1} flexBasis={0}>\n {/* <ViewTitle>Select agents</ViewTitle> */}\n\n <Box ref={listRef} flexDirection=\"column\" flexGrow={1} flexBasis={0}>\n <Box\n flexDirection=\"column\"\n flexGrow={1}\n {...(scrollEnabled && { overflow: \"hidden\" as const })}\n >\n <Box\n flexDirection=\"column\"\n marginTop={scrollTop > 0 ? -scrollTop : 0}\n {...(scrollEnabled && { flexShrink: 0 })}\n >\n {rowElements}\n </Box>\n </Box>\n </Box>\n\n <Text color={isContinueFocused ? CLI_COLORS.PRIMARY : undefined} bold={isContinueFocused}>\n {isContinueFocused ? UI_SYMBOLS.CHEVRON : UI_SYMBOLS.CHEVRON_SPACER} {\"\\u2192\"}{\" \"}\n {continueLabel}\n </Text>\n </Box>\n );\n};\n"],"mappings":"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","names":["matrix"]}