@intrect/openswarm 0.4.4 → 0.8.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.
- package/README.md +46 -26
- package/config.example.yaml +22 -10
- package/dist/adapters/agenticLoop.d.ts +45 -2
- package/dist/adapters/agenticLoop.d.ts.map +1 -1
- package/dist/adapters/agenticLoop.js +209 -61
- package/dist/adapters/agenticLoop.js.map +1 -1
- package/dist/adapters/chatStream.d.ts +55 -0
- package/dist/adapters/chatStream.d.ts.map +1 -0
- package/dist/adapters/chatStream.js +116 -0
- package/dist/adapters/chatStream.js.map +1 -0
- package/dist/adapters/codex.d.ts +7 -0
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +67 -6
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/codexModels.d.ts +20 -0
- package/dist/adapters/codexModels.d.ts.map +1 -0
- package/dist/adapters/codexModels.js +195 -0
- package/dist/adapters/codexModels.js.map +1 -0
- package/dist/adapters/codexResponses.d.ts +97 -0
- package/dist/adapters/codexResponses.d.ts.map +1 -0
- package/dist/adapters/codexResponses.js +302 -0
- package/dist/adapters/codexResponses.js.map +1 -0
- package/dist/adapters/gpt.d.ts.map +1 -1
- package/dist/adapters/gpt.js +20 -120
- package/dist/adapters/gpt.js.map +1 -1
- package/dist/adapters/index.d.ts +10 -2
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +19 -5
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/lmstudio.d.ts +8 -0
- package/dist/adapters/lmstudio.d.ts.map +1 -0
- package/dist/adapters/lmstudio.js +41 -0
- package/dist/adapters/lmstudio.js.map +1 -0
- package/dist/adapters/local.d.ts +16 -1
- package/dist/adapters/local.d.ts.map +1 -1
- package/dist/adapters/local.js +51 -127
- package/dist/adapters/local.js.map +1 -1
- package/dist/adapters/openrouter.d.ts +37 -0
- package/dist/adapters/openrouter.d.ts.map +1 -0
- package/dist/adapters/openrouter.js +193 -0
- package/dist/adapters/openrouter.js.map +1 -0
- package/dist/adapters/resultParsing.d.ts +6 -0
- package/dist/adapters/resultParsing.d.ts.map +1 -0
- package/dist/adapters/resultParsing.js +139 -0
- package/dist/adapters/resultParsing.js.map +1 -0
- package/dist/adapters/tools.d.ts +21 -2
- package/dist/adapters/tools.d.ts.map +1 -1
- package/dist/adapters/tools.js +153 -12
- package/dist/adapters/tools.js.map +1 -1
- package/dist/adapters/types.d.ts +40 -1
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/adapters/webTools.d.ts +9 -0
- package/dist/adapters/webTools.d.ts.map +1 -0
- package/dist/adapters/webTools.js +195 -0
- package/dist/adapters/webTools.js.map +1 -0
- package/dist/agents/draftAnalyzer.d.ts +1 -1
- package/dist/agents/draftAnalyzer.d.ts.map +1 -1
- package/dist/agents/draftAnalyzer.js +3 -3
- package/dist/agents/draftAnalyzer.js.map +1 -1
- package/dist/agents/pairPipeline.d.ts +26 -1
- package/dist/agents/pairPipeline.d.ts.map +1 -1
- package/dist/agents/pairPipeline.js +184 -17
- package/dist/agents/pairPipeline.js.map +1 -1
- package/dist/agents/reflection.d.ts +56 -0
- package/dist/agents/reflection.d.ts.map +1 -0
- package/dist/agents/reflection.js +120 -0
- package/dist/agents/reflection.js.map +1 -0
- package/dist/agents/worker.d.ts +8 -0
- package/dist/agents/worker.d.ts.map +1 -1
- package/dist/agents/worker.js +23 -2
- package/dist/agents/worker.js.map +1 -1
- package/dist/auth/index.d.ts +3 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +3 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/linearPkce.d.ts +22 -0
- package/dist/auth/linearPkce.d.ts.map +1 -0
- package/dist/auth/linearPkce.js +208 -0
- package/dist/auth/linearPkce.js.map +1 -0
- package/dist/auth/oauthPkce.d.ts +4 -3
- package/dist/auth/oauthPkce.d.ts.map +1 -1
- package/dist/auth/oauthPkce.js +39 -12
- package/dist/auth/oauthPkce.js.map +1 -1
- package/dist/auth/oauthStore.d.ts +11 -1
- package/dist/auth/oauthStore.d.ts.map +1 -1
- package/dist/auth/oauthStore.js +14 -2
- package/dist/auth/oauthStore.js.map +1 -1
- package/dist/auth/openrouterPkce.d.ts +29 -0
- package/dist/auth/openrouterPkce.d.ts.map +1 -0
- package/dist/auth/openrouterPkce.js +222 -0
- package/dist/auth/openrouterPkce.js.map +1 -0
- package/dist/automation/autonomousRunner.d.ts +17 -7
- package/dist/automation/autonomousRunner.d.ts.map +1 -1
- package/dist/automation/autonomousRunner.js +69 -70
- package/dist/automation/autonomousRunner.js.map +1 -1
- package/dist/automation/backlogGrooming.d.ts +21 -0
- package/dist/automation/backlogGrooming.d.ts.map +1 -0
- package/dist/automation/backlogGrooming.js +80 -0
- package/dist/automation/backlogGrooming.js.map +1 -0
- package/dist/automation/localCI.d.ts +24 -0
- package/dist/automation/localCI.d.ts.map +1 -0
- package/dist/automation/localCI.js +84 -0
- package/dist/automation/localCI.js.map +1 -0
- package/dist/automation/runnerExecution.d.ts +33 -7
- package/dist/automation/runnerExecution.d.ts.map +1 -1
- package/dist/automation/runnerExecution.js +202 -154
- package/dist/automation/runnerExecution.js.map +1 -1
- package/dist/automation/runnerTypes.d.ts +5 -1
- package/dist/automation/runnerTypes.d.ts.map +1 -1
- package/dist/automation/taskSource.d.ts +101 -0
- package/dist/automation/taskSource.d.ts.map +1 -0
- package/dist/automation/taskSource.js +136 -0
- package/dist/automation/taskSource.js.map +1 -0
- package/dist/automation/workerAuditLog.d.ts +29 -0
- package/dist/automation/workerAuditLog.d.ts.map +1 -0
- package/dist/automation/workerAuditLog.js +82 -0
- package/dist/automation/workerAuditLog.js.map +1 -0
- package/dist/cli/authHandler.d.ts +14 -5
- package/dist/cli/authHandler.d.ts.map +1 -1
- package/dist/cli/authHandler.js +131 -36
- package/dist/cli/authHandler.js.map +1 -1
- package/dist/cli/daemon.d.ts +5 -0
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +13 -0
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/doctorHandler.d.ts +2 -0
- package/dist/cli/doctorHandler.d.ts.map +1 -0
- package/dist/cli/doctorHandler.js +114 -0
- package/dist/cli/doctorHandler.js.map +1 -0
- package/dist/cli/initWizard.d.ts +13 -0
- package/dist/cli/initWizard.d.ts.map +1 -0
- package/dist/cli/initWizard.js +314 -0
- package/dist/cli/initWizard.js.map +1 -0
- package/dist/cli.js +112 -38
- package/dist/cli.js.map +1 -1
- package/dist/core/config.d.ts +89 -15
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +100 -23
- package/dist/core/config.js.map +1 -1
- package/dist/core/envFile.d.ts +6 -0
- package/dist/core/envFile.d.ts.map +1 -1
- package/dist/core/envFile.js +39 -1
- package/dist/core/envFile.js.map +1 -1
- package/dist/core/eventHub.d.ts +22 -0
- package/dist/core/eventHub.d.ts.map +1 -1
- package/dist/core/eventHub.js.map +1 -1
- package/dist/core/providerOverride.d.ts +6 -0
- package/dist/core/providerOverride.d.ts.map +1 -0
- package/dist/core/providerOverride.js +37 -0
- package/dist/core/providerOverride.js.map +1 -0
- package/dist/core/service.d.ts.map +1 -1
- package/dist/core/service.js +43 -20
- package/dist/core/service.js.map +1 -1
- package/dist/core/types.d.ts +16 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/discord/discordCore.d.ts.map +1 -1
- package/dist/discord/discordCore.js +16 -103
- package/dist/discord/discordCore.js.map +1 -1
- package/dist/discord/discordHandlers.d.ts.map +1 -1
- package/dist/discord/discordHandlers.js +15 -12
- package/dist/discord/discordHandlers.js.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/issues/sqliteStore.d.ts.map +1 -1
- package/dist/issues/sqliteStore.js +7 -2
- package/dist/issues/sqliteStore.js.map +1 -1
- package/dist/knowledge/scanner.d.ts.map +1 -1
- package/dist/knowledge/scanner.js +5 -0
- package/dist/knowledge/scanner.js.map +1 -1
- package/dist/linear/linear.d.ts +45 -2
- package/dist/linear/linear.d.ts.map +1 -1
- package/dist/linear/linear.js +154 -3
- package/dist/linear/linear.js.map +1 -1
- package/dist/locale/prompts/en.d.ts.map +1 -1
- package/dist/locale/prompts/en.js +40 -20
- package/dist/locale/prompts/en.js.map +1 -1
- package/dist/locale/prompts/ko.d.ts.map +1 -1
- package/dist/locale/prompts/ko.js +39 -20
- package/dist/locale/prompts/ko.js.map +1 -1
- package/dist/locale/types.d.ts +6 -0
- package/dist/locale/types.d.ts.map +1 -1
- package/dist/mcp/mcpClient.d.ts +27 -0
- package/dist/mcp/mcpClient.d.ts.map +1 -0
- package/dist/mcp/mcpClient.js +145 -0
- package/dist/mcp/mcpClient.js.map +1 -0
- package/dist/memory/memoryCore.d.ts.map +1 -1
- package/dist/memory/memoryCore.js +8 -2
- package/dist/memory/memoryCore.js.map +1 -1
- package/dist/memory/repoKnowledge.d.ts +33 -0
- package/dist/memory/repoKnowledge.d.ts.map +1 -0
- package/dist/memory/repoKnowledge.js +97 -0
- package/dist/memory/repoKnowledge.js.map +1 -0
- package/dist/notify/notifier.d.ts +26 -0
- package/dist/notify/notifier.d.ts.map +1 -0
- package/dist/notify/notifier.js +131 -0
- package/dist/notify/notifier.js.map +1 -0
- package/dist/orchestration/conflictDetector.d.ts +5 -2
- package/dist/orchestration/conflictDetector.d.ts.map +1 -1
- package/dist/orchestration/conflictDetector.js +35 -6
- package/dist/orchestration/conflictDetector.js.map +1 -1
- package/dist/orchestration/decisionEngine.d.ts +20 -0
- package/dist/orchestration/decisionEngine.d.ts.map +1 -1
- package/dist/orchestration/decisionEngine.js +45 -0
- package/dist/orchestration/decisionEngine.js.map +1 -1
- package/dist/support/banner.d.ts +7 -0
- package/dist/support/banner.d.ts.map +1 -0
- package/dist/support/banner.js +32 -0
- package/dist/support/banner.js.map +1 -0
- package/dist/support/chat.js +36 -27
- package/dist/support/chat.js.map +1 -1
- package/dist/support/chatBackend.d.ts +6 -0
- package/dist/support/chatBackend.d.ts.map +1 -1
- package/dist/support/chatBackend.js +105 -83
- package/dist/support/chatBackend.js.map +1 -1
- package/dist/support/chatTui.d.ts.map +1 -1
- package/dist/support/chatTui.js +217 -27
- package/dist/support/chatTui.js.map +1 -1
- package/dist/support/colors.d.ts +15 -0
- package/dist/support/colors.d.ts.map +1 -0
- package/dist/support/colors.js +23 -0
- package/dist/support/colors.js.map +1 -0
- package/dist/support/dashboardHtml.d.ts +1 -1
- package/dist/support/dashboardHtml.d.ts.map +1 -1
- package/dist/support/dashboardHtml.js +318 -65
- package/dist/support/dashboardHtml.js.map +1 -1
- package/dist/support/planCommand.d.ts +17 -0
- package/dist/support/planCommand.d.ts.map +1 -0
- package/dist/support/planCommand.js +114 -0
- package/dist/support/planCommand.js.map +1 -0
- package/dist/support/planner.d.ts +9 -2
- package/dist/support/planner.d.ts.map +1 -1
- package/dist/support/planner.js +43 -111
- package/dist/support/planner.js.map +1 -1
- package/dist/support/projectMapper.d.ts.map +1 -1
- package/dist/support/projectMapper.js +29 -1
- package/dist/support/projectMapper.js.map +1 -1
- package/dist/support/promptHelper.d.ts +24 -0
- package/dist/support/promptHelper.d.ts.map +1 -0
- package/dist/support/promptHelper.js +94 -0
- package/dist/support/promptHelper.js.map +1 -0
- package/dist/support/rateLimiter.d.ts.map +1 -1
- package/dist/support/rateLimiter.js +6 -0
- package/dist/support/rateLimiter.js.map +1 -1
- package/dist/support/repoMetadata.d.ts +51 -0
- package/dist/support/repoMetadata.d.ts.map +1 -0
- package/dist/support/repoMetadata.js +91 -0
- package/dist/support/repoMetadata.js.map +1 -0
- package/dist/support/web.d.ts.map +1 -1
- package/dist/support/web.js +196 -71
- package/dist/support/web.js.map +1 -1
- package/dist/support/worktreeManager.d.ts +6 -1
- package/dist/support/worktreeManager.d.ts.map +1 -1
- package/dist/support/worktreeManager.js +23 -1
- package/dist/support/worktreeManager.js.map +1 -1
- package/dist/taskState/store.d.ts +1 -0
- package/dist/taskState/store.d.ts.map +1 -1
- package/dist/taskState/store.js +22 -1
- package/dist/taskState/store.js.map +1 -1
- package/package.json +3 -1
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import { writeFile, unlink } from 'node:fs/promises';
|
|
3
|
-
import { getAdapter } from '../adapters/index.js';
|
|
4
|
-
import { getDefaultAdapterName } from '../adapters/index.js';
|
|
5
|
-
import { extractResultFromStreamJson } from '../agents/cliStreamParser.js';
|
|
6
|
-
import { extractCostFromStreamJson } from './costTracker.js';
|
|
3
|
+
import { getAdapter, getDefaultAdapterName } from '../adapters/index.js';
|
|
7
4
|
export const CHAT_MODEL_ALIASES = {
|
|
8
|
-
claude: {
|
|
9
|
-
sonnet: 'claude-sonnet-4-5-20250929',
|
|
10
|
-
haiku: 'claude-haiku-4-5-20251001',
|
|
11
|
-
opus: 'claude-opus-4-6',
|
|
12
|
-
},
|
|
13
5
|
codex: {
|
|
14
6
|
codex: 'gpt-5-codex',
|
|
15
7
|
gpt5: 'gpt-5-codex',
|
|
16
8
|
gpt5codex: 'gpt-5-codex',
|
|
17
9
|
},
|
|
10
|
+
'codex-responses': {
|
|
11
|
+
// Codex backend tiers (see `openswarm auth models` for the live list).
|
|
12
|
+
big: 'gpt-5.5',
|
|
13
|
+
medium: 'gpt-5.4',
|
|
14
|
+
small: 'gpt-5.4-mini',
|
|
15
|
+
codex: 'gpt-5.3-codex',
|
|
16
|
+
},
|
|
18
17
|
gpt: {
|
|
19
18
|
'gpt-4o': 'gpt-4o',
|
|
20
19
|
'o3': 'o3',
|
|
@@ -35,6 +34,22 @@ export const CHAT_MODEL_ALIASES = {
|
|
|
35
34
|
'phi': 'phi4:latest',
|
|
36
35
|
'starcoder': 'starcoder2:7b',
|
|
37
36
|
},
|
|
37
|
+
lmstudio: {
|
|
38
|
+
local: process.env.LMSTUDIO_MODEL ?? 'local-model',
|
|
39
|
+
lmstudio: process.env.LMSTUDIO_MODEL ?? 'local-model',
|
|
40
|
+
},
|
|
41
|
+
openrouter: {
|
|
42
|
+
// Short aliases — full IDs (e.g. 'anthropic/claude-sonnet-4') pass through unchanged.
|
|
43
|
+
sonnet: 'anthropic/claude-sonnet-4',
|
|
44
|
+
opus: 'anthropic/claude-opus-4',
|
|
45
|
+
haiku: 'anthropic/claude-haiku-4-5',
|
|
46
|
+
'gpt-4o': 'openai/gpt-4o',
|
|
47
|
+
'gpt-5': 'openai/gpt-5',
|
|
48
|
+
'o4-mini': 'openai/o4-mini',
|
|
49
|
+
gemini: 'google/gemini-2.5-pro',
|
|
50
|
+
kimi: 'moonshotai/kimi-k2',
|
|
51
|
+
glm: 'z-ai/glm-4.6',
|
|
52
|
+
},
|
|
38
53
|
};
|
|
39
54
|
export function inferProviderFromModel(model) {
|
|
40
55
|
if (!model)
|
|
@@ -43,19 +58,27 @@ export function inferProviderFromModel(model) {
|
|
|
43
58
|
return 'codex';
|
|
44
59
|
if (model.startsWith('gpt-') || model.startsWith('o3') || model.startsWith('o4'))
|
|
45
60
|
return 'gpt';
|
|
61
|
+
if (model.includes('/'))
|
|
62
|
+
return 'openrouter';
|
|
46
63
|
// 로컬 모델 패턴: ollama 태그 형식 (name:tag) 또는 알려진 오픈소스 모델
|
|
47
64
|
if (model.includes(':') || /^(gemma|llama|mistral|codestral|qwen|deepseek|phi|starcoder)/i.test(model))
|
|
48
65
|
return 'local';
|
|
49
|
-
return
|
|
66
|
+
return getDefaultAdapterName();
|
|
50
67
|
}
|
|
51
68
|
export function getDefaultChatModel(provider) {
|
|
52
69
|
if (provider === 'codex')
|
|
53
70
|
return 'gpt-5-codex';
|
|
71
|
+
if (provider === 'codex-responses')
|
|
72
|
+
return 'gpt-5.5';
|
|
54
73
|
if (provider === 'gpt')
|
|
55
74
|
return 'gpt-4o';
|
|
56
75
|
if (provider === 'local')
|
|
57
76
|
return 'gemma3:4b';
|
|
58
|
-
|
|
77
|
+
if (provider === 'lmstudio')
|
|
78
|
+
return process.env.LMSTUDIO_MODEL ?? 'local-model';
|
|
79
|
+
if (provider === 'openrouter')
|
|
80
|
+
return 'openai/gpt-5';
|
|
81
|
+
return 'gpt-5-codex';
|
|
59
82
|
}
|
|
60
83
|
export function resolveChatModel(input, provider) {
|
|
61
84
|
if (!input)
|
|
@@ -64,16 +87,75 @@ export function resolveChatModel(input, provider) {
|
|
|
64
87
|
return alias || input;
|
|
65
88
|
}
|
|
66
89
|
export function shortenChatModel(model) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
90
|
+
// OpenRouter: "anthropic/claude-sonnet-4" → "claude-sonnet-4"
|
|
91
|
+
if (model.includes('/'))
|
|
92
|
+
return model.split('/').pop() ?? model;
|
|
70
93
|
return model;
|
|
71
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* API-based adapters (gpt/openrouter/local/codex-responses) execute via run(),
|
|
97
|
+
* not a shell — their buildCommand is a stub, so spawning it returns nothing
|
|
98
|
+
* ("No response"). Route chat through run() as a plain, tool-free single turn.
|
|
99
|
+
*/
|
|
100
|
+
async function runChatViaAdapter(adapter, provider, model, cwd, options) {
|
|
101
|
+
// run() adapters take the prompt as TEXT (it becomes the agentic-loop user
|
|
102
|
+
// message) — unlike the codex CLI path, which treats options.prompt as a file
|
|
103
|
+
// path to `cat`. Pass the message text directly.
|
|
104
|
+
//
|
|
105
|
+
// chat runs as a tool-using coding agent: file/bash/web tools enabled, multi-turn,
|
|
106
|
+
// so it can actually read/edit/run in the working directory. Tokens stream via
|
|
107
|
+
// onToken; tool executions surface through onLog.
|
|
108
|
+
// Expose any MCP servers configured in ~/.openswarm/mcp.json as tools (cached).
|
|
109
|
+
const { getMcpTools } = await import('../mcp/mcpClient.js');
|
|
110
|
+
const mcpTools = await getMcpTools().catch(() => []);
|
|
111
|
+
let streamed = false;
|
|
112
|
+
const raw = await adapter.run({
|
|
113
|
+
prompt: options.prompt,
|
|
114
|
+
cwd,
|
|
115
|
+
model,
|
|
116
|
+
systemPrompt: 'You are a capable coding assistant operating in the user\'s current working directory, with tools to ' +
|
|
117
|
+
'read/search/edit/create files, run shell commands, and call configured MCP server tools (named `server__tool`). ' +
|
|
118
|
+
'Work like a thoughtful pair programmer who thinks out loud. Before each tool call, write one short sentence ' +
|
|
119
|
+
'saying what you are about to do and why (e.g. "To find where X is defined, I\'ll search the source."). After a ' +
|
|
120
|
+
'tool returns, briefly note what you found and your next step, then continue. Actually use the tools to perform ' +
|
|
121
|
+
'the task — never just describe it. Keep narration to a sentence or two between actions, not essays. ' +
|
|
122
|
+
'For a trivial question with no task, just answer directly without tools.',
|
|
123
|
+
enableTools: true,
|
|
124
|
+
webTools: true,
|
|
125
|
+
mcpTools,
|
|
126
|
+
// A high safety ceiling, not a task limit — normal work ends when the model
|
|
127
|
+
// stops calling tools; the progress-based stop catches stuck loops earlier.
|
|
128
|
+
maxTurns: options.maxTurns ?? 80,
|
|
129
|
+
timeoutMs: options.timeoutMs ?? 300000,
|
|
130
|
+
// Stream tokens live when the adapter supports it (codex-responses / chat
|
|
131
|
+
// completions); the chat TUI renders each delta as it arrives.
|
|
132
|
+
onToken: options.onText
|
|
133
|
+
? (delta) => {
|
|
134
|
+
streamed = true;
|
|
135
|
+
options.onText(delta, false);
|
|
136
|
+
}
|
|
137
|
+
: undefined,
|
|
138
|
+
// Tool executions (🔧 …) surface to the chat UI.
|
|
139
|
+
onLog: options.onLog,
|
|
140
|
+
signal: options.signal,
|
|
141
|
+
});
|
|
142
|
+
if (raw.exitCode !== 0 && !raw.stdout.trim()) {
|
|
143
|
+
throw new Error(raw.stderr.trim() || `${provider} exited with code ${raw.exitCode}`);
|
|
144
|
+
}
|
|
145
|
+
const text = raw.stdout.trim();
|
|
146
|
+
// Non-streaming adapters emit nothing via onToken — flush the full reply once.
|
|
147
|
+
if (!streamed)
|
|
148
|
+
options.onText?.(text, false);
|
|
149
|
+
return { response: text || '[No response]', provider, model };
|
|
150
|
+
}
|
|
72
151
|
export async function runChatCompletion(options) {
|
|
73
152
|
const provider = options.provider ?? inferProviderFromModel(options.model);
|
|
74
153
|
const model = resolveChatModel(options.model, provider);
|
|
75
154
|
const adapter = getAdapter(provider);
|
|
76
155
|
const cwd = options.cwd ?? process.cwd();
|
|
156
|
+
if (typeof adapter.run === 'function') {
|
|
157
|
+
return runChatViaAdapter(adapter, provider, model, cwd, options);
|
|
158
|
+
}
|
|
77
159
|
const promptFile = `/tmp/openswarm-chat-${Date.now()}.txt`;
|
|
78
160
|
await writeFile(promptFile, options.prompt);
|
|
79
161
|
try {
|
|
@@ -116,29 +198,13 @@ export async function runChatCompletion(options) {
|
|
|
116
198
|
continue;
|
|
117
199
|
try {
|
|
118
200
|
const event = JSON.parse(line);
|
|
119
|
-
if (
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
if (event.type === 'assistant' && event.message?.content) {
|
|
124
|
-
for (const block of event.message.content) {
|
|
125
|
-
if (block.type === 'text' && block.text) {
|
|
126
|
-
startedStreaming = true;
|
|
127
|
-
options.onText?.(block.text, false);
|
|
128
|
-
resetThinkingTimer();
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
201
|
+
if (event.type === 'item.completed' && event.item?.type === 'agent_message' && typeof event.item.text === 'string') {
|
|
202
|
+
startedStreaming = true;
|
|
203
|
+
options.onText?.(event.item.text, false);
|
|
204
|
+
resetThinkingTimer();
|
|
132
205
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
startedStreaming = true;
|
|
136
|
-
options.onText?.(event.item.text, false);
|
|
137
|
-
resetThinkingTimer();
|
|
138
|
-
}
|
|
139
|
-
if (event.type === 'item.completed' && event.item?.type === 'reasoning') {
|
|
140
|
-
options.onText?.('', true);
|
|
141
|
-
}
|
|
206
|
+
if (event.type === 'item.completed' && event.item?.type === 'reasoning') {
|
|
207
|
+
options.onText?.('', true);
|
|
142
208
|
}
|
|
143
209
|
}
|
|
144
210
|
catch {
|
|
@@ -171,11 +237,9 @@ export async function runChatCompletion(options) {
|
|
|
171
237
|
reject(new Error(stderr.trim() || `${provider} exited with code ${code}`));
|
|
172
238
|
return;
|
|
173
239
|
}
|
|
174
|
-
const response =
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
const cost = provider === 'claude' ? extractCostFromStreamJson(stdout)?.costUsd : undefined;
|
|
178
|
-
const tokens = provider === 'claude' ? extractClaudeTokens(stdout) : undefined;
|
|
240
|
+
const response = extractCodexChatResponse(stdout);
|
|
241
|
+
const cost = undefined;
|
|
242
|
+
const tokens = undefined;
|
|
179
243
|
resolve({
|
|
180
244
|
response: response || '[No response]',
|
|
181
245
|
provider,
|
|
@@ -203,31 +267,6 @@ export async function runChatCompletion(options) {
|
|
|
203
267
|
}
|
|
204
268
|
}
|
|
205
269
|
}
|
|
206
|
-
function extractClaudeChatResponse(stdout) {
|
|
207
|
-
const resultText = extractResultFromStreamJson(stdout);
|
|
208
|
-
if (resultText?.trim())
|
|
209
|
-
return resultText.trim();
|
|
210
|
-
const assistantTexts = [];
|
|
211
|
-
for (const line of stdout.split('\n')) {
|
|
212
|
-
const trimmed = line.trim();
|
|
213
|
-
if (!trimmed)
|
|
214
|
-
continue;
|
|
215
|
-
try {
|
|
216
|
-
const event = JSON.parse(trimmed);
|
|
217
|
-
if (event.type === 'assistant' && event.message?.content) {
|
|
218
|
-
for (const block of event.message.content) {
|
|
219
|
-
if (block.type === 'text' && block.text?.trim()) {
|
|
220
|
-
assistantTexts.push(block.text.trim());
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
catch {
|
|
226
|
-
// Ignore malformed lines.
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
return assistantTexts.join('\n\n').trim();
|
|
230
|
-
}
|
|
231
270
|
function extractCodexChatResponse(stdout) {
|
|
232
271
|
let lastMessage = '';
|
|
233
272
|
for (const line of stdout.split('\n')) {
|
|
@@ -246,21 +285,4 @@ function extractCodexChatResponse(stdout) {
|
|
|
246
285
|
}
|
|
247
286
|
return lastMessage;
|
|
248
287
|
}
|
|
249
|
-
function extractClaudeTokens(stdout) {
|
|
250
|
-
for (const line of stdout.split('\n')) {
|
|
251
|
-
const trimmed = line.trim();
|
|
252
|
-
if (!trimmed)
|
|
253
|
-
continue;
|
|
254
|
-
try {
|
|
255
|
-
const event = JSON.parse(trimmed);
|
|
256
|
-
if (event.type === 'result') {
|
|
257
|
-
return (event.input_tokens ?? 0) + (event.output_tokens ?? 0);
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
catch {
|
|
261
|
-
// Ignore malformed lines.
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
return undefined;
|
|
265
|
-
}
|
|
266
288
|
//# sourceMappingURL=chatBackend.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatBackend.js","sourceRoot":"","sources":["../../src/support/chatBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"chatBackend.js","sourceRoot":"","sources":["../../src/support/chatBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AA2BzE,MAAM,CAAC,MAAM,kBAAkB,GAAgD;IAC7E,KAAK,EAAE;QACL,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,aAAa;KACzB;IACD,iBAAiB,EAAE;QACjB,uEAAuE;QACvE,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,eAAe;KACvB;IACD,GAAG,EAAE;QACH,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,SAAS;KACrB;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,WAAW;QACrB,YAAY,EAAE,WAAW;QACzB,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,iBAAiB;QAC3B,OAAO,EAAE,iBAAiB;QAC1B,SAAS,EAAE,gBAAgB;QAC3B,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EAAE,kBAAkB;QAC1B,YAAY,EAAE,kBAAkB;QAChC,UAAU,EAAE,0BAA0B;QACtC,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,eAAe;KAC7B;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa;QAClD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa;KACtD;IACD,UAAU,EAAE;QACV,sFAAsF;QACtF,MAAM,EAAE,2BAA2B;QACnC,IAAI,EAAE,yBAAyB;QAC/B,KAAK,EAAE,4BAA4B;QACnC,QAAQ,EAAE,eAAe;QACzB,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,gBAAgB;QAC3B,MAAM,EAAE,uBAAuB;QAC/B,IAAI,EAAE,oBAAoB;QAC1B,GAAG,EAAE,cAAc;KACpB;CACF,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,qBAAqB,EAAE,CAAC;IAC3C,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC5C,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/F,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IAC7C,mDAAmD;IACnD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,+DAA+D,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACvH,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAqB;IACvD,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,aAAa,CAAC;IAC/C,IAAI,QAAQ,KAAK,iBAAiB;QAAE,OAAO,SAAS,CAAC;IACrD,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,QAAQ,CAAC;IACxC,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC;IAC7C,IAAI,QAAQ,KAAK,UAAU;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa,CAAC;IAChF,IAAI,QAAQ,KAAK,YAAY;QAAE,OAAO,cAAc,CAAC;IACrD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAyB,EAAE,QAAqB;IAC/E,IAAI,CAAC,KAAK;QAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAChE,OAAO,KAAK,IAAI,KAAK,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,8DAA8D;IAC9D,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC;IAChE,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,iBAAiB,CAC9B,OAAsC,EACtC,QAAqB,EACrB,KAAa,EACb,GAAW,EACX,OAA8B;IAE9B,2EAA2E;IAC3E,8EAA8E;IAC9E,iDAAiD;IACjD,EAAE;IACF,mFAAmF;IACnF,+EAA+E;IAC/E,kDAAkD;IAClD,gFAAgF;IAChF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAErD,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAI,CAAC;QAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG;QACH,KAAK;QACL,YAAY,EACV,uGAAuG;YACvG,kHAAkH;YAClH,8GAA8G;YAC9G,iHAAiH;YACjH,iHAAiH;YACjH,sGAAsG;YACtG,0EAA0E;QAC5E,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI;QACd,QAAQ;QACR,4EAA4E;QAC5E,4EAA4E;QAC5E,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM;QACtC,0EAA0E;QAC1E,+DAA+D;QAC/D,OAAO,EAAE,OAAO,CAAC,MAAM;YACrB,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;gBACR,QAAQ,GAAG,IAAI,CAAC;gBAChB,OAAO,CAAC,MAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC;YACH,CAAC,CAAC,SAAS;QACb,iDAAiD;QACjD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,qBAAqB,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/B,+EAA+E;IAC/E,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA8B;IACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEzC,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,UAAU,GAAG,uBAAuB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAC3D,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;YAC7C,MAAM,EAAE,UAAU;YAClB,GAAG;YACH,KAAK;SACN,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEzC,OAAO,MAAM,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACjE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE;gBACtB,KAAK,EAAE,IAAI;gBACX,GAAG;gBACH,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;aAClC,CAAC,CAAC;YAEH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,iBAAiB,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;YAChD,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,IAAI,aAAa,GAA0B,IAAI,CAAC;YAChD,IAAI,OAAO,GAA0B,IAAI,CAAC;YAE1C,MAAM,kBAAkB,GAAG,GAAG,EAAE;gBAC9B,IAAI,CAAC,OAAO,CAAC,MAAM;oBAAE,OAAO;gBAC5B,IAAI,aAAa;oBAAE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/C,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC9B,IAAI,gBAAgB;wBAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBACnD,CAAC,EAAE,IAAI,CAAC,CAAC;YACX,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG,KAAK,EAAE,EAAE;gBACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;oBACvE,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;oBACxB,IAAI,CAAC,IAAI;wBAAE,SAAS;oBACpB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,eAAe,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACnH,gBAAgB,GAAG,IAAI,CAAC;4BACxB,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;4BACzC,kBAAkB,EAAE,CAAC;wBACvB,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;4BACxE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;wBAC7B,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,0BAA0B;oBAC5B,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC9B,MAAM,IAAI,IAAI,CAAC;gBACf,MAAM,IAAI,IAAI,CAAC;gBACf,UAAU,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBACxB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrB,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBAC7C,CAAC,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;YAClC,CAAC;YAED,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,OAAO;oBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,aAAa;oBAAE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/C,UAAU,CAAC,IAAI,CAAC,CAAC;gBAEjB,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC3E,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;gBAClD,MAAM,IAAI,GAAG,SAAS,CAAC;gBACvB,MAAM,MAAM,GAAG,SAAS,CAAC;gBAEzB,OAAO,CAAC;oBACN,QAAQ,EAAE,QAAQ,IAAI,eAAe;oBACrC,QAAQ;oBACR,KAAK;oBACL,SAAS,EAAE,iBAAiB,IAAI,SAAS;oBACzC,IAAI;oBACJ,MAAM;iBACP,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,IAAI,OAAO;oBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,aAAa;oBAAE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/C,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAc;IAC9C,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,eAAe,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnH,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatTui.d.ts","sourceRoot":"","sources":["../../src/support/chatTui.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"chatTui.d.ts","sourceRoot":"","sources":["../../src/support/chatTui.ts"],"names":[],"mappings":";AA+tCA,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAyN1C"}
|