@enderfga/claw-orchestrator 7.13.0 → 7.15.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 +163 -137
- package/configs/autoloop-reviewer-prompt.md +1 -1
- package/configs/engines/README.md +45 -5
- package/configs/engines/dsh.json +17 -0
- package/configs/engines/kimi-code.json +17 -0
- package/dist/bin/acp-server.js +7 -12
- package/dist/bin/acp-server.js.map +1 -1
- package/dist/bin/cli.js +127 -67
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/mcp-server.js +2 -54
- package/dist/bin/mcp-server.js.map +1 -1
- package/dist/src/acp-server.d.ts +17 -9
- package/dist/src/acp-server.js +151 -30
- package/dist/src/acp-server.js.map +1 -1
- package/dist/src/autoloop/agent-tools.d.ts +2 -0
- package/dist/src/autoloop/agent-tools.js +7 -0
- package/dist/src/autoloop/agent-tools.js.map +1 -1
- package/dist/src/autoloop/dispatcher.d.ts +6 -0
- package/dist/src/autoloop/dispatcher.js +23 -1
- package/dist/src/autoloop/dispatcher.js.map +1 -1
- package/dist/src/autoloop/planner-tools.js +2 -0
- package/dist/src/autoloop/planner-tools.js.map +1 -1
- package/dist/src/council.d.ts +8 -0
- package/dist/src/council.js +45 -12
- package/dist/src/council.js.map +1 -1
- package/dist/src/dashboard/index.html +28 -14
- package/dist/src/embedded-server.js +34 -10
- package/dist/src/embedded-server.js.map +1 -1
- package/dist/src/engine-presets.d.ts +7 -3
- package/dist/src/engine-presets.js +39 -6
- package/dist/src/engine-presets.js.map +1 -1
- package/dist/src/engine-spawn.js +3 -1
- package/dist/src/engine-spawn.js.map +1 -1
- package/dist/src/fanout.d.ts +13 -3
- package/dist/src/fanout.js +10 -0
- package/dist/src/fanout.js.map +1 -1
- package/dist/src/inbox-manager.d.ts +9 -0
- package/dist/src/inbox-manager.js +8 -2
- package/dist/src/inbox-manager.js.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +136 -52
- package/dist/src/index.js.map +1 -1
- package/dist/src/kernel/conditions.d.ts +1 -1
- package/dist/src/kernel/conditions.js +1 -1
- package/dist/src/kernel/engine.d.ts +28 -8
- package/dist/src/kernel/engine.js +93 -19
- package/dist/src/kernel/engine.js.map +1 -1
- package/dist/src/kernel/nodes/agent.js +2 -0
- package/dist/src/kernel/nodes/agent.js.map +1 -1
- package/dist/src/kernel/nodes/council.js +9 -4
- package/dist/src/kernel/nodes/council.js.map +1 -1
- package/dist/src/kernel/nodes/fanout.js +5 -0
- package/dist/src/kernel/nodes/fanout.js.map +1 -1
- package/dist/src/kernel/nodes/goal.d.ts +8 -1
- package/dist/src/kernel/nodes/goal.js +40 -19
- package/dist/src/kernel/nodes/goal.js.map +1 -1
- package/dist/src/kernel/nodes/subflow.js +9 -1
- package/dist/src/kernel/nodes/subflow.js.map +1 -1
- package/dist/src/kernel/nodes/ultraapp.d.ts +1 -0
- package/dist/src/kernel/nodes/ultraapp.js +1 -0
- package/dist/src/kernel/nodes/ultraapp.js.map +1 -1
- package/dist/src/kernel/nodes/verifier.js +5 -1
- package/dist/src/kernel/nodes/verifier.js.map +1 -1
- package/dist/src/kernel/projections.d.ts +1 -0
- package/dist/src/kernel/projections.js +7 -1
- package/dist/src/kernel/projections.js.map +1 -1
- package/dist/src/kernel/templates/index.d.ts +6 -3
- package/dist/src/kernel/templates/index.js +8 -3
- package/dist/src/kernel/templates/index.js.map +1 -1
- package/dist/src/kernel/types.d.ts +30 -10
- package/dist/src/kernel/types.js.map +1 -1
- package/dist/src/logger.d.ts +6 -0
- package/dist/src/logger.js +14 -0
- package/dist/src/logger.js.map +1 -1
- package/dist/src/mcp-annotations.d.ts +13 -0
- package/dist/src/mcp-annotations.js +100 -0
- package/dist/src/mcp-annotations.js.map +1 -0
- package/dist/src/models.d.ts +7 -0
- package/dist/src/models.js +9 -0
- package/dist/src/models.js.map +1 -1
- package/dist/src/openai-compat.d.ts +11 -5
- package/dist/src/openai-compat.js +55 -54
- package/dist/src/openai-compat.js.map +1 -1
- package/dist/src/persistent-acp-session.d.ts +83 -0
- package/dist/src/persistent-acp-session.js +433 -0
- package/dist/src/persistent-acp-session.js.map +1 -0
- package/dist/src/persistent-codex-app-session.d.ts +2 -0
- package/dist/src/persistent-codex-app-session.js +18 -9
- package/dist/src/persistent-codex-app-session.js.map +1 -1
- package/dist/src/persistent-codex-session.d.ts +14 -3
- package/dist/src/persistent-codex-session.js +22 -19
- package/dist/src/persistent-codex-session.js.map +1 -1
- package/dist/src/persistent-custom-session.d.ts +9 -0
- package/dist/src/persistent-custom-session.js +41 -21
- package/dist/src/persistent-custom-session.js.map +1 -1
- package/dist/src/persistent-grok-session.js +1 -1
- package/dist/src/persistent-grok-session.js.map +1 -1
- package/dist/src/run-ledger.d.ts +3 -3
- package/dist/src/session-manager.d.ts +34 -1
- package/dist/src/session-manager.js +169 -30
- package/dist/src/session-manager.js.map +1 -1
- package/dist/src/types.d.ts +63 -12
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -1
- package/dist/src/ultraapp/build.d.ts +5 -11
- package/dist/src/ultraapp/build.js +5 -11
- package/dist/src/ultraapp/build.js.map +1 -1
- package/dist/src/ultraapp/council-adapter.d.ts +5 -2
- package/dist/src/ultraapp/council-adapter.js +6 -6
- package/dist/src/ultraapp/council-adapter.js.map +1 -1
- package/dist/src/ultraapp/files.d.ts +7 -0
- package/dist/src/ultraapp/files.js +7 -1
- package/dist/src/ultraapp/files.js.map +1 -1
- package/dist/src/ultraapp/manager.d.ts +23 -3
- package/dist/src/ultraapp/manager.js +170 -72
- package/dist/src/ultraapp/manager.js.map +1 -1
- package/dist/src/ultraapp/narrator.js +1 -1
- package/dist/src/ultraapp/narrator.js.map +1 -1
- package/dist/src/ultraapp/versions.d.ts +27 -5
- package/dist/src/ultraapp/versions.js +58 -13
- package/dist/src/ultraapp/versions.js.map +1 -1
- package/openclaw.plugin.json +4 -13
- package/package.json +13 -6
- package/skills/SKILL.md +52 -24
- package/skills/references/acp.md +140 -57
- package/skills/references/autoloop.md +141 -35
- package/skills/references/claude-cli-tracking.md +9 -6
- package/skills/references/cli.md +129 -91
- package/skills/references/council.md +44 -22
- package/skills/references/dashboard.md +37 -21
- package/skills/references/getting-started.md +49 -15
- package/skills/references/inbox.md +13 -8
- package/skills/references/mcp.md +25 -17
- package/skills/references/multi-engine.md +180 -144
- package/skills/references/observability.md +90 -58
- package/skills/references/openai-compat.md +172 -82
- package/skills/references/sessions.md +101 -65
- package/skills/references/tools.md +209 -157
- package/skills/references/ultra.md +7 -7
- package/skills/references/ultraapp.md +101 -56
- package/skills/references/verification.md +112 -56
- package/skills/references/workflow.md +227 -93
- package/assets/banner.jpg +0 -0
package/dist/bin/mcp-server.js
CHANGED
|
@@ -26,63 +26,11 @@ import { createRequire } from 'node:module';
|
|
|
26
26
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
27
27
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
28
28
|
import { ListToolsRequestSchema, CallToolRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
29
|
+
import { TOOL_ANNOTATIONS } from '../src/mcp-annotations.js';
|
|
29
30
|
// The plugin lazily starts EmbeddedServer on first tool call unless this is
|
|
30
31
|
// set. Set before importing so the env is seen on the very first invocation.
|
|
31
32
|
process.env.CLAWO_NO_EMBEDDED_SERVER ??= '1';
|
|
32
33
|
const { default: plugin } = await import('../src/index.js');
|
|
33
|
-
// Hand-curated hints. MCP hosts surface these to the model so it can pick
|
|
34
|
-
// safer tools first (Hermes / Cursor / Claude Desktop all read them).
|
|
35
|
-
//
|
|
36
|
-
// readOnly — does not mutate workspace, sessions, files, or branches
|
|
37
|
-
// destructive — irreversible side-effects (delete worktree, drop branch, kill process)
|
|
38
|
-
// openWorld — touches things outside the local machine (model APIs)
|
|
39
|
-
const ANNOTATIONS = {
|
|
40
|
-
// pure reads
|
|
41
|
-
session_list: { readOnlyHint: true, idempotentHint: true },
|
|
42
|
-
sessions_overview: { readOnlyHint: true, idempotentHint: true },
|
|
43
|
-
coding_session_status: { readOnlyHint: true, idempotentHint: true },
|
|
44
|
-
session_grep: { readOnlyHint: true, idempotentHint: true },
|
|
45
|
-
session_inbox: { readOnlyHint: true, idempotentHint: true },
|
|
46
|
-
coding_agents_list: { readOnlyHint: true, idempotentHint: true },
|
|
47
|
-
team_list: { readOnlyHint: true, idempotentHint: true },
|
|
48
|
-
council_status: { readOnlyHint: true, idempotentHint: true },
|
|
49
|
-
council_review: { readOnlyHint: true, idempotentHint: true },
|
|
50
|
-
ultraplan_status: { readOnlyHint: true, idempotentHint: true },
|
|
51
|
-
ultrareview_status: { readOnlyHint: true, idempotentHint: true },
|
|
52
|
-
autoloop_status: { readOnlyHint: true, idempotentHint: true },
|
|
53
|
-
autoloop_list: { readOnlyHint: true, idempotentHint: true },
|
|
54
|
-
codex_goal_get: { readOnlyHint: true, idempotentHint: true },
|
|
55
|
-
// destructive
|
|
56
|
-
session_stop: { destructiveHint: true },
|
|
57
|
-
council_abort: { destructiveHint: true },
|
|
58
|
-
council_accept: { destructiveHint: true },
|
|
59
|
-
council_reject: { destructiveHint: true },
|
|
60
|
-
autoloop_stop: { destructiveHint: true },
|
|
61
|
-
project_purge: { destructiveHint: true },
|
|
62
|
-
// mutating + open-world (call external model APIs)
|
|
63
|
-
session_start: { openWorldHint: true },
|
|
64
|
-
session_send: { openWorldHint: true },
|
|
65
|
-
session_handoff: { openWorldHint: true },
|
|
66
|
-
team_send: { openWorldHint: true },
|
|
67
|
-
session_send_to: { openWorldHint: true },
|
|
68
|
-
session_deliver_inbox: { openWorldHint: true },
|
|
69
|
-
council_start: { openWorldHint: true },
|
|
70
|
-
council_inject: { openWorldHint: true },
|
|
71
|
-
ultraplan_start: { openWorldHint: true },
|
|
72
|
-
ultrareview_start: { openWorldHint: true },
|
|
73
|
-
autoloop_start: { openWorldHint: true },
|
|
74
|
-
autoloop_chat: { openWorldHint: true },
|
|
75
|
-
autoloop_reset_agent: {},
|
|
76
|
-
codex_resume: { openWorldHint: true },
|
|
77
|
-
codex_review: { openWorldHint: true },
|
|
78
|
-
codex_goal_set: { openWorldHint: true },
|
|
79
|
-
codex_goal_pause: {},
|
|
80
|
-
codex_goal_resume: { openWorldHint: true },
|
|
81
|
-
codex_goal_clear: {},
|
|
82
|
-
session_compact: { openWorldHint: true },
|
|
83
|
-
session_update_tools: {},
|
|
84
|
-
session_switch_model: {},
|
|
85
|
-
};
|
|
86
34
|
const log = {
|
|
87
35
|
info: (...args) => console.error('[clawo-mcp]', ...args),
|
|
88
36
|
warn: (...args) => console.error('[clawo-mcp]', ...args),
|
|
@@ -136,7 +84,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
|
136
84
|
name: t.name,
|
|
137
85
|
description: t.description,
|
|
138
86
|
inputSchema: t.parameters,
|
|
139
|
-
...(
|
|
87
|
+
...(TOOL_ANNOTATIONS[t.name] ? { annotations: TOOL_ANNOTATIONS[t.name] } : {}),
|
|
140
88
|
})),
|
|
141
89
|
}));
|
|
142
90
|
server.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../bin/mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAEnG,4EAA4E;AAC5E,6EAA6E;AAC7E,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,CAAC;AAE7C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../bin/mcp-server.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAEnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,4EAA4E;AAC5E,6EAA6E;AAC7E,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,CAAC;AAE7C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAmB5D,MAAM,GAAG,GAAG;IACV,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC;IACnE,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC;IACnE,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC;CACrE,CAAC;AAEF,MAAM,QAAQ,GAAc,EAAE,CAAC;AAE/B,MAAM,IAAI,GAAG;IACX,YAAY,EAAE,EAAE;IAChB,MAAM,EAAE,GAAG;IACX,YAAY,EAAE,CAAC,GAAY,EAAE,EAAE;QAC7B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,EAAE,EAAE,GAAG,EAAE,GAAE,CAAC;IACZ,iBAAiB,EAAE,GAAG,EAAE,GAAE,CAAC;IAC3B,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,QAAQ,CAAC,IAAwD,CAAC,CAAC;AAE1E,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAC7D,MAAM,OAAO,GAAG,SAAS;IACvB,CAAC,CAAC,IAAI,GAAG,CACL,SAAS;SACN,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CACnB;IACH,CAAC,CAAC,IAAI,CAAC;AAET,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AAE/E,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAClC,GAAG,CAAC,IAAI,CAAC,qDAAqD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1G,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,gEAAgE;QAChE,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAyB,CAAC;QACzF,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,UAAU,EAAE,CAAC;AAEjC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAEhH,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,WAAW,EAAE,CAAC,CAAC,UAA2F;QAC1G,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/E,CAAC,CAAC;CACJ,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;IAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;SACtE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAA4B,CAAC,CAAC;QAChH,4EAA4E;QAC5E,4EAA4E;QAC5E,2EAA2E;QAC3E,8EAA8E;QAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;SACvC,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAEhC,GAAG,CAAC,IAAI,CAAC,+BAA+B,KAAK,CAAC,MAAM,OAAO,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAC"}
|
package/dist/src/acp-server.d.ts
CHANGED
|
@@ -34,6 +34,10 @@ interface OrchestrationSnapshot {
|
|
|
34
34
|
findings?: string;
|
|
35
35
|
error?: string;
|
|
36
36
|
}
|
|
37
|
+
/** The part of a live `Council` this adapter listens to. */
|
|
38
|
+
interface CouncilEmitter {
|
|
39
|
+
on(event: string, cb: (e: CouncilEvent) => void): unknown;
|
|
40
|
+
}
|
|
37
41
|
/**
|
|
38
42
|
* SessionManager-like interface to avoid circular imports.
|
|
39
43
|
*
|
|
@@ -65,6 +69,8 @@ interface SessionManagerLike {
|
|
|
65
69
|
stopSession(name: string, opts?: {
|
|
66
70
|
keepPersisted?: boolean;
|
|
67
71
|
}): Promise<void>;
|
|
72
|
+
/** Whether the session is live in memory; one idle past the manager's TTL is not. */
|
|
73
|
+
hasSession?(name: string): boolean;
|
|
68
74
|
/** The sessions on disk that can be resumed by name; see `session/resume`. */
|
|
69
75
|
listPersistedSessions?(): Array<{
|
|
70
76
|
name: string;
|
|
@@ -86,9 +92,7 @@ interface SessionManagerLike {
|
|
|
86
92
|
councilAbort?(id: string): void;
|
|
87
93
|
councilAccept?(id: string): Promise<unknown>;
|
|
88
94
|
councilReject?(id: string, feedback: string): Promise<unknown>;
|
|
89
|
-
getCouncil?(id: string):
|
|
90
|
-
on(event: string, cb: (e: CouncilEvent) => void): unknown;
|
|
91
|
-
} | undefined;
|
|
95
|
+
getCouncil?(id: string): CouncilEmitter | undefined;
|
|
92
96
|
ultraplanStart?(task: string, opts?: {
|
|
93
97
|
model?: string;
|
|
94
98
|
cwd?: string;
|
|
@@ -129,7 +133,13 @@ export declare const ACP_DEFAULT_MODE = "single";
|
|
|
129
133
|
* library defaults, which still reference the retired Gemini CLI.
|
|
130
134
|
*/
|
|
131
135
|
export declare const ACP_COUNCIL_MAX_ROUNDS = 3;
|
|
132
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* Slash commands offered once a council run is parked at its human gate.
|
|
138
|
+
*
|
|
139
|
+
* Neither one merges anything: the agents merge their own work into the main
|
|
140
|
+
* branch during the rounds. Accepting cleans up after them; rejecting records
|
|
141
|
+
* feedback for another attempt.
|
|
142
|
+
*/
|
|
133
143
|
export declare const ACP_COUNCIL_COMMANDS: {
|
|
134
144
|
name: string;
|
|
135
145
|
description: string;
|
|
@@ -160,6 +170,8 @@ export declare const ACP_CONFIG_PERMISSION = "permission";
|
|
|
160
170
|
* added there shows up here with no extra wiring.
|
|
161
171
|
*/
|
|
162
172
|
export declare function buildModelConfigOption(currentModel: string): acp.SessionConfigOption;
|
|
173
|
+
/** The permission modes the selector offers, and the only ones a client may set. */
|
|
174
|
+
export declare const ACP_PERMISSION_MODES: readonly PermissionMode[];
|
|
163
175
|
/**
|
|
164
176
|
* Permission selector.
|
|
165
177
|
*
|
|
@@ -228,17 +240,13 @@ export declare function emitImages(images: Array<{
|
|
|
228
240
|
export declare function cancelAcpTurn(manager: SessionManagerLike, state: AcpSessionState, log?: Logger): boolean;
|
|
229
241
|
type Emit = (update: Record<string, unknown>) => Promise<void>;
|
|
230
242
|
type Say = (text: string) => Promise<void>;
|
|
231
|
-
/**
|
|
232
|
-
* Apply `/council_accept` or `/council_reject` to a parked run.
|
|
233
|
-
*
|
|
234
|
-
* Returns true when the prompt was a decision and the turn is finished.
|
|
235
|
-
*/
|
|
236
243
|
/**
|
|
237
244
|
* What a prompt did to a parked council: nothing was parked, the prompt decided
|
|
238
245
|
* it, or one is parked and the prompt was not a decision — which is a stop, not
|
|
239
246
|
* a pass-through.
|
|
240
247
|
*/
|
|
241
248
|
export type ParkedCouncilOutcome = 'none' | 'decided' | 'blocked';
|
|
249
|
+
/** Apply `/council_accept` or `/council_reject` to a parked run. */
|
|
242
250
|
export declare function resolveParkedCouncil(manager: SessionManagerLike, state: AcpSessionState, command: {
|
|
243
251
|
name: string;
|
|
244
252
|
rest: string;
|
package/dist/src/acp-server.js
CHANGED
|
@@ -86,10 +86,29 @@ const ACP_COUNCIL_AGENTS = [
|
|
|
86
86
|
/** How often the poll-only orchestrations are checked, and how long they may run. */
|
|
87
87
|
const ACP_POLL_INTERVAL_MS = 3_000;
|
|
88
88
|
const ACP_POLL_TIMEOUT_MS = 1_800_000;
|
|
89
|
-
/**
|
|
89
|
+
/**
|
|
90
|
+
* How often, and for how long, to look for a council's live handle before
|
|
91
|
+
* leaving it to the slow poll. The kernel publishes it within a tick or two of
|
|
92
|
+
* the start, so the window only bounds a manager that never does.
|
|
93
|
+
*/
|
|
94
|
+
const ACP_COUNCIL_ATTACH_INTERVAL_MS = 20;
|
|
95
|
+
const ACP_COUNCIL_ATTACH_WINDOW_MS = 10_000;
|
|
96
|
+
/**
|
|
97
|
+
* Slash commands offered once a council run is parked at its human gate.
|
|
98
|
+
*
|
|
99
|
+
* Neither one merges anything: the agents merge their own work into the main
|
|
100
|
+
* branch during the rounds. Accepting cleans up after them; rejecting records
|
|
101
|
+
* feedback for another attempt.
|
|
102
|
+
*/
|
|
90
103
|
export const ACP_COUNCIL_COMMANDS = [
|
|
91
|
-
{
|
|
92
|
-
|
|
104
|
+
{
|
|
105
|
+
name: 'council_accept',
|
|
106
|
+
description: 'Accept the council result: keep what the agents merged into the main branch and remove the council worktrees, branches and plan.md.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
name: 'council_reject',
|
|
110
|
+
description: 'Reject the council result: rewrite plan.md with the text after the command as feedback. The worktrees are kept for a retry.',
|
|
111
|
+
},
|
|
93
112
|
];
|
|
94
113
|
/**
|
|
95
114
|
* One slash command per mode, so modes are reachable in clients that do not
|
|
@@ -119,6 +138,7 @@ const ENGINE_LABELS = {
|
|
|
119
138
|
cursor: 'Cursor',
|
|
120
139
|
opencode: 'OpenCode',
|
|
121
140
|
custom: 'Custom',
|
|
141
|
+
acp: 'ACP agent',
|
|
122
142
|
};
|
|
123
143
|
/**
|
|
124
144
|
* Engines kept out of the picker.
|
|
@@ -129,11 +149,13 @@ const ENGINE_LABELS = {
|
|
|
129
149
|
* a new user-facing selector would be advertising a dead end.
|
|
130
150
|
*
|
|
131
151
|
* `opencode` is absent for a different reason: its models are open-ended
|
|
132
|
-
* `provider/model` strings
|
|
133
|
-
*
|
|
134
|
-
*
|
|
152
|
+
* `provider/model` strings, so the registry holds none to enumerate, and
|
|
153
|
+
* `resolveEngineAndModel` never routes a model to it — a `provider/model`
|
|
154
|
+
* string resolves to the claude engine. This agent therefore cannot open an
|
|
155
|
+
* opencode session at all. `acp` is hidden because an ACP agent picks its own
|
|
156
|
+
* model.
|
|
135
157
|
*/
|
|
136
|
-
const HIDDEN_ENGINES = new Set(['gemini', 'cursor']);
|
|
158
|
+
const HIDDEN_ENGINES = new Set(['gemini', 'cursor', 'acp']);
|
|
137
159
|
/**
|
|
138
160
|
* The cross-engine model selector, grouped by engine.
|
|
139
161
|
*
|
|
@@ -166,6 +188,8 @@ export function buildModelConfigOption(currentModel) {
|
|
|
166
188
|
})),
|
|
167
189
|
};
|
|
168
190
|
}
|
|
191
|
+
/** The permission modes the selector offers, and the only ones a client may set. */
|
|
192
|
+
export const ACP_PERMISSION_MODES = ['plan', 'acceptEdits', 'bypassPermissions'];
|
|
169
193
|
/**
|
|
170
194
|
* Permission selector.
|
|
171
195
|
*
|
|
@@ -293,6 +317,7 @@ export function createAcpAgent(manager, options = {}) {
|
|
|
293
317
|
const { sessionId, cwd } = ctx.params;
|
|
294
318
|
const live = sessions.get(sessionId);
|
|
295
319
|
if (live) {
|
|
320
|
+
await ensureEngineSession(manager, live, log);
|
|
296
321
|
return {
|
|
297
322
|
modes: { currentModeId: live.modeId, availableModes: ACP_MODES },
|
|
298
323
|
configOptions: [buildModelConfigOption(live.model), buildPermissionConfigOption(live.permissionMode)],
|
|
@@ -371,6 +396,11 @@ export function createAcpAgent(manager, options = {}) {
|
|
|
371
396
|
state.model = model;
|
|
372
397
|
}
|
|
373
398
|
else if (ctx.params.configId === ACP_CONFIG_PERMISSION) {
|
|
399
|
+
// The value goes straight into engine CLI flags, so only the modes the
|
|
400
|
+
// selector offers are accepted.
|
|
401
|
+
if (!ACP_PERMISSION_MODES.includes(value)) {
|
|
402
|
+
throw acp.RequestError.invalidParams(`Unknown permission mode: ${value}. Expected one of ${ACP_PERMISSION_MODES.join(', ')}`);
|
|
403
|
+
}
|
|
374
404
|
state.permissionMode = value;
|
|
375
405
|
await manager.stopSession(state.name, { keepPersisted: true }).catch(() => { });
|
|
376
406
|
await manager.startSession({
|
|
@@ -403,8 +433,9 @@ export function createAcpAgent(manager, options = {}) {
|
|
|
403
433
|
if (parked === 'blocked') {
|
|
404
434
|
// A parked council owns the turn: falling through here started a second
|
|
405
435
|
// `councilStart` over the worktrees and branches the parked one holds.
|
|
406
|
-
await say('A council result is waiting on you. Run `/council_accept` to
|
|
407
|
-
'or `/council_reject [reason]` to
|
|
436
|
+
await say('A council result is waiting on you. Run `/council_accept` to keep what the agents merged and ' +
|
|
437
|
+
'remove the council worktrees, or `/council_reject [reason]` to write your feedback into plan.md. ' +
|
|
438
|
+
'Nothing else can run until then.');
|
|
408
439
|
return { stopReason: 'end_turn' };
|
|
409
440
|
}
|
|
410
441
|
if (parked === 'decided')
|
|
@@ -448,7 +479,7 @@ export function createAcpAgent(manager, options = {}) {
|
|
|
448
479
|
// would send the answer twice, so the final block is only emitted when
|
|
449
480
|
// nothing streamed — which is the case for one-shot wrappers.
|
|
450
481
|
let streamedChars = 0;
|
|
451
|
-
const
|
|
482
|
+
const send = () => manager.sendMessage(state.name, task, {
|
|
452
483
|
onChunk: (chunk) => {
|
|
453
484
|
if (cancelled || !chunk)
|
|
454
485
|
return;
|
|
@@ -476,6 +507,9 @@ export function createAcpAgent(manager, options = {}) {
|
|
|
476
507
|
}
|
|
477
508
|
},
|
|
478
509
|
});
|
|
510
|
+
// A cancel that lands while a dropped session is being restarted must not
|
|
511
|
+
// still send the prompt once the restart finishes.
|
|
512
|
+
const turn = ensureEngineSession(manager, state, log).then(() => (cancelled ? undefined : send()));
|
|
479
513
|
try {
|
|
480
514
|
const raced = await Promise.race([turn, cancelSignal]);
|
|
481
515
|
if (raced === 'cancelled')
|
|
@@ -573,6 +607,26 @@ export function cancelAcpTurn(manager, state, log) {
|
|
|
573
607
|
.catch((err) => log?.warn(`cancel teardown failed for ${state.name}: ${String(err)}`));
|
|
574
608
|
return true;
|
|
575
609
|
}
|
|
610
|
+
/**
|
|
611
|
+
* Start the underlying session again if the manager has dropped it.
|
|
612
|
+
*
|
|
613
|
+
* SessionManager stops a session idle past its TTL and keeps only the persisted
|
|
614
|
+
* resume handle, while the ACP session outlives it here. Starting it again by
|
|
615
|
+
* name resumes the engine's conversation, so the client sees the same session
|
|
616
|
+
* carry on rather than a "not found".
|
|
617
|
+
*/
|
|
618
|
+
async function ensureEngineSession(manager, state, log) {
|
|
619
|
+
if (!manager.hasSession || manager.hasSession(state.name))
|
|
620
|
+
return;
|
|
621
|
+
log?.info(`restarting ${state.name}: the session layer dropped it while idle`);
|
|
622
|
+
await manager.startSession({
|
|
623
|
+
name: state.name,
|
|
624
|
+
cwd: state.cwd,
|
|
625
|
+
engine: state.engine,
|
|
626
|
+
model: state.model,
|
|
627
|
+
permissionMode: state.permissionMode,
|
|
628
|
+
});
|
|
629
|
+
}
|
|
576
630
|
/**
|
|
577
631
|
* Run a council behind one ACP turn.
|
|
578
632
|
*
|
|
@@ -604,14 +658,24 @@ async function runCouncilMode(manager, state, sessionId, task, emit, say, log) {
|
|
|
604
658
|
});
|
|
605
659
|
}
|
|
606
660
|
catch (err) {
|
|
607
|
-
//
|
|
608
|
-
//
|
|
609
|
-
// reason rather than a bare failure.
|
|
661
|
+
// Only a spec the kernel refuses outright throws here. The council's own
|
|
662
|
+
// guardrails run inside the run and are read back from it below.
|
|
610
663
|
throw acp.RequestError.invalidParams(`Council could not start: ${err.message}`);
|
|
611
664
|
}
|
|
612
665
|
const buffers = new Map();
|
|
613
666
|
const toolCallId = (agent, round) => `${sessionId}-${agent}-r${round ?? 0}`;
|
|
614
|
-
const
|
|
667
|
+
const abort = () => {
|
|
668
|
+
try {
|
|
669
|
+
manager.councilAbort?.(council.id);
|
|
670
|
+
}
|
|
671
|
+
catch (err) {
|
|
672
|
+
log?.warn(`council ${council.id} abort failed: ${String(err)}`);
|
|
673
|
+
}
|
|
674
|
+
};
|
|
675
|
+
let cancelled = false;
|
|
676
|
+
/** Why the run failed, when the council said so in an event. */
|
|
677
|
+
let failure;
|
|
678
|
+
let attach;
|
|
615
679
|
let poll;
|
|
616
680
|
let timeout;
|
|
617
681
|
const terminal = new Promise((resolve) => {
|
|
@@ -620,16 +684,20 @@ async function runCouncilMode(manager, state, sessionId, task, emit, say, log) {
|
|
|
620
684
|
if (settled)
|
|
621
685
|
return;
|
|
622
686
|
settled = true;
|
|
623
|
-
// Clear here rather than after the await: the
|
|
624
|
-
//
|
|
625
|
-
//
|
|
687
|
+
// Clear here rather than after the await: the polls and the 30-minute cap
|
|
688
|
+
// must stop the moment the run is over, or every council turn leaves a
|
|
689
|
+
// live timer behind for the rest of the process's life.
|
|
690
|
+
if (attach)
|
|
691
|
+
clearInterval(attach);
|
|
626
692
|
if (poll)
|
|
627
693
|
clearInterval(poll);
|
|
628
694
|
if (timeout)
|
|
629
695
|
clearTimeout(timeout);
|
|
630
696
|
resolve();
|
|
631
697
|
};
|
|
632
|
-
|
|
698
|
+
const onEvent = (event) => {
|
|
699
|
+
if (settled)
|
|
700
|
+
return;
|
|
633
701
|
const agent = event.agent ?? 'agent';
|
|
634
702
|
switch (event.type) {
|
|
635
703
|
case 'round-start':
|
|
@@ -668,6 +736,19 @@ async function runCouncilMode(manager, state, sessionId, task, emit, say, log) {
|
|
|
668
736
|
break;
|
|
669
737
|
}
|
|
670
738
|
case 'error':
|
|
739
|
+
// An event naming an agent is that agent failing its round; the
|
|
740
|
+
// council carries on with the others. Only an unattributed error ends
|
|
741
|
+
// the run.
|
|
742
|
+
if (event.agent) {
|
|
743
|
+
void emit({
|
|
744
|
+
sessionUpdate: 'tool_call_update',
|
|
745
|
+
toolCallId: toolCallId(agent, event.round),
|
|
746
|
+
status: 'failed',
|
|
747
|
+
content: [{ type: 'content', content: { type: 'text', text: event.error ?? 'failed' } }],
|
|
748
|
+
});
|
|
749
|
+
break;
|
|
750
|
+
}
|
|
751
|
+
failure = event.error;
|
|
671
752
|
log?.warn(`council ${council.id} error: ${event.error ?? 'unknown'}`);
|
|
672
753
|
done();
|
|
673
754
|
break;
|
|
@@ -677,37 +758,75 @@ async function runCouncilMode(manager, state, sessionId, task, emit, say, log) {
|
|
|
677
758
|
default:
|
|
678
759
|
break;
|
|
679
760
|
}
|
|
680
|
-
}
|
|
761
|
+
};
|
|
762
|
+
// The kernel publishes the live council from inside its node, after
|
|
763
|
+
// `councilStart` has returned, so the first lookup usually misses. It is
|
|
764
|
+
// retried on a short interval until it finds the council; the first round
|
|
765
|
+
// opens only once the worktrees are set up, so attaching this late still
|
|
766
|
+
// sees every event translated above.
|
|
767
|
+
//
|
|
681
768
|
// The emitter is live-only with no replay buffer, and a run that finishes
|
|
682
|
-
// before the
|
|
683
|
-
//
|
|
684
|
-
//
|
|
685
|
-
|
|
769
|
+
// before the listener attaches would never resolve. Reading the status is
|
|
770
|
+
// the backstop; it is also how the parked state is detected, because parking
|
|
771
|
+
// is a status, not an event.
|
|
772
|
+
let emitter;
|
|
773
|
+
const check = () => {
|
|
774
|
+
if (!emitter) {
|
|
775
|
+
emitter = manager.getCouncil?.(council.id);
|
|
776
|
+
emitter?.on('council-event', onEvent);
|
|
777
|
+
if (emitter && attach)
|
|
778
|
+
clearInterval(attach);
|
|
779
|
+
}
|
|
686
780
|
const snapshot = manager.councilStatus?.(council.id);
|
|
687
781
|
if (snapshot && snapshot.status !== 'running')
|
|
688
782
|
done();
|
|
689
|
-
}
|
|
783
|
+
};
|
|
784
|
+
const attachUntil = Date.now() + ACP_COUNCIL_ATTACH_WINDOW_MS;
|
|
785
|
+
attach = setInterval(() => {
|
|
786
|
+
check();
|
|
787
|
+
if (attach && Date.now() > attachUntil)
|
|
788
|
+
clearInterval(attach);
|
|
789
|
+
}, ACP_COUNCIL_ATTACH_INTERVAL_MS);
|
|
790
|
+
poll = setInterval(check, ACP_POLL_INTERVAL_MS);
|
|
690
791
|
timeout = setTimeout(() => {
|
|
691
|
-
|
|
792
|
+
abort();
|
|
692
793
|
done();
|
|
693
794
|
}, ACP_POLL_TIMEOUT_MS);
|
|
694
795
|
state.cancelInFlight = () => {
|
|
695
|
-
|
|
796
|
+
cancelled = true;
|
|
696
797
|
done();
|
|
798
|
+
abort();
|
|
697
799
|
};
|
|
800
|
+
check();
|
|
698
801
|
});
|
|
699
802
|
await terminal;
|
|
700
803
|
state.cancelInFlight = undefined;
|
|
804
|
+
// ACP v1 ends a cancelled prompt with `cancelled`, whatever the run reports.
|
|
805
|
+
if (cancelled)
|
|
806
|
+
return { stopReason: 'cancelled' };
|
|
701
807
|
const final = manager.councilStatus(council.id);
|
|
808
|
+
const reason = failure ?? final?.error ?? 'unknown error';
|
|
809
|
+
if (final?.status === 'error' && !final.responses?.length) {
|
|
810
|
+
// No agent ever answered: the task, the directory or the agents were
|
|
811
|
+
// refused. Those are the caller's to fix, so the reason goes back as the
|
|
812
|
+
// error rather than as a turn that seemed to run.
|
|
813
|
+
throw acp.RequestError.invalidParams(`Council could not start: ${reason}`);
|
|
814
|
+
}
|
|
702
815
|
const summary = final?.finalSummary?.trim();
|
|
703
|
-
|
|
816
|
+
if (final?.status === 'error') {
|
|
817
|
+
await say(`Council failed: ${reason}${summary ? `\n\n${summary}` : ''}`);
|
|
818
|
+
}
|
|
819
|
+
else {
|
|
820
|
+
await say(summary || `Council finished with status '${final?.status ?? 'unknown'}' and produced no summary.`);
|
|
821
|
+
}
|
|
704
822
|
// Consensus parks the run for a human decision rather than completing it, so
|
|
705
823
|
// the ACP turn ends at the gate and the decision becomes a slash command.
|
|
706
824
|
if (final?.status === 'awaiting_user') {
|
|
707
825
|
state.parkedCouncilId = council.id;
|
|
708
826
|
await emit({ sessionUpdate: 'available_commands_update', availableCommands: ACP_COUNCIL_COMMANDS });
|
|
709
827
|
await say('\n\nThe council reached consensus and is holding its worktrees for you. ' +
|
|
710
|
-
'Send `/council_accept` to
|
|
828
|
+
'Send `/council_accept` to keep what the agents merged into the main branch and clean up, ' +
|
|
829
|
+
'or `/council_reject <feedback>` to write your feedback into plan.md for a retry.');
|
|
711
830
|
}
|
|
712
831
|
return { stopReason: final?.status === 'error' ? 'refusal' : 'end_turn' };
|
|
713
832
|
}
|
|
@@ -756,6 +875,7 @@ async function runPollingMode(manager, state, task, emit, say) {
|
|
|
756
875
|
await say(body);
|
|
757
876
|
return { stopReason: 'end_turn' };
|
|
758
877
|
}
|
|
878
|
+
/** Apply `/council_accept` or `/council_reject` to a parked run. */
|
|
759
879
|
export async function resolveParkedCouncil(manager, state, command, say, emit) {
|
|
760
880
|
const id = state.parkedCouncilId;
|
|
761
881
|
// Three outcomes, not two. `false` used to mean both "no council is parked"
|
|
@@ -768,11 +888,12 @@ export async function resolveParkedCouncil(manager, state, command, say, emit) {
|
|
|
768
888
|
return 'blocked';
|
|
769
889
|
if (command.name === 'council_accept') {
|
|
770
890
|
await manager.councilAccept?.(id);
|
|
771
|
-
await say('Council result accepted
|
|
891
|
+
await say('Council result accepted. What the agents merged into the main branch stays; ' +
|
|
892
|
+
'the council worktrees, branches and plan.md have been removed.');
|
|
772
893
|
}
|
|
773
894
|
else if (command.name === 'council_reject') {
|
|
774
895
|
await manager.councilReject?.(id, command.rest || 'rejected via ACP');
|
|
775
|
-
await say('Council result rejected and
|
|
896
|
+
await say('Council result rejected. plan.md now carries your feedback, and the worktrees are kept for a retry.');
|
|
776
897
|
}
|
|
777
898
|
else {
|
|
778
899
|
return 'blocked';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-server.js","sourceRoot":"","sources":["../../src/acp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acp-server.js","sourceRoot":"","sources":["../../src/acp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,5 +40,7 @@ export interface ReviewCompletePayload {
|
|
|
40
40
|
/** Find the *last* iter_complete block (per coder prompt: at most one expected). */
|
|
41
41
|
export declare function extractIterComplete(calls: AgentToolCall[]): IterCompletePayload | null;
|
|
42
42
|
export declare function extractReviewComplete(calls: AgentToolCall[]): ReviewCompletePayload | null;
|
|
43
|
+
/** Every `coder_log` / `reviewer_log` message, in order; a blank or non-string one is skipped. */
|
|
44
|
+
export declare function extractLogMessages(calls: AgentToolCall[], tool: 'coder_log' | 'reviewer_log'): string[];
|
|
43
45
|
/** Convenience: find first request_clarification, if any. */
|
|
44
46
|
export declare function extractClarification(calls: AgentToolCall[]): string | null;
|
|
@@ -60,6 +60,13 @@ export function extractReviewComplete(calls) {
|
|
|
60
60
|
const flags = Array.isArray(flagsRaw) ? flagsRaw.filter((x) => typeof x === 'string') : undefined;
|
|
61
61
|
return { decision: dec, metric, audit_notes, flags };
|
|
62
62
|
}
|
|
63
|
+
/** Every `coder_log` / `reviewer_log` message, in order; a blank or non-string one is skipped. */
|
|
64
|
+
export function extractLogMessages(calls, tool) {
|
|
65
|
+
return calls
|
|
66
|
+
.filter((c) => c.tool === tool)
|
|
67
|
+
.map((c) => c.args.message)
|
|
68
|
+
.filter((m) => typeof m === 'string' && m.trim() !== '');
|
|
69
|
+
}
|
|
63
70
|
/** Convenience: find first request_clarification, if any. */
|
|
64
71
|
export function extractClarification(calls) {
|
|
65
72
|
const m = calls.find((c) => c.tool === 'request_clarification');
|