@beeos-ai/device-agent 0.15.0 → 0.16.1
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 +35 -0
- package/dist/adapters/agent-gateway-client.d.ts +6 -68
- package/dist/adapters/agent-gateway-client.js +7 -67
- package/dist/adapters/agent-gateway-client.js.map +1 -1
- package/dist/adapters/device-compat.d.ts +1 -2
- package/dist/adapters/device-compat.js +2 -52
- package/dist/adapters/device-compat.js.map +1 -1
- package/dist/agent-runtime/action-guard.js +92 -17
- package/dist/agent-runtime/action-guard.js.map +1 -1
- package/dist/agent-runtime/adapters/base.d.ts +13 -9
- package/dist/agent-runtime/adapters/base.js.map +1 -1
- package/dist/agent-runtime/adapters/general-flash.d.ts +3 -3
- package/dist/agent-runtime/adapters/general-flash.js +2 -2
- package/dist/agent-runtime/adapters/general-flash.js.map +1 -1
- package/dist/agent-runtime/adapters/native-tools.d.ts +56 -0
- package/dist/agent-runtime/adapters/native-tools.js +416 -0
- package/dist/agent-runtime/adapters/native-tools.js.map +1 -0
- package/dist/agent-runtime/adapters/openai.d.ts +1 -2
- package/dist/agent-runtime/adapters/openai.js +5 -5
- package/dist/agent-runtime/adapters/openai.js.map +1 -1
- package/dist/agent-runtime/adapters/pro.d.ts +7 -37
- package/dist/agent-runtime/adapters/pro.js +7 -249
- package/dist/agent-runtime/adapters/pro.js.map +1 -1
- package/dist/agent-runtime/advanced/app-card.js +9 -2
- package/dist/agent-runtime/advanced/app-card.js.map +1 -1
- package/dist/agent-runtime/advanced/subgoal-verifier.d.ts +1 -0
- package/dist/agent-runtime/advanced/subgoal-verifier.js +30 -36
- package/dist/agent-runtime/advanced/subgoal-verifier.js.map +1 -1
- package/dist/agent-runtime/advanced/task-state.js +4 -9
- package/dist/agent-runtime/advanced/task-state.js.map +1 -1
- package/dist/agent-runtime/agent-runner.d.ts +2 -11
- package/dist/agent-runtime/agent-runner.js +69 -34
- package/dist/agent-runtime/agent-runner.js.map +1 -1
- package/dist/agent-runtime/core.d.ts +24 -46
- package/dist/agent-runtime/core.js +161 -228
- package/dist/agent-runtime/core.js.map +1 -1
- package/dist/agent-runtime/execution-checks.d.ts +40 -0
- package/dist/agent-runtime/execution-checks.js +133 -0
- package/dist/agent-runtime/execution-checks.js.map +1 -0
- package/dist/agent-runtime/execution-mode.d.ts +1 -8
- package/dist/agent-runtime/execution-mode.js +10 -30
- package/dist/agent-runtime/execution-mode.js.map +1 -1
- package/dist/agent-runtime/feedback.d.ts +4 -28
- package/dist/agent-runtime/feedback.js +4 -26
- package/dist/agent-runtime/feedback.js.map +1 -1
- package/dist/agent-runtime/form-prerequisites.d.ts +3 -0
- package/dist/agent-runtime/form-prerequisites.js +52 -0
- package/dist/agent-runtime/form-prerequisites.js.map +1 -0
- package/dist/agent-runtime/index.d.ts +2 -8
- package/dist/agent-runtime/index.js +2 -8
- package/dist/agent-runtime/index.js.map +1 -1
- package/dist/agent-runtime/{modes/orchestrator → knowledge}/app-guide.d.ts +1 -1
- package/dist/agent-runtime/{modes/orchestrator → knowledge}/app-guide.js +1 -1
- package/dist/agent-runtime/knowledge/app-guide.js.map +1 -0
- package/dist/agent-runtime/models/base.d.ts +3 -1
- package/dist/agent-runtime/models/client.js +30 -9
- package/dist/agent-runtime/models/client.js.map +1 -1
- package/dist/agent-runtime/models/reasoning.d.ts +10 -0
- package/dist/agent-runtime/models/reasoning.js +29 -0
- package/dist/agent-runtime/models/reasoning.js.map +1 -0
- package/dist/agent-runtime/models/runtime-registry.d.ts +2 -1
- package/dist/agent-runtime/models/runtime-registry.js +4 -2
- package/dist/agent-runtime/models/runtime-registry.js.map +1 -1
- package/dist/agent-runtime/models/vlm/autoglm.js +6 -2
- package/dist/agent-runtime/models/vlm/autoglm.js.map +1 -1
- package/dist/agent-runtime/models/vlm/base.js +1 -12
- package/dist/agent-runtime/models/vlm/base.js.map +1 -1
- package/dist/agent-runtime/models/vlm/index.d.ts +0 -4
- package/dist/agent-runtime/models/vlm/index.js +0 -4
- package/dist/agent-runtime/models/vlm/index.js.map +1 -1
- package/dist/agent-runtime/modes/hybrid/index.d.ts +2 -12
- package/dist/agent-runtime/modes/hybrid/index.js +10 -27
- package/dist/agent-runtime/modes/hybrid/index.js.map +1 -1
- package/dist/agent-runtime/modes/hybrid/planner/base.d.ts +4 -44
- package/dist/agent-runtime/modes/hybrid/planner/base.js +3 -21
- package/dist/agent-runtime/modes/hybrid/planner/base.js.map +1 -1
- package/dist/agent-runtime/modes/hybrid/planner/llm-planner.d.ts +1 -1
- package/dist/agent-runtime/modes/hybrid/planner/llm-planner.js +9 -6
- package/dist/agent-runtime/modes/hybrid/planner/llm-planner.js.map +1 -1
- package/dist/agent-runtime/modes/hybrid/planner/prompts.d.ts +1 -17
- package/dist/agent-runtime/modes/hybrid/planner/prompts.js +65 -160
- package/dist/agent-runtime/modes/hybrid/planner/prompts.js.map +1 -1
- package/dist/agent-runtime/plan-executor.d.ts +13 -14
- package/dist/agent-runtime/plan-executor.js +236 -122
- package/dist/agent-runtime/plan-executor.js.map +1 -1
- package/dist/agent-runtime/pro-memory.js +1 -1
- package/dist/agent-runtime/pro-memory.js.map +1 -1
- package/dist/agent-runtime/pro-operator.js +8 -2
- package/dist/agent-runtime/pro-operator.js.map +1 -1
- package/dist/agent-runtime/pro-perception.d.ts +1 -0
- package/dist/agent-runtime/pro-perception.js +4 -2
- package/dist/agent-runtime/pro-perception.js.map +1 -1
- package/dist/agent-runtime/pro-target-check.d.ts +2 -2
- package/dist/agent-runtime/pro-target-check.js +102 -17
- package/dist/agent-runtime/pro-target-check.js.map +1 -1
- package/dist/agent-runtime/prompts/operator.d.ts +2 -0
- package/dist/agent-runtime/prompts/operator.js +69 -0
- package/dist/agent-runtime/prompts/operator.js.map +1 -0
- package/dist/agent-runtime/prompts/verification.d.ts +2 -0
- package/dist/agent-runtime/prompts/verification.js +52 -0
- package/dist/agent-runtime/prompts/verification.js.map +1 -0
- package/dist/agent-runtime/skills/replay.d.ts +4 -14
- package/dist/agent-runtime/skills/replay.js +46 -27
- package/dist/agent-runtime/skills/replay.js.map +1 -1
- package/dist/agent-runtime/tool-batch.d.ts +10 -0
- package/dist/agent-runtime/tool-batch.js +51 -0
- package/dist/agent-runtime/tool-batch.js.map +1 -0
- package/dist/agent-runtime/visual-state.d.ts +2 -0
- package/dist/agent-runtime/visual-state.js +24 -0
- package/dist/agent-runtime/visual-state.js.map +1 -0
- package/dist/agent-runtime/vlm.d.ts +1 -1
- package/dist/agent-runtime/vlm.js +1 -1
- package/dist/api.js +3 -1
- package/dist/api.js.map +1 -1
- package/dist/app/agent-host.js +6 -2
- package/dist/app/agent-host.js.map +1 -1
- package/dist/app/multi-device-host.js +4 -5
- package/dist/app/multi-device-host.js.map +1 -1
- package/dist/app/session-manager.d.ts +3 -45
- package/dist/app/session-manager.js +8 -9
- package/dist/app/session-manager.js.map +1 -1
- package/dist/bootstrap.js +25 -84
- package/dist/bootstrap.js.map +1 -1
- package/dist/config/loader.js +12 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +7 -2
- package/dist/config/schema.js +8 -5
- package/dist/config/schema.js.map +1 -1
- package/dist/core/abortable-read.d.ts +1 -0
- package/dist/core/abortable-read.js +24 -0
- package/dist/core/abortable-read.js.map +1 -0
- package/dist/device/ui-xml.d.ts +4 -0
- package/dist/device/ui-xml.js +35 -13
- package/dist/device/ui-xml.js.map +1 -1
- package/dist/fleet/adapters/process/node-process-manager.d.ts +2 -1
- package/dist/fleet/adapters/process/node-process-manager.js +11 -19
- package/dist/fleet/adapters/process/node-process-manager.js.map +1 -1
- package/dist/inbound/acp/handlers/models.js +11 -8
- package/dist/inbound/acp/handlers/models.js.map +1 -1
- package/dist/inbound/acp/handlers/session.d.ts +1 -4
- package/dist/inbound/acp/handlers/session.js +3 -6
- package/dist/inbound/acp/handlers/session.js.map +1 -1
- package/dist/inbound/bma/agent.d.ts +47 -0
- package/dist/inbound/bma/agent.js +130 -0
- package/dist/inbound/bma/agent.js.map +1 -0
- package/dist/inbound/bma/command.d.ts +15 -0
- package/dist/inbound/bma/command.js +98 -0
- package/dist/inbound/bma/command.js.map +1 -0
- package/dist/inbound/bma/model-proxy.d.ts +22 -0
- package/dist/inbound/bma/model-proxy.js +130 -0
- package/dist/inbound/bma/model-proxy.js.map +1 -0
- package/dist/inbound/cli/main.js +12 -2
- package/dist/inbound/cli/main.js.map +1 -1
- package/dist/inbound/cli/run-artifacts.js +16 -7
- package/dist/inbound/cli/run-artifacts.js.map +1 -1
- package/dist/inbound/cli/run-command.d.ts +7 -0
- package/dist/inbound/cli/run-command.js +37 -29
- package/dist/inbound/cli/run-command.js.map +1 -1
- package/dist/index.d.ts +1 -10
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/mcp-client/autospawn.d.ts +7 -9
- package/dist/mcp-client/autospawn.js +16 -12
- package/dist/mcp-client/autospawn.js.map +1 -1
- package/dist/mcp-client/client.d.ts +6 -3
- package/dist/mcp-client/client.js +31 -13
- package/dist/mcp-client/client.js.map +1 -1
- package/dist/mcp-client/runtime.d.ts +5 -2
- package/dist/plugins/agent-sync/index.d.ts +32 -17
- package/dist/plugins/agent-sync/index.js +223 -232
- package/dist/plugins/agent-sync/index.js.map +1 -1
- package/dist/plugins/message-bus/inbound.d.ts +0 -32
- package/dist/plugins/message-bus/inbound.js +3 -0
- package/dist/plugins/message-bus/inbound.js.map +1 -1
- package/dist/plugins/message-bus/ms-channel-notifier.d.ts +1 -0
- package/dist/plugins/message-bus/ms-channel-notifier.js +16 -8
- package/dist/plugins/message-bus/ms-channel-notifier.js.map +1 -1
- package/dist/plugins/native-chat/deadline.d.ts +2 -0
- package/dist/plugins/native-chat/deadline.js +16 -0
- package/dist/plugins/native-chat/deadline.js.map +1 -0
- package/dist/plugins/native-chat/index.d.ts +46 -0
- package/dist/plugins/native-chat/index.js +331 -0
- package/dist/plugins/native-chat/index.js.map +1 -0
- package/dist/plugins/native-chat/reply-stream.d.ts +50 -0
- package/dist/plugins/native-chat/reply-stream.js +81 -0
- package/dist/plugins/native-chat/reply-stream.js.map +1 -0
- package/dist/plugins/native-chat/session-notifier.d.ts +16 -0
- package/dist/plugins/native-chat/session-notifier.js +130 -0
- package/dist/plugins/native-chat/session-notifier.js.map +1 -0
- package/dist/ports/agent-core.d.ts +2 -0
- package/dist/ports/agent-host.d.ts +2 -0
- package/dist/ports/agent-host.js +0 -21
- package/dist/ports/agent-host.js.map +1 -1
- package/dist/ports/device.d.ts +0 -1
- package/dist/ports/device.js +0 -1
- package/dist/ports/device.js.map +1 -1
- package/dist/runtime-authority/device-prompt.gen.d.ts +54 -0
- package/dist/runtime-authority/device-prompt.gen.js +19 -0
- package/dist/runtime-authority/device-prompt.gen.js.map +1 -0
- package/dist/types.d.ts +10 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -1
- package/package.json +7 -5
- package/dist/adapters/device-desktop.d.ts +0 -49
- package/dist/adapters/device-desktop.js +0 -132
- package/dist/adapters/device-desktop.js.map +0 -1
- package/dist/agent-runtime/factory.d.ts +0 -24
- package/dist/agent-runtime/factory.js +0 -25
- package/dist/agent-runtime/factory.js.map +0 -1
- package/dist/agent-runtime/models/vlm/guiowl.d.ts +0 -1
- package/dist/agent-runtime/models/vlm/guiowl.js +0 -249
- package/dist/agent-runtime/models/vlm/guiowl.js.map +0 -1
- package/dist/agent-runtime/models/vlm/maiui.d.ts +0 -1
- package/dist/agent-runtime/models/vlm/maiui.js +0 -142
- package/dist/agent-runtime/models/vlm/maiui.js.map +0 -1
- package/dist/agent-runtime/models/vlm/qwen38.d.ts +0 -1
- package/dist/agent-runtime/models/vlm/qwen38.js +0 -241
- package/dist/agent-runtime/models/vlm/qwen38.js.map +0 -1
- package/dist/agent-runtime/models/vlm/qwenvl.d.ts +0 -1
- package/dist/agent-runtime/models/vlm/qwenvl.js +0 -202
- package/dist/agent-runtime/models/vlm/qwenvl.js.map +0 -1
- package/dist/agent-runtime/modes/orchestrator/app-guide.js.map +0 -1
- package/dist/agent-runtime/modes/orchestrator/index.d.ts +0 -41
- package/dist/agent-runtime/modes/orchestrator/index.js +0 -218
- package/dist/agent-runtime/modes/orchestrator/index.js.map +0 -1
- package/dist/agent-runtime/modes/orchestrator/prompt.d.ts +0 -7
- package/dist/agent-runtime/modes/orchestrator/prompt.js +0 -53
- package/dist/agent-runtime/modes/orchestrator/prompt.js.map +0 -1
- package/dist/agent-runtime/reflection.d.ts +0 -100
- package/dist/agent-runtime/reflection.js +0 -241
- package/dist/agent-runtime/reflection.js.map +0 -1
- package/dist/agent-runtime/reflectors/action-reflector.d.ts +0 -97
- package/dist/agent-runtime/reflectors/action-reflector.js +0 -234
- package/dist/agent-runtime/reflectors/action-reflector.js.map +0 -1
- package/dist/agent-runtime/reflectors/policy.d.ts +0 -56
- package/dist/agent-runtime/reflectors/policy.js +0 -111
- package/dist/agent-runtime/reflectors/policy.js.map +0 -1
- package/dist/agent-runtime/reflectors/trajectory-reflector.d.ts +0 -93
- package/dist/agent-runtime/reflectors/trajectory-reflector.js +0 -224
- package/dist/agent-runtime/reflectors/trajectory-reflector.js.map +0 -1
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* DefaultAgentCore — wraps AgentRunner behind IAgentCore.
|
|
3
|
-
*
|
|
4
|
-
* The sole production agent core. Product execution modes select ReAct or
|
|
5
|
-
* Plan-Act per task; startup flags do not select a second architecture.
|
|
6
|
-
* Implements the IAgentCore port so
|
|
7
|
-
* SessionManager / AgentHost keep working without protocol changes.
|
|
8
|
-
*
|
|
9
|
-
* Translation contract (IAgentCore → AgentRunner):
|
|
10
|
-
* - `opts.task` → `runner.task`
|
|
11
|
-
* - `opts.maxSteps` → `runner.maxSteps`
|
|
12
|
-
* - `opts.abortSignal` → `runner.signal`
|
|
13
|
-
* - `opts.onText` → `runner.hooks.onText`
|
|
14
|
-
* - `opts.onReasoning` → `runner.hooks.onReasoning`
|
|
15
|
-
* - `opts.onTool` → synthesised from `runner.hooks.onTool` / `runner.hooks.onError`
|
|
16
|
-
* - `opts.onStep` → mapped onto the legacy `VlmStep` shape
|
|
17
|
-
*/
|
|
1
|
+
import { withModelReasoning } from "../../models/reasoning.js";
|
|
18
2
|
import { AgentRunner, resolveExecutionProfile, FileSystemSkillCacheStore, } from "../../index.js";
|
|
19
3
|
import { taskOutcomeFromTerminator } from "../../../core/task-outcome.js";
|
|
20
4
|
import { buildAdvancedKnowledge } from "../../advanced/knowledge.js";
|
|
@@ -36,6 +20,11 @@ export class AgentRunnerCore {
|
|
|
36
20
|
return this.defaultProvider;
|
|
37
21
|
}
|
|
38
22
|
async run(opts) {
|
|
23
|
+
if (opts.reasoning && opts.reasoning.modelId !== (opts.model?.trim() || this.defaultModel))
|
|
24
|
+
throw new Error('reasoning_model_mismatch');
|
|
25
|
+
return withModelReasoning(opts.reasoning, () => this.runWithReasoning(opts));
|
|
26
|
+
}
|
|
27
|
+
async runWithReasoning(opts) {
|
|
39
28
|
const mcp = this.opts.mcpProvider();
|
|
40
29
|
const env = this.opts.env ?? "mobile";
|
|
41
30
|
const requestedModel = opts.model?.trim();
|
|
@@ -44,10 +33,6 @@ export class AgentRunnerCore {
|
|
|
44
33
|
requestedMaxSteps: opts.maxSteps,
|
|
45
34
|
configuredMaxSteps: this.opts.defaultMaxSteps,
|
|
46
35
|
configuredTimeoutMs: this.opts.defaultTimeoutMs,
|
|
47
|
-
reflectorPolicy: this.opts.reflectorPolicy,
|
|
48
|
-
advancedReflectorModelName: opts.observationMode === "xml"
|
|
49
|
-
? (this.opts.advancedXmlReflectorModelName ?? this.opts.advancedReflectorModelName)
|
|
50
|
-
: this.opts.advancedReflectorModelName,
|
|
51
36
|
});
|
|
52
37
|
const advanced = execution.executionMode === "pro";
|
|
53
38
|
const explicitModel = requestedModel && requestedModel !== "auto" ? requestedModel : undefined;
|
|
@@ -150,9 +135,6 @@ export class AgentRunnerCore {
|
|
|
150
135
|
: {}),
|
|
151
136
|
signal: opts.abortSignal,
|
|
152
137
|
hooks: runnerHooks,
|
|
153
|
-
...(execution.reflectorPolicy
|
|
154
|
-
? { reflectorPolicy: execution.reflectorPolicy }
|
|
155
|
-
: {}),
|
|
156
138
|
...(advancedKnowledge
|
|
157
139
|
? {
|
|
158
140
|
advancedKnowledge: advancedKnowledge.prompt,
|
|
@@ -164,7 +146,7 @@ export class AgentRunnerCore {
|
|
|
164
146
|
}
|
|
165
147
|
: {}),
|
|
166
148
|
...(advanced && this.opts.advancedVerifier
|
|
167
|
-
? { subgoalVerifier: this.opts.advancedVerifier }
|
|
149
|
+
? { subgoalVerifier: this.opts.advancedVerifier, resultVerification: this.opts.resultVerification }
|
|
168
150
|
: {}),
|
|
169
151
|
});
|
|
170
152
|
const result = await runner.run();
|
|
@@ -252,12 +234,13 @@ function actionForLegacyStep(action) {
|
|
|
252
234
|
case "open_app":
|
|
253
235
|
return {
|
|
254
236
|
kind: "open_app",
|
|
255
|
-
packageOrName: stringPayload(p, "packageOrName") || stringPayload(p, "package"),
|
|
237
|
+
packageOrName: stringPayload(p, "packageOrName") || stringPayload(p, "package") || stringPayload(p, "pkg"),
|
|
256
238
|
};
|
|
257
239
|
case "wait":
|
|
258
240
|
return {
|
|
259
241
|
kind: "wait",
|
|
260
|
-
durationSeconds: typeof p.
|
|
242
|
+
durationSeconds: typeof p.durationMs === "number" ? p.durationMs / 1000
|
|
243
|
+
: typeof p.durationSeconds === "number" ? p.durationSeconds : 2,
|
|
261
244
|
};
|
|
262
245
|
case "execute_command":
|
|
263
246
|
case "shell":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agent-runtime/modes/hybrid/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agent-runtime/modes/hybrid/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* agent-runtime/planner/base — IPlanner contract and the data shapes the
|
|
3
|
-
* Plan-Act control loop passes between layers.
|
|
4
|
-
*
|
|
5
|
-
* The planner is the *strategist* tier — it consumes the user goal, the
|
|
6
|
-
* latest observation, and the rolling step history, and emits a **Plan**:
|
|
7
|
-
* an ordered list of natural-language sub-tasks that an `AgentLoop`
|
|
8
|
-
* (driven by a vision-grounding model adapter) can then execute one by
|
|
9
|
-
* one.
|
|
10
|
-
*
|
|
11
|
-
* Concrete implementations (`LLMPlanner`, `NoOpPlanner`) live alongside
|
|
12
|
-
* this file; the executor (`agent-runtime/plan-executor.ts`) only knows
|
|
13
|
-
* about the interfaces here.
|
|
14
|
-
*
|
|
15
|
-
* Mirrors the Python reference at
|
|
16
|
-
* /Users/heat/workspace/deviceagent_research/deviceagent/agent_runtime/planner/{base.py,types.py}
|
|
17
|
-
* but is *intentionally* slimmer — we don't ship a Verifier tier yet, so
|
|
18
|
-
* `PlanStep.verification` is omitted; the `AgentLoop`'s own reflection +
|
|
19
|
-
* `done`/`fail` short-circuit handles that today.
|
|
20
|
-
*/
|
|
1
|
+
/** Strategy-only plans and replan context; execution belongs to the Operator. */
|
|
21
2
|
import type { Observation } from "@beeos-ai/device-common";
|
|
22
3
|
import type { ModelUsage, StepHistory } from "../../../adapters/base.js";
|
|
23
4
|
import type { StepFeedback } from "../../../feedback.js";
|
|
@@ -71,31 +52,9 @@ export interface PlanContext {
|
|
|
71
52
|
failureReason?: string;
|
|
72
53
|
/** Set on `replan()`: 0-based index of the failing step in `previousPlan`. */
|
|
73
54
|
lastStepIdx?: number;
|
|
74
|
-
/**
|
|
75
|
-
* Phase 2.1 — notes the agent collected mid-task via the `take_note`
|
|
76
|
-
* action verb (verification codes, computed prices, etc.). The planner
|
|
77
|
-
* MUST treat these as authoritative ground truth and avoid re-asking
|
|
78
|
-
* for already-captured information.
|
|
79
|
-
*/
|
|
55
|
+
/** Task-local captured claims. Reuse facts only when supported by observations. */
|
|
80
56
|
notes?: string[];
|
|
81
|
-
/**
|
|
82
|
-
* Phase 2.2 — most recent verdict from the {@link TrajectoryReflector}
|
|
83
|
-
* when it bailed the inner loop. Present only when the reflector flipped
|
|
84
|
-
* to `off_track` or `stuck`; the planner uses it to decide whether to
|
|
85
|
-
* keep the existing plan or pivot.
|
|
86
|
-
*/
|
|
87
|
-
trajectoryVerdict?: {
|
|
88
|
-
verdict: "off_track" | "stuck";
|
|
89
|
-
reason: string;
|
|
90
|
-
};
|
|
91
|
-
/**
|
|
92
|
-
* KISS hardening — last few `StepFeedback` entries (pre-sanity vetoes,
|
|
93
|
-
* MCP failures, trajectory verdicts) collected during the previous
|
|
94
|
-
* `AgentLoop` run. Surfaced into the replan prompt so the planner
|
|
95
|
-
* sees the precise failure trail rather than parsing it out of
|
|
96
|
-
* `failureReason`. Limited to the most recent ~3 entries to keep
|
|
97
|
-
* prompts tight.
|
|
98
|
-
*/
|
|
57
|
+
/** Recent deterministic checks and dispatch errors supplied on replan. */
|
|
99
58
|
failureChain?: StepFeedback[];
|
|
100
59
|
}
|
|
101
60
|
export interface PlanResult {
|
|
@@ -129,6 +88,7 @@ export declare function makePlanResult(plan: Plan, init?: Partial<Omit<PlanResul
|
|
|
129
88
|
* Normalise a plan-shaped JSON object into a strict `Plan`. Tolerates
|
|
130
89
|
* the shapes models commonly emit:
|
|
131
90
|
* - `steps` at the top level instead of `plan.steps`
|
|
91
|
+
* - a `plan` array returned by some OpenAI-compatible models
|
|
132
92
|
* - missing `idx` (backfilled)
|
|
133
93
|
* - `target`/`description`/`name` aliases for `targetDesc`/`description`
|
|
134
94
|
*/
|
|
@@ -1,23 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* agent-runtime/planner/base — IPlanner contract and the data shapes the
|
|
3
|
-
* Plan-Act control loop passes between layers.
|
|
4
|
-
*
|
|
5
|
-
* The planner is the *strategist* tier — it consumes the user goal, the
|
|
6
|
-
* latest observation, and the rolling step history, and emits a **Plan**:
|
|
7
|
-
* an ordered list of natural-language sub-tasks that an `AgentLoop`
|
|
8
|
-
* (driven by a vision-grounding model adapter) can then execute one by
|
|
9
|
-
* one.
|
|
10
|
-
*
|
|
11
|
-
* Concrete implementations (`LLMPlanner`, `NoOpPlanner`) live alongside
|
|
12
|
-
* this file; the executor (`agent-runtime/plan-executor.ts`) only knows
|
|
13
|
-
* about the interfaces here.
|
|
14
|
-
*
|
|
15
|
-
* Mirrors the Python reference at
|
|
16
|
-
* /Users/heat/workspace/deviceagent_research/deviceagent/agent_runtime/planner/{base.py,types.py}
|
|
17
|
-
* but is *intentionally* slimmer — we don't ship a Verifier tier yet, so
|
|
18
|
-
* `PlanStep.verification` is omitted; the `AgentLoop`'s own reflection +
|
|
19
|
-
* `done`/`fail` short-circuit handles that today.
|
|
20
|
-
*/
|
|
1
|
+
/** Strategy-only plans and replan context; execution belongs to the Operator. */
|
|
21
2
|
/**
|
|
22
3
|
* Convenience factory used by adapters that produce a fully-typed Plan
|
|
23
4
|
* but don't track usage or raw-response fields. Defaults `usage` to zero.
|
|
@@ -33,13 +14,14 @@ export function makePlanResult(plan, init = {}) {
|
|
|
33
14
|
* Normalise a plan-shaped JSON object into a strict `Plan`. Tolerates
|
|
34
15
|
* the shapes models commonly emit:
|
|
35
16
|
* - `steps` at the top level instead of `plan.steps`
|
|
17
|
+
* - a `plan` array returned by some OpenAI-compatible models
|
|
36
18
|
* - missing `idx` (backfilled)
|
|
37
19
|
* - `target`/`description`/`name` aliases for `targetDesc`/`description`
|
|
38
20
|
*/
|
|
39
21
|
export function normalisePlanPayload(obj, goal) {
|
|
40
22
|
const root = isObject(obj) ? obj : {};
|
|
41
23
|
const inner = isObject(root.plan) ? root.plan : root;
|
|
42
|
-
const rawSteps = pickArray(inner.steps) ?? pickArray(root.steps) ?? [];
|
|
24
|
+
const rawSteps = pickArray(inner.steps) ?? pickArray(root.steps) ?? pickArray(root.plan) ?? [];
|
|
43
25
|
const steps = [];
|
|
44
26
|
rawSteps.forEach((s, i) => {
|
|
45
27
|
if (!isObject(s))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/agent-runtime/modes/hybrid/planner/base.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/agent-runtime/modes/hybrid/planner/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export interface LLMPlannerOptions {
|
|
|
31
31
|
temperature?: number;
|
|
32
32
|
/** Sampling top-p. Defaults to 0.9. */
|
|
33
33
|
topP?: number;
|
|
34
|
-
/** Max output tokens. Defaults to
|
|
34
|
+
/** Max output tokens, including reasoning. Defaults to 8192. */
|
|
35
35
|
maxTokens?: number;
|
|
36
36
|
/**
|
|
37
37
|
* Provide an already-built OpenAI client. Used by tests to inject mocks.
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { modelReasoningFields } from "../../../models/reasoning.js";
|
|
1
2
|
/**
|
|
2
3
|
* agent-runtime/planner/llm-planner — chat-only LLM planner.
|
|
3
4
|
*
|
|
@@ -42,7 +43,7 @@ export class LLMPlanner {
|
|
|
42
43
|
timeoutMs: opts.timeoutMs ?? 60_000,
|
|
43
44
|
temperature: opts.temperature ?? 0,
|
|
44
45
|
topP: opts.topP ?? 0.9,
|
|
45
|
-
maxTokens: opts.maxTokens ??
|
|
46
|
+
maxTokens: opts.maxTokens ?? 8192,
|
|
46
47
|
jsonMode: opts.jsonMode ?? true,
|
|
47
48
|
fallbackModels: opts.fallbackModels ?? [],
|
|
48
49
|
};
|
|
@@ -79,7 +80,6 @@ export class LLMPlanner {
|
|
|
79
80
|
failureReason: isReplan ? ctx.failureReason ?? "(unspecified)" : undefined,
|
|
80
81
|
lastStepIdx: isReplan ? ctx.lastStepIdx : undefined,
|
|
81
82
|
notes: ctx.notes,
|
|
82
|
-
trajectoryVerdict: ctx.trajectoryVerdict,
|
|
83
83
|
failureChain: isReplan ? ctx.failureChain : undefined,
|
|
84
84
|
});
|
|
85
85
|
const content = [
|
|
@@ -104,14 +104,16 @@ export class LLMPlanner {
|
|
|
104
104
|
if (this.opts.jsonMode) {
|
|
105
105
|
reqBody.response_format = { type: "json_object" };
|
|
106
106
|
}
|
|
107
|
-
const resp = await withProFallback([this.modelName, ...this.opts.fallbackModels], (model) => this.client.chat.completions.create({ ...reqBody, model, stream: false }, { signal: opts.signal }), opts.signal);
|
|
107
|
+
const resp = await withProFallback([this.modelName, ...this.opts.fallbackModels], (model) => this.client.chat.completions.create({ ...reqBody, ...modelReasoningFields(model, this.client.baseURL), model, stream: false }, { signal: opts.signal }), opts.signal);
|
|
108
108
|
const choice = ("choices" in resp ? resp.choices : undefined)?.[0];
|
|
109
109
|
const raw = choice?.message?.content ?? "";
|
|
110
110
|
const usage = {
|
|
111
111
|
inputTokens: resp.usage?.prompt_tokens ?? 0,
|
|
112
112
|
outputTokens: resp.usage?.completion_tokens ?? 0,
|
|
113
113
|
};
|
|
114
|
-
|
|
114
|
+
// A truncated response may contain a balanced but incomplete plan.
|
|
115
|
+
const truncated = choice?.finish_reason === "length";
|
|
116
|
+
const obj = truncated ? null : extractFirstJson(raw);
|
|
115
117
|
const plan = normalisePlanPayload(obj ?? {}, ctx.goal);
|
|
116
118
|
if (plan.steps.length === 0) {
|
|
117
119
|
// Last-resort: emit a single-step passthrough so the executor still
|
|
@@ -123,8 +125,9 @@ export class LLMPlanner {
|
|
|
123
125
|
expectedOutcome: "task complete",
|
|
124
126
|
},
|
|
125
127
|
];
|
|
126
|
-
plan.rationale =
|
|
127
|
-
|
|
128
|
+
plan.rationale = plan.rationale ?? (truncated
|
|
129
|
+
? "planner output was truncated; falling back to a single-step plan"
|
|
130
|
+
: "planner returned no steps; falling back to a single-step plan");
|
|
128
131
|
}
|
|
129
132
|
return makePlanResult(plan, { usage, rawResponse: raw });
|
|
130
133
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-planner.js","sourceRoot":"","sources":["../../../../../src/agent-runtime/modes/hybrid/planner/llm-planner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"llm-planner.js","sourceRoot":"","sources":["../../../../../src/agent-runtime/modes/hybrid/planner/llm-planner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,GAKrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAgCnE,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEzC,MAAM,OAAO,UAAU;IACZ,IAAI,CAAS;IACb,SAAS,CAAS;IAEV,MAAM,CAAS;IACf,UAAU,CAAU;IACpB,IAAI,CAEnB;IAEF,YAAY,OAA0B,EAAE;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,kBAAkB,CAAC;QACnF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG;YACV,OAAO,EAAE,sBAAsB,CAC7B,IAAI,CAAC,OAAO;gBACV,OAAO,CAAC,GAAG,CAAC,gBAAgB;gBAC5B,OAAO,CAAC,GAAG,CAAC,kBAAkB;gBAC9B,2BAA2B,CAC9B;YACD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO;YAC9F,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;YAClC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;YAC/B,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE;SAC1C,CAAC;QACF,IAAI,CAAC,MAAM;YACT,IAAI,CAAC,MAAM;gBACX,IAAI,MAAM,CAAC;oBACT,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;oBAC1B,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;oBACxB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;oBAC5B,oEAAoE;oBACpE,iEAAiE;oBACjE,kEAAkE;oBAClE,qCAAqC;oBACrC,UAAU,EAAE,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACtD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAgB,EAAE,OAAoB,EAAE;QACrD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAgB,EAAE,OAAoB,EAAE;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,GAAgB,EAAE,IAAiB,EAAE,QAAiB;QACzE,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,GAAG,IAAI,QAAQ,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAE7D,MAAM,IAAI,GAAG,gBAAgB,CAAC;YAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,IAAI,eAAe,CAAC,CAAC,CAAC,SAAS;YAC1E,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YACnD,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;SACtD,CAAC,CAAC;QAEH,MAAM,OAAO,GAAwD;YACnE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,kBAAkB,EAAE,EAAE;SAC3D,CAAC;QACF,IAAI,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,QAAQ,KAAK,CAAC,IAAI,WAAW,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAyD;YACrE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE;YACnC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,kBAAkB,EAAE,EAAE;SAC1F,CAAC;QAEF,MAAM,OAAO,GAAuD;YAClE,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,QAAQ;YACR,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAC/B,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;SACtB,CAAC;QACF,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,OAAO,CAAC,eAAe,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACpD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAC9E,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,oBAAoB,CAAC,KAAK,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClL,MAAM,MAAM,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,GAAG,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAe;YACxB,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC;YAC3C,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,IAAI,CAAC;SACjD,CAAC;QAEF,mEAAmE;QACnE,MAAM,SAAS,GAAG,MAAM,EAAE,aAAa,KAAK,QAAQ,CAAC;QACrD,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,oEAAoE;YACpE,sCAAsC;YACtC,IAAI,CAAC,KAAK,GAAG;gBACX;oBACE,GAAG,EAAE,CAAC;oBACN,WAAW,EAAE,GAAG,CAAC,IAAI;oBACrB,eAAe,EAAE,eAAe;iBACjC;aACF,CAAC;YACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS;gBAC3C,CAAC,CAAC,kEAAkE;gBACpE,CAAC,CAAC,+DAA+D,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,cAAc,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3D,CAAC;CACF"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* agent-runtime/planner/prompts — system + user prompt builders for the
|
|
3
|
-
* LLM-driven `LLMPlanner`. Mirrors the Python reference at
|
|
4
|
-
* /Users/heat/workspace/deviceagent_research/deviceagent/agent_runtime/planner/prompts.py
|
|
5
|
-
*
|
|
6
|
-
* The planner is *strategy-only*: it never picks pixel coordinates, never
|
|
7
|
-
* emits a single Action — it emits a Plan (ordered list of small,
|
|
8
|
-
* verifiable sub-tasks) that the inner `AgentLoop` then executes one by
|
|
9
|
-
* one with a vision-grounding adapter (AutoGLM-Phone-9B today).
|
|
10
|
-
*/
|
|
1
|
+
/** Strategy-only Android planning. The continuous Pro operator owns device actions. */
|
|
11
2
|
import type { Observation } from "@beeos-ai/device-common";
|
|
12
3
|
import type { StepHistory } from "../../../adapters/base.js";
|
|
13
4
|
import type { StepFeedback } from "../../../feedback.js";
|
|
@@ -25,14 +16,7 @@ export declare function renderUserPrompt(opts: {
|
|
|
25
16
|
history: StepHistory[];
|
|
26
17
|
failureReason?: string;
|
|
27
18
|
lastStepIdx?: number;
|
|
28
|
-
/** Phase 2.1 — accumulated notes captured via `take_note`. */
|
|
29
19
|
notes?: string[];
|
|
30
|
-
/** Phase 2.2 — trajectory reflector verdict on replan. */
|
|
31
|
-
trajectoryVerdict?: {
|
|
32
|
-
verdict: "off_track" | "stuck";
|
|
33
|
-
reason: string;
|
|
34
|
-
};
|
|
35
|
-
/** KISS hardening — last few reflector verdicts on replan. */
|
|
36
20
|
failureChain?: StepFeedback[];
|
|
37
21
|
}): string;
|
|
38
22
|
export declare const STRICT_SCHEMA_HINT = "Reply ONLY with valid JSON matching the schema. No markdown, no prose.";
|