@monoes/monomindcli 2.10.10 → 2.10.14
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/.claude/commands/mastermind/brain.md +14 -14
- package/.claude/commands/mastermind/help.md +2 -2
- package/.claude/commands/mastermind/master.md +24 -19
- package/.claude/commands/mastermind/memory.md +8 -8
- package/.claude/commands/mastermind/monoswarm.md +4 -4
- package/.claude/commands/mastermind.md +7 -7
- package/.claude/commands/truth/start.md +3 -3
- package/.claude/helpers/handlers/gates-handler.cjs +13 -1
- package/.claude/skills/mastermind/SKILL.md +7 -16
- package/.claude/skills/mastermind-debug/SKILL.md +3 -3
- package/.claude/skills/mastermind-design/SKILL.md +2 -0
- package/.claude/skills/mastermind-execute/SKILL.md +66 -11
- package/.claude/skills/mastermind-idea/SKILL.md +9 -2
- package/.claude/skills/mastermind-intake/SKILL.md +31 -7
- package/.claude/skills/mastermind-issue-detail/SKILL.md +70 -16
- package/.claude/skills/mastermind-issues/SKILL.md +111 -16
- package/.claude/skills/mastermind-liveness/SKILL.md +96 -26
- package/.claude/skills/mastermind-my-issues/SKILL.md +40 -8
- package/.claude/skills/mastermind-org/SKILL.md +2 -0
- package/.claude/skills/mastermind-plan/SKILL.md +7 -16
- package/.claude/skills/mastermind-plan-to-tasks/SKILL.md +132 -24
- package/.claude/skills/mastermind-protocol/SKILL.md +33 -22
- package/.claude/skills/mastermind-runorg/SKILL.md +22 -3
- package/.claude/skills/mastermind-skill-builder/SKILL.md +1 -1
- package/.claude/skills/mastermind-tasks/SKILL.md +5 -0
- package/.claude/skills/mastermind-techport/SKILL.md +1 -1
- package/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +56 -15
- package/.claude/skills/performance-analysis/SKILL.md +1 -1
- package/.claude/skills/verification-quality/SKILL.md +2 -3
- package/README.md +2 -2
- package/dist/src/commands/doc.js +2 -2
- package/dist/src/commands/doc.js.map +1 -1
- package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
- package/dist/src/commands/doctor-project-checks.js +45 -2
- package/dist/src/commands/doctor-project-checks.js.map +1 -1
- package/dist/src/commands/memory-crud.d.ts.map +1 -1
- package/dist/src/commands/memory-crud.js +13 -2
- package/dist/src/commands/memory-crud.js.map +1 -1
- package/dist/src/commands/memory.js +1 -1
- package/dist/src/commands/memory.js.map +1 -1
- package/dist/src/commands/monograph.d.ts.map +1 -1
- package/dist/src/commands/monograph.js +11 -4
- package/dist/src/commands/monograph.js.map +1 -1
- package/dist/src/commands/org-observe.d.ts.map +1 -1
- package/dist/src/commands/org-observe.js +56 -6
- package/dist/src/commands/org-observe.js.map +1 -1
- package/dist/src/commands/org.d.ts +26 -0
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +144 -28
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +10 -9
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/settings-generator.d.ts.map +1 -1
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/upgrade.d.ts.map +1 -1
- package/dist/src/init/upgrade.js +29 -0
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/init/write-codex.d.ts.map +1 -1
- package/dist/src/init/write-codex.js.map +1 -1
- package/dist/src/knowledge/document-pipeline.d.ts +5 -0
- package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
- package/dist/src/knowledge/document-pipeline.js +32 -16
- package/dist/src/knowledge/document-pipeline.js.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.d.ts +9 -0
- package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.js +12 -1
- package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
- package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/knowledge-tools.js +105 -13
- package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.d.ts +13 -0
- package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +257 -31
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/monograph/health-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/monograph/health-tools.js +99 -42
- package/dist/src/mcp-tools/monograph/health-tools.js.map +1 -1
- package/dist/src/mcp-tools/monograph/impact-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/monograph/impact-tools.js +123 -51
- package/dist/src/mcp-tools/monograph/impact-tools.js.map +1 -1
- package/dist/src/mcp-tools/monograph/query-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/monograph/query-tools.js +113 -96
- package/dist/src/mcp-tools/monograph/query-tools.js.map +1 -1
- package/dist/src/mcp-tools/monograph/shared.d.ts +37 -4
- package/dist/src/mcp-tools/monograph/shared.d.ts.map +1 -1
- package/dist/src/mcp-tools/monograph/shared.js +75 -56
- package/dist/src/mcp-tools/monograph/shared.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +60 -1
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +172 -42
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-kg.d.ts +495 -28
- package/dist/src/memory/memory-kg.d.ts.map +1 -1
- package/dist/src/memory/memory-kg.js +2186 -251
- package/dist/src/memory/memory-kg.js.map +1 -1
- package/dist/src/memory/query-router.d.ts +51 -0
- package/dist/src/memory/query-router.d.ts.map +1 -1
- package/dist/src/memory/query-router.js +38 -2
- package/dist/src/memory/query-router.js.map +1 -1
- package/dist/src/orgrt/agent-exec.d.ts.map +1 -1
- package/dist/src/orgrt/agent-exec.js +7 -0
- package/dist/src/orgrt/agent-exec.js.map +1 -1
- package/dist/src/orgrt/agent-runner.d.ts +26 -1
- package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
- package/dist/src/orgrt/agent-runner.js +73 -22
- package/dist/src/orgrt/agent-runner.js.map +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
- package/dist/src/orgrt/antigravity-runner.js +36 -19
- package/dist/src/orgrt/antigravity-runner.js.map +1 -1
- package/dist/src/orgrt/approvals.d.ts +26 -2
- package/dist/src/orgrt/approvals.d.ts.map +1 -1
- package/dist/src/orgrt/approvals.js +67 -7
- package/dist/src/orgrt/approvals.js.map +1 -1
- package/dist/src/orgrt/broker.d.ts +21 -2
- package/dist/src/orgrt/broker.d.ts.map +1 -1
- package/dist/src/orgrt/broker.js +56 -8
- package/dist/src/orgrt/broker.js.map +1 -1
- package/dist/src/orgrt/bus.d.ts +8 -0
- package/dist/src/orgrt/bus.d.ts.map +1 -1
- package/dist/src/orgrt/bus.js +27 -0
- package/dist/src/orgrt/bus.js.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.js +15 -5
- package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
- package/dist/src/orgrt/checkpoint.d.ts +42 -4
- package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint.js +75 -4
- package/dist/src/orgrt/checkpoint.js.map +1 -1
- package/dist/src/orgrt/codex-runner.d.ts +1 -1
- package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
- package/dist/src/orgrt/codex-runner.js +50 -23
- package/dist/src/orgrt/codex-runner.js.map +1 -1
- package/dist/src/orgrt/copilot-runner.d.ts +24 -2
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
- package/dist/src/orgrt/copilot-runner.js +257 -157
- package/dist/src/orgrt/copilot-runner.js.map +1 -1
- package/dist/src/orgrt/cross-org.d.ts +10 -3
- package/dist/src/orgrt/cross-org.d.ts.map +1 -1
- package/dist/src/orgrt/cross-org.js +225 -10
- package/dist/src/orgrt/cross-org.js.map +1 -1
- package/dist/src/orgrt/crush-runner.d.ts +22 -2
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
- package/dist/src/orgrt/crush-runner.js +227 -120
- package/dist/src/orgrt/crush-runner.js.map +1 -1
- package/dist/src/orgrt/daemon.d.ts +77 -7
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +989 -385
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/decisions.d.ts +2 -2
- package/dist/src/orgrt/decisions.d.ts.map +1 -1
- package/dist/src/orgrt/decisions.js +90 -18
- package/dist/src/orgrt/decisions.js.map +1 -1
- package/dist/src/orgrt/grok-runner.d.ts +29 -3
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
- package/dist/src/orgrt/grok-runner.js +286 -150
- package/dist/src/orgrt/grok-runner.js.map +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts +5 -5
- package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/kimicode-runner.js +53 -32
- package/dist/src/orgrt/kimicode-runner.js.map +1 -1
- package/dist/src/orgrt/mailbox.d.ts +15 -0
- package/dist/src/orgrt/mailbox.d.ts.map +1 -1
- package/dist/src/orgrt/mailbox.js +29 -1
- package/dist/src/orgrt/mailbox.js.map +1 -1
- package/dist/src/orgrt/migrate.d.ts.map +1 -1
- package/dist/src/orgrt/migrate.js +8 -5
- package/dist/src/orgrt/migrate.js.map +1 -1
- package/dist/src/orgrt/opencode-runner.d.ts +1 -1
- package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/opencode-runner.js +29 -3
- package/dist/src/orgrt/opencode-runner.js.map +1 -1
- package/dist/src/orgrt/org-memory.d.ts +19 -3
- package/dist/src/orgrt/org-memory.d.ts.map +1 -1
- package/dist/src/orgrt/org-memory.js +110 -38
- package/dist/src/orgrt/org-memory.js.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.d.ts +3 -1
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.js +35 -3
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/pi-runner.d.ts +25 -2
- package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-runner.js +271 -152
- package/dist/src/orgrt/pi-runner.js.map +1 -1
- package/dist/src/orgrt/policy.d.ts +1 -0
- package/dist/src/orgrt/policy.d.ts.map +1 -1
- package/dist/src/orgrt/policy.js +199 -39
- package/dist/src/orgrt/policy.js.map +1 -1
- package/dist/src/orgrt/provider.d.ts +4 -0
- package/dist/src/orgrt/provider.d.ts.map +1 -1
- package/dist/src/orgrt/provider.js +16 -0
- package/dist/src/orgrt/provider.js.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts +3 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.js +35 -3
- package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/qwen-runner.d.ts +30 -3
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-runner.js +282 -142
- package/dist/src/orgrt/qwen-runner.js.map +1 -1
- package/dist/src/orgrt/role-slot.d.ts +88 -0
- package/dist/src/orgrt/role-slot.d.ts.map +1 -0
- package/dist/src/orgrt/role-slot.js +133 -0
- package/dist/src/orgrt/role-slot.js.map +1 -0
- package/dist/src/orgrt/runtime-options.d.ts +17 -0
- package/dist/src/orgrt/runtime-options.d.ts.map +1 -0
- package/dist/src/orgrt/runtime-options.js +32 -0
- package/dist/src/orgrt/runtime-options.js.map +1 -0
- package/dist/src/orgrt/scheduler-integration.d.ts +11 -0
- package/dist/src/orgrt/scheduler-integration.d.ts.map +1 -1
- package/dist/src/orgrt/scheduler-integration.js +75 -17
- package/dist/src/orgrt/scheduler-integration.js.map +1 -1
- package/dist/src/orgrt/scheduler.d.ts +4 -0
- package/dist/src/orgrt/scheduler.d.ts.map +1 -1
- package/dist/src/orgrt/scheduler.js +7 -1
- package/dist/src/orgrt/scheduler.js.map +1 -1
- package/dist/src/orgrt/server.d.ts +8 -3
- package/dist/src/orgrt/server.d.ts.map +1 -1
- package/dist/src/orgrt/server.js +48 -13
- package/dist/src/orgrt/server.js.map +1 -1
- package/dist/src/orgrt/session.d.ts +26 -2
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +98 -4
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts +5 -0
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +41 -0
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/orgrt/test-loop.js +2 -2
- package/dist/src/orgrt/test-loop.js.map +1 -1
- package/dist/src/orgrt/types.d.ts +14 -2
- package/dist/src/orgrt/types.d.ts.map +1 -1
- package/dist/src/orgrt/types.js +15 -1
- package/dist/src/orgrt/types.js.map +1 -1
- package/dist/src/orgrt/vercel-runner.d.ts.map +1 -1
- package/dist/src/orgrt/vercel-runner.js +4 -0
- package/dist/src/orgrt/vercel-runner.js.map +1 -1
- package/dist/src/ui/routes-org.mjs +27 -7
- package/dist/src/ui/server.mjs +82 -48
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/dist/src/ui/data/mastermind-sessions.json +0 -1
|
@@ -3,13 +3,34 @@
|
|
|
3
3
|
* GrokAgentRunner — AgentRunner impl backed by the Grok Build CLI (`grok`,
|
|
4
4
|
* xAI's agentic coding CLI: https://docs.x.ai/build/cli).
|
|
5
5
|
*
|
|
6
|
-
* Architectural pattern: SAME as CodexAgentRunner/
|
|
7
|
-
* the vendor's CLI binary, parse its NDJSON
|
|
8
|
-
* AgentMessage. No SDK dependency.
|
|
6
|
+
* Architectural pattern: SAME as CodexAgentRunner/AntigravityAgentRunner/
|
|
7
|
+
* KimiCodeAgentRunner — spawn the vendor's CLI binary, parse its NDJSON
|
|
8
|
+
* stream, normalize to AgentMessage. No SDK dependency.
|
|
9
9
|
*
|
|
10
10
|
* Auth: inherited from the CLI's own login flow (subscription/API key
|
|
11
11
|
* managed by `grok` itself). No env vars set by this runner.
|
|
12
12
|
*
|
|
13
|
+
* Streaming / liveness — WHY INCREMENTAL (#204):
|
|
14
|
+
* This runner originally buffered ALL of grok's stdout until the
|
|
15
|
+
* subprocess exited before parsing anything, so any turn longer than
|
|
16
|
+
* session.ts's 4-minute silent-stream watchdog (SILENT_SESSION_MS) yielded
|
|
17
|
+
* zero messages in time — abort, retry, kill, circuit breaker. Same bug
|
|
18
|
+
* class the codex/kimi/antigravity runners had (#204 audit). This runner
|
|
19
|
+
* now parses stdout LINE BY LINE as data arrives: a liveness `tool_use`
|
|
20
|
+
* message is yielded the instant the subprocess spawns (deterministically
|
|
21
|
+
* winning the watchdog's first-pull race regardless of model latency), and
|
|
22
|
+
* each parsed assistant event is yielded as its line lands rather than
|
|
23
|
+
* accumulated until process exit. Unlike codex/agy, grok's guessed wire
|
|
24
|
+
* shapes (see below) carry no distinct "tool execution" event of their
|
|
25
|
+
* own — org tools only ever arrive via the ```tool_call fence protocol —
|
|
26
|
+
* so there is nothing else to forward as tool_use liveness besides the
|
|
27
|
+
* spawn-time yield. Fatal provider errors (auth/quota) are classified via
|
|
28
|
+
* the shared classifyStderr helper (same as kimi/codex/antigravity) and
|
|
29
|
+
* tagged non-retryable. The STARTUP_GRACE_MS first-run-prompt hang
|
|
30
|
+
* detection below is unrelated to #204 (it guards a different failure
|
|
31
|
+
* mode — a stuck interactive trust prompt, not a slow-but-alive turn) and
|
|
32
|
+
* is unchanged by this fix.
|
|
33
|
+
*
|
|
13
34
|
* Org tools (org_send, knowledge_search, ask_human, …) — FENCE PROTOCOL:
|
|
14
35
|
* Same approach as codex/kimi/opencode. Tools are rendered INTO the first
|
|
15
36
|
* prompt; the model emits ```tool_call fences; this runner parses them out
|
|
@@ -29,15 +50,15 @@
|
|
|
29
50
|
* in): grok's `--output-format` has FOUR documented values — `plain`,
|
|
30
51
|
* `json`, `streaming-json` (NDJSON of native ACP session updates), and
|
|
31
52
|
* `streaming-messages-json` (NDJSON in the Anthropic Messages API wire
|
|
32
|
-
* format). This runner uses plain `json`, but
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
* available at fix time, so
|
|
53
|
+
* format). This runner uses plain `json`, but events are parsed as
|
|
54
|
+
* one-JSON-object-per-line (NDJSON) — worth checking live whether `json`
|
|
55
|
+
* actually emits NDJSON, or a single (possibly multi-line-formatted) JSON
|
|
56
|
+
* blob that would break the line-based parser. If it's the latter,
|
|
57
|
+
* `streaming-messages-json` looks like the better fit (NDJSON, and a
|
|
58
|
+
* documented wire format this codebase already knows how to parse
|
|
59
|
+
* elsewhere) — untested, flagging rather than guessing. The exact NDJSON
|
|
60
|
+
* event field names for whichever format is correct were STILL not
|
|
61
|
+
* available at fix time, so event parsing tolerates several plausible
|
|
41
62
|
* shapes (codex-style `item.type === 'agent_message'`, a flat `role:
|
|
42
63
|
* 'assistant'` shape, and a flat `type: 'assistant'`/`'message'` shape)
|
|
43
64
|
* rather than committing to one. Verify against a real XAI_API_KEY and
|
|
@@ -52,6 +73,8 @@
|
|
|
52
73
|
* - stderr is human diagnostics; buffered and surfaced on non-zero exit.
|
|
53
74
|
*/
|
|
54
75
|
import { spawn } from 'node:child_process';
|
|
76
|
+
import { killOnAbort, } from './agent-runner.js';
|
|
77
|
+
import { classifyStderr } from './kimicode-runner.js';
|
|
55
78
|
import { buildToolProtocol, executeToolCall, formatToolResults, MAX_TOOL_ROUNDS, parseToolCalls, TOOL_CALL_RE, } from './tool-fence.js';
|
|
56
79
|
const TURN_TIMEOUT_MS = 2 * 60 * 60 * 1000; // 2 hours, matching the other subprocess runners
|
|
57
80
|
/** Distinct from TURN_TIMEOUT_MS: catches a hung first-run interactive prompt
|
|
@@ -114,8 +137,20 @@ function extractUsage(ev) {
|
|
|
114
137
|
}
|
|
115
138
|
return undefined;
|
|
116
139
|
}
|
|
140
|
+
/** Pull a fatal error message out of a parsed event, tolerating an
|
|
141
|
+
* `error`/`turn.failed` event with either a nested `error.message` or a
|
|
142
|
+
* flat `message` field. */
|
|
143
|
+
function extractError(ev) {
|
|
144
|
+
if (ev.type !== 'error' && ev.type !== 'turn.failed')
|
|
145
|
+
return undefined;
|
|
146
|
+
const errMsg = ev.error?.message ?? ev.message;
|
|
147
|
+
return typeof errMsg === 'string' ? errMsg : undefined;
|
|
148
|
+
}
|
|
117
149
|
/** Pure NDJSON parser — exported so it can be unit tested against fixture
|
|
118
|
-
* lines without spawning the real CLI (see grok-runner.test.ts).
|
|
150
|
+
* lines without spawning the real CLI (see grok-runner.test.ts). The
|
|
151
|
+
* streaming path below (GrokAgentRunner.streamTurn) parses one line at a
|
|
152
|
+
* time via the same extract* helpers, so both share the shape-tolerance
|
|
153
|
+
* logic. */
|
|
119
154
|
export function parseGrokEvents(lines) {
|
|
120
155
|
const rawTexts = [];
|
|
121
156
|
let sessionId;
|
|
@@ -144,11 +179,9 @@ export function parseGrokEvents(lines) {
|
|
|
144
179
|
inputTokens = usage.input;
|
|
145
180
|
outputTokens = usage.output;
|
|
146
181
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
error = errMsg;
|
|
151
|
-
}
|
|
182
|
+
const errMsg = extractError(ev);
|
|
183
|
+
if (errMsg)
|
|
184
|
+
error = errMsg;
|
|
152
185
|
}
|
|
153
186
|
const texts = rawTexts.map((t) => t.replace(TOOL_CALL_RE, '').trim());
|
|
154
187
|
return { texts, rawTexts, sessionId, inputTokens, outputTokens, error };
|
|
@@ -179,31 +212,46 @@ export class GrokAgentRunner {
|
|
|
179
212
|
const promptWithSystem = !sessionId
|
|
180
213
|
? `${args.systemPrompt}${buildToolProtocol(args.tools)}\n\n---\n\n${nextPrompt}`
|
|
181
214
|
: nextPrompt;
|
|
182
|
-
|
|
215
|
+
// Filled in by streamTurn as the subprocess runs and when it exits.
|
|
216
|
+
const outcome = {
|
|
217
|
+
exitCode: 1,
|
|
218
|
+
stderrTail: '',
|
|
219
|
+
timedOut: false,
|
|
220
|
+
hangSuspected: false,
|
|
221
|
+
inputTokens: 0,
|
|
222
|
+
outputTokens: 0,
|
|
223
|
+
};
|
|
224
|
+
// Raw assistant texts (fences intact) for end-of-turn tool-call
|
|
225
|
+
// parsing — fence parsing needs the complete text, so fences are
|
|
226
|
+
// collected here while the stripped prose streams out live below.
|
|
227
|
+
const rawTexts = [];
|
|
228
|
+
for await (const ev of this.streamTurn(bin, promptWithSystem, sessionId, args, outcome)) {
|
|
229
|
+
if (ev.sessionId)
|
|
230
|
+
sessionId = ev.sessionId;
|
|
231
|
+
if (ev.kind === 'assistant' && ev.rawText !== undefined) {
|
|
232
|
+
rawTexts.push(ev.rawText);
|
|
233
|
+
// Yield assistant prose AS IT ARRIVES (per parsed line, not
|
|
234
|
+
// after process exit): a grok turn can run many minutes, and
|
|
235
|
+
// session.ts's watchdog must see messages DURING the turn.
|
|
236
|
+
if (ev.text)
|
|
237
|
+
yield { type: 'assistant', session_id: sessionId, text: ev.text };
|
|
238
|
+
}
|
|
239
|
+
else if (ev.kind === 'tool') {
|
|
240
|
+
// Liveness only (see header) — session.ts never renders
|
|
241
|
+
// tool_use as chat, it only feeds the StateDetector
|
|
242
|
+
// ('tool-call' state) and refreshes last-activity.
|
|
243
|
+
yield { type: 'tool_use', session_id: sessionId, text: ev.toolName };
|
|
244
|
+
}
|
|
245
|
+
}
|
|
183
246
|
if (outcome.sessionId)
|
|
184
247
|
sessionId = outcome.sessionId;
|
|
185
|
-
if (outcome.hangSuspected) {
|
|
186
|
-
throw
|
|
187
|
-
'This usually means it is stuck on a first-run interactive prompt (trust/telemetry gate) ' +
|
|
188
|
-
'that headless mode has no way to answer. Run `grok` once manually in a real terminal in ' +
|
|
189
|
-
`this project to accept any prompts, then retry.${outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''}`);
|
|
190
|
-
}
|
|
191
|
-
if (outcome.exitCode !== 0 || outcome.error) {
|
|
192
|
-
throw new Error(`GrokAgentRunner: grok failed (exit ${outcome.exitCode})` +
|
|
193
|
-
(outcome.timedOut
|
|
194
|
-
? ` — killed after exceeding the ${TURN_TIMEOUT_MS / 3_600_000}h turn timeout`
|
|
195
|
-
: '') +
|
|
196
|
-
(outcome.error ? `: ${outcome.error}` : '') +
|
|
197
|
-
(outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
198
|
-
}
|
|
199
|
-
for (const t of outcome.texts) {
|
|
200
|
-
if (t.trim())
|
|
201
|
-
yield { type: 'assistant', session_id: sessionId, text: t };
|
|
248
|
+
if (outcome.hangSuspected || outcome.exitCode !== 0 || outcome.error) {
|
|
249
|
+
throw turnError(outcome, round);
|
|
202
250
|
}
|
|
203
251
|
turnInputTokens += outcome.inputTokens;
|
|
204
252
|
turnOutputTokens += outcome.outputTokens;
|
|
205
253
|
const malformed = [];
|
|
206
|
-
const calls = parseToolCalls(
|
|
254
|
+
const calls = parseToolCalls(rawTexts, (raw, err) => malformed.push(`[monomind] ignored malformed tool_call fence (${err}): ${raw.slice(0, 200)}`));
|
|
207
255
|
for (const note of malformed)
|
|
208
256
|
yield { type: 'assistant', session_id: sessionId, text: note };
|
|
209
257
|
if (calls.length === 0)
|
|
@@ -239,130 +287,218 @@ export class GrokAgentRunner {
|
|
|
239
287
|
throw err;
|
|
240
288
|
}
|
|
241
289
|
}
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
290
|
+
/**
|
|
291
|
+
* Run one `grok` invocation and stream its NDJSON output INCREMENTALLY:
|
|
292
|
+
* each parsed event is yielded as soon as its line arrives on stdout (see
|
|
293
|
+
* the header's "Streaming / liveness" note for why buffering until process
|
|
294
|
+
* exit was a bug, #204). End-of-turn facts (exit code, stderr tail,
|
|
295
|
+
* session id, usage, error, timeout/hang flags) are written into
|
|
296
|
+
* `outcome`, which the caller reads after this generator completes.
|
|
297
|
+
*/
|
|
298
|
+
async *streamTurn(bin, prompt, sessionId, args, outcome) {
|
|
299
|
+
// --output-format, not --format: confirmed against a live v1.0.5
|
|
300
|
+
// install (`npm install -g @xai-official/grok`) — `--format` doesn't
|
|
301
|
+
// exist ("unexpected argument '--format' found") and would have made
|
|
302
|
+
// every single invocation fail before even reaching auth. Confirmed
|
|
303
|
+
// the corrected flag is right: with it, the same invocation (no
|
|
304
|
+
// XAI_API_KEY available to test past this point) gets to a "Not
|
|
305
|
+
// signed in" auth error instead of a flag-parsing error, proving the
|
|
306
|
+
// flag itself is now accepted. See #178.
|
|
307
|
+
const cliArgs = ['-p', prompt, '--output-format', 'json', '--always-approve'];
|
|
308
|
+
if (args.model)
|
|
309
|
+
cliArgs.push('--model', args.model);
|
|
310
|
+
cliArgs.push('--cwd', args.cwd);
|
|
311
|
+
if (sessionId)
|
|
312
|
+
cliArgs.push('--resume', sessionId);
|
|
313
|
+
const child = spawn(bin, cliArgs, {
|
|
314
|
+
cwd: args.cwd,
|
|
315
|
+
env: { ...process.env, ...args.env },
|
|
316
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
317
|
+
});
|
|
318
|
+
let stderrTail = '';
|
|
319
|
+
child.stderr?.on('data', (c) => {
|
|
320
|
+
stderrTail = (stderrTail + c.toString()).slice(-4000);
|
|
321
|
+
});
|
|
322
|
+
// Arm the turn timeout BEFORE consuming stdout — a hung CLI must be
|
|
323
|
+
// killed while we're still reading, not after it finishes.
|
|
324
|
+
let timedOut = false;
|
|
325
|
+
let hangSuspected = false;
|
|
326
|
+
// SIGTERM→SIGKILL escalation, shared by the turn timeout, the startup
|
|
327
|
+
// hang check, the abort signal, and the abandoned-stream path in
|
|
328
|
+
// `finally` — a CLI that ignores SIGTERM must not leak a zombie per turn.
|
|
329
|
+
const KILL_GRACE_MS = 5000;
|
|
330
|
+
let killTimer;
|
|
331
|
+
const killChild = () => {
|
|
332
|
+
try {
|
|
274
333
|
child.kill('SIGTERM');
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
334
|
+
}
|
|
335
|
+
catch {
|
|
336
|
+
/* already gone */
|
|
337
|
+
}
|
|
338
|
+
killTimer = setTimeout(() => {
|
|
339
|
+
try {
|
|
340
|
+
child.kill('SIGKILL');
|
|
341
|
+
}
|
|
342
|
+
catch {
|
|
343
|
+
/* already gone */
|
|
344
|
+
}
|
|
345
|
+
}, KILL_GRACE_MS);
|
|
346
|
+
killTimer.unref?.();
|
|
347
|
+
};
|
|
348
|
+
const timer = setTimeout(() => {
|
|
349
|
+
timedOut = true;
|
|
350
|
+
killChild();
|
|
351
|
+
}, TURN_TIMEOUT_MS);
|
|
352
|
+
// See STARTUP_GRACE_MS — disarmed by the first stdout chunk below.
|
|
353
|
+
let hangTimer = setTimeout(() => {
|
|
354
|
+
hangSuspected = true;
|
|
355
|
+
killChild();
|
|
356
|
+
}, STARTUP_GRACE_MS);
|
|
357
|
+
// Abort hook (see AgentRunArgs.signal): kill the child so the stdout
|
|
358
|
+
// loop below unblocks instead of orphaning it on iterator.return().
|
|
359
|
+
const unsubscribeAbort = killOnAbort(args.signal, child, KILL_GRACE_MS);
|
|
360
|
+
// Attach the exit promise BEFORE consuming stdout: on a spawn failure
|
|
361
|
+
// (ENOENT, bad binary) the 'error' event fires almost immediately — if
|
|
362
|
+
// no listener is attached yet it escapes as an unhandled 'error' event
|
|
363
|
+
// and crashes the process instead of reaching our catch block.
|
|
364
|
+
const exitPromise = new Promise((res, rej) => {
|
|
365
|
+
child.on('error', rej);
|
|
366
|
+
child.on('close', (code) => res(code ?? 1));
|
|
367
|
+
});
|
|
368
|
+
// Prevent an unhandled-rejection crash if the stdout loop below throws
|
|
369
|
+
// before we await exitPromise (the await still sees the rejection).
|
|
370
|
+
exitPromise.catch(() => { });
|
|
371
|
+
let lastSessionId = sessionId;
|
|
372
|
+
// Normalize one parsed wire event: capture the session id from ANY event
|
|
373
|
+
// that carries it (resume needs it on the next turn), record
|
|
374
|
+
// error/usage state, and return the GrokStreamEvent to yield (or null).
|
|
375
|
+
// Reuses the same shape-tolerant helpers as the batch parseGrokEvents.
|
|
376
|
+
const handleEvent = (ev) => {
|
|
377
|
+
const sid = extractSessionId(ev);
|
|
378
|
+
if (sid)
|
|
379
|
+
lastSessionId = sid;
|
|
380
|
+
const usage = extractUsage(ev);
|
|
381
|
+
if (usage) {
|
|
382
|
+
outcome.inputTokens = usage.input;
|
|
383
|
+
outcome.outputTokens = usage.output;
|
|
384
|
+
}
|
|
385
|
+
const errMsg = extractError(ev);
|
|
386
|
+
if (errMsg)
|
|
387
|
+
outcome.error = errMsg;
|
|
388
|
+
const text = extractText(ev);
|
|
389
|
+
if (text) {
|
|
390
|
+
const stripped = text.replace(TOOL_CALL_RE, '').trim();
|
|
391
|
+
return {
|
|
392
|
+
kind: 'assistant',
|
|
393
|
+
rawText: text,
|
|
394
|
+
text: stripped || undefined,
|
|
395
|
+
sessionId: lastSessionId,
|
|
396
|
+
};
|
|
397
|
+
}
|
|
398
|
+
return null;
|
|
399
|
+
};
|
|
400
|
+
try {
|
|
401
|
+
// Immediate liveness yield: session.ts races the FIRST pull against a
|
|
402
|
+
// 4-minute silent-stream watchdog, and grok's first event can itself
|
|
403
|
+
// take minutes. Yielding at spawn wins that race deterministically
|
|
404
|
+
// instead of depending on grok's latency.
|
|
405
|
+
yield { kind: 'tool', toolName: 'turn started', sessionId };
|
|
406
|
+
let sawOutput = false;
|
|
407
|
+
let buf = '';
|
|
408
|
+
for await (const chunk of child.stdout) {
|
|
409
|
+
if (!sawOutput) {
|
|
410
|
+
sawOutput = true;
|
|
411
|
+
if (hangTimer) {
|
|
412
|
+
clearTimeout(hangTimer);
|
|
413
|
+
hangTimer = undefined;
|
|
281
414
|
}
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
415
|
+
}
|
|
416
|
+
buf += chunk.toString();
|
|
417
|
+
const parts = buf.split('\n');
|
|
418
|
+
buf = parts.pop() ?? '';
|
|
419
|
+
for (const line of parts) {
|
|
420
|
+
const trimmed = line.trim();
|
|
421
|
+
if (!trimmed?.startsWith('{'))
|
|
422
|
+
continue;
|
|
423
|
+
let ev;
|
|
290
424
|
try {
|
|
291
|
-
|
|
425
|
+
ev = JSON.parse(trimmed);
|
|
292
426
|
}
|
|
293
427
|
catch {
|
|
294
|
-
|
|
295
|
-
}
|
|
296
|
-
}, KILL_GRACE_MS);
|
|
297
|
-
killTimer.unref?.();
|
|
298
|
-
}, STARTUP_GRACE_MS);
|
|
299
|
-
const exitPromise = new Promise((res, rej) => {
|
|
300
|
-
child.on('error', rej);
|
|
301
|
-
child.on('close', (code) => res(code ?? 1));
|
|
302
|
-
});
|
|
303
|
-
exitPromise.catch(() => { });
|
|
304
|
-
const readLines = (async () => {
|
|
305
|
-
const lines = [];
|
|
306
|
-
let buf = '';
|
|
307
|
-
for await (const chunk of child.stdout) {
|
|
308
|
-
if (!sawOutput) {
|
|
309
|
-
sawOutput = true;
|
|
310
|
-
if (hangTimer) {
|
|
311
|
-
clearTimeout(hangTimer);
|
|
312
|
-
hangTimer = undefined;
|
|
313
|
-
}
|
|
428
|
+
continue;
|
|
314
429
|
}
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
lines.push(...parts);
|
|
430
|
+
const out = handleEvent(ev);
|
|
431
|
+
if (out)
|
|
432
|
+
yield out;
|
|
319
433
|
}
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
})();
|
|
324
|
-
// Timer cleanup lives in a top-level .finally() (not nested inside a
|
|
325
|
-
// success-path .then()) so it runs on EITHER path — a stdout stream
|
|
326
|
-
// error would otherwise skip straight to reject() and leave the
|
|
327
|
-
// TURN_TIMEOUT_MS/hangTimer/killTimer timers running past the
|
|
328
|
-
// process's actual lifetime.
|
|
329
|
-
Promise.all([readLines, exitPromise])
|
|
330
|
-
.then(([lines, exitCode]) => {
|
|
331
|
-
const parsed = parseGrokEvents(lines);
|
|
332
|
-
resolve({
|
|
333
|
-
texts: parsed.texts,
|
|
334
|
-
rawTexts: parsed.rawTexts,
|
|
335
|
-
sessionId: parsed.sessionId ?? sessionId,
|
|
336
|
-
exitCode,
|
|
337
|
-
stderrTail,
|
|
338
|
-
timedOut,
|
|
339
|
-
hangSuspected,
|
|
340
|
-
inputTokens: parsed.inputTokens,
|
|
341
|
-
outputTokens: parsed.outputTokens,
|
|
342
|
-
error: parsed.error,
|
|
343
|
-
});
|
|
344
|
-
}, (err) => {
|
|
345
|
-
// A stdout stream error (the reject path) means the process is
|
|
346
|
-
// still ALIVE and unmanaged — none of the timeout/hang timers
|
|
347
|
-
// would have fired to kill it. Without this, that error would
|
|
348
|
-
// orphan the child. child.kill() on an already-dead process is a
|
|
349
|
-
// documented no-op, so this is safe on every path.
|
|
434
|
+
}
|
|
435
|
+
const tail = buf.trim();
|
|
436
|
+
if (tail?.startsWith('{')) {
|
|
350
437
|
try {
|
|
351
|
-
|
|
438
|
+
const out = handleEvent(JSON.parse(tail));
|
|
439
|
+
if (out)
|
|
440
|
+
yield out;
|
|
352
441
|
}
|
|
353
442
|
catch {
|
|
354
|
-
/*
|
|
443
|
+
/* not JSON, skip */
|
|
355
444
|
}
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
finally {
|
|
448
|
+
clearTimeout(timer);
|
|
449
|
+
if (hangTimer)
|
|
450
|
+
clearTimeout(hangTimer);
|
|
451
|
+
unsubscribeAbort();
|
|
452
|
+
if (child.exitCode === null && child.signalCode === null) {
|
|
453
|
+
// NOT confirmed dead. Either the consumer abandoned this stream
|
|
454
|
+
// mid-turn (session.ts's silent abort calls iterator.return(), the
|
|
455
|
+
// mailbox closes, or an error is thrown downstream) — kill it, WITH
|
|
456
|
+
// the SIGKILL escalation — or a SIGTERM from the timeout/hang/abort
|
|
457
|
+
// is still inside its grace period: leave that escalation armed,
|
|
458
|
+
// since clearing it here would orphan a CLI that ignores SIGTERM and
|
|
459
|
+
// then wait on `exitPromise` forever (same fix as codex/kimi/pi-rpc).
|
|
460
|
+
if (!child.killed)
|
|
461
|
+
killChild();
|
|
462
|
+
}
|
|
463
|
+
else if (killTimer) {
|
|
464
|
+
clearTimeout(killTimer);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
const exitCode = await exitPromise;
|
|
468
|
+
if (killTimer)
|
|
469
|
+
clearTimeout(killTimer);
|
|
470
|
+
outcome.sessionId = lastSessionId;
|
|
471
|
+
outcome.exitCode = exitCode;
|
|
472
|
+
outcome.stderrTail = stderrTail;
|
|
473
|
+
outcome.timedOut = timedOut;
|
|
474
|
+
outcome.hangSuspected = hangSuspected;
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
/** Build the actionable error for a failed grok turn. */
|
|
478
|
+
function turnError(outcome, round) {
|
|
479
|
+
if (outcome.hangSuspected) {
|
|
480
|
+
return new Error(`GrokAgentRunner: grok produced no output within ${STARTUP_GRACE_MS / 1000}s and was killed. ` +
|
|
481
|
+
'This usually means it is stuck on a first-run interactive prompt (trust/telemetry gate) ' +
|
|
482
|
+
'that headless mode has no way to answer. Run `grok` once manually in a real terminal in ' +
|
|
483
|
+
`this project to accept any prompts, then retry.${outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''}`);
|
|
484
|
+
}
|
|
485
|
+
// Fatal provider errors (auth/permission/quota — classified from the error
|
|
486
|
+
// field AND stderr): report what actually happened, and tag the error so
|
|
487
|
+
// the daemon does NOT restart into the same guaranteed failure (a restart
|
|
488
|
+
// on quota exhaustion can only hang or fail again).
|
|
489
|
+
const cls = classifyStderr(`${outcome.error ?? ''}\n${outcome.stderrTail}`);
|
|
490
|
+
if (cls.fatal) {
|
|
491
|
+
const err = new Error(`GrokAgentRunner: FATAL provider error (${cls.label}) on turn ${round} — not retrying.` +
|
|
492
|
+
(outcome.error ? ` error: ${outcome.error}` : '') +
|
|
493
|
+
(outcome.stderrTail ? ` stderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
494
|
+
err.fatal = true;
|
|
495
|
+
return err;
|
|
366
496
|
}
|
|
497
|
+
return new Error(`GrokAgentRunner: grok failed (exit ${outcome.exitCode})` +
|
|
498
|
+
(outcome.timedOut
|
|
499
|
+
? ` — killed after exceeding the ${TURN_TIMEOUT_MS / 3_600_000}h turn timeout`
|
|
500
|
+
: '') +
|
|
501
|
+
(outcome.error ? `: ${outcome.error}` : '') +
|
|
502
|
+
(outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''));
|
|
367
503
|
}
|
|
368
504
|
//# sourceMappingURL=grok-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grok-runner.js","sourceRoot":"","sources":["../../../src/orgrt/grok-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grok-runner.js","sourceRoot":"","sources":["../../../src/orgrt/grok-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
* can register org tools (org_send, ask_human, …) directly via
|
|
8
8
|
* createSdkMcpServer.
|
|
9
9
|
* - Kimi Code has no embeddable SDK. The CLI is driven as a subprocess:
|
|
10
|
-
* `kimi
|
|
11
|
-
* turn and emits JSONL events on stdout
|
|
10
|
+
* `kimi --print --output-format stream-json` with the prompt on stdin
|
|
11
|
+
* runs one non-interactive turn and emits JSONL events on stdout
|
|
12
|
+
* (event shapes verified against kimi 0.29.2:
|
|
12
13
|
* {"role":"assistant","content":...} per reply, then a
|
|
13
14
|
* {"role":"meta","type":"session.resume_hint",session_id} event).
|
|
14
15
|
* Session continuity comes from `--session <id>` on later turns.
|
|
15
|
-
*
|
|
16
|
-
* between are consumed as the prompt text.
|
|
16
|
+
* The prompt is NOT passed as `-p <text>` — see streamTurn for why.
|
|
17
17
|
*
|
|
18
18
|
* Streaming / liveness — WHY INCREMENTAL:
|
|
19
19
|
* Kimi turns routinely run 10-20+ minutes when the model chains many
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
* binary on PATH, the Claude path is byte-for-byte unchanged and run()
|
|
61
61
|
* rejects with a clear actionable error instead of crashing at import.
|
|
62
62
|
*/
|
|
63
|
-
import type
|
|
63
|
+
import { type AgentMessage, type AgentRunArgs, type AgentRunner } from './agent-runner.js';
|
|
64
64
|
export declare class KimiCodeAgentRunner implements AgentRunner {
|
|
65
65
|
private kimiBin?;
|
|
66
66
|
private emptySkillsDir;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kimicode-runner.d.ts","sourceRoot":"","sources":["../../../src/orgrt/kimicode-runner.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAMH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"kimicode-runner.d.ts","sourceRoot":"","sources":["../../../src/orgrt/kimicode-runner.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAMH,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAqB3B,qBAAa,mBAAoB,YAAW,WAAW;IAGzC,OAAO,CAAC,OAAO,CAAC;IAF5B,OAAO,CAAC,cAAc,CAAM;IAE5B,YAAoB,OAAO,CAAC,EAAE,MAAM,YAAA,EAAI;IAEjC,GAAG,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,CAsJ1D;IAED;;;;;;;OAOG;YACY,UAAU;IAgKzB;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;CAkCvB;AAuBD;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAwCxE;AAeD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG;IACrD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAeA;AAkCD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,CAKjE"}
|