@botbotgo/agent-harness 0.0.99 → 0.0.101
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 +3 -6
- package/README.zh.md +2 -2
- package/dist/benchmark/upstream-runtime-ab-benchmark.d.ts +1 -1
- package/dist/benchmark/upstream-runtime-ab-benchmark.js +1 -2
- package/dist/contracts/core.d.ts +2 -2
- package/dist/contracts/runtime.d.ts +1 -5
- package/dist/package-version.d.ts +1 -1
- package/dist/package-version.js +1 -1
- package/dist/resource/resource-impl.js +78 -76
- package/dist/runtime/adapter/deepagent-runnable-config.d.ts +30 -0
- package/dist/runtime/adapter/deepagent-runnable-config.js +22 -0
- package/dist/runtime/adapter/index.d.ts +0 -2
- package/dist/runtime/adapter/index.js +0 -2
- package/dist/runtime/adapter/invocation-result.d.ts +13 -0
- package/dist/runtime/adapter/invocation-result.js +40 -0
- package/dist/runtime/adapter/langchain-runnable-config.d.ts +25 -0
- package/dist/runtime/adapter/langchain-runnable-config.js +19 -0
- package/dist/runtime/adapter/local-tool-invocation.d.ts +23 -0
- package/dist/runtime/adapter/local-tool-invocation.js +64 -0
- package/dist/runtime/adapter/runtime-adapter-support.d.ts +18 -0
- package/dist/runtime/adapter/runtime-adapter-support.js +54 -0
- package/dist/runtime/adapter/stream-event-projection.d.ts +19 -0
- package/dist/runtime/adapter/stream-event-projection.js +79 -0
- package/dist/runtime/adapter/stream-text-consumption.d.ts +4 -0
- package/dist/runtime/adapter/stream-text-consumption.js +18 -0
- package/dist/runtime/adapter/tool/builtin-middleware-tools.d.ts +64 -0
- package/dist/runtime/adapter/tool/builtin-middleware-tools.js +144 -0
- package/dist/runtime/adapter/tool/tool-replay.d.ts +18 -0
- package/dist/runtime/adapter/tool/tool-replay.js +26 -0
- package/dist/runtime/agent-runtime-adapter.d.ts +2 -54
- package/dist/runtime/agent-runtime-adapter.js +122 -1568
- package/dist/runtime/harness/run/helpers.js +2 -8
- package/dist/runtime/harness/run/recovery.d.ts +42 -0
- package/dist/runtime/harness/run/recovery.js +139 -0
- package/dist/runtime/harness/run/routing.d.ts +1 -3
- package/dist/runtime/harness/run/routing.js +2 -25
- package/dist/runtime/harness/run/run-lifecycle.d.ts +0 -11
- package/dist/runtime/harness/run/run-lifecycle.js +7 -50
- package/dist/runtime/harness/runtime-defaults.d.ts +4 -0
- package/dist/runtime/harness/runtime-defaults.js +39 -0
- package/dist/runtime/harness/system/inventory.js +2 -1
- package/dist/runtime/harness/system/skill-requirements.d.ts +1 -0
- package/dist/runtime/harness.d.ts +5 -24
- package/dist/runtime/harness.js +356 -536
- package/dist/runtime/index.d.ts +1 -12
- package/dist/runtime/index.js +1 -12
- package/dist/runtime/support/compiled-binding.d.ts +0 -2
- package/dist/runtime/support/compiled-binding.js +3 -22
- package/dist/runtime/support/harness-support.d.ts +0 -11
- package/dist/runtime/support/harness-support.js +1 -44
- package/dist/runtime/support/index.d.ts +1 -1
- package/dist/runtime/support/index.js +1 -1
- package/dist/runtime/support/runtime-factories.js +2 -2
- package/dist/workspace/agent-binding-compiler.js +9 -93
- package/dist/workspace/index.d.ts +0 -5
- package/dist/workspace/index.js +0 -5
- package/dist/workspace/object-loader.js +44 -99
- package/dist/workspace/support/agent-capabilities.js +2 -2
- package/dist/workspace/support/workspace-ref-utils.d.ts +0 -2
- package/dist/workspace/support/workspace-ref-utils.js +0 -17
- package/dist/workspace/validate.js +1 -1
- package/package.json +1 -1
- package/dist/config/workflows/langgraph-workflows.yaml +0 -570
- package/dist/config/workflows/runtime-profiles.yaml +0 -94
- package/dist/runtime/adapter/langgraph/presets.d.ts +0 -25
- package/dist/runtime/adapter/langgraph/presets.js +0 -165
- package/dist/runtime/adapter/langgraph/profiles.d.ts +0 -6
- package/dist/runtime/adapter/langgraph/profiles.js +0 -206
- package/dist/runtime/checkpoint-maintenance.d.ts +0 -1
- package/dist/runtime/checkpoint-maintenance.js +0 -1
- package/dist/runtime/file-checkpoint-saver.d.ts +0 -1
- package/dist/runtime/file-checkpoint-saver.js +0 -1
- package/dist/runtime/sqlite-maintained-checkpoint-saver.d.ts +0 -1
- package/dist/runtime/sqlite-maintained-checkpoint-saver.js +0 -1
|
@@ -39,21 +39,12 @@ export function getRuntimeMemoryDefaults(refs) {
|
|
|
39
39
|
export function getRuntimeModelDefaults(refs) {
|
|
40
40
|
const runtimeDefaults = getRuntimeDefaults(refs);
|
|
41
41
|
const modelRefs = {
|
|
42
|
-
...(typeof runtimeDefaults?.routingModelRef === "string" && runtimeDefaults.routingModelRef.trim()
|
|
43
|
-
? { routing: runtimeDefaults.routingModelRef.trim() }
|
|
44
|
-
: {}),
|
|
45
42
|
...(typeof runtimeDefaults?.planningModelRef === "string" && runtimeDefaults.planningModelRef.trim()
|
|
46
43
|
? { planning: runtimeDefaults.planningModelRef.trim() }
|
|
47
44
|
: {}),
|
|
48
45
|
...(typeof runtimeDefaults?.executionModelRef === "string" && runtimeDefaults.executionModelRef.trim()
|
|
49
46
|
? { execution: runtimeDefaults.executionModelRef.trim() }
|
|
50
47
|
: {}),
|
|
51
|
-
...(typeof runtimeDefaults?.reviewModelRef === "string" && runtimeDefaults.reviewModelRef.trim()
|
|
52
|
-
? { review: runtimeDefaults.reviewModelRef.trim() }
|
|
53
|
-
: {}),
|
|
54
|
-
...(typeof runtimeDefaults?.finalModelRef === "string" && runtimeDefaults.finalModelRef.trim()
|
|
55
|
-
? { final: runtimeDefaults.finalModelRef.trim() }
|
|
56
|
-
: {}),
|
|
57
48
|
};
|
|
58
49
|
return Object.keys(modelRefs).length > 0 ? modelRefs : undefined;
|
|
59
50
|
}
|
|
@@ -145,20 +136,12 @@ export function getResilienceConfig(refs) {
|
|
|
145
136
|
},
|
|
146
137
|
};
|
|
147
138
|
}
|
|
148
|
-
export function getRoutingSystemPrompt(refs) {
|
|
149
|
-
const routing = getRoutingObject(refs);
|
|
150
|
-
return typeof routing?.systemPrompt === "string" && routing.systemPrompt.trim() ? routing.systemPrompt : undefined;
|
|
151
|
-
}
|
|
152
139
|
export function getRoutingDefaultAgentId(refs) {
|
|
153
140
|
const routing = getRoutingObject(refs);
|
|
154
141
|
return typeof routing?.defaultAgentId === "string" && routing.defaultAgentId.trim()
|
|
155
142
|
? routing.defaultAgentId.trim()
|
|
156
143
|
: undefined;
|
|
157
144
|
}
|
|
158
|
-
export function isModelRoutingEnabled(refs) {
|
|
159
|
-
const routing = getRoutingObject(refs);
|
|
160
|
-
return routing?.modelRouting === true;
|
|
161
|
-
}
|
|
162
145
|
function toStringList(value) {
|
|
163
146
|
if (typeof value === "string" && value.trim()) {
|
|
164
147
|
return [value];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { hasAgentSystemPrompt, isDelegationCapableAgent, isMemoryCapableAgent, } from "./support/agent-capabilities.js";
|
|
2
|
-
const allowedExecutionModes = new Set(["deepagent", "langchain-v1"
|
|
2
|
+
const allowedExecutionModes = new Set(["deepagent", "langchain-v1"]);
|
|
3
3
|
function validateCheckpointerConfig(agent) {
|
|
4
4
|
const checkpointer = (typeof agent.deepAgentConfig?.checkpointer === "object" && agent.deepAgentConfig.checkpointer) ||
|
|
5
5
|
(typeof agent.deepAgentConfig?.checkpointer === "boolean" ? agent.deepAgentConfig.checkpointer : undefined) ||
|
package/package.json
CHANGED
|
@@ -1,570 +0,0 @@
|
|
|
1
|
-
# agent-harness feature: schema version for this declarative config object.
|
|
2
|
-
apiVersion: agent-harness/v1alpha1
|
|
3
|
-
# agent-harness feature: catalog of reusable LangGraph-shaped workflow resources.
|
|
4
|
-
kind: LangGraphWorkflows
|
|
5
|
-
spec:
|
|
6
|
-
- id: default
|
|
7
|
-
entryNode: step1
|
|
8
|
-
nodes:
|
|
9
|
-
- id: step1
|
|
10
|
-
kind: llm
|
|
11
|
-
role: planner
|
|
12
|
-
prompt: >-
|
|
13
|
-
You are the workflow planner. Produce a concise plan for the user request
|
|
14
|
-
before execution starts.
|
|
15
|
-
- id: step2
|
|
16
|
-
kind: agent
|
|
17
|
-
- id: step3
|
|
18
|
-
kind: llm
|
|
19
|
-
role: reviewer
|
|
20
|
-
prompt: >-
|
|
21
|
-
Review the current result, call out missing verification or obvious gaps,
|
|
22
|
-
and state whether the work looks sufficient.
|
|
23
|
-
- id: step4
|
|
24
|
-
kind: llm
|
|
25
|
-
role: replanner
|
|
26
|
-
prompt: >-
|
|
27
|
-
Refine the plan based on the reviewer feedback and current result.
|
|
28
|
-
Return only the updated plan.
|
|
29
|
-
- id: step5
|
|
30
|
-
kind: llm
|
|
31
|
-
role: finalizer
|
|
32
|
-
prompt: >-
|
|
33
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
34
|
-
Preserve facts and caveats.
|
|
35
|
-
edges:
|
|
36
|
-
- from: step1
|
|
37
|
-
to: step2
|
|
38
|
-
- from: step2
|
|
39
|
-
to: step3
|
|
40
|
-
when: has_result
|
|
41
|
-
- from: step3
|
|
42
|
-
to: step5
|
|
43
|
-
when: review_ok
|
|
44
|
-
- from: step3
|
|
45
|
-
to: step4
|
|
46
|
-
when: review_incomplete
|
|
47
|
-
- from: step4
|
|
48
|
-
to: step2
|
|
49
|
-
when: has_plan
|
|
50
|
-
- id: react
|
|
51
|
-
entryNode: step1
|
|
52
|
-
nodes:
|
|
53
|
-
- id: step1
|
|
54
|
-
kind: agent
|
|
55
|
-
edges: []
|
|
56
|
-
- id: prompt-chaining
|
|
57
|
-
entryNode: step1
|
|
58
|
-
nodes:
|
|
59
|
-
- id: step1
|
|
60
|
-
kind: llm
|
|
61
|
-
role: planner
|
|
62
|
-
prompt: >-
|
|
63
|
-
You are the workflow planner. Produce a concise execution plan for the user request
|
|
64
|
-
before execution starts.
|
|
65
|
-
- id: step2
|
|
66
|
-
kind: agent
|
|
67
|
-
- id: step3
|
|
68
|
-
kind: llm
|
|
69
|
-
role: finalizer
|
|
70
|
-
prompt: >-
|
|
71
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
72
|
-
Preserve facts and caveats.
|
|
73
|
-
edges:
|
|
74
|
-
- from: step1
|
|
75
|
-
to: step2
|
|
76
|
-
- from: step2
|
|
77
|
-
to: step3
|
|
78
|
-
when: has_result
|
|
79
|
-
- id: routing
|
|
80
|
-
entryNode: step1
|
|
81
|
-
nodes:
|
|
82
|
-
- id: step1
|
|
83
|
-
kind: llm
|
|
84
|
-
role: planner
|
|
85
|
-
prompt: >-
|
|
86
|
-
You are the workflow planner. Produce a concise execution plan for the user request
|
|
87
|
-
before execution starts.
|
|
88
|
-
- id: step2
|
|
89
|
-
kind: agent
|
|
90
|
-
agent: worker
|
|
91
|
-
- id: step3
|
|
92
|
-
kind: llm
|
|
93
|
-
role: finalizer
|
|
94
|
-
prompt: >-
|
|
95
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
96
|
-
Preserve facts and caveats.
|
|
97
|
-
edges:
|
|
98
|
-
- from: step1
|
|
99
|
-
to: step2
|
|
100
|
-
- from: step2
|
|
101
|
-
to: step3
|
|
102
|
-
when: has_result
|
|
103
|
-
- id: parallelization
|
|
104
|
-
entryNode: step1
|
|
105
|
-
nodes:
|
|
106
|
-
- id: step1
|
|
107
|
-
kind: llm
|
|
108
|
-
role: planner
|
|
109
|
-
prompt: >-
|
|
110
|
-
You are the workflow planner. Produce a concise execution plan for the user request
|
|
111
|
-
before execution starts.
|
|
112
|
-
- id: step2
|
|
113
|
-
kind: agent
|
|
114
|
-
agent: worker
|
|
115
|
-
- id: step3
|
|
116
|
-
kind: llm
|
|
117
|
-
role: reviewer
|
|
118
|
-
prompt: >-
|
|
119
|
-
Review the current result, call out missing verification or obvious gaps,
|
|
120
|
-
and state whether the work looks sufficient.
|
|
121
|
-
- id: step4
|
|
122
|
-
kind: llm
|
|
123
|
-
role: finalizer
|
|
124
|
-
prompt: >-
|
|
125
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
126
|
-
Preserve facts and caveats.
|
|
127
|
-
edges:
|
|
128
|
-
- from: step1
|
|
129
|
-
to: step2
|
|
130
|
-
- from: step2
|
|
131
|
-
to: step3
|
|
132
|
-
when: has_result
|
|
133
|
-
- from: step3
|
|
134
|
-
to: step4
|
|
135
|
-
when: review_ok
|
|
136
|
-
- id: plan-execute
|
|
137
|
-
entryNode: step1
|
|
138
|
-
nodes:
|
|
139
|
-
- id: step1
|
|
140
|
-
kind: llm
|
|
141
|
-
role: planner
|
|
142
|
-
prompt: >-
|
|
143
|
-
You are the workflow planner. Produce a concise execution plan for the user request
|
|
144
|
-
before execution starts.
|
|
145
|
-
- id: step2
|
|
146
|
-
kind: agent
|
|
147
|
-
- id: step3
|
|
148
|
-
kind: llm
|
|
149
|
-
role: finalizer
|
|
150
|
-
prompt: >-
|
|
151
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
152
|
-
Preserve facts and caveats.
|
|
153
|
-
edges:
|
|
154
|
-
- from: step1
|
|
155
|
-
to: step2
|
|
156
|
-
- from: step2
|
|
157
|
-
to: step3
|
|
158
|
-
when: has_result
|
|
159
|
-
- id: review-loop
|
|
160
|
-
entryNode: step1
|
|
161
|
-
nodes:
|
|
162
|
-
- id: step1
|
|
163
|
-
kind: llm
|
|
164
|
-
role: planner
|
|
165
|
-
prompt: >-
|
|
166
|
-
You are the workflow planner. Produce a concise plan for the user request
|
|
167
|
-
before execution starts.
|
|
168
|
-
- id: step2
|
|
169
|
-
kind: agent
|
|
170
|
-
- id: step3
|
|
171
|
-
kind: llm
|
|
172
|
-
role: reviewer
|
|
173
|
-
prompt: >-
|
|
174
|
-
Review the current result, call out missing verification or obvious gaps,
|
|
175
|
-
and state whether the work looks sufficient.
|
|
176
|
-
- id: step4
|
|
177
|
-
kind: llm
|
|
178
|
-
role: replanner
|
|
179
|
-
prompt: >-
|
|
180
|
-
Refine the plan based on the reviewer feedback and current result.
|
|
181
|
-
Return only the updated plan.
|
|
182
|
-
- id: step5
|
|
183
|
-
kind: llm
|
|
184
|
-
role: finalizer
|
|
185
|
-
prompt: >-
|
|
186
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
187
|
-
Preserve facts and caveats.
|
|
188
|
-
edges:
|
|
189
|
-
- from: step1
|
|
190
|
-
to: step2
|
|
191
|
-
- from: step2
|
|
192
|
-
to: step3
|
|
193
|
-
when: has_result
|
|
194
|
-
- from: step3
|
|
195
|
-
to: step5
|
|
196
|
-
when: review_ok
|
|
197
|
-
- from: step3
|
|
198
|
-
to: step4
|
|
199
|
-
when: review_incomplete
|
|
200
|
-
- from: step4
|
|
201
|
-
to: step2
|
|
202
|
-
when: has_plan
|
|
203
|
-
- id: evaluator-optimizer
|
|
204
|
-
entryNode: step1
|
|
205
|
-
nodes:
|
|
206
|
-
- id: step1
|
|
207
|
-
kind: agent
|
|
208
|
-
- id: step2
|
|
209
|
-
kind: llm
|
|
210
|
-
role: reviewer
|
|
211
|
-
prompt: >-
|
|
212
|
-
Review the current result, call out missing verification or obvious gaps,
|
|
213
|
-
and state whether the work looks sufficient.
|
|
214
|
-
- id: step3
|
|
215
|
-
kind: llm
|
|
216
|
-
role: replanner
|
|
217
|
-
prompt: >-
|
|
218
|
-
Refine the plan based on the reviewer feedback and current result.
|
|
219
|
-
Return only the updated plan.
|
|
220
|
-
- id: step4
|
|
221
|
-
kind: llm
|
|
222
|
-
role: finalizer
|
|
223
|
-
prompt: >-
|
|
224
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
225
|
-
Preserve facts and caveats.
|
|
226
|
-
edges:
|
|
227
|
-
- from: step1
|
|
228
|
-
to: step2
|
|
229
|
-
when: has_result
|
|
230
|
-
- from: step2
|
|
231
|
-
to: step4
|
|
232
|
-
when: review_ok
|
|
233
|
-
- from: step2
|
|
234
|
-
to: step3
|
|
235
|
-
when: review_incomplete
|
|
236
|
-
- from: step3
|
|
237
|
-
to: step1
|
|
238
|
-
when: has_plan
|
|
239
|
-
- id: approval-gate
|
|
240
|
-
entryNode: step1
|
|
241
|
-
nodes:
|
|
242
|
-
- id: step1
|
|
243
|
-
kind: llm
|
|
244
|
-
role: planner
|
|
245
|
-
prompt: >-
|
|
246
|
-
You are the workflow planner. Produce a concise execution plan for the user request
|
|
247
|
-
before execution starts.
|
|
248
|
-
- id: step2
|
|
249
|
-
kind: approval
|
|
250
|
-
- id: step3
|
|
251
|
-
kind: agent
|
|
252
|
-
- id: step4
|
|
253
|
-
kind: llm
|
|
254
|
-
role: finalizer
|
|
255
|
-
prompt: >-
|
|
256
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
257
|
-
Preserve facts and caveats.
|
|
258
|
-
edges:
|
|
259
|
-
- from: step1
|
|
260
|
-
to: step2
|
|
261
|
-
- from: step2
|
|
262
|
-
to: step3
|
|
263
|
-
when: approval_approved
|
|
264
|
-
- from: step2
|
|
265
|
-
to: step3
|
|
266
|
-
when: approval_edited
|
|
267
|
-
- from: step3
|
|
268
|
-
to: step4
|
|
269
|
-
when: has_result
|
|
270
|
-
- id: handoff
|
|
271
|
-
entryNode: step1
|
|
272
|
-
nodes:
|
|
273
|
-
- id: step1
|
|
274
|
-
kind: agent
|
|
275
|
-
agent: worker
|
|
276
|
-
- id: step2
|
|
277
|
-
kind: llm
|
|
278
|
-
role: finalizer
|
|
279
|
-
prompt: >-
|
|
280
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
281
|
-
Preserve facts and caveats.
|
|
282
|
-
edges:
|
|
283
|
-
- from: step1
|
|
284
|
-
to: step2
|
|
285
|
-
when: has_result
|
|
286
|
-
- id: orchestrator-workers
|
|
287
|
-
entryNode: step1
|
|
288
|
-
nodes:
|
|
289
|
-
- id: step1
|
|
290
|
-
kind: llm
|
|
291
|
-
role: planner
|
|
292
|
-
prompt: >-
|
|
293
|
-
You are the workflow planner. Produce a concise plan for the user request
|
|
294
|
-
before execution starts.
|
|
295
|
-
- id: step2
|
|
296
|
-
kind: agent
|
|
297
|
-
agent: worker
|
|
298
|
-
- id: step3
|
|
299
|
-
kind: llm
|
|
300
|
-
role: reviewer
|
|
301
|
-
prompt: >-
|
|
302
|
-
Review the current result, call out missing verification or obvious gaps,
|
|
303
|
-
and state whether the work looks sufficient.
|
|
304
|
-
- id: step4
|
|
305
|
-
kind: llm
|
|
306
|
-
role: finalizer
|
|
307
|
-
prompt: >-
|
|
308
|
-
Rewrite the current result into a concise user-facing final answer.
|
|
309
|
-
Preserve facts and caveats.
|
|
310
|
-
edges:
|
|
311
|
-
- from: step1
|
|
312
|
-
to: step2
|
|
313
|
-
- from: step2
|
|
314
|
-
to: step3
|
|
315
|
-
when: has_result
|
|
316
|
-
- from: step3
|
|
317
|
-
to: step4
|
|
318
|
-
when: review_ok
|
|
319
|
-
- id: coding-loop
|
|
320
|
-
entryNode: step1
|
|
321
|
-
nodes:
|
|
322
|
-
- id: step1
|
|
323
|
-
kind: llm
|
|
324
|
-
role: planner
|
|
325
|
-
prompt: >-
|
|
326
|
-
You are the coding workflow planner. Define the intended code change and required verification.
|
|
327
|
-
- id: step2
|
|
328
|
-
kind: agent
|
|
329
|
-
agent: coderAgent
|
|
330
|
-
- id: step3
|
|
331
|
-
kind: llm
|
|
332
|
-
role: reviewer
|
|
333
|
-
prompt: >-
|
|
334
|
-
Review the coding result, note missing validation, and decide whether the work is sufficient.
|
|
335
|
-
- id: step4
|
|
336
|
-
kind: llm
|
|
337
|
-
role: replanner
|
|
338
|
-
prompt: >-
|
|
339
|
-
Update the coding plan based on reviewer feedback. Return only the revised concise plan.
|
|
340
|
-
- id: step5
|
|
341
|
-
kind: approval
|
|
342
|
-
- id: step6
|
|
343
|
-
kind: agent
|
|
344
|
-
agent: verifierAgent
|
|
345
|
-
- id: step7
|
|
346
|
-
kind: llm
|
|
347
|
-
role: finalizer
|
|
348
|
-
prompt: >-
|
|
349
|
-
Rewrite the coding result into a concise user-facing final answer with verification notes.
|
|
350
|
-
edges:
|
|
351
|
-
- from: step1
|
|
352
|
-
to: step2
|
|
353
|
-
- from: step2
|
|
354
|
-
to: step3
|
|
355
|
-
when: has_result
|
|
356
|
-
- from: step3
|
|
357
|
-
to: step5
|
|
358
|
-
when: review_ok
|
|
359
|
-
- from: step3
|
|
360
|
-
to: step4
|
|
361
|
-
when: review_incomplete
|
|
362
|
-
- from: step4
|
|
363
|
-
to: step2
|
|
364
|
-
when: has_plan
|
|
365
|
-
- from: step5
|
|
366
|
-
to: step6
|
|
367
|
-
when: approval_approved
|
|
368
|
-
- from: step5
|
|
369
|
-
to: step6
|
|
370
|
-
when: approval_edited
|
|
371
|
-
- from: step6
|
|
372
|
-
to: step7
|
|
373
|
-
when: has_result
|
|
374
|
-
- id: assistant-loop
|
|
375
|
-
entryNode: step1
|
|
376
|
-
nodes:
|
|
377
|
-
- id: step1
|
|
378
|
-
kind: llm
|
|
379
|
-
role: planner
|
|
380
|
-
prompt: >-
|
|
381
|
-
You are the assistant intake planner. Classify the request, determine whether it needs action,
|
|
382
|
-
and prepare the next step.
|
|
383
|
-
- id: step2
|
|
384
|
-
kind: agent
|
|
385
|
-
agent: defaultWorkerAgent
|
|
386
|
-
- id: step3
|
|
387
|
-
kind: llm
|
|
388
|
-
role: reviewer
|
|
389
|
-
prompt: >-
|
|
390
|
-
Review whether the assistant has enough information to answer directly or must ask for approval.
|
|
391
|
-
- id: step4
|
|
392
|
-
kind: approval
|
|
393
|
-
- id: step5
|
|
394
|
-
kind: llm
|
|
395
|
-
role: finalizer
|
|
396
|
-
prompt: >-
|
|
397
|
-
Produce a concise assistant reply. Keep action status, open questions, and caveats explicit.
|
|
398
|
-
edges:
|
|
399
|
-
- from: step1
|
|
400
|
-
to: step2
|
|
401
|
-
- from: step2
|
|
402
|
-
to: step3
|
|
403
|
-
when: has_result
|
|
404
|
-
- from: step3
|
|
405
|
-
to: step5
|
|
406
|
-
when: review_ok
|
|
407
|
-
- from: step3
|
|
408
|
-
to: step4
|
|
409
|
-
when: review_incomplete
|
|
410
|
-
- from: step4
|
|
411
|
-
to: step5
|
|
412
|
-
when: approval_approved
|
|
413
|
-
- from: step4
|
|
414
|
-
to: step5
|
|
415
|
-
when: approval_edited
|
|
416
|
-
- id: research-loop
|
|
417
|
-
entryNode: step1
|
|
418
|
-
nodes:
|
|
419
|
-
- id: step1
|
|
420
|
-
kind: llm
|
|
421
|
-
role: planner
|
|
422
|
-
prompt: >-
|
|
423
|
-
You are the research planner. Define the evidence to gather and what the final analysis must answer.
|
|
424
|
-
- id: step2
|
|
425
|
-
kind: agent
|
|
426
|
-
agent: gathererAgent
|
|
427
|
-
- id: step3
|
|
428
|
-
kind: llm
|
|
429
|
-
role: reviewer
|
|
430
|
-
prompt: >-
|
|
431
|
-
Review source coverage and note whether more evidence is required before analysis.
|
|
432
|
-
- id: step4
|
|
433
|
-
kind: agent
|
|
434
|
-
agent: analystAgent
|
|
435
|
-
- id: step5
|
|
436
|
-
kind: agent
|
|
437
|
-
agent: synthesizerAgent
|
|
438
|
-
- id: step6
|
|
439
|
-
kind: llm
|
|
440
|
-
role: finalizer
|
|
441
|
-
prompt: >-
|
|
442
|
-
Turn the research output into a concise, evidence-backed final answer.
|
|
443
|
-
edges:
|
|
444
|
-
- from: step1
|
|
445
|
-
to: step2
|
|
446
|
-
- from: step2
|
|
447
|
-
to: step3
|
|
448
|
-
when: has_result
|
|
449
|
-
- from: step3
|
|
450
|
-
to: step4
|
|
451
|
-
when: review_ok
|
|
452
|
-
- from: step3
|
|
453
|
-
to: step2
|
|
454
|
-
when: review_incomplete
|
|
455
|
-
- from: step4
|
|
456
|
-
to: step5
|
|
457
|
-
when: has_result
|
|
458
|
-
- from: step5
|
|
459
|
-
to: step6
|
|
460
|
-
when: has_result
|
|
461
|
-
- id: approval-review-loop
|
|
462
|
-
entryNode: step1
|
|
463
|
-
nodes:
|
|
464
|
-
- id: step1
|
|
465
|
-
kind: llm
|
|
466
|
-
role: planner
|
|
467
|
-
prompt: >-
|
|
468
|
-
You are the approval workflow planner. Clarify the requested action and the evidence needed for review.
|
|
469
|
-
- id: step2
|
|
470
|
-
kind: agent
|
|
471
|
-
agent: preparerAgent
|
|
472
|
-
- id: step3
|
|
473
|
-
kind: agent
|
|
474
|
-
agent: reviewerAgent
|
|
475
|
-
- id: step4
|
|
476
|
-
kind: approval
|
|
477
|
-
- id: step5
|
|
478
|
-
kind: llm
|
|
479
|
-
role: finalizer
|
|
480
|
-
prompt: >-
|
|
481
|
-
Summarize what was prepared, what was approved, and any remaining follow-up required.
|
|
482
|
-
edges:
|
|
483
|
-
- from: step1
|
|
484
|
-
to: step2
|
|
485
|
-
- from: step2
|
|
486
|
-
to: step3
|
|
487
|
-
when: has_result
|
|
488
|
-
- from: step3
|
|
489
|
-
to: step4
|
|
490
|
-
when: has_result
|
|
491
|
-
- from: step4
|
|
492
|
-
to: step5
|
|
493
|
-
when: approval_approved
|
|
494
|
-
- from: step4
|
|
495
|
-
to: step5
|
|
496
|
-
when: approval_edited
|
|
497
|
-
- id: chat-router-loop
|
|
498
|
-
entryNode: step1
|
|
499
|
-
nodes:
|
|
500
|
-
- id: step1
|
|
501
|
-
kind: llm
|
|
502
|
-
role: planner
|
|
503
|
-
prompt: >-
|
|
504
|
-
Route the chat request to the most suitable runtime target and prepare a concise handoff.
|
|
505
|
-
- id: step2
|
|
506
|
-
kind: agent
|
|
507
|
-
agent: assistantAgent
|
|
508
|
-
- id: step3
|
|
509
|
-
kind: llm
|
|
510
|
-
role: finalizer
|
|
511
|
-
prompt: >-
|
|
512
|
-
Convert the routed result into a channel-ready reply.
|
|
513
|
-
edges:
|
|
514
|
-
- from: step1
|
|
515
|
-
to: step2
|
|
516
|
-
- from: step2
|
|
517
|
-
to: step3
|
|
518
|
-
when: has_result
|
|
519
|
-
- id: coding-lite-loop
|
|
520
|
-
entryNode: step1
|
|
521
|
-
nodes:
|
|
522
|
-
- id: step1
|
|
523
|
-
kind: llm
|
|
524
|
-
role: planner
|
|
525
|
-
prompt: >-
|
|
526
|
-
You are the coding sidecar planner. Scope the repository help request and prepare the next coding step.
|
|
527
|
-
- id: step2
|
|
528
|
-
kind: agent
|
|
529
|
-
agent: coderAgent
|
|
530
|
-
- id: step3
|
|
531
|
-
kind: llm
|
|
532
|
-
role: finalizer
|
|
533
|
-
prompt: >-
|
|
534
|
-
Rewrite the coding sidecar result into a concise answer.
|
|
535
|
-
edges:
|
|
536
|
-
- from: step1
|
|
537
|
-
to: step2
|
|
538
|
-
- from: step2
|
|
539
|
-
to: step3
|
|
540
|
-
when: has_result
|
|
541
|
-
- id: delegation-loop
|
|
542
|
-
entryNode: step1
|
|
543
|
-
nodes:
|
|
544
|
-
- id: step1
|
|
545
|
-
kind: llm
|
|
546
|
-
role: planner
|
|
547
|
-
prompt: >-
|
|
548
|
-
Choose the best worker for the task and prepare a concise delegated plan.
|
|
549
|
-
- id: step2
|
|
550
|
-
kind: agent
|
|
551
|
-
agent: defaultWorkerFallback
|
|
552
|
-
- id: step3
|
|
553
|
-
kind: llm
|
|
554
|
-
role: reviewer
|
|
555
|
-
prompt: >-
|
|
556
|
-
Review the delegated result and decide whether it is sufficient to finalize.
|
|
557
|
-
- id: step4
|
|
558
|
-
kind: llm
|
|
559
|
-
role: finalizer
|
|
560
|
-
prompt: >-
|
|
561
|
-
Rewrite the delegated task result into a concise user-facing answer.
|
|
562
|
-
edges:
|
|
563
|
-
- from: step1
|
|
564
|
-
to: step2
|
|
565
|
-
- from: step2
|
|
566
|
-
to: step3
|
|
567
|
-
when: has_result
|
|
568
|
-
- from: step3
|
|
569
|
-
to: step4
|
|
570
|
-
when: review_ok
|