@synergenius/flowweaver-pack-weaver 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/README.md +167 -0
  2. package/dist/bot/agent-provider.d.ts +15 -1
  3. package/dist/bot/agent-provider.d.ts.map +1 -1
  4. package/dist/bot/agent-provider.js +78 -2
  5. package/dist/bot/agent-provider.js.map +1 -1
  6. package/dist/bot/ai-client.d.ts +4 -0
  7. package/dist/bot/ai-client.d.ts.map +1 -0
  8. package/dist/bot/ai-client.js +46 -0
  9. package/dist/bot/ai-client.js.map +1 -0
  10. package/dist/bot/bot-agent-channel.d.ts +14 -1
  11. package/dist/bot/bot-agent-channel.d.ts.map +1 -1
  12. package/dist/bot/bot-agent-channel.js +16 -0
  13. package/dist/bot/bot-agent-channel.js.map +1 -1
  14. package/dist/bot/cli-provider.d.ts +16 -1
  15. package/dist/bot/cli-provider.d.ts.map +1 -1
  16. package/dist/bot/cli-provider.js +10 -0
  17. package/dist/bot/cli-provider.js.map +1 -1
  18. package/dist/bot/dashboard.d.ts.map +1 -1
  19. package/dist/bot/dashboard.js +2 -2
  20. package/dist/bot/dashboard.js.map +1 -1
  21. package/dist/bot/file-lock.d.ts +7 -0
  22. package/dist/bot/file-lock.d.ts.map +1 -0
  23. package/dist/bot/file-lock.js +64 -0
  24. package/dist/bot/file-lock.js.map +1 -0
  25. package/dist/bot/file-validator.d.ts +7 -0
  26. package/dist/bot/file-validator.d.ts.map +1 -0
  27. package/dist/bot/file-validator.js +20 -0
  28. package/dist/bot/file-validator.js.map +1 -0
  29. package/dist/bot/genesis-store.d.ts +18 -0
  30. package/dist/bot/genesis-store.d.ts.map +1 -0
  31. package/dist/bot/genesis-store.js +89 -0
  32. package/dist/bot/genesis-store.js.map +1 -0
  33. package/dist/bot/index.d.ts +7 -1
  34. package/dist/bot/index.d.ts.map +1 -1
  35. package/dist/bot/index.js +8 -0
  36. package/dist/bot/index.js.map +1 -1
  37. package/dist/bot/runner.d.ts.map +1 -1
  38. package/dist/bot/runner.js +2 -4
  39. package/dist/bot/runner.js.map +1 -1
  40. package/dist/bot/session-state.d.ts +3 -3
  41. package/dist/bot/session-state.d.ts.map +1 -1
  42. package/dist/bot/session-state.js +24 -15
  43. package/dist/bot/session-state.js.map +1 -1
  44. package/dist/bot/steering.d.ts +2 -2
  45. package/dist/bot/steering.d.ts.map +1 -1
  46. package/dist/bot/steering.js +20 -15
  47. package/dist/bot/steering.js.map +1 -1
  48. package/dist/bot/step-executor.d.ts +9 -0
  49. package/dist/bot/step-executor.d.ts.map +1 -0
  50. package/dist/bot/step-executor.js +51 -0
  51. package/dist/bot/step-executor.js.map +1 -0
  52. package/dist/bot/task-queue.d.ts +8 -8
  53. package/dist/bot/task-queue.d.ts.map +1 -1
  54. package/dist/bot/task-queue.js +58 -47
  55. package/dist/bot/task-queue.js.map +1 -1
  56. package/dist/bot/types.d.ts +131 -0
  57. package/dist/bot/types.d.ts.map +1 -1
  58. package/dist/cli-bridge.d.ts.map +1 -1
  59. package/dist/cli-bridge.js +2 -4
  60. package/dist/cli-bridge.js.map +1 -1
  61. package/dist/cli-handlers.d.ts +4 -1
  62. package/dist/cli-handlers.d.ts.map +1 -1
  63. package/dist/cli-handlers.js +84 -8
  64. package/dist/cli-handlers.js.map +1 -1
  65. package/dist/index.d.ts +4 -3
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +3 -1
  68. package/dist/index.js.map +1 -1
  69. package/dist/mcp-tools.d.ts.map +1 -1
  70. package/dist/mcp-tools.js +27 -5
  71. package/dist/mcp-tools.js.map +1 -1
  72. package/dist/node-types/abort-task.d.ts +5 -12
  73. package/dist/node-types/abort-task.d.ts.map +1 -1
  74. package/dist/node-types/abort-task.js +11 -16
  75. package/dist/node-types/abort-task.js.map +1 -1
  76. package/dist/node-types/approval-gate.d.ts +4 -21
  77. package/dist/node-types/approval-gate.d.ts.map +1 -1
  78. package/dist/node-types/approval-gate.js +17 -23
  79. package/dist/node-types/approval-gate.js.map +1 -1
  80. package/dist/node-types/bot-report.d.ts +8 -10
  81. package/dist/node-types/bot-report.d.ts.map +1 -1
  82. package/dist/node-types/bot-report.js +28 -24
  83. package/dist/node-types/bot-report.js.map +1 -1
  84. package/dist/node-types/build-context.d.ts +5 -18
  85. package/dist/node-types/build-context.d.ts.map +1 -1
  86. package/dist/node-types/build-context.js +14 -23
  87. package/dist/node-types/build-context.js.map +1 -1
  88. package/dist/node-types/detect-provider.d.ts +7 -10
  89. package/dist/node-types/detect-provider.d.ts.map +1 -1
  90. package/dist/node-types/detect-provider.js +8 -12
  91. package/dist/node-types/detect-provider.js.map +1 -1
  92. package/dist/node-types/exec-validate-retry.d.ts +5 -26
  93. package/dist/node-types/exec-validate-retry.d.ts.map +1 -1
  94. package/dist/node-types/exec-validate-retry.js +21 -144
  95. package/dist/node-types/exec-validate-retry.js.map +1 -1
  96. package/dist/node-types/execute-plan.d.ts +10 -18
  97. package/dist/node-types/execute-plan.d.ts.map +1 -1
  98. package/dist/node-types/execute-plan.js +13 -68
  99. package/dist/node-types/execute-plan.js.map +1 -1
  100. package/dist/node-types/execute-target.d.ts +5 -15
  101. package/dist/node-types/execute-target.d.ts.map +1 -1
  102. package/dist/node-types/execute-target.js +17 -85
  103. package/dist/node-types/execute-target.js.map +1 -1
  104. package/dist/node-types/fix-errors.d.ts +9 -17
  105. package/dist/node-types/fix-errors.d.ts.map +1 -1
  106. package/dist/node-types/fix-errors.js +13 -64
  107. package/dist/node-types/fix-errors.js.map +1 -1
  108. package/dist/node-types/genesis-apply-retry.d.ts +24 -0
  109. package/dist/node-types/genesis-apply-retry.d.ts.map +1 -0
  110. package/dist/node-types/genesis-apply-retry.js +95 -0
  111. package/dist/node-types/genesis-apply-retry.js.map +1 -0
  112. package/dist/node-types/genesis-apply.d.ts +29 -0
  113. package/dist/node-types/genesis-apply.d.ts.map +1 -0
  114. package/dist/node-types/genesis-apply.js +76 -0
  115. package/dist/node-types/genesis-apply.js.map +1 -0
  116. package/dist/node-types/genesis-approve.d.ts +19 -0
  117. package/dist/node-types/genesis-approve.d.ts.map +1 -0
  118. package/dist/node-types/genesis-approve.js +54 -0
  119. package/dist/node-types/genesis-approve.js.map +1 -0
  120. package/dist/node-types/genesis-check-stabilize.d.ts +16 -0
  121. package/dist/node-types/genesis-check-stabilize.d.ts.map +1 -0
  122. package/dist/node-types/genesis-check-stabilize.js +32 -0
  123. package/dist/node-types/genesis-check-stabilize.js.map +1 -0
  124. package/dist/node-types/genesis-check-threshold.d.ts +15 -0
  125. package/dist/node-types/genesis-check-threshold.d.ts.map +1 -0
  126. package/dist/node-types/genesis-check-threshold.js +29 -0
  127. package/dist/node-types/genesis-check-threshold.js.map +1 -0
  128. package/dist/node-types/genesis-commit.d.ts +17 -0
  129. package/dist/node-types/genesis-commit.d.ts.map +1 -0
  130. package/dist/node-types/genesis-commit.js +59 -0
  131. package/dist/node-types/genesis-commit.js.map +1 -0
  132. package/dist/node-types/genesis-compile-validate.d.ts +26 -0
  133. package/dist/node-types/genesis-compile-validate.d.ts.map +1 -0
  134. package/dist/node-types/genesis-compile-validate.js +60 -0
  135. package/dist/node-types/genesis-compile-validate.js.map +1 -0
  136. package/dist/node-types/genesis-diff-fingerprint.d.ts +15 -0
  137. package/dist/node-types/genesis-diff-fingerprint.d.ts.map +1 -0
  138. package/dist/node-types/genesis-diff-fingerprint.js +59 -0
  139. package/dist/node-types/genesis-diff-fingerprint.js.map +1 -0
  140. package/dist/node-types/genesis-diff-workflow.d.ts +15 -0
  141. package/dist/node-types/genesis-diff-workflow.d.ts.map +1 -0
  142. package/dist/node-types/genesis-diff-workflow.js +39 -0
  143. package/dist/node-types/genesis-diff-workflow.js.map +1 -0
  144. package/dist/node-types/genesis-load-config.d.ts +17 -0
  145. package/dist/node-types/genesis-load-config.d.ts.map +1 -0
  146. package/dist/node-types/genesis-load-config.js +35 -0
  147. package/dist/node-types/genesis-load-config.js.map +1 -0
  148. package/dist/node-types/genesis-observe.d.ts +18 -0
  149. package/dist/node-types/genesis-observe.d.ts.map +1 -0
  150. package/dist/node-types/genesis-observe.js +101 -0
  151. package/dist/node-types/genesis-observe.js.map +1 -0
  152. package/dist/node-types/genesis-propose.d.ts +17 -0
  153. package/dist/node-types/genesis-propose.d.ts.map +1 -0
  154. package/dist/node-types/genesis-propose.js +67 -0
  155. package/dist/node-types/genesis-propose.js.map +1 -0
  156. package/dist/node-types/genesis-report.d.ts +18 -0
  157. package/dist/node-types/genesis-report.d.ts.map +1 -0
  158. package/dist/node-types/genesis-report.js +61 -0
  159. package/dist/node-types/genesis-report.js.map +1 -0
  160. package/dist/node-types/genesis-snapshot.d.ts +15 -0
  161. package/dist/node-types/genesis-snapshot.d.ts.map +1 -0
  162. package/dist/node-types/genesis-snapshot.js +26 -0
  163. package/dist/node-types/genesis-snapshot.js.map +1 -0
  164. package/dist/node-types/genesis-try-apply.d.ts +18 -0
  165. package/dist/node-types/genesis-try-apply.d.ts.map +1 -0
  166. package/dist/node-types/genesis-try-apply.js +109 -0
  167. package/dist/node-types/genesis-try-apply.js.map +1 -0
  168. package/dist/node-types/genesis-update-history.d.ts +15 -0
  169. package/dist/node-types/genesis-update-history.d.ts.map +1 -0
  170. package/dist/node-types/genesis-update-history.js +57 -0
  171. package/dist/node-types/genesis-update-history.js.map +1 -0
  172. package/dist/node-types/genesis-validate-proposal.d.ts +16 -0
  173. package/dist/node-types/genesis-validate-proposal.d.ts.map +1 -0
  174. package/dist/node-types/genesis-validate-proposal.js +52 -0
  175. package/dist/node-types/genesis-validate-proposal.js.map +1 -0
  176. package/dist/node-types/git-ops.d.ts +5 -8
  177. package/dist/node-types/git-ops.d.ts.map +1 -1
  178. package/dist/node-types/git-ops.js +16 -14
  179. package/dist/node-types/git-ops.js.map +1 -1
  180. package/dist/node-types/index.d.ts +17 -0
  181. package/dist/node-types/index.d.ts.map +1 -1
  182. package/dist/node-types/index.js +17 -0
  183. package/dist/node-types/index.js.map +1 -1
  184. package/dist/node-types/load-config.d.ts +4 -2
  185. package/dist/node-types/load-config.d.ts.map +1 -1
  186. package/dist/node-types/load-config.js +3 -2
  187. package/dist/node-types/load-config.js.map +1 -1
  188. package/dist/node-types/plan-task.d.ts +5 -20
  189. package/dist/node-types/plan-task.d.ts.map +1 -1
  190. package/dist/node-types/plan-task.js +16 -85
  191. package/dist/node-types/plan-task.js.map +1 -1
  192. package/dist/node-types/read-workflow.d.ts +5 -20
  193. package/dist/node-types/read-workflow.d.ts.map +1 -1
  194. package/dist/node-types/read-workflow.js +16 -28
  195. package/dist/node-types/read-workflow.js.map +1 -1
  196. package/dist/node-types/receive-task.d.ts +9 -20
  197. package/dist/node-types/receive-task.d.ts.map +1 -1
  198. package/dist/node-types/receive-task.js +16 -19
  199. package/dist/node-types/receive-task.js.map +1 -1
  200. package/dist/node-types/report.d.ts +3 -4
  201. package/dist/node-types/report.d.ts.map +1 -1
  202. package/dist/node-types/report.js +6 -6
  203. package/dist/node-types/report.js.map +1 -1
  204. package/dist/node-types/resolve-target.d.ts +7 -15
  205. package/dist/node-types/resolve-target.d.ts.map +1 -1
  206. package/dist/node-types/resolve-target.js +47 -47
  207. package/dist/node-types/resolve-target.js.map +1 -1
  208. package/dist/node-types/route-task.d.ts +4 -16
  209. package/dist/node-types/route-task.d.ts.map +1 -1
  210. package/dist/node-types/route-task.js +6 -13
  211. package/dist/node-types/route-task.js.map +1 -1
  212. package/dist/node-types/send-notify.d.ts +5 -11
  213. package/dist/node-types/send-notify.d.ts.map +1 -1
  214. package/dist/node-types/send-notify.js +17 -24
  215. package/dist/node-types/send-notify.js.map +1 -1
  216. package/dist/node-types/validate-result.d.ts +11 -19
  217. package/dist/node-types/validate-result.d.ts.map +1 -1
  218. package/dist/node-types/validate-result.js +18 -33
  219. package/dist/node-types/validate-result.js.map +1 -1
  220. package/dist/workflows/genesis-task.d.ts +52 -0
  221. package/dist/workflows/genesis-task.d.ts.map +1 -0
  222. package/dist/workflows/genesis-task.js +56 -0
  223. package/dist/workflows/genesis-task.js.map +1 -0
  224. package/dist/workflows/index.d.ts +1 -1
  225. package/dist/workflows/index.d.ts.map +1 -1
  226. package/dist/workflows/index.js +1 -1
  227. package/dist/workflows/index.js.map +1 -1
  228. package/dist/workflows/weaver-bot-batch.d.ts +15 -26
  229. package/dist/workflows/weaver-bot-batch.d.ts.map +1 -1
  230. package/dist/workflows/weaver-bot-batch.js +15 -26
  231. package/dist/workflows/weaver-bot-batch.js.map +1 -1
  232. package/dist/workflows/weaver-bot.d.ts +18 -32
  233. package/dist/workflows/weaver-bot.d.ts.map +1 -1
  234. package/dist/workflows/weaver-bot.js +18 -32
  235. package/dist/workflows/weaver-bot.js.map +1 -1
  236. package/dist/workflows/weaver.d.ts +9 -9
  237. package/dist/workflows/weaver.js +9 -9
  238. package/flowweaver.manifest.json +494 -558
  239. package/package.json +3 -3
  240. package/dist/workflows/weaver-bot-session.d.ts +0 -65
  241. package/dist/workflows/weaver-bot-session.d.ts.map +0 -1
  242. package/dist/workflows/weaver-bot-session.js +0 -68
  243. package/dist/workflows/weaver-bot-session.js.map +0 -1
package/README.md ADDED
@@ -0,0 +1,167 @@
1
+ # Weaver
2
+
3
+ Weaver is an autonomous AI bot that creates, runs, and evolves Flow Weaver workflows. It is itself built as a set of Flow Weaver workflows, so the bot that evolves workflows is a workflow. It ships as a marketplace pack (`@synergenius/flowweaver-pack-weaver`) and plugs into any Flow Weaver project.
4
+
5
+ Weaver understands the full Flow Weaver ecosystem: annotation grammar, compilation, validation, CLI tools, node patterns, error diagnosis, and the Genesis self-evolution protocol. This knowledge is loaded dynamically from `@synergenius/flow-weaver/doc-metadata`, so Weaver always stays current with the engine.
6
+
7
+ ## How it works
8
+
9
+ Weaver connects to an AI provider (Anthropic API, Claude CLI, or GitHub Copilot CLI), detects the right one automatically or uses your `.weaver.json` config, and operates in one of four modes:
10
+
11
+ **Run mode** (`weaver run`) executes an existing workflow file with an AI agent channel attached. The agent channel lets nodes inside the target workflow pause and ask Weaver for decisions. This is how Genesis works: the genesis-task workflow asks Weaver what evolutions to propose, and Weaver responds with structured operations.
12
+
13
+ **Bot mode** (`weaver bot "create a greeting workflow"`) takes a task instruction and handles it end-to-end. It builds context from the project, sends the task to the AI for planning, presents the plan for approval, executes the plan steps (writing files, running CLI commands, compiling), validates the results, and retries with AI-generated fixes if validation fails. Git operations and notifications run in parallel after execution.
14
+
15
+ **Batch mode** (`weaver bot --batch`) processes multiple sub-tasks sequentially through the same plan-approve-execute cycle.
16
+
17
+ **Session mode** (`weaver session`) polls a task queue continuously, picking up tasks submitted via CLI or MCP and processing them one at a time through the full pipeline.
18
+
19
+ ## The three workflows
20
+
21
+ Each mode maps to a workflow file that wires the same set of reusable node types differently:
22
+
23
+ `weaver.ts` is the runner. Six nodes in a line: load config, detect provider, find the target, execute it, notify, report.
24
+
25
+ `weaver-bot.ts` is the single-task bot. It adds task routing (read-only tasks skip to analysis, actionable tasks go through planning), an approval gate with an abort path, the execute-validate-retry loop, and parallel fan-out to git ops and notifications before merging at the report node. Session mode also uses this workflow, running it in a continuous loop that polls the task queue.
26
+
27
+ `weaver-bot-batch.ts` is the batch variant. Same pipeline as the bot but without read-only routing, since batch tasks are always actionable.
28
+
29
+ All three workflows are customizable. Run `weaver eject` to get a local copy you can modify in Studio: add nodes, change connections, insert custom approval logic, whatever you need.
30
+
31
+ ## Installation
32
+
33
+ ```bash
34
+ flow-weaver pack add @synergenius/flowweaver-pack-weaver
35
+ ```
36
+
37
+ Or scaffold a new project with it:
38
+
39
+ ```bash
40
+ flow-weaver init # select "AI Workflow Runner"
41
+ ```
42
+
43
+ ## Configuration
44
+
45
+ Place a `.weaver.json` in your project root:
46
+
47
+ ```json
48
+ {
49
+ "provider": "auto",
50
+ "target": "src/my-workflow.ts",
51
+ "approval": "auto",
52
+ "notify": [
53
+ { "channel": "discord", "url": "https://discord.com/api/webhooks/..." }
54
+ ]
55
+ }
56
+ ```
57
+
58
+ ### Provider
59
+
60
+ Controls which AI provider Weaver uses.
61
+
62
+ `"auto"` (default) tries in order: `ANTHROPIC_API_KEY` env var, `claude` CLI, `copilot` CLI.
63
+
64
+ Explicit string values: `"anthropic"`, `"claude-cli"`, `"copilot-cli"`.
65
+
66
+ Object form for full control:
67
+
68
+ ```json
69
+ {
70
+ "provider": {
71
+ "name": "anthropic",
72
+ "model": "claude-sonnet-4-6",
73
+ "maxTokens": 8192
74
+ }
75
+ }
76
+ ```
77
+
78
+ ### Approval
79
+
80
+ How the approval gate behaves in bot mode.
81
+
82
+ `"auto"` approves immediately. `"prompt"` asks interactively. `"timeout-auto"` waits N seconds then approves.
83
+
84
+ ```json
85
+ {
86
+ "approval": { "mode": "timeout-auto", "timeoutSeconds": 120 }
87
+ }
88
+ ```
89
+
90
+ ### Notifications
91
+
92
+ Array of webhook targets. Supports Discord (rich embeds), Slack (Block Kit), and raw webhooks.
93
+
94
+ ```json
95
+ {
96
+ "notify": [
97
+ { "channel": "discord", "url": "...", "events": ["workflow-complete", "error"] },
98
+ { "channel": "slack", "url": "..." }
99
+ ]
100
+ }
101
+ ```
102
+
103
+ ## CLI commands
104
+
105
+ The pack adds these commands to `flow-weaver`:
106
+
107
+ | Command | Description |
108
+ |---------|-------------|
109
+ | `weaver run [file]` | Run a workflow with Weaver |
110
+ | `weaver bot <task>` | Give Weaver a task to execute |
111
+ | `weaver session` | Start continuous queue processing |
112
+ | `weaver eject` | Copy the managed workflow for customization |
113
+ | `weaver history [id]` | List recent runs |
114
+ | `weaver costs` | Show token usage and cost summary |
115
+ | `weaver providers` | List detected AI providers |
116
+ | `weaver steer <cmd>` | Send pause/resume/cancel to a running bot |
117
+ | `weaver queue <op>` | Manage the task queue (add, list, clear, remove) |
118
+ | `weaver watch <file>` | Re-run on file changes |
119
+ | `weaver cron <expr> <file>` | Run on a schedule |
120
+ | `weaver pipeline <config>` | Run a multi-stage pipeline |
121
+ | `weaver dashboard [file]` | Live execution dashboard |
122
+
123
+ ## MCP tools
124
+
125
+ For IDE integration, the pack exposes MCP tools: `fw_weaver_run`, `fw_weaver_bot`, `fw_weaver_steer`, `fw_weaver_queue`, `fw_weaver_status`, `fw_weaver_history`, `fw_weaver_costs`, `fw_weaver_providers`.
126
+
127
+ ## Node types
128
+
129
+ The pack ships 19 node types usable in any Flow Weaver workflow. The core ones:
130
+
131
+ `weaverLoadConfig` reads `.weaver.json` and outputs the parsed config object.
132
+
133
+ `weaverDetectProvider` resolves the AI provider and assembles a `WeaverEnv` bundle (project dir, config, provider type, provider info) that flows through the rest of the pipeline as a single typed object.
134
+
135
+ `weaverReceiveTask` picks up a task from CLI args, MCP, or the queue.
136
+
137
+ `weaverBuildContext` generates the knowledge bundle the AI needs for planning, pulling annotation grammar and docs from the Flow Weaver engine.
138
+
139
+ `weaverPlanTask` sends the task and context to the AI and gets back a structured execution plan.
140
+
141
+ `weaverApprovalGate` presents the plan for approval, branching to abort on rejection.
142
+
143
+ `weaverExecValidateRetry` runs the plan, validates with `flow-weaver validate`, and on failure asks the AI for fixes. Up to 3 attempts.
144
+
145
+ `weaverGitOps` stages and commits modified files.
146
+
147
+ `weaverSendNotify` dispatches webhook notifications.
148
+
149
+ ## Programmatic usage
150
+
151
+ ```typescript
152
+ import { runWorkflow, createProvider, detectProvider, BotAgentChannel } from '@synergenius/flowweaver-pack-weaver';
153
+
154
+ const result = await runWorkflow('path/to/workflow.ts', { verbose: true });
155
+ ```
156
+
157
+ Or build a custom agent channel for more control:
158
+
159
+ ```typescript
160
+ const providerConfig = detectProvider();
161
+ const provider = createProvider(providerConfig);
162
+ const channel = new BotAgentChannel(provider, { systemPrompt: '...' });
163
+ ```
164
+
165
+ ## License
166
+
167
+ See [LICENSE](./LICENSE).
@@ -1,4 +1,4 @@
1
- import type { BotProviderConfig, BotConfig, BotAgentProvider, OnUsageCallback } from './types.js';
1
+ import type { BotProviderConfig, BotConfig, BotAgentProvider, OnUsageCallback, StreamChunk, ToolDefinition, ToolUseResult } from './types.js';
2
2
  import type { ProviderRegistry } from './provider-registry.js';
3
3
  export type { BotAgentProvider };
4
4
  export declare function resolveProviderConfig(provider: BotConfig['provider']): BotProviderConfig;
@@ -14,6 +14,20 @@ export declare class AnthropicAgentProvider implements BotAgentProvider {
14
14
  context: Record<string, unknown>;
15
15
  prompt: string;
16
16
  }): Promise<Record<string, unknown>>;
17
+ stream(request: {
18
+ agentId: string;
19
+ context: Record<string, unknown>;
20
+ prompt: string;
21
+ }): AsyncIterable<StreamChunk>;
22
+ decideWithTools(request: {
23
+ agentId: string;
24
+ context: Record<string, unknown>;
25
+ prompt: string;
26
+ tools: ToolDefinition[];
27
+ }): Promise<{
28
+ result: Record<string, unknown>;
29
+ toolCalls?: ToolUseResult[];
30
+ }>;
17
31
  private parseJson;
18
32
  private loadSdk;
19
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-provider.d.ts","sourceRoot":"","sources":["../../src/bot/agent-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAEjC,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,GAC9B,iBAAiB,CAInB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,GAAE,gBAAkC,GAC3C,OAAO,CAAC,gBAAgB,CAAC,CA4C3B;AAED,wBAAgB,cAAc,CAAC,QAAQ,GAAE,gBAAkC,GAAG,iBAAiB,CAwB9F;AAED,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,EAAE,eAAe,CAAC;gBAEd,MAAM,EAAE,iBAAiB;IAK/B,MAAM,CAAC,OAAO,EAAE;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA0CpC,OAAO,CAAC,SAAS;YAiBH,OAAO;CA+BtB"}
1
+ {"version":3,"file":"agent-provider.d.ts","sourceRoot":"","sources":["../../src/bot/agent-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG9I,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAEjC,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,GAC9B,iBAAiB,CAInB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,GAAE,gBAAkC,GAC3C,OAAO,CAAC,gBAAgB,CAAC,CA4C3B;AAED,wBAAgB,cAAc,CAAC,QAAQ,GAAE,gBAAkC,GAAG,iBAAiB,CAwB9F;AAED,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,EAAE,eAAe,CAAC;gBAEd,MAAM,EAAE,iBAAiB;IAK/B,MAAM,CAAC,OAAO,EAAE;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA0C7B,MAAM,CAAC,OAAO,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,aAAa,CAAC,WAAW,CAAC;IA2CxB,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,cAAc,EAAE,CAAC;KACzB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IA0C7E,OAAO,CAAC,SAAS;YAkBH,OAAO;CAWtB"}
@@ -1,4 +1,4 @@
1
- import { execSync } from 'node:child_process';
1
+ import { execFileSync } from 'node:child_process';
2
2
  import { buildSystemPrompt } from './system-prompt.js';
3
3
  import { defaultRegistry, loadExternalProvider } from './provider-registry.js';
4
4
  const WHICH_CMD = process.platform === 'win32' ? 'where' : 'which';
@@ -61,7 +61,7 @@ export function detectProvider(registry = defaultRegistry) {
61
61
  for (const { name, metadata } of registry.list()) {
62
62
  if (metadata.detectCliCommand) {
63
63
  try {
64
- execSync(`${WHICH_CMD} ${metadata.detectCliCommand}`, { stdio: 'pipe' });
64
+ execFileSync(WHICH_CMD, [metadata.detectCliCommand], { stdio: 'pipe' });
65
65
  return { name };
66
66
  }
67
67
  catch { /* not installed */ }
@@ -112,6 +112,81 @@ export class AnthropicAgentProvider {
112
112
  const text = response.content[0].type === 'text' ? response.content[0].text : '';
113
113
  return this.parseJson(text);
114
114
  }
115
+ async *stream(request) {
116
+ if (!process.env.ANTHROPIC_API_KEY) {
117
+ throw new Error('ANTHROPIC_API_KEY environment variable is required for the Anthropic provider');
118
+ }
119
+ const Anthropic = await this.loadSdk();
120
+ const client = new Anthropic();
121
+ const systemPrompt = await buildSystemPrompt();
122
+ const contextStr = typeof request.context === 'string'
123
+ ? request.context
124
+ : JSON.stringify(request.context, null, 2);
125
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
126
+ const stream = client.messages.stream({
127
+ model: this.model,
128
+ max_tokens: this.maxTokens,
129
+ system: systemPrompt,
130
+ messages: [{ role: 'user', content: `Context:\n${contextStr}\n\nInstructions:\n${request.prompt}` }],
131
+ });
132
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
133
+ for await (const event of stream) {
134
+ if (event.type === 'content_block_delta' && event.delta?.type === 'text_delta') {
135
+ yield { type: 'text', text: event.delta.text };
136
+ }
137
+ }
138
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
139
+ const finalMessage = await stream.finalMessage();
140
+ if (finalMessage?.usage) {
141
+ const usage = {
142
+ inputTokens: finalMessage.usage.input_tokens,
143
+ outputTokens: finalMessage.usage.output_tokens,
144
+ cacheCreationInputTokens: finalMessage.usage.cache_creation_input_tokens,
145
+ cacheReadInputTokens: finalMessage.usage.cache_read_input_tokens,
146
+ };
147
+ if (this.onUsage)
148
+ this.onUsage(request.agentId, finalMessage.model ?? this.model, usage);
149
+ yield { type: 'usage', usage };
150
+ }
151
+ yield { type: 'done' };
152
+ }
153
+ async decideWithTools(request) {
154
+ if (!process.env.ANTHROPIC_API_KEY) {
155
+ throw new Error('ANTHROPIC_API_KEY environment variable is required for the Anthropic provider');
156
+ }
157
+ const Anthropic = await this.loadSdk();
158
+ const client = new Anthropic();
159
+ const systemPrompt = await buildSystemPrompt();
160
+ const contextStr = typeof request.context === 'string'
161
+ ? request.context
162
+ : JSON.stringify(request.context, null, 2);
163
+ const response = await client.messages.create({
164
+ model: this.model,
165
+ max_tokens: this.maxTokens,
166
+ system: systemPrompt,
167
+ messages: [{ role: 'user', content: `Context:\n${contextStr}\n\nInstructions:\n${request.prompt}` }],
168
+ tools: request.tools,
169
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
170
+ });
171
+ if (this.onUsage && response.usage) {
172
+ this.onUsage(request.agentId, response.model ?? this.model, {
173
+ inputTokens: response.usage.input_tokens,
174
+ outputTokens: response.usage.output_tokens,
175
+ cacheCreationInputTokens: response.usage.cache_creation_input_tokens,
176
+ cacheReadInputTokens: response.usage.cache_read_input_tokens,
177
+ });
178
+ }
179
+ const toolCalls = [];
180
+ let text = '';
181
+ for (const block of response.content) {
182
+ if (block.type === 'text')
183
+ text = block.text;
184
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
185
+ else if (block.type === 'tool_use')
186
+ toolCalls.push({ toolName: block.name, toolInput: block.input });
187
+ }
188
+ return { result: this.parseJson(text || '{}'), toolCalls: toolCalls.length > 0 ? toolCalls : undefined };
189
+ }
115
190
  parseJson(text) {
116
191
  let cleaned = text.trim();
117
192
  if (cleaned.startsWith('```')) {
@@ -128,6 +203,7 @@ export class AnthropicAgentProvider {
128
203
  throw new Error(`Failed to parse AI response as JSON: ${text.slice(0, 200)}`);
129
204
  }
130
205
  }
206
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
131
207
  async loadSdk() {
132
208
  try {
133
209
  // @ts-expect-error -- optional peer dep, loaded at runtime
@@ -1 +1 @@
1
- {"version":3,"file":"agent-provider.js","sourceRoot":"","sources":["../../src/bot/agent-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-provider.js","sourceRoot":"","sources":["../../src/bot/agent-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function callCli(provider: string, prompt: string): string;
2
+ export declare function callApi(apiKey: string, model: string, maxTokens: number, systemPrompt: string, userPrompt: string): Promise<string>;
3
+ export declare function parseJsonResponse(text: string): Record<string, unknown>;
4
+ //# sourceMappingURL=ai-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-client.d.ts","sourceRoot":"","sources":["../../src/bot/ai-client.ts"],"names":[],"mappings":"AAEA,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAYhE;AAED,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAChD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GACvC,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASvE"}
@@ -0,0 +1,46 @@
1
+ import { execSync } from 'node:child_process';
2
+ export function callCli(provider, prompt) {
3
+ if (provider === 'claude-cli') {
4
+ return execSync('claude -p --output-format text', {
5
+ input: prompt, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'], timeout: 120_000,
6
+ }).trim();
7
+ }
8
+ if (provider === 'copilot-cli') {
9
+ return execSync('copilot -p --silent --allow-all-tools', {
10
+ input: prompt, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'], timeout: 120_000,
11
+ }).trim();
12
+ }
13
+ throw new Error(`Unknown CLI provider: ${provider}`);
14
+ }
15
+ export async function callApi(apiKey, model, maxTokens, systemPrompt, userPrompt) {
16
+ const body = JSON.stringify({
17
+ model, max_tokens: maxTokens, system: systemPrompt,
18
+ messages: [{ role: 'user', content: userPrompt }],
19
+ });
20
+ const response = await fetch('https://api.anthropic.com/v1/messages', {
21
+ method: 'POST',
22
+ headers: { 'x-api-key': apiKey, 'anthropic-version': '2023-06-01', 'content-type': 'application/json' },
23
+ body,
24
+ });
25
+ if (!response.ok) {
26
+ const text = await response.text();
27
+ throw new Error(`Anthropic API error ${response.status}: ${text.slice(0, 200)}`);
28
+ }
29
+ const json = await response.json();
30
+ return json.content[0]?.text ?? '';
31
+ }
32
+ export function parseJsonResponse(text) {
33
+ let cleaned = text.trim();
34
+ if (cleaned.startsWith('```')) {
35
+ cleaned = cleaned.replace(/^```(?:json)?\s*\n?/, '').replace(/\n?```\s*$/, '');
36
+ }
37
+ try {
38
+ return JSON.parse(cleaned);
39
+ }
40
+ catch { /* fallthrough */ }
41
+ const match = cleaned.match(/\{[\s\S]*\}/);
42
+ if (match)
43
+ return JSON.parse(match[0]);
44
+ throw new Error(`Failed to parse AI response as JSON: ${text.slice(0, 200)}`);
45
+ }
46
+ //# sourceMappingURL=ai-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-client.js","sourceRoot":"","sources":["../../src/bot/ai-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,UAAU,OAAO,CAAC,QAAgB,EAAE,MAAc;IACtD,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC,gCAAgC,EAAE;YAChD,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO;SACpF,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC/B,OAAO,QAAQ,CAAC,uCAAuC,EAAE;YACvD,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO;SACpF,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EAAE,KAAa,EAAE,SAAiB,EAChD,YAAoB,EAAE,UAAkB;IAExC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY;QAClD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;KAClD,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;QACpE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACvG,IAAI;KACL,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAwD,CAAC;IACzF,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { BotAgentProvider } from './agent-provider.js';
2
- import type { ApprovalMode, NotificationEvent } from './types.js';
2
+ import type { ApprovalMode, NotificationEvent, StreamChunk, ToolDefinition, ToolUseResult } from './types.js';
3
3
  import type { DashboardServer } from './dashboard.js';
4
4
  export interface BotChannelContext {
5
5
  projectDir: string;
@@ -26,6 +26,19 @@ export declare class BotAgentChannel {
26
26
  prompt: string;
27
27
  }): Promise<object>;
28
28
  private handleApproval;
29
+ requestWithTools(agentRequest: {
30
+ agentId: string;
31
+ context: Record<string, unknown>;
32
+ prompt: string;
33
+ }, tools: ToolDefinition[]): Promise<{
34
+ result: Record<string, unknown>;
35
+ toolCalls?: ToolUseResult[];
36
+ }>;
37
+ streamRequest(agentRequest: {
38
+ agentId: string;
39
+ context: Record<string, unknown>;
40
+ prompt: string;
41
+ }): AsyncIterable<StreamChunk>;
29
42
  onPause(): Promise<object>;
30
43
  resume(_result: object): void;
31
44
  fail(_reason: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"bot-agent-channel.d.ts","sourceRoot":"","sources":["../../src/bot/bot-agent-channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,eAAe,CAA2C;IAClE,OAAO,CAAC,QAAQ,CAA8C;IAC9D,OAAO,CAAC,OAAO,CAAoB;gBAGjC,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE;QACP,YAAY,EAAE,YAAY,CAAC;QAC3B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,EAAE,iBAAiB,CAAC;KAC5B;IAcG,OAAO,CAAC,YAAY,EAAE;QAC1B,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC;YAOL,cAAc;IAgB5B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAG1B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAC5B"}
1
+ {"version":3,"file":"bot-agent-channel.d.ts","sourceRoot":"","sources":["../../src/bot/bot-agent-channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE9G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,eAAe,CAA2C;IAClE,OAAO,CAAC,QAAQ,CAA8C;IAC9D,OAAO,CAAC,OAAO,CAAoB;gBAGjC,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE;QACP,YAAY,EAAE,YAAY,CAAC;QAC3B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,EAAE,iBAAiB,CAAC;KAC5B;IAcG,OAAO,CAAC,YAAY,EAAE;QAC1B,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC;YAOL,cAAc;IAetB,gBAAgB,CACpB,YAAY,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EACnF,KAAK,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAQrE,aAAa,CAAC,YAAY,EAAE;QACjC,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,aAAa,CAAC,WAAW,CAAC;IAW9B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAG1B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAC5B"}
@@ -32,6 +32,22 @@ export class BotAgentChannel {
32
32
  };
33
33
  return this.approvalHandler.handle(request, event);
34
34
  }
35
+ async requestWithTools(agentRequest, tools) {
36
+ if (this.provider.decideWithTools) {
37
+ return this.provider.decideWithTools({ ...agentRequest, tools });
38
+ }
39
+ const result = await this.provider.decide(agentRequest);
40
+ return { result };
41
+ }
42
+ async *streamRequest(agentRequest) {
43
+ if (this.provider.stream) {
44
+ yield* this.provider.stream(agentRequest);
45
+ return;
46
+ }
47
+ const result = await this.provider.decide(agentRequest);
48
+ yield { type: 'text', text: JSON.stringify(result) };
49
+ yield { type: 'done' };
50
+ }
35
51
  // Compat stubs for AgentChannel interface (used by executor, not by nodes)
36
52
  onPause() {
37
53
  return new Promise(() => { });
@@ -1 +1 @@
1
- {"version":3,"file":"bot-agent-channel.js","sourceRoot":"","sources":["../../src/bot/bot-agent-channel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AASvD,MAAM,OAAO,eAAe;IAClB,QAAQ,CAAmB;IAC3B,eAAe,CAA2C;IAC1D,QAAQ,CAA8C;IACtD,OAAO,CAAoB;IAEnC,YACE,QAA0B,EAC1B,OAQC;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,YAAY,EAAE;YACjE,cAAc,EAAE,OAAO,CAAC,sBAAsB;YAC9C,UAAU,EAAE,OAAO,CAAC,kBAAkB;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,eAAe;YAChC,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,YAIb;QACC,IAAI,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAG5B;QACC,MAAM,KAAK,GAAsB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;YACvC,QAAQ,EAAE,OAAO,CAAC,OAAO;SAC1B,CAAC;QAEF,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,2EAA2E;IAC3E,OAAO;QACL,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,CAAC,OAAe,IAAS,CAAC;IAChC,IAAI,CAAC,OAAe,IAAS,CAAC;CAC/B"}
1
+ {"version":3,"file":"bot-agent-channel.js","sourceRoot":"","sources":["../../src/bot/bot-agent-channel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AASvD,MAAM,OAAO,eAAe;IAClB,QAAQ,CAAmB;IAC3B,eAAe,CAA2C;IAC1D,QAAQ,CAA8C;IACtD,OAAO,CAAoB;IAEnC,YACE,QAA0B,EAC1B,OAQC;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,YAAY,EAAE;YACjE,cAAc,EAAE,OAAO,CAAC,sBAAsB;YAC9C,UAAU,EAAE,OAAO,CAAC,kBAAkB;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,eAAe;YAChC,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,YAIb;QACC,IAAI,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAG5B;QACC,MAAM,KAAK,GAAsB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;YACvC,QAAQ,EAAE,OAAO,CAAC,OAAO;SAC1B,CAAC;QAEF,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,YAAmF,EACnF,KAAuB;QAEvB,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACxD,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,CAAC,aAAa,CAAC,YAIpB;QACC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACxD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzB,CAAC;IAED,2EAA2E;IAC3E,OAAO;QACL,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,CAAC,OAAe,IAAS,CAAC;IAChC,IAAI,CAAC,OAAe,IAAS,CAAC;CAC/B"}
@@ -1,12 +1,27 @@
1
- import type { BotAgentProvider } from './agent-provider.js';
1
+ import type { BotAgentProvider, OnUsageCallback, StreamChunk, ToolDefinition, ToolUseResult } from './types.js';
2
2
  export declare class CliAgentProvider implements BotAgentProvider {
3
3
  private cli;
4
+ onUsage?: OnUsageCallback;
4
5
  constructor(cli: 'claude-cli' | 'copilot-cli');
5
6
  decide(request: {
6
7
  agentId: string;
7
8
  context: Record<string, unknown>;
8
9
  prompt: string;
9
10
  }): Promise<Record<string, unknown>>;
11
+ stream(request: {
12
+ agentId: string;
13
+ context: Record<string, unknown>;
14
+ prompt: string;
15
+ }): AsyncIterable<StreamChunk>;
16
+ decideWithTools(request: {
17
+ agentId: string;
18
+ context: Record<string, unknown>;
19
+ prompt: string;
20
+ tools: ToolDefinition[];
21
+ }): Promise<{
22
+ result: Record<string, unknown>;
23
+ toolCalls?: ToolUseResult[];
24
+ }>;
10
25
  private parseJson;
11
26
  }
12
27
  //# sourceMappingURL=cli-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-provider.d.ts","sourceRoot":"","sources":["../../src/bot/cli-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,qBAAa,gBAAiB,YAAW,gBAAgB;IACvD,OAAO,CAAC,GAAG,CAA+B;gBAE9B,GAAG,EAAE,YAAY,GAAG,aAAa;IAIvC,MAAM,CAAC,OAAO,EAAE;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA8BpC,OAAO,CAAC,SAAS;CAgBlB"}
1
+ {"version":3,"file":"cli-provider.d.ts","sourceRoot":"","sources":["../../src/bot/cli-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhH,qBAAa,gBAAiB,YAAW,gBAAgB;IACvD,OAAO,CAAC,GAAG,CAA+B;IAC1C,OAAO,CAAC,EAAE,eAAe,CAAC;gBAEd,GAAG,EAAE,YAAY,GAAG,aAAa;IAIvC,MAAM,CAAC,OAAO,EAAE;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA8B7B,MAAM,CAAC,OAAO,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,aAAa,CAAC,WAAW,CAAC;IAMxB,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,cAAc,EAAE,CAAC;KACzB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAK7E,OAAO,CAAC,SAAS;CAgBlB"}
@@ -2,6 +2,7 @@ import { execSync } from 'node:child_process';
2
2
  import { buildSystemPrompt } from './system-prompt.js';
3
3
  export class CliAgentProvider {
4
4
  cli;
5
+ onUsage;
5
6
  constructor(cli) {
6
7
  this.cli = cli;
7
8
  }
@@ -30,6 +31,15 @@ export class CliAgentProvider {
30
31
  }
31
32
  return this.parseJson(raw);
32
33
  }
34
+ async *stream(request) {
35
+ const result = await this.decide(request);
36
+ yield { type: 'text', text: JSON.stringify(result) };
37
+ yield { type: 'done' };
38
+ }
39
+ async decideWithTools(request) {
40
+ const result = await this.decide(request);
41
+ return { result };
42
+ }
33
43
  parseJson(text) {
34
44
  let cleaned = text.trim();
35
45
  if (cleaned.startsWith('```')) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-provider.js","sourceRoot":"","sources":["../../src/bot/cli-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,OAAO,gBAAgB;IACnB,GAAG,CAA+B;IAE1C,YAAY,GAAiC;QAC3C,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAIZ;QACC,MAAM,YAAY,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAE/C,MAAM,UAAU,GACd,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACjC,CAAC,CAAC,OAAO,CAAC,OAAO;YACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,GAAG,YAAY,iBAAiB,UAAU,sBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEpG,IAAI,GAAW,CAAC;QAChB,IAAI,IAAI,CAAC,GAAG,KAAK,YAAY,EAAE,CAAC;YAC9B,GAAG,GAAG,QAAQ,CAAC,gCAAgC,EAAE;gBAC/C,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,QAAQ,CAAC,uCAAuC,EAAE;gBACtD,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAEO,SAAS,CAAC,IAAY;QAC5B,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3C,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"cli-provider.js","sourceRoot":"","sources":["../../src/bot/cli-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,OAAO,gBAAgB;IACnB,GAAG,CAA+B;IAC1C,OAAO,CAAmB;IAE1B,YAAY,GAAiC;QAC3C,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAIZ;QACC,MAAM,YAAY,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAE/C,MAAM,UAAU,GACd,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACjC,CAAC,CAAC,OAAO,CAAC,OAAO;YACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,GAAG,YAAY,iBAAiB,UAAU,sBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC;QAEpG,IAAI,GAAW,CAAC;QAChB,IAAI,IAAI,CAAC,GAAG,KAAK,YAAY,EAAE,CAAC;YAC9B,GAAG,GAAG,QAAQ,CAAC,gCAAgC,EAAE;gBAC/C,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,QAAQ,CAAC,uCAAuC,EAAE;gBACtD,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,OAIb;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAKrB;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAEO,SAAS,CAAC,IAAY;QAC5B,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3C,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/bot/dashboard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EAId,sBAAsB,EACtB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAqBrD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,KAAK,CAKX;IACF,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,UAAU,CAAuB;gBAE7B,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAKnD,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAYxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,MAAM,IAAI,MAAM;IAIhB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAYtC,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAU/C,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAelD,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAYlE,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAW3C,gBAAgB,CACd,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAC7D,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GACxC,MAAM;IAaT,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQhC,mBAAmB,IAAI,OAAO;IAI9B,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,aAAa;IAmFrB,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,eAAe;CAwBxB"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/bot/dashboard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EAId,sBAAsB,EACtB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAqBrD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,KAAK,CAKX;IACF,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,UAAU,CAAuB;gBAE7B,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAKnD,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAYxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,MAAM,IAAI,MAAM;IAIhB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAYtC,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAU/C,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAelD,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAYlE,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAW3C,gBAAgB,CACd,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAC7D,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GACxC,MAAM;IAaT,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQhC,mBAAmB,IAAI,OAAO;IAI9B,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,aAAa;IAmFrB,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,eAAe;YAOT,cAAc;IAO5B,OAAO,CAAC,eAAe;CAwBxB"}
@@ -273,9 +273,9 @@ export class DashboardServer {
273
273
  res.writeHead(200, { 'Content-Type': 'application/json' });
274
274
  res.end(JSON.stringify(session ?? { status: 'idle', currentTask: null, completedTasks: 0 }));
275
275
  }
276
- handleBotQueue(res) {
276
+ async handleBotQueue(res) {
277
277
  const queue = new TaskQueue();
278
- const tasks = queue.list();
278
+ const tasks = await queue.list();
279
279
  res.writeHead(200, { 'Content-Type': 'application/json' });
280
280
  res.end(JSON.stringify(tasks));
281
281
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/bot/dashboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/bot/dashboard.ts"],"names":[],"mappings":"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"}