@beeos-ai/device-agent 0.4.3 → 0.5.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.
Files changed (200) hide show
  1. package/.pi/extensions/android-tools.ts +146 -15
  2. package/dist/adapters/agent-gateway-client.d.ts +37 -0
  3. package/dist/adapters/agent-gateway-client.js +45 -0
  4. package/dist/adapters/agent-gateway-client.js.map +1 -1
  5. package/dist/adapters/agentcore-pi.d.ts +22 -0
  6. package/dist/adapters/agentcore-pi.js +48 -0
  7. package/dist/adapters/agentcore-pi.js.map +1 -1
  8. package/dist/adapters/device-android-adb.d.ts +47 -0
  9. package/dist/adapters/device-android-adb.js +50 -0
  10. package/dist/adapters/device-android-adb.js.map +1 -1
  11. package/dist/adapters/device-desktop.d.ts +12 -0
  12. package/dist/adapters/device-desktop.js +31 -0
  13. package/dist/adapters/device-desktop.js.map +1 -1
  14. package/dist/adapters/identity-file.d.ts +33 -5
  15. package/dist/adapters/identity-file.js +52 -6
  16. package/dist/adapters/identity-file.js.map +1 -1
  17. package/dist/agent-runtime/adapters/base.d.ts +20 -0
  18. package/dist/agent-runtime/adapters/base.js.map +1 -1
  19. package/dist/agent-runtime/agent-runner.d.ts +4 -2
  20. package/dist/agent-runtime/agent-runner.js.map +1 -1
  21. package/dist/agent-runtime/core.d.ts +60 -0
  22. package/dist/agent-runtime/core.js +190 -9
  23. package/dist/agent-runtime/core.js.map +1 -1
  24. package/dist/agent-runtime/feedback.d.ts +56 -0
  25. package/dist/agent-runtime/feedback.js +54 -0
  26. package/dist/agent-runtime/feedback.js.map +1 -0
  27. package/dist/agent-runtime/index.d.ts +1 -0
  28. package/dist/agent-runtime/index.js +1 -0
  29. package/dist/agent-runtime/index.js.map +1 -1
  30. package/dist/agent-runtime/plan-executor.js +24 -0
  31. package/dist/agent-runtime/plan-executor.js.map +1 -1
  32. package/dist/agent-runtime/planner/base.d.ts +10 -0
  33. package/dist/agent-runtime/planner/base.js.map +1 -1
  34. package/dist/agent-runtime/planner/llm-planner.js +1 -0
  35. package/dist/agent-runtime/planner/llm-planner.js.map +1 -1
  36. package/dist/agent-runtime/planner/prompts.d.ts +3 -0
  37. package/dist/agent-runtime/planner/prompts.js +12 -0
  38. package/dist/agent-runtime/planner/prompts.js.map +1 -1
  39. package/dist/agent-runtime/reflection.d.ts +25 -6
  40. package/dist/agent-runtime/reflection.js +64 -22
  41. package/dist/agent-runtime/reflection.js.map +1 -1
  42. package/dist/agent-runtime/reflectors/policy.d.ts +10 -4
  43. package/dist/agent-runtime/reflectors/policy.js +19 -6
  44. package/dist/agent-runtime/reflectors/policy.js.map +1 -1
  45. package/dist/agent-runtime/shortcuts/fs-store.d.ts +41 -0
  46. package/dist/agent-runtime/shortcuts/fs-store.js +122 -0
  47. package/dist/agent-runtime/shortcuts/fs-store.js.map +1 -0
  48. package/dist/agent-runtime/shortcuts/in-memory-store.d.ts +20 -0
  49. package/dist/agent-runtime/shortcuts/in-memory-store.js +64 -0
  50. package/dist/agent-runtime/shortcuts/in-memory-store.js.map +1 -0
  51. package/dist/agent-runtime/shortcuts/index.d.ts +10 -0
  52. package/dist/agent-runtime/shortcuts/index.js +10 -0
  53. package/dist/agent-runtime/shortcuts/index.js.map +1 -0
  54. package/dist/agent-runtime/shortcuts/types.d.ts +69 -0
  55. package/dist/agent-runtime/shortcuts/types.js +17 -0
  56. package/dist/agent-runtime/shortcuts/types.js.map +1 -0
  57. package/dist/app/agent-host.d.ts +83 -0
  58. package/dist/app/agent-host.js +345 -32
  59. package/dist/app/agent-host.js.map +1 -1
  60. package/dist/app/session-manager.d.ts +33 -4
  61. package/dist/app/session-manager.js +27 -5
  62. package/dist/app/session-manager.js.map +1 -1
  63. package/dist/bootstrap.js +187 -3
  64. package/dist/bootstrap.js.map +1 -1
  65. package/dist/config/loader.js +22 -0
  66. package/dist/config/loader.js.map +1 -1
  67. package/dist/config/schema.d.ts +18 -0
  68. package/dist/config/schema.js +118 -0
  69. package/dist/config/schema.js.map +1 -1
  70. package/dist/fleet/adapters/process/node-process-manager.js +97 -17
  71. package/dist/fleet/adapters/process/node-process-manager.js.map +1 -1
  72. package/dist/fleet/adapters/state/beeos-cli-store.d.ts +75 -9
  73. package/dist/fleet/adapters/state/beeos-cli-store.js +201 -17
  74. package/dist/fleet/adapters/state/beeos-cli-store.js.map +1 -1
  75. package/dist/fleet/domain/device.d.ts +9 -0
  76. package/dist/fleet/domain/device.js.map +1 -1
  77. package/dist/fleet/domain/fsm.js +34 -0
  78. package/dist/fleet/domain/fsm.js.map +1 -1
  79. package/dist/fleet/installer/spawn-env.d.ts +3 -0
  80. package/dist/fleet/installer/spawn-env.js +186 -3
  81. package/dist/fleet/installer/spawn-env.js.map +1 -1
  82. package/dist/fleet/state/state-json.d.ts +116 -0
  83. package/dist/fleet/state/state-json.js +87 -0
  84. package/dist/fleet/state/state-json.js.map +1 -0
  85. package/dist/fleet/supervisor.js +14 -2
  86. package/dist/fleet/supervisor.js.map +1 -1
  87. package/dist/inbound/acp/handlers/session.js.map +1 -1
  88. package/dist/mcp-client/client.d.ts +6 -0
  89. package/dist/mcp-client/client.js +11 -0
  90. package/dist/mcp-client/client.js.map +1 -1
  91. package/dist/mcp-client/runtime.d.ts +13 -0
  92. package/dist/orchestrator-system-prompt.d.ts +26 -0
  93. package/dist/orchestrator-system-prompt.js +118 -2
  94. package/dist/orchestrator-system-prompt.js.map +1 -1
  95. package/dist/pi-context.d.ts +50 -0
  96. package/dist/pi-context.js.map +1 -1
  97. package/dist/ports/device.d.ts +18 -0
  98. package/dist/resources/augmenter.d.ts +48 -0
  99. package/dist/resources/augmenter.js +126 -0
  100. package/dist/resources/augmenter.js.map +1 -0
  101. package/dist/resources/cache.d.ts +57 -0
  102. package/dist/resources/cache.js +107 -0
  103. package/dist/resources/cache.js.map +1 -0
  104. package/dist/resources/index.d.ts +17 -0
  105. package/dist/resources/index.js +15 -0
  106. package/dist/resources/index.js.map +1 -0
  107. package/dist/resources/lifecycle/disk-pressure.d.ts +75 -0
  108. package/dist/resources/lifecycle/disk-pressure.js +148 -0
  109. package/dist/resources/lifecycle/disk-pressure.js.map +1 -0
  110. package/dist/resources/lifecycle/index.d.ts +7 -0
  111. package/dist/resources/lifecycle/index.js +7 -0
  112. package/dist/resources/lifecycle/index.js.map +1 -0
  113. package/dist/resources/lifecycle/manager.d.ts +38 -0
  114. package/dist/resources/lifecycle/manager.js +205 -0
  115. package/dist/resources/lifecycle/manager.js.map +1 -0
  116. package/dist/resources/lifecycle/sweeper.d.ts +36 -0
  117. package/dist/resources/lifecycle/sweeper.js +179 -0
  118. package/dist/resources/lifecycle/sweeper.js.map +1 -0
  119. package/dist/resources/lifecycle/types.d.ts +180 -0
  120. package/dist/resources/lifecycle/types.js +46 -0
  121. package/dist/resources/lifecycle/types.js.map +1 -0
  122. package/dist/resources/parsers.d.ts +28 -0
  123. package/dist/resources/parsers.js +88 -0
  124. package/dist/resources/parsers.js.map +1 -0
  125. package/dist/resources/registry.d.ts +47 -0
  126. package/dist/resources/registry.js +107 -0
  127. package/dist/resources/registry.js.map +1 -0
  128. package/dist/resources/resolvers/beeos-file-resolver.d.ts +62 -0
  129. package/dist/resources/resolvers/beeos-file-resolver.js +109 -0
  130. package/dist/resources/resolvers/beeos-file-resolver.js.map +1 -0
  131. package/dist/resources/resolvers/errors.d.ts +11 -0
  132. package/dist/resources/resolvers/errors.js +23 -0
  133. package/dist/resources/resolvers/errors.js.map +1 -0
  134. package/dist/resources/resolvers/mime-table.d.ts +41 -0
  135. package/dist/resources/resolvers/mime-table.js +92 -0
  136. package/dist/resources/resolvers/mime-table.js.map +1 -0
  137. package/dist/resources/resolvers/url-resolver.d.ts +85 -0
  138. package/dist/resources/resolvers/url-resolver.js +495 -0
  139. package/dist/resources/resolvers/url-resolver.js.map +1 -0
  140. package/dist/resources/shortcut-facade.d.ts +51 -0
  141. package/dist/resources/shortcut-facade.js +72 -0
  142. package/dist/resources/shortcut-facade.js.map +1 -0
  143. package/dist/resources/telemetry.d.ts +52 -0
  144. package/dist/resources/telemetry.js +59 -0
  145. package/dist/resources/telemetry.js.map +1 -0
  146. package/dist/resources/types.d.ts +249 -0
  147. package/dist/resources/types.js +29 -0
  148. package/dist/resources/types.js.map +1 -0
  149. package/dist/shortcuts/builtins/download-to-device.d.ts +83 -0
  150. package/dist/shortcuts/builtins/download-to-device.js +125 -0
  151. package/dist/shortcuts/builtins/download-to-device.js.map +1 -0
  152. package/dist/shortcuts/builtins/find-app-package.d.ts +79 -0
  153. package/dist/shortcuts/builtins/find-app-package.js +168 -0
  154. package/dist/shortcuts/builtins/find-app-package.js.map +1 -0
  155. package/dist/shortcuts/builtins/index.d.ts +32 -0
  156. package/dist/shortcuts/builtins/index.js +37 -0
  157. package/dist/shortcuts/builtins/index.js.map +1 -0
  158. package/dist/shortcuts/builtins/open-deeplink.d.ts +68 -0
  159. package/dist/shortcuts/builtins/open-deeplink.js +142 -0
  160. package/dist/shortcuts/builtins/open-deeplink.js.map +1 -0
  161. package/dist/shortcuts/builtins/set-clipboard.d.ts +65 -0
  162. package/dist/shortcuts/builtins/set-clipboard.js +112 -0
  163. package/dist/shortcuts/builtins/set-clipboard.js.map +1 -0
  164. package/dist/shortcuts/index.d.ts +11 -0
  165. package/dist/shortcuts/index.js +11 -0
  166. package/dist/shortcuts/index.js.map +1 -0
  167. package/dist/shortcuts/registry.d.ts +56 -0
  168. package/dist/shortcuts/registry.js +70 -0
  169. package/dist/shortcuts/registry.js.map +1 -0
  170. package/dist/shortcuts/router.d.ts +91 -0
  171. package/dist/shortcuts/router.js +158 -0
  172. package/dist/shortcuts/router.js.map +1 -0
  173. package/dist/shortcuts/types.d.ts +219 -0
  174. package/dist/shortcuts/types.js +46 -0
  175. package/dist/shortcuts/types.js.map +1 -0
  176. package/package.json +3 -3
  177. package/dist/agent-runtime/skills/sqlite-store.d.ts +0 -60
  178. package/dist/agent-runtime/skills/sqlite-store.js +0 -234
  179. package/dist/agent-runtime/skills/sqlite-store.js.map +0 -1
  180. package/dist/test-lan-autoglm.d.ts +0 -7
  181. package/dist/test-lan-autoglm.js +0 -46
  182. package/dist/test-lan-autoglm.js.map +0 -1
  183. package/dist/test-mem-breakdown.d.ts +0 -1
  184. package/dist/test-mem-breakdown.js +0 -103
  185. package/dist/test-mem-breakdown.js.map +0 -1
  186. package/dist/test-mem.d.ts +0 -1
  187. package/dist/test-mem.js +0 -60
  188. package/dist/test-mem.js.map +0 -1
  189. package/dist/test-mobile-use.d.ts +0 -1
  190. package/dist/test-mobile-use.js +0 -18
  191. package/dist/test-mobile-use.js.map +0 -1
  192. package/dist/test-screenshot-loop.d.ts +0 -1
  193. package/dist/test-screenshot-loop.js +0 -43
  194. package/dist/test-screenshot-loop.js.map +0 -1
  195. package/dist/test-screenshot.d.ts +0 -1
  196. package/dist/test-screenshot.js +0 -10
  197. package/dist/test-screenshot.js.map +0 -1
  198. package/dist/test-ui-xml-dump.d.ts +0 -15
  199. package/dist/test-ui-xml-dump.js +0 -49
  200. package/dist/test-ui-xml-dump.js.map +0 -1
@@ -18,9 +18,11 @@ const execFileAsync = promisify(execFile);
18
18
  export class AndroidAdbAdapter {
19
19
  device;
20
20
  skipConnectValidation;
21
+ sandboxSubdir;
21
22
  constructor(opts = {}) {
22
23
  this.device = new AndroidDevice(opts.serial);
23
24
  this.skipConnectValidation = !!opts.skipConnectValidation;
25
+ this.sandboxSubdir = opts.sandboxSubdir ?? "beeos";
24
26
  }
25
27
  /** Expose the underlying low-level driver for the inner VLM loop. */
26
28
  get raw() {
@@ -180,6 +182,9 @@ export class AndroidAdbAdapter {
180
182
  async shell(command) {
181
183
  return this.runShell(command);
182
184
  }
185
+ async resolveWellKnownDir(mime) {
186
+ return resolveAndroidWellKnownDir(mime, this.sandboxSubdir);
187
+ }
183
188
  // ── Internal ──────────────────────────────────────────────────────────────
184
189
  async runShell(command) {
185
190
  try {
@@ -276,4 +281,49 @@ function parseGetpropDump(out) {
276
281
  }
277
282
  return map;
278
283
  }
284
+ /**
285
+ * Map a MIME type to an Android well-known directory under `/sdcard/`,
286
+ * optionally suffixed with a sandbox subdirectory.
287
+ *
288
+ * Strategy: bucket by major type (image / video / audio) so any
289
+ * subtype lands in the natural gallery folder; APKs go to
290
+ * `/sdcard/Download` (the standard installer source); everything
291
+ * else (PDFs, text, archives, office docs, …) also goes to
292
+ * `/sdcard/Download` since user expectation in 2025 is "downloads
293
+ * folder" for non-media files.
294
+ *
295
+ * `sandboxSubdir` is appended **inside** that root (e.g. for `"beeos"`
296
+ * → `/sdcard/Pictures/beeos`) so:
297
+ * - lifecycle sweeps can recursively `-delete` without ever touching
298
+ * user-owned photos at the gallery root;
299
+ * - operators get a single greppable folder to wipe via the dashboard.
300
+ * MediaStore still indexes subdirectories of these roots, so all
301
+ * Android pickers (Photos / Gallery / WeChat / Twitter / …) continue
302
+ * to surface the file as if it lived directly in the root.
303
+ *
304
+ * Empty `sandboxSubdir` disables sandboxing (legacy behaviour), kept
305
+ * for backward compatibility and for adapter tests that pin the
306
+ * pre-sandbox path layout.
307
+ *
308
+ * Exported so unit tests can call it without instantiating the
309
+ * adapter (which requires a working ADB daemon).
310
+ */
311
+ export function resolveAndroidWellKnownDir(mime, sandboxSubdir = "beeos") {
312
+ const lower = mime.toLowerCase();
313
+ let root;
314
+ if (lower.startsWith("image/"))
315
+ root = "/sdcard/Pictures";
316
+ else if (lower.startsWith("video/"))
317
+ root = "/sdcard/Movies";
318
+ else if (lower.startsWith("audio/"))
319
+ root = "/sdcard/Music";
320
+ // application/*, text/*, fallthrough — Download is the canonical
321
+ // user-visible bucket for non-media files on Android.
322
+ else
323
+ root = "/sdcard/Download";
324
+ const trimmed = sandboxSubdir.replace(/^\/+|\/+$/g, "");
325
+ if (!trimmed)
326
+ return root;
327
+ return `${root}/${trimmed}`;
328
+ }
279
329
  //# sourceMappingURL=device-android-adb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device-android-adb.js","sourceRoot":"","sources":["../../src/adapters/device-android-adb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-android-adb.js","sourceRoot":"","sources":["../../src/adapters/device-android-adb.ts"],"names":[],"mappings":"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"}
@@ -34,4 +34,16 @@ export declare class DesktopAdapter implements IDevice {
34
34
  apply(action: Action): Promise<void>;
35
35
  install(_path: string): Promise<void>;
36
36
  shell(command: string): Promise<string>;
37
+ resolveWellKnownDir(mime: string): Promise<string>;
37
38
  }
39
+ /**
40
+ * Map a MIME type to a desktop well-known directory under `~/`.
41
+ *
42
+ * - APKs explicitly throw `unsupported_platform` because desktop has no
43
+ * APK installer and dropping one in `~/Downloads` would be misleading
44
+ * (the user can't act on it anyway).
45
+ *
46
+ * Exported so unit tests can call it without instantiating the
47
+ * adapter.
48
+ */
49
+ export declare function resolveDesktopWellKnownDir(mime: string): string;
@@ -10,6 +10,8 @@
10
10
  * - smoke-testing CI without a real device
11
11
  */
12
12
  import { randomBytes } from "node:crypto";
13
+ import { homedir } from "node:os";
14
+ import * as path from "node:path";
13
15
  export class DesktopAdapter {
14
16
  actions = [];
15
17
  width;
@@ -75,6 +77,35 @@ export class DesktopAdapter {
75
77
  this.actions.push({ kind: "shell", command });
76
78
  return `mock-stdout:${randomBytes(4).toString("hex")}`;
77
79
  }
80
+ async resolveWellKnownDir(mime) {
81
+ return resolveDesktopWellKnownDir(mime);
82
+ }
83
+ }
84
+ /**
85
+ * Map a MIME type to a desktop well-known directory under `~/`.
86
+ *
87
+ * - APKs explicitly throw `unsupported_platform` because desktop has no
88
+ * APK installer and dropping one in `~/Downloads` would be misleading
89
+ * (the user can't act on it anyway).
90
+ *
91
+ * Exported so unit tests can call it without instantiating the
92
+ * adapter.
93
+ */
94
+ export function resolveDesktopWellKnownDir(mime) {
95
+ const lower = mime.toLowerCase();
96
+ if (lower === "application/vnd.android.package-archive") {
97
+ const err = new Error("APK files cannot be resolved on desktop — no installer available");
98
+ err.code = "unsupported_platform";
99
+ throw err;
100
+ }
101
+ const home = homedir();
102
+ if (lower.startsWith("image/"))
103
+ return path.join(home, "Pictures");
104
+ if (lower.startsWith("video/"))
105
+ return path.join(home, "Movies");
106
+ if (lower.startsWith("audio/"))
107
+ return path.join(home, "Music");
108
+ return path.join(home, "Downloads");
78
109
  }
79
110
  function defaultDesktopOs() {
80
111
  switch (process.platform) {
@@ -1 +1 @@
1
- {"version":3,"file":"device-desktop.js","sourceRoot":"","sources":["../../src/adapters/device-desktop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-desktop.js","sourceRoot":"","sources":["../../src/adapters/device-desktop.ts"],"names":[],"mappings":"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"}
@@ -4,18 +4,36 @@
4
4
  * On-disk format follows the SDK convention used by `@beeos-ai/bridge-client`:
5
5
  * { "publicKey": "<base64>", "privateKey": "<base64>" }
6
6
  *
7
- * Default location: `~/.beeos/<id>.key`. The SDK's `loadKeyPair` is also
8
- * permissive about a raw base64 32-byte private-key seed (the format used by
9
- * K8s Secret mounts in production), so existing identity files keep working.
7
+ * Default location resolution (in order):
8
+ * 1. Explicit `keyFile` (passed by the CLI / `--key` flag).
9
+ * 2. The modern CLI-aligned layout
10
+ * `~/.beeos/identity/device-<id|"default">.key.json` — this matches
11
+ * `web/packages/core/src/runtime/device.ts::deviceKeyPath` so a
12
+ * manually-launched device-agent reads the SAME key the CLI's
13
+ * `beeos device attach` would write.
14
+ * 3. The legacy flat path `~/.beeos/<id|"device-agent">.key` — kept
15
+ * for back-compat with v0.4.x installs but deprecated.
16
+ * A `console.warn` fires the first time we resolve via this
17
+ * branch so users are nudged to migrate.
18
+ *
19
+ * Migration plan:
20
+ * - 0.5.x (current): both paths resolve, legacy emits a warn.
21
+ * - 0.6.x: legacy path stops resolving; users must move the file to
22
+ * the new location or pass `--key` explicitly.
10
23
  */
11
24
  import type { IDeviceIdentity, KeyPair } from "../ports/identity.js";
12
25
  export interface FileIdentityOptions {
13
26
  /**
14
27
  * Absolute path to the key file.
15
- * If undefined, defaults to `~/.beeos/<id ?? "device-agent">.key`.
28
+ * If undefined, the resolver picks the modern (CLI-aligned) layout
29
+ * with a fallback to the legacy flat path — see file header.
16
30
  */
17
31
  keyFile?: string;
18
- /** Used to compute the default file name when `keyFile` is undefined. */
32
+ /**
33
+ * Suffix used when computing the default file name. For per-device
34
+ * agent processes the CLI passes the ADB serial here so each device
35
+ * gets its own file.
36
+ */
19
37
  id?: string;
20
38
  }
21
39
  export declare class FileIdentity implements IDeviceIdentity {
@@ -28,3 +46,13 @@ export declare class FileIdentity implements IDeviceIdentity {
28
46
  publicKeyBase64(): Promise<string>;
29
47
  fingerprint(): Promise<string>;
30
48
  }
49
+ /**
50
+ * Resolve the implicit key-file path when no explicit `keyFile` was
51
+ * passed. Honours backwards compatibility: if the legacy
52
+ * `~/.beeos/<id>.key` already exists on disk we keep using it (so we
53
+ * don't strand existing v0.4.x installs without a key) but emit a
54
+ * one-time deprecation warn pointing at the new location.
55
+ *
56
+ * Exported for unit tests — not part of the runtime contract.
57
+ */
58
+ export declare function defaultKeyFilePath(id?: string): string;
@@ -4,21 +4,33 @@
4
4
  * On-disk format follows the SDK convention used by `@beeos-ai/bridge-client`:
5
5
  * { "publicKey": "<base64>", "privateKey": "<base64>" }
6
6
  *
7
- * Default location: `~/.beeos/<id>.key`. The SDK's `loadKeyPair` is also
8
- * permissive about a raw base64 32-byte private-key seed (the format used by
9
- * K8s Secret mounts in production), so existing identity files keep working.
7
+ * Default location resolution (in order):
8
+ * 1. Explicit `keyFile` (passed by the CLI / `--key` flag).
9
+ * 2. The modern CLI-aligned layout
10
+ * `~/.beeos/identity/device-<id|"default">.key.json` — this matches
11
+ * `web/packages/core/src/runtime/device.ts::deviceKeyPath` so a
12
+ * manually-launched device-agent reads the SAME key the CLI's
13
+ * `beeos device attach` would write.
14
+ * 3. The legacy flat path `~/.beeos/<id|"device-agent">.key` — kept
15
+ * for back-compat with v0.4.x installs but deprecated.
16
+ * A `console.warn` fires the first time we resolve via this
17
+ * branch so users are nudged to migrate.
18
+ *
19
+ * Migration plan:
20
+ * - 0.5.x (current): both paths resolve, legacy emits a warn.
21
+ * - 0.6.x: legacy path stops resolving; users must move the file to
22
+ * the new location or pass `--key` explicitly.
10
23
  */
11
24
  import * as fs from "node:fs";
12
25
  import * as os from "node:os";
13
26
  import * as path from "node:path";
14
27
  import { fingerprint, loadKeyPair, publicKeyFromPrivate, } from "@beeos-ai/bridge-client";
28
+ let legacyKeyWarnLogged = false;
15
29
  export class FileIdentity {
16
30
  keyFile;
17
31
  cached = null;
18
32
  constructor(opts = {}) {
19
- this.keyFile =
20
- opts.keyFile ??
21
- path.join(os.homedir(), ".beeos", `${opts.id ?? "device-agent"}.key`);
33
+ this.keyFile = opts.keyFile ?? defaultKeyFilePath(opts.id);
22
34
  }
23
35
  /** Path of the underlying file (useful for diagnostics). */
24
36
  get path() {
@@ -47,4 +59,38 @@ export class FileIdentity {
47
59
  return fingerprint(kp.publicKey);
48
60
  }
49
61
  }
62
+ /**
63
+ * Resolve the implicit key-file path when no explicit `keyFile` was
64
+ * passed. Honours backwards compatibility: if the legacy
65
+ * `~/.beeos/<id>.key` already exists on disk we keep using it (so we
66
+ * don't strand existing v0.4.x installs without a key) but emit a
67
+ * one-time deprecation warn pointing at the new location.
68
+ *
69
+ * Exported for unit tests — not part of the runtime contract.
70
+ */
71
+ export function defaultKeyFilePath(id) {
72
+ const home = os.homedir();
73
+ const suffix = id ?? "default";
74
+ const modernDir = path.join(home, ".beeos", "identity");
75
+ const modern = path.join(modernDir, `device-${suffix}.key.json`);
76
+ // Modern path is the desired target; if it exists, prefer it.
77
+ if (fs.existsSync(modern))
78
+ return modern;
79
+ // Legacy fallback — only matches if the user has a prior install.
80
+ // We accept either "<id>.key" or "device-agent.key" depending on
81
+ // whether `id` was passed at all (the historical default).
82
+ const legacyName = id ? `${id}.key` : "device-agent.key";
83
+ const legacy = path.join(home, ".beeos", legacyName);
84
+ if (fs.existsSync(legacy)) {
85
+ if (!legacyKeyWarnLogged) {
86
+ legacyKeyWarnLogged = true;
87
+ const next = path.join(modernDir, `device-${suffix}.key.json`);
88
+ console.warn(`[device-agent] using legacy identity path ${legacy} — please migrate to ${next} ` +
89
+ "before the v0.6 release. See `beeos device attach --help` for the canonical layout.");
90
+ }
91
+ return legacy;
92
+ }
93
+ // No file exists yet — create the new one.
94
+ return modern;
95
+ }
50
96
  //# sourceMappingURL=identity-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/adapters/identity-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AAajC,MAAM,OAAO,YAAY;IACN,OAAO,CAAS;IACzB,MAAM,GAAmB,IAAI,CAAC;IAEtC,YAAY,OAA4B,EAAE;QACxC,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,OAAO;gBACZ,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,cAAc,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,4DAA4D;IAC5D,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,6EAA6E;QAC7E,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,EAAE,CAAC,SAAS,GAAG,oBAAoB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"identity-file.js","sourceRoot":"","sources":["../../src/adapters/identity-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AAGjC,IAAI,mBAAmB,GAAG,KAAK,CAAC;AAiBhC,MAAM,OAAO,YAAY;IACN,OAAO,CAAS;IACzB,MAAM,GAAmB,IAAI,CAAC;IAEtC,YAAY,OAA4B,EAAE;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,4DAA4D;IAC5D,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,6EAA6E;QAC7E,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,EAAE,CAAC,SAAS,GAAG,oBAAoB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAW;IAC5C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,EAAE,IAAI,SAAS,CAAC;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,MAAM,WAAW,CAAC,CAAC;IAEjE,8DAA8D;IAC9D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAEzC,kEAAkE;IAClE,iEAAiE;IACjE,2DAA2D;IAC3D,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,mBAAmB,GAAG,IAAI,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,MAAM,WAAW,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CACV,6CAA6C,MAAM,wBAAwB,IAAI,GAAG;gBAClF,qFAAqF,CACtF,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2CAA2C;IAC3C,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -78,6 +78,26 @@ export interface StepHistory {
78
78
  * grounder can see *why* the previous step failed on retry.
79
79
  */
80
80
  actErrorMessage?: string;
81
+ /**
82
+ * Fingerprint of the on-screen state captured *before* this step's
83
+ * action was dispatched (i.e. equal to {@link Observation.screenStateHash}
84
+ * of the observation passed into `predictAction`). Optional — only
85
+ * adapters that consume `uiDump` produce a non-empty value, and pure-
86
+ * vision flows leave it `undefined`.
87
+ *
88
+ * Used by `HierarchicalReflector.maybeBlockAction` to detect "repeat
89
+ * action with no screen progress" via equality with
90
+ * {@link screenStateHashAfter}.
91
+ */
92
+ screenStateHashBefore?: string;
93
+ /**
94
+ * Fingerprint of the on-screen state captured at the START of the next
95
+ * AgentLoop iteration (the natural settle point — the MCP roundtrip +
96
+ * subsequent observe() act as the wait). Equal to
97
+ * {@link screenStateHashBefore} when the action did not change the
98
+ * screen, different when progress was made.
99
+ */
100
+ screenStateHashAfter?: string;
81
101
  }
82
102
  export interface Prediction {
83
103
  /** Predicted next action. Use `done` / `fail` / `call_for_user` to stop. */
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA8IH;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,OAA4C,EAAE;IAE9C,OAAO;QACL,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;QACvD,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/agent-runtime/adapters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkKH;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,OAA4C,EAAE;IAE9C,OAAO;QACL,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;QACvD,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;QACxD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC"}
@@ -59,8 +59,10 @@ export interface AgentRunnerOptions {
59
59
  /**
60
60
  * Phase 1.4 / 2.4 reflector configuration. When omitted the runner
61
61
  * resolves a policy from `process.env` (`ACTION_REFLECTOR=…`, etc.)
62
- * via {@link buildReflectorPolicyFromEnv}, defaulting to *all reflectors
63
- * off* (legacy behaviour preserved).
62
+ * via {@link buildReflectorPolicyFromEnv}. Defaults: trajectory
63
+ * reflector `every:5` (KISS hardening), action reflector `off`,
64
+ * note taker `off`. See `agent-runtime/reflectors/policy.ts` for
65
+ * the env-var matrix.
64
66
  */
65
67
  reflectorPolicy?: ReflectorPolicy;
66
68
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../src/agent-runtime/agent-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../src/agent-runtime/agent-runner.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@
32
32
  import { type Action, type Observation } from "@beeos-ai/device-common";
33
33
  import type { IMcpRuntime } from "../mcp-client/runtime.js";
34
34
  import type { IModelAdapter, ModelUsage, Prediction, StepHistory } from "./adapters/base.js";
35
+ import { type StepFeedback } from "./feedback.js";
35
36
  import { HierarchicalReflector } from "./reflection.js";
36
37
  import type { TrajectoryVerdict } from "./reflectors/trajectory-reflector.js";
37
38
  export type AgentLoopTerminator = "done" | "fail" | "call_for_user" | "step_budget" | "timeout" | "reflection_veto" | "cancelled" | "error";
@@ -121,6 +122,14 @@ export interface AgentRunResult {
121
122
  verdict: Exclude<TrajectoryVerdict, "on_track">;
122
123
  reason: string;
123
124
  };
125
+ /**
126
+ * Append-only log of every {@link StepFeedback} pushed during the run
127
+ * (pre-sanity vetoes, MCP act failures, trajectory reflector verdicts).
128
+ * The PlanExecutor surfaces the tail of this list as
129
+ * `PlanContext.failureChain` on replan so the planner sees the precise
130
+ * chain of failures rather than a free-form failure-reason string.
131
+ */
132
+ feedbackLog: StepFeedback[];
124
133
  }
125
134
  export declare class AgentLoop {
126
135
  private readonly opts;
@@ -130,7 +139,34 @@ export declare class AgentLoop {
130
139
  private readonly reflector;
131
140
  private readonly notes;
132
141
  private trajectoryVerdict?;
142
+ /**
143
+ * One-way bus for diagnostics that need to surface in the next
144
+ * `Observation.task` prefix. Drained right before each predict; entries
145
+ * are pushed by veto / act_failed / trajectory-reflector paths. See
146
+ * `feedback.ts` for the rationale (closes the reflection feedback loop
147
+ * without adapter protocol changes).
148
+ */
149
+ private pendingFeedback;
150
+ /**
151
+ * Append-only counterpart of {@link pendingFeedback} — never drained.
152
+ * Surfaced via `AgentRunResult.feedbackLog` so the PlanExecutor can
153
+ * thread the most recent entries into `PlanContext.failureChain` on
154
+ * replan.
155
+ */
156
+ private readonly feedbackLog;
157
+ /**
158
+ * Per-veto-code *consecutive* counter — only tracks the most recent
159
+ * veto code so that an A→B→A sequence is NOT treated as "A fired
160
+ * twice in a row" (that's exactly what `consecutive` means). Reset on
161
+ * any successful action dispatch. When a single code fires twice in a
162
+ * row we escalate to a fatal `reflection_veto` so the PlanExecutor
163
+ * can `replan()` — much faster than waiting for `maybeVeto` to spot
164
+ * four identical actions.
165
+ */
166
+ private vetoCodeCount;
133
167
  constructor(opts: AgentRunOptions);
168
+ /** Push feedback into both the pending queue and the immutable log. */
169
+ private pushFeedback;
134
170
  run(): Promise<AgentRunResult>;
135
171
  private observe;
136
172
  /**
@@ -164,7 +200,31 @@ export declare class AgentLoop {
164
200
  */
165
201
  private maybeRunTrajectoryReflector;
166
202
  private recordHistory;
203
+ /**
204
+ * Backfill `screenStateHashAfter` on the just-pushed terminal history
205
+ * entry. Terminal actions (`done` / `fail` / `call_for_user`) return
206
+ * immediately and the next-iteration `observe()` never runs, so the
207
+ * normal hash-after backfill at the top of the loop body never fires.
208
+ * For terminal entries we set after = before — the screen cannot
209
+ * possibly change after the loop exits — eliminating the residual
210
+ * `undefined` that downstream consumers (telemetry, replay) had to
211
+ * special-case.
212
+ */
213
+ private markTerminalHashAfter;
167
214
  private fireStep;
168
215
  private fire;
169
216
  private finish;
170
217
  }
218
+ /**
219
+ * Compute a normalised fingerprint of the on-screen state for stall
220
+ * detection. The hash is computed over the uiautomator XML with all
221
+ * {@link NOISY_UI_DUMP_ATTRS} stripped and whitespace collapsed so
222
+ * that focus/scroll/cursor jitter does not flip the hash. Two screens
223
+ * that look identical to a human should produce the same hash.
224
+ *
225
+ * Returns `undefined` when no `uiDump` is available — pure-vision
226
+ * adapters (Open-AutoGLM, UI-TARS, Qwen-VL) skip the dump round-trip
227
+ * and fall back to the legacy 8px coordinate-similarity heuristic in
228
+ * `HierarchicalReflector.maybeBlockAction`.
229
+ */
230
+ export declare function computeScreenStateHash(uiDump: string | undefined): string | undefined;