iosm-cli 0.2.4 → 0.2.5
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.
- package/CHANGELOG.md +31 -0
- package/README.md +23 -17
- package/dist/core/agent-profiles.d.ts +1 -0
- package/dist/core/agent-profiles.d.ts.map +1 -1
- package/dist/core/agent-profiles.js +10 -6
- package/dist/core/agent-profiles.js.map +1 -1
- package/dist/core/agent-session.d.ts +1 -1
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +6 -2
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/agent-teams.d.ts.map +1 -1
- package/dist/core/agent-teams.js +90 -19
- package/dist/core/agent-teams.js.map +1 -1
- package/dist/core/footer-data-provider.d.ts +6 -1
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +9 -0
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/parallel-task-agent.d.ts +23 -1
- package/dist/core/parallel-task-agent.d.ts.map +1 -1
- package/dist/core/parallel-task-agent.js +110 -20
- package/dist/core/parallel-task-agent.js.map +1 -1
- package/dist/core/shared-memory.d.ts +2 -2
- package/dist/core/shared-memory.d.ts.map +1 -1
- package/dist/core/shared-memory.js +220 -91
- package/dist/core/shared-memory.js.map +1 -1
- package/dist/core/singular.d.ts.map +1 -1
- package/dist/core/singular.js +3 -1
- package/dist/core/singular.js.map +1 -1
- package/dist/core/subagents.d.ts +1 -1
- package/dist/core/subagents.d.ts.map +1 -1
- package/dist/core/subagents.js +11 -3
- package/dist/core/subagents.js.map +1 -1
- package/dist/core/swarm/planner.d.ts.map +1 -1
- package/dist/core/swarm/planner.js +200 -12
- package/dist/core/swarm/planner.js.map +1 -1
- package/dist/core/swarm/scheduler.d.ts +2 -0
- package/dist/core/swarm/scheduler.d.ts.map +1 -1
- package/dist/core/swarm/scheduler.js +87 -6
- package/dist/core/swarm/scheduler.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +1 -0
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/ast-grep.d.ts.map +1 -1
- package/dist/core/tools/ast-grep.js +2 -0
- package/dist/core/tools/ast-grep.js.map +1 -1
- package/dist/core/tools/shared-memory.d.ts.map +1 -1
- package/dist/core/tools/shared-memory.js +34 -6
- package/dist/core/tools/shared-memory.js.map +1 -1
- package/dist/core/tools/task.d.ts.map +1 -1
- package/dist/core/tools/task.js +464 -73
- package/dist/core/tools/task.js.map +1 -1
- package/dist/core/tools/yq.d.ts.map +1 -1
- package/dist/core/tools/yq.js +2 -0
- package/dist/core/tools/yq.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +2 -1
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +13 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +756 -74
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/cli-reference.md +4 -0
- package/docs/interactive-mode.md +2 -0
- package/docs/orchestration-and-subagents.md +5 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yq.d.ts","sourceRoot":"","sources":["../../../src/core/tools/yq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAyB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE3D,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"yq.d.ts","sourceRoot":"","sources":["../../../src/core/tools/yq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAyB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE3D,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,iBAAiB,CAAC,CAU7E;AAED,eAAO,MAAM,MAAM;;;;;QAA8B,CAAC"}
|
package/dist/core/tools/yq.js
CHANGED
|
@@ -6,6 +6,8 @@ export function createYqTool(cwd) {
|
|
|
6
6
|
description: "Run yq for YAML/JSON/TOML querying/transformation. Pass CLI arguments directly, optionally with stdin.",
|
|
7
7
|
commandCandidates: ["yq"],
|
|
8
8
|
missingInstallHint: "Install yq (brew install yq).",
|
|
9
|
+
forbiddenArgs: ["-i", "--inplace", "--in-place", "-s", "--split-exp", "--split-exp-file"],
|
|
10
|
+
forbiddenArgPrefixes: ["-i", "--inplace", "--in-place", "--split-exp=", "--split-exp-file="],
|
|
9
11
|
});
|
|
10
12
|
}
|
|
11
13
|
export const yqTool = createYqTool(process.cwd());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yq.js","sourceRoot":"","sources":["../../../src/core/tools/yq.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAqB,MAAM,mBAAmB,CAAC;AAI7E,MAAM,UAAU,YAAY,CAAC,GAAW;IACvC,OAAO,qBAAqB,CAAC,GAAG,EAAE;QACjC,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,wGAAwG;QACrH,iBAAiB,EAAE,CAAC,IAAI,CAAC;QACzB,kBAAkB,EAAE,+BAA+B;
|
|
1
|
+
{"version":3,"file":"yq.js","sourceRoot":"","sources":["../../../src/core/tools/yq.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAqB,MAAM,mBAAmB,CAAC;AAI7E,MAAM,UAAU,YAAY,CAAC,GAAW;IACvC,OAAO,qBAAqB,CAAC,GAAG,EAAE;QACjC,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,wGAAwG;QACrH,iBAAiB,EAAE,CAAC,IAAI,CAAC;QACzB,kBAAkB,EAAE,+BAA+B;QACnD,aAAa,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,kBAAkB,CAAC;QACzF,oBAAoB,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,CAAC;KAC5F,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC","sourcesContent":["import type { AgentTool } from \"@mariozechner/pi-agent-core\";\nimport type { Static } from \"@sinclair/typebox\";\nimport { createExternalCliTool, externalCliSchema } from \"./external-cli.js\";\n\nexport type YqToolInput = Static<typeof externalCliSchema>;\n\nexport function createYqTool(cwd: string): AgentTool<typeof externalCliSchema> {\n\treturn createExternalCliTool(cwd, {\n\t\tname: \"yq\",\n\t\tlabel: \"yq\",\n\t\tdescription: \"Run yq for YAML/JSON/TOML querying/transformation. Pass CLI arguments directly, optionally with stdin.\",\n\t\tcommandCandidates: [\"yq\"],\n\t\tmissingInstallHint: \"Install yq (brew install yq).\",\n\t\tforbiddenArgs: [\"-i\", \"--inplace\", \"--in-place\", \"-s\", \"--split-exp\", \"--split-exp-file\"],\n\t\tforbiddenArgPrefixes: [\"-i\", \"--inplace\", \"--in-place\", \"--split-exp=\", \"--split-exp-file=\"],\n\t});\n}\n\nexport const yqTool = createYqTool(process.cwd());\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../src/modes/interactive/components/footer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAiC,MAAM,sBAAsB,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAyDxF;;;GAGG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAM/C,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IANnB,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAM;gBAGlB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,0BAA0B;IAG/C,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI7C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIvC;;;OAGG;IACH,UAAU,IAAI,IAAI;IAIlB;;;OAGG;IACH,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../src/modes/interactive/components/footer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAiC,MAAM,sBAAsB,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAyDxF;;;GAGG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAM/C,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IANnB,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAM;gBAGlB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,0BAA0B;IAG/C,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI7C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIvC;;;OAGG;IACH,UAAU,IAAI,IAAI;IAIlB;;;OAGG;IACH,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;CAiM/B"}
|
|
@@ -153,10 +153,11 @@ export class FooterComponent {
|
|
|
153
153
|
if (normalizedProfile) {
|
|
154
154
|
statusParts.push(badge(normalizedProfile, "muted"));
|
|
155
155
|
}
|
|
156
|
+
const swarmBusy = this.footerData.getSwarmBusy?.() ?? false;
|
|
156
157
|
if (this.session.isCompacting) {
|
|
157
158
|
statusParts.push(badge("compacting", "warning"));
|
|
158
159
|
}
|
|
159
|
-
else if (this.session.isStreaming) {
|
|
160
|
+
else if (this.session.isStreaming || swarmBusy) {
|
|
160
161
|
statusParts.push(badge("working", "accent"));
|
|
161
162
|
}
|
|
162
163
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../src/modes/interactive/components/footer.ts"],"names":[],"mappings":"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","sourcesContent":["import { existsSync, readdirSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { type Component, truncateToWidth, visibleWidth } from \"@mariozechner/pi-tui\";\nimport type { AgentSession } from \"../../../core/agent-session.js\";\nimport type { ReadonlyFooterDataProvider } from \"../../../core/footer-data-provider.js\";\nimport { theme } from \"../theme/theme.js\";\n\n/**\n * Sanitize text for display in a single-line status.\n * Removes newlines, tabs, carriage returns, and other control characters.\n */\nfunction sanitizeStatusText(text: string): string {\n\t// Replace newlines, tabs, carriage returns with space, then collapse multiple spaces\n\treturn text\n\t\t.replace(/[\\r\\n\\t]/g, \" \")\n\t\t.replace(/ +/g, \" \")\n\t\t.trim();\n}\n\n/**\n * Format token counts (similar to web-ui)\n */\nfunction formatTokens(count: number): string {\n\tif (count < 1000) return count.toString();\n\tif (count < 10000) return `${(count / 1000).toFixed(1)}k`;\n\tif (count < 1000000) return `${Math.round(count / 1000)}k`;\n\tif (count < 10000000) return `${(count / 1000000).toFixed(1)}M`;\n\treturn `${Math.round(count / 1000000)}M`;\n}\n\nfunction badge(text: string, color: \"accent\" | \"success\" | \"warning\" | \"muted\"): string {\n\treturn theme.fg(\"dim\", \"[\") + theme.fg(color, text) + theme.fg(\"dim\", \"]\");\n}\n\n/**\n * Detect IOSM workspace and return a compact status segment.\n * Returns empty string when no IOSM workspace is found.\n */\nfunction getIosmStatus(cwd: string): string {\n\tconst iosmDir = join(cwd, \".iosm\");\n\tif (!existsSync(iosmDir)) return \"\";\n\n\t// Try to find the most recent cycle ID\n\tlet cycleId: string | undefined;\n\ttry {\n\t\tconst cyclesDir = join(iosmDir, \"cycles\");\n\t\tif (existsSync(cyclesDir)) {\n\t\t\tconst entries = readdirSync(cyclesDir).sort();\n\t\t\tif (entries.length > 0) {\n\t\t\t\tcycleId = entries[entries.length - 1];\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// Ignore read errors\n\t}\n\n\tconst label = theme.fg(\"accent\", \"iosm\");\n\tconst suffix = cycleId ? theme.fg(\"muted\", ` #${cycleId}`) : \"\";\n\treturn label + suffix;\n}\n\n/**\n * Footer component that shows pwd, token stats, and context usage.\n * Computes token/context stats from session, gets git branch and extension statuses from provider.\n */\nexport class FooterComponent implements Component {\n\tprivate autoCompactEnabled = true;\n\tprivate planMode = false;\n\tprivate activeProfile = \"\";\n\n\tconstructor(\n\t\tprivate session: AgentSession,\n\t\tprivate footerData: ReadonlyFooterDataProvider,\n\t) {}\n\n\tsetAutoCompactEnabled(enabled: boolean): void {\n\t\tthis.autoCompactEnabled = enabled;\n\t}\n\n\t/**\n\t * Toggle plan-mode badge in the status line.\n\t * When enabled, a [plan] badge is prepended before the session state badge.\n\t */\n\tsetPlanMode(enabled: boolean): void {\n\t\tthis.planMode = enabled;\n\t}\n\n\t/**\n\t * Set the active profile name.\n\t * When non-empty, a [profile] badge is shown in the status line so the\n\t * operator can always see the current profile, including \"full\".\n\t */\n\tsetActiveProfile(profile: string): void {\n\t\tthis.activeProfile = profile;\n\t}\n\n\t/**\n\t * No-op: git branch caching now handled by provider.\n\t * Kept for compatibility with existing call sites in interactive-mode.\n\t */\n\tinvalidate(): void {\n\t\t// No-op: git branch is cached/invalidated by provider\n\t}\n\n\t/**\n\t * Clean up resources.\n\t * Git watcher cleanup now handled by provider.\n\t */\n\tdispose(): void {\n\t\t// Git watcher cleanup handled by provider\n\t}\n\n\trender(width: number): string[] {\n\t\tconst state = this.session.state;\n\t\tconst separator = theme.fg(\"dim\", \" • \");\n\n\t\t// Calculate cumulative usage from ALL session entries (not just post-compaction messages)\n\t\tlet totalInput = 0;\n\t\tlet totalOutput = 0;\n\t\tlet totalCacheRead = 0;\n\t\tlet totalCacheWrite = 0;\n\t\tlet totalCost = 0;\n\n\t\tfor (const entry of this.session.sessionManager.getEntries()) {\n\t\t\tif (entry.type === \"message\" && entry.message.role === \"assistant\") {\n\t\t\t\ttotalInput += entry.message.usage.input;\n\t\t\t\ttotalOutput += entry.message.usage.output;\n\t\t\t\ttotalCacheRead += entry.message.usage.cacheRead;\n\t\t\t\ttotalCacheWrite += entry.message.usage.cacheWrite;\n\t\t\t\ttotalCost += entry.message.usage.cost.total;\n\t\t\t}\n\t\t}\n\n\t\t// Calculate context usage from session (handles compaction correctly).\n\t\t// After compaction, tokens are unknown until the next LLM response.\n\t\tconst contextUsage = this.session.getContextUsage();\n\t\tconst contextWindow = contextUsage?.contextWindow ?? state.model?.contextWindow ?? 0;\n\t\tconst contextPercentValue = contextUsage?.percent ?? 0;\n\t\tconst contextPercent = contextUsage?.percent !== null ? contextPercentValue.toFixed(1) : \"?\";\n\n\t\tconst sessionManager = this.session.sessionManager as { getCwd?: () => string };\n\t\tconst sessionCwd = sessionManager.getCwd?.() ?? process.cwd();\n\n\t\t// Replace home directory with ~\n\t\tlet pwd = sessionCwd;\n\t\tconst home = process.env.HOME || process.env.USERPROFILE;\n\t\tif (home && pwd.startsWith(home)) {\n\t\t\tpwd = `~${pwd.slice(home.length)}`;\n\t\t}\n\n\t\t// Add git branch if available\n\t\tconst branch = this.footerData.getGitBranch();\n\t\tif (branch) {\n\t\t\tpwd = `${pwd} (${branch})`;\n\t\t}\n\n\t\t// Add session name if set\n\t\tconst sessionName = this.session.sessionManager.getSessionName();\n\t\tif (sessionName) {\n\t\t\tpwd = `${pwd} • ${sessionName}`;\n\t\t}\n\n\t\tconst statusParts = [];\n\n\t\tconst normalizedProfile = this.activeProfile.trim().toLowerCase();\n\n\t\t// Plan-mode badge stays leftmost for quick mode awareness, but avoid duplicate\n\t\t// [plan] when active profile already renders as [plan].\n\t\tif (this.planMode && normalizedProfile !== \"plan\") {\n\t\t\tstatusParts.push(badge(\"plan\", \"accent\"));\n\t\t}\n\n\t\t// Profile badge is always shown when a profile is set, including \"full\".\n\t\tif (normalizedProfile) {\n\t\t\tstatusParts.push(badge(normalizedProfile, \"muted\"));\n\t\t}\n\n\t\tif (this.session.isCompacting) {\n\t\t\tstatusParts.push(badge(\"compacting\", \"warning\"));\n\t\t} else if (this.session.isStreaming) {\n\t\t\tstatusParts.push(badge(\"working\", \"accent\"));\n\t\t} else {\n\t\t\tstatusParts.push(badge(\"ready\", \"success\"));\n\t\t}\n\n\t\tconst pendingMessages = this.session.pendingMessageCount ?? 0;\n\t\tif (pendingMessages > 0) {\n\t\t\tstatusParts.push(badge(`queue ${pendingMessages}`, pendingMessages > 1 ? \"warning\" : \"accent\"));\n\t\t}\n\n\t\tconst retryAttempt = this.session.retryAttempt ?? 0;\n\t\tif (retryAttempt > 0) {\n\t\t\tstatusParts.push(badge(`retry ${retryAttempt}`, \"warning\"));\n\t\t}\n\n\t\t// Build stats line\n\t\tconst usageParts = [];\n\t\tif (totalInput) usageParts.push(theme.fg(\"muted\", `↑${formatTokens(totalInput)}`));\n\t\tif (totalOutput) usageParts.push(theme.fg(\"muted\", `↓${formatTokens(totalOutput)}`));\n\t\tif (totalCacheRead) usageParts.push(theme.fg(\"muted\", `R${formatTokens(totalCacheRead)}`));\n\t\tif (totalCacheWrite) usageParts.push(theme.fg(\"muted\", `W${formatTokens(totalCacheWrite)}`));\n\n\t\t// Show cost with \"(sub)\" indicator if using OAuth subscription\n\t\tconst usingSubscription = state.model ? this.session.modelRegistry.isUsingOAuth(state.model) : false;\n\t\tif (totalCost || usingSubscription) {\n\t\t\tconst costStr = `$${totalCost.toFixed(3)}${usingSubscription ? \" (sub)\" : \"\"}`;\n\t\t\tusageParts.push(theme.fg(\"muted\", costStr));\n\t\t}\n\n\t\t// Colorize context percentage based on usage\n\t\tlet contextPercentStr: string;\n\t\tconst autoIndicator = this.autoCompactEnabled ? \" (auto)\" : \"\";\n\t\tconst contextPercentDisplay =\n\t\t\tcontextPercent === \"?\"\n\t\t\t\t? `ctx ?/${formatTokens(contextWindow)}${autoIndicator}`\n\t\t\t\t: `ctx ${contextPercent}%/${formatTokens(contextWindow)}${autoIndicator}`;\n\t\tif (contextPercentValue > 90) {\n\t\t\tcontextPercentStr = theme.fg(\"error\", contextPercentDisplay);\n\t\t} else if (contextPercentValue > 70) {\n\t\t\tcontextPercentStr = theme.fg(\"warning\", contextPercentDisplay);\n\t\t} else {\n\t\t\tcontextPercentStr = theme.fg(\"muted\", contextPercentDisplay);\n\t\t}\n\t\tusageParts.push(contextPercentStr);\n\n\t\tlet statsLeft = [...statusParts, ...usageParts].join(separator);\n\n\t\t// Add provider/model on the right side, plus thinking level if model supports it\n\t\tconst modelName = state.model ? `${state.model.provider}/${state.model.id}` : \"no-model\";\n\n\t\tlet statsLeftWidth = visibleWidth(statsLeft);\n\n\t\t// If statsLeft is too wide, truncate it\n\t\tif (statsLeftWidth > width) {\n\t\t\tstatsLeft = truncateToWidth(statsLeft, width, \"...\");\n\t\t\tstatsLeftWidth = visibleWidth(statsLeft);\n\t\t}\n\n\t\t// Calculate available space for padding (minimum 2 spaces between stats and model)\n\t\tconst minPadding = 2;\n\n\t\t// Add thinking level indicator if model supports reasoning\n\t\tlet rightSideWithoutProvider = state.model ? theme.fg(\"accent\", modelName) : theme.fg(\"warning\", modelName);\n\t\tif (state.model?.reasoning) {\n\t\t\tconst thinkingLevel = state.thinkingLevel || \"off\";\n\t\t\trightSideWithoutProvider =\n\t\t\t\tthinkingLevel === \"off\"\n\t\t\t\t\t? `${theme.fg(\"accent\", modelName)}${theme.fg(\"muted\", \" • thinking off\")}`\n\t\t\t\t\t: `${theme.fg(\"accent\", modelName)}${theme.fg(\"muted\", ` • ${thinkingLevel}`)}`;\n\t\t}\n\n\t\tconst rightSide = rightSideWithoutProvider;\n\n\t\tconst rightSideWidth = visibleWidth(rightSide);\n\t\tconst totalNeeded = statsLeftWidth + minPadding + rightSideWidth;\n\n\t\tlet statsLine: string;\n\t\tif (totalNeeded <= width) {\n\t\t\t// Both fit - add padding to right-align model\n\t\t\tconst padding = \" \".repeat(width - statsLeftWidth - rightSideWidth);\n\t\t\tstatsLine = statsLeft + padding + rightSide;\n\t\t} else {\n\t\t\t// Need to truncate right side\n\t\t\tconst availableForRight = width - statsLeftWidth - minPadding;\n\t\t\tif (availableForRight > 0) {\n\t\t\t\tconst truncatedRight = truncateToWidth(rightSide, availableForRight, \"\");\n\t\t\t\tconst truncatedRightWidth = visibleWidth(truncatedRight);\n\t\t\t\tconst padding = \" \".repeat(Math.max(0, width - statsLeftWidth - truncatedRightWidth));\n\t\t\t\tstatsLine = statsLeft + padding + truncatedRight;\n\t\t\t} else {\n\t\t\t\t// Not enough space for right side at all\n\t\t\t\tstatsLine = statsLeft;\n\t\t\t}\n\t\t}\n\n\t\t// Build pwd line, optionally with IOSM status segment appended\n\t\tconst iosmStatus = getIosmStatus(sessionCwd);\n\t\tlet pwdLine: string;\n\t\tif (iosmStatus) {\n\t\t\t// Assemble the IOSM segment (carries its own ANSI color codes)\n\t\t\tconst iosmSegment = \" [\" + iosmStatus + theme.fg(\"dim\", \"]\");\n\t\t\tconst iosmSegmentWidth = visibleWidth(iosmSegment);\n\t\t\t// Truncate pwd portion to leave room for the iosm segment\n\t\t\tconst maxPwdWidth = Math.max(0, width - iosmSegmentWidth);\n\t\t\tconst dimPwdTruncated = truncateToWidth(theme.fg(\"dim\", pwd), maxPwdWidth, theme.fg(\"dim\", \"...\"));\n\t\t\tpwdLine = dimPwdTruncated + iosmSegment;\n\t\t} else {\n\t\t\tpwdLine = truncateToWidth(theme.fg(\"dim\", pwd), width, theme.fg(\"dim\", \"...\"));\n\t\t}\n\t\tconst lines = [pwdLine, statsLine];\n\n\t\t// Add extension statuses on a single line, sorted by key alphabetically\n\t\tconst extensionStatuses = this.footerData.getExtensionStatuses();\n\t\tif (extensionStatuses.size > 0) {\n\t\t\tconst sortedStatuses = Array.from(extensionStatuses.entries())\n\t\t\t\t.sort(([a], [b]) => a.localeCompare(b))\n\t\t\t\t.map(([, text]) => sanitizeStatusText(text));\n\t\t\tconst statusLine = sortedStatuses.join(\" \");\n\t\t\t// Truncate to terminal width with dim ellipsis for consistency with footer style\n\t\t\tlines.push(truncateToWidth(statusLine, width, theme.fg(\"dim\", \"...\")));\n\t\t}\n\n\t\treturn lines;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../src/modes/interactive/components/footer.ts"],"names":[],"mappings":"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","sourcesContent":["import { existsSync, readdirSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { type Component, truncateToWidth, visibleWidth } from \"@mariozechner/pi-tui\";\nimport type { AgentSession } from \"../../../core/agent-session.js\";\nimport type { ReadonlyFooterDataProvider } from \"../../../core/footer-data-provider.js\";\nimport { theme } from \"../theme/theme.js\";\n\n/**\n * Sanitize text for display in a single-line status.\n * Removes newlines, tabs, carriage returns, and other control characters.\n */\nfunction sanitizeStatusText(text: string): string {\n\t// Replace newlines, tabs, carriage returns with space, then collapse multiple spaces\n\treturn text\n\t\t.replace(/[\\r\\n\\t]/g, \" \")\n\t\t.replace(/ +/g, \" \")\n\t\t.trim();\n}\n\n/**\n * Format token counts (similar to web-ui)\n */\nfunction formatTokens(count: number): string {\n\tif (count < 1000) return count.toString();\n\tif (count < 10000) return `${(count / 1000).toFixed(1)}k`;\n\tif (count < 1000000) return `${Math.round(count / 1000)}k`;\n\tif (count < 10000000) return `${(count / 1000000).toFixed(1)}M`;\n\treturn `${Math.round(count / 1000000)}M`;\n}\n\nfunction badge(text: string, color: \"accent\" | \"success\" | \"warning\" | \"muted\"): string {\n\treturn theme.fg(\"dim\", \"[\") + theme.fg(color, text) + theme.fg(\"dim\", \"]\");\n}\n\n/**\n * Detect IOSM workspace and return a compact status segment.\n * Returns empty string when no IOSM workspace is found.\n */\nfunction getIosmStatus(cwd: string): string {\n\tconst iosmDir = join(cwd, \".iosm\");\n\tif (!existsSync(iosmDir)) return \"\";\n\n\t// Try to find the most recent cycle ID\n\tlet cycleId: string | undefined;\n\ttry {\n\t\tconst cyclesDir = join(iosmDir, \"cycles\");\n\t\tif (existsSync(cyclesDir)) {\n\t\t\tconst entries = readdirSync(cyclesDir).sort();\n\t\t\tif (entries.length > 0) {\n\t\t\t\tcycleId = entries[entries.length - 1];\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// Ignore read errors\n\t}\n\n\tconst label = theme.fg(\"accent\", \"iosm\");\n\tconst suffix = cycleId ? theme.fg(\"muted\", ` #${cycleId}`) : \"\";\n\treturn label + suffix;\n}\n\n/**\n * Footer component that shows pwd, token stats, and context usage.\n * Computes token/context stats from session, gets git branch and extension statuses from provider.\n */\nexport class FooterComponent implements Component {\n\tprivate autoCompactEnabled = true;\n\tprivate planMode = false;\n\tprivate activeProfile = \"\";\n\n\tconstructor(\n\t\tprivate session: AgentSession,\n\t\tprivate footerData: ReadonlyFooterDataProvider,\n\t) {}\n\n\tsetAutoCompactEnabled(enabled: boolean): void {\n\t\tthis.autoCompactEnabled = enabled;\n\t}\n\n\t/**\n\t * Toggle plan-mode badge in the status line.\n\t * When enabled, a [plan] badge is prepended before the session state badge.\n\t */\n\tsetPlanMode(enabled: boolean): void {\n\t\tthis.planMode = enabled;\n\t}\n\n\t/**\n\t * Set the active profile name.\n\t * When non-empty, a [profile] badge is shown in the status line so the\n\t * operator can always see the current profile, including \"full\".\n\t */\n\tsetActiveProfile(profile: string): void {\n\t\tthis.activeProfile = profile;\n\t}\n\n\t/**\n\t * No-op: git branch caching now handled by provider.\n\t * Kept for compatibility with existing call sites in interactive-mode.\n\t */\n\tinvalidate(): void {\n\t\t// No-op: git branch is cached/invalidated by provider\n\t}\n\n\t/**\n\t * Clean up resources.\n\t * Git watcher cleanup now handled by provider.\n\t */\n\tdispose(): void {\n\t\t// Git watcher cleanup handled by provider\n\t}\n\n\trender(width: number): string[] {\n\t\tconst state = this.session.state;\n\t\tconst separator = theme.fg(\"dim\", \" • \");\n\n\t\t// Calculate cumulative usage from ALL session entries (not just post-compaction messages)\n\t\tlet totalInput = 0;\n\t\tlet totalOutput = 0;\n\t\tlet totalCacheRead = 0;\n\t\tlet totalCacheWrite = 0;\n\t\tlet totalCost = 0;\n\n\t\tfor (const entry of this.session.sessionManager.getEntries()) {\n\t\t\tif (entry.type === \"message\" && entry.message.role === \"assistant\") {\n\t\t\t\ttotalInput += entry.message.usage.input;\n\t\t\t\ttotalOutput += entry.message.usage.output;\n\t\t\t\ttotalCacheRead += entry.message.usage.cacheRead;\n\t\t\t\ttotalCacheWrite += entry.message.usage.cacheWrite;\n\t\t\t\ttotalCost += entry.message.usage.cost.total;\n\t\t\t}\n\t\t}\n\n\t\t// Calculate context usage from session (handles compaction correctly).\n\t\t// After compaction, tokens are unknown until the next LLM response.\n\t\tconst contextUsage = this.session.getContextUsage();\n\t\tconst contextWindow = contextUsage?.contextWindow ?? state.model?.contextWindow ?? 0;\n\t\tconst contextPercentValue = contextUsage?.percent ?? 0;\n\t\tconst contextPercent = contextUsage?.percent !== null ? contextPercentValue.toFixed(1) : \"?\";\n\n\t\tconst sessionManager = this.session.sessionManager as { getCwd?: () => string };\n\t\tconst sessionCwd = sessionManager.getCwd?.() ?? process.cwd();\n\n\t\t// Replace home directory with ~\n\t\tlet pwd = sessionCwd;\n\t\tconst home = process.env.HOME || process.env.USERPROFILE;\n\t\tif (home && pwd.startsWith(home)) {\n\t\t\tpwd = `~${pwd.slice(home.length)}`;\n\t\t}\n\n\t\t// Add git branch if available\n\t\tconst branch = this.footerData.getGitBranch();\n\t\tif (branch) {\n\t\t\tpwd = `${pwd} (${branch})`;\n\t\t}\n\n\t\t// Add session name if set\n\t\tconst sessionName = this.session.sessionManager.getSessionName();\n\t\tif (sessionName) {\n\t\t\tpwd = `${pwd} • ${sessionName}`;\n\t\t}\n\n\t\tconst statusParts = [];\n\n\t\tconst normalizedProfile = this.activeProfile.trim().toLowerCase();\n\n\t\t// Plan-mode badge stays leftmost for quick mode awareness, but avoid duplicate\n\t\t// [plan] when active profile already renders as [plan].\n\t\tif (this.planMode && normalizedProfile !== \"plan\") {\n\t\t\tstatusParts.push(badge(\"plan\", \"accent\"));\n\t\t}\n\n\t\t// Profile badge is always shown when a profile is set, including \"full\".\n\t\tif (normalizedProfile) {\n\t\t\tstatusParts.push(badge(normalizedProfile, \"muted\"));\n\t\t}\n\n\t\tconst swarmBusy = this.footerData.getSwarmBusy?.() ?? false;\n\t\tif (this.session.isCompacting) {\n\t\t\tstatusParts.push(badge(\"compacting\", \"warning\"));\n\t\t} else if (this.session.isStreaming || swarmBusy) {\n\t\t\tstatusParts.push(badge(\"working\", \"accent\"));\n\t\t} else {\n\t\t\tstatusParts.push(badge(\"ready\", \"success\"));\n\t\t}\n\n\t\tconst pendingMessages = this.session.pendingMessageCount ?? 0;\n\t\tif (pendingMessages > 0) {\n\t\t\tstatusParts.push(badge(`queue ${pendingMessages}`, pendingMessages > 1 ? \"warning\" : \"accent\"));\n\t\t}\n\n\t\tconst retryAttempt = this.session.retryAttempt ?? 0;\n\t\tif (retryAttempt > 0) {\n\t\t\tstatusParts.push(badge(`retry ${retryAttempt}`, \"warning\"));\n\t\t}\n\n\t\t// Build stats line\n\t\tconst usageParts = [];\n\t\tif (totalInput) usageParts.push(theme.fg(\"muted\", `↑${formatTokens(totalInput)}`));\n\t\tif (totalOutput) usageParts.push(theme.fg(\"muted\", `↓${formatTokens(totalOutput)}`));\n\t\tif (totalCacheRead) usageParts.push(theme.fg(\"muted\", `R${formatTokens(totalCacheRead)}`));\n\t\tif (totalCacheWrite) usageParts.push(theme.fg(\"muted\", `W${formatTokens(totalCacheWrite)}`));\n\n\t\t// Show cost with \"(sub)\" indicator if using OAuth subscription\n\t\tconst usingSubscription = state.model ? this.session.modelRegistry.isUsingOAuth(state.model) : false;\n\t\tif (totalCost || usingSubscription) {\n\t\t\tconst costStr = `$${totalCost.toFixed(3)}${usingSubscription ? \" (sub)\" : \"\"}`;\n\t\t\tusageParts.push(theme.fg(\"muted\", costStr));\n\t\t}\n\n\t\t// Colorize context percentage based on usage\n\t\tlet contextPercentStr: string;\n\t\tconst autoIndicator = this.autoCompactEnabled ? \" (auto)\" : \"\";\n\t\tconst contextPercentDisplay =\n\t\t\tcontextPercent === \"?\"\n\t\t\t\t? `ctx ?/${formatTokens(contextWindow)}${autoIndicator}`\n\t\t\t\t: `ctx ${contextPercent}%/${formatTokens(contextWindow)}${autoIndicator}`;\n\t\tif (contextPercentValue > 90) {\n\t\t\tcontextPercentStr = theme.fg(\"error\", contextPercentDisplay);\n\t\t} else if (contextPercentValue > 70) {\n\t\t\tcontextPercentStr = theme.fg(\"warning\", contextPercentDisplay);\n\t\t} else {\n\t\t\tcontextPercentStr = theme.fg(\"muted\", contextPercentDisplay);\n\t\t}\n\t\tusageParts.push(contextPercentStr);\n\n\t\tlet statsLeft = [...statusParts, ...usageParts].join(separator);\n\n\t\t// Add provider/model on the right side, plus thinking level if model supports it\n\t\tconst modelName = state.model ? `${state.model.provider}/${state.model.id}` : \"no-model\";\n\n\t\tlet statsLeftWidth = visibleWidth(statsLeft);\n\n\t\t// If statsLeft is too wide, truncate it\n\t\tif (statsLeftWidth > width) {\n\t\t\tstatsLeft = truncateToWidth(statsLeft, width, \"...\");\n\t\t\tstatsLeftWidth = visibleWidth(statsLeft);\n\t\t}\n\n\t\t// Calculate available space for padding (minimum 2 spaces between stats and model)\n\t\tconst minPadding = 2;\n\n\t\t// Add thinking level indicator if model supports reasoning\n\t\tlet rightSideWithoutProvider = state.model ? theme.fg(\"accent\", modelName) : theme.fg(\"warning\", modelName);\n\t\tif (state.model?.reasoning) {\n\t\t\tconst thinkingLevel = state.thinkingLevel || \"off\";\n\t\t\trightSideWithoutProvider =\n\t\t\t\tthinkingLevel === \"off\"\n\t\t\t\t\t? `${theme.fg(\"accent\", modelName)}${theme.fg(\"muted\", \" • thinking off\")}`\n\t\t\t\t\t: `${theme.fg(\"accent\", modelName)}${theme.fg(\"muted\", ` • ${thinkingLevel}`)}`;\n\t\t}\n\n\t\tconst rightSide = rightSideWithoutProvider;\n\n\t\tconst rightSideWidth = visibleWidth(rightSide);\n\t\tconst totalNeeded = statsLeftWidth + minPadding + rightSideWidth;\n\n\t\tlet statsLine: string;\n\t\tif (totalNeeded <= width) {\n\t\t\t// Both fit - add padding to right-align model\n\t\t\tconst padding = \" \".repeat(width - statsLeftWidth - rightSideWidth);\n\t\t\tstatsLine = statsLeft + padding + rightSide;\n\t\t} else {\n\t\t\t// Need to truncate right side\n\t\t\tconst availableForRight = width - statsLeftWidth - minPadding;\n\t\t\tif (availableForRight > 0) {\n\t\t\t\tconst truncatedRight = truncateToWidth(rightSide, availableForRight, \"\");\n\t\t\t\tconst truncatedRightWidth = visibleWidth(truncatedRight);\n\t\t\t\tconst padding = \" \".repeat(Math.max(0, width - statsLeftWidth - truncatedRightWidth));\n\t\t\t\tstatsLine = statsLeft + padding + truncatedRight;\n\t\t\t} else {\n\t\t\t\t// Not enough space for right side at all\n\t\t\t\tstatsLine = statsLeft;\n\t\t\t}\n\t\t}\n\n\t\t// Build pwd line, optionally with IOSM status segment appended\n\t\tconst iosmStatus = getIosmStatus(sessionCwd);\n\t\tlet pwdLine: string;\n\t\tif (iosmStatus) {\n\t\t\t// Assemble the IOSM segment (carries its own ANSI color codes)\n\t\t\tconst iosmSegment = \" [\" + iosmStatus + theme.fg(\"dim\", \"]\");\n\t\t\tconst iosmSegmentWidth = visibleWidth(iosmSegment);\n\t\t\t// Truncate pwd portion to leave room for the iosm segment\n\t\t\tconst maxPwdWidth = Math.max(0, width - iosmSegmentWidth);\n\t\t\tconst dimPwdTruncated = truncateToWidth(theme.fg(\"dim\", pwd), maxPwdWidth, theme.fg(\"dim\", \"...\"));\n\t\t\tpwdLine = dimPwdTruncated + iosmSegment;\n\t\t} else {\n\t\t\tpwdLine = truncateToWidth(theme.fg(\"dim\", pwd), width, theme.fg(\"dim\", \"...\"));\n\t\t}\n\t\tconst lines = [pwdLine, statsLine];\n\n\t\t// Add extension statuses on a single line, sorted by key alphabetically\n\t\tconst extensionStatuses = this.footerData.getExtensionStatuses();\n\t\tif (extensionStatuses.size > 0) {\n\t\t\tconst sortedStatuses = Array.from(extensionStatuses.entries())\n\t\t\t\t.sort(([a], [b]) => a.localeCompare(b))\n\t\t\t\t.map(([, text]) => sanitizeStatusText(text));\n\t\t\tconst statusLine = sortedStatuses.join(\" \");\n\t\t\t// Truncate to terminal width with dim ellipsis for consistency with footer style\n\t\t\tlines.push(truncateToWidth(statusLine, width, theme.fg(\"dim\", \"...\")));\n\t\t}\n\n\t\treturn lines;\n\t}\n}\n"]}
|
|
@@ -66,6 +66,8 @@ export declare class InteractiveMode {
|
|
|
66
66
|
private singularService;
|
|
67
67
|
private singularLastEffectiveContract;
|
|
68
68
|
private swarmActiveRunId;
|
|
69
|
+
private swarmStopRequested;
|
|
70
|
+
private swarmAbortController;
|
|
69
71
|
private lastSigintTime;
|
|
70
72
|
private lastEscapeTime;
|
|
71
73
|
private changelogMarkdown;
|
|
@@ -74,6 +76,7 @@ export declare class InteractiveMode {
|
|
|
74
76
|
private streamingComponent;
|
|
75
77
|
private streamingMessage;
|
|
76
78
|
private currentTurnSawAssistantMessage;
|
|
79
|
+
private currentTurnSawTaskToolCall;
|
|
77
80
|
private pendingTools;
|
|
78
81
|
private subagentComponents;
|
|
79
82
|
private subagentElapsedTimer;
|
|
@@ -277,6 +280,11 @@ export declare class InteractiveMode {
|
|
|
277
280
|
private handleClipboardImagePaste;
|
|
278
281
|
private setupEditorSubmitHandler;
|
|
279
282
|
private updateRunningSubagentDisplay;
|
|
283
|
+
private getSwarmSubagentKey;
|
|
284
|
+
private ensureSwarmSubagentDisplay;
|
|
285
|
+
private updateSwarmSubagentProgress;
|
|
286
|
+
private finalizeSwarmSubagentDisplay;
|
|
287
|
+
private finalizeSwarmRunSubagentDisplays;
|
|
280
288
|
private ensureSubagentElapsedTimer;
|
|
281
289
|
private clearSubagentElapsedTimer;
|
|
282
290
|
private stopSubagentElapsedTimerIfIdle;
|
|
@@ -480,6 +488,8 @@ export declare class InteractiveMode {
|
|
|
480
488
|
private parseIosmAutomationSlashCommand;
|
|
481
489
|
private getSwarmHelpText;
|
|
482
490
|
private buildSwarmRecommendationFromOrchestrate;
|
|
491
|
+
private resolveOrchestrateDefaultAssignmentProfile;
|
|
492
|
+
private deriveOrchestrateDelegateParallelHint;
|
|
483
493
|
private isEffectiveContractReady;
|
|
484
494
|
private parseContractListInput;
|
|
485
495
|
private buildAutoDraftContractFromTask;
|
|
@@ -493,6 +503,9 @@ export declare class InteractiveMode {
|
|
|
493
503
|
private resolveSwarmTaskProfile;
|
|
494
504
|
private estimateSwarmTaskCostUsd;
|
|
495
505
|
private deriveSwarmTaskDelegateParallelHint;
|
|
506
|
+
private ensureSwarmModelReady;
|
|
507
|
+
private resolveSwarmMaxParallel;
|
|
508
|
+
private resolveSwarmDispatchTimeoutMs;
|
|
496
509
|
private parseSwarmSpawnCandidates;
|
|
497
510
|
private loadSingularAnalysisByRunId;
|
|
498
511
|
private dispatchSwarmTaskWithAgent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode.ts"],"names":[],"mappings":"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"}
|