@beeos-ai/device-agent 0.7.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-runtime/skills/sqlite-store.d.ts +60 -0
- package/dist/agent-runtime/skills/sqlite-store.js +234 -0
- package/dist/agent-runtime/skills/sqlite-store.js.map +1 -0
- package/dist/app/in-flight-turn.d.ts +39 -0
- package/dist/app/in-flight-turn.js.map +1 -1
- package/dist/app/jsonl-store.js +20 -7
- package/dist/app/jsonl-store.js.map +1 -1
- package/dist/app/plugin-commands/screenshot-command.d.ts +11 -10
- package/dist/app/plugin-commands/screenshot-command.js +19 -18
- package/dist/app/plugin-commands/screenshot-command.js.map +1 -1
- package/dist/app/plugin-commands/types.d.ts +50 -11
- package/dist/app/plugin-commands/types.js +5 -2
- package/dist/app/plugin-commands/types.js.map +1 -1
- package/dist/app/session-manager.d.ts +20 -11
- package/dist/app/session-manager.js +83 -14
- package/dist/app/session-manager.js.map +1 -1
- package/dist/bootstrap.js +11 -0
- package/dist/bootstrap.js.map +1 -1
- package/dist/config/loader.d.ts +4 -0
- package/dist/config/loader.js +18 -2
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +5 -0
- package/dist/config/schema.js +42 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/inbound/cli/main.js +12 -0
- package/dist/inbound/cli/main.js.map +1 -1
- package/dist/messaging/token-provider.d.ts +43 -0
- package/dist/messaging/token-provider.js +65 -0
- package/dist/messaging/token-provider.js.map +1 -0
- package/dist/plugins/acp/index.js +1 -1
- package/dist/plugins/acp/index.js.map +1 -1
- package/dist/plugins/message-bus/busy-reply.d.ts +39 -0
- package/dist/plugins/message-bus/busy-reply.js +30 -0
- package/dist/plugins/message-bus/busy-reply.js.map +1 -0
- package/dist/plugins/message-bus/inbound.d.ts +55 -0
- package/dist/plugins/message-bus/inbound.js +123 -0
- package/dist/plugins/message-bus/inbound.js.map +1 -0
- package/dist/plugins/message-bus/index.d.ts +147 -0
- package/dist/plugins/message-bus/index.js +392 -0
- package/dist/plugins/message-bus/index.js.map +1 -0
- package/dist/plugins/message-bus/outbound.d.ts +43 -0
- package/dist/plugins/message-bus/outbound.js +149 -0
- package/dist/plugins/message-bus/outbound.js.map +1 -0
- package/dist/plugins/message-bus/turn-context.d.ts +57 -0
- package/dist/plugins/message-bus/turn-context.js +53 -0
- package/dist/plugins/message-bus/turn-context.js.map +1 -0
- package/dist/test-lan-autoglm.d.ts +7 -0
- package/dist/test-lan-autoglm.js +46 -0
- package/dist/test-lan-autoglm.js.map +1 -0
- package/dist/test-mem-breakdown.d.ts +1 -0
- package/dist/test-mem-breakdown.js +103 -0
- package/dist/test-mem-breakdown.js.map +1 -0
- package/dist/test-mem.d.ts +1 -0
- package/dist/test-mem.js +60 -0
- package/dist/test-mem.js.map +1 -0
- package/dist/test-mobile-use.d.ts +1 -0
- package/dist/test-mobile-use.js +18 -0
- package/dist/test-mobile-use.js.map +1 -0
- package/dist/test-screenshot-loop.d.ts +1 -0
- package/dist/test-screenshot-loop.js +43 -0
- package/dist/test-screenshot-loop.js.map +1 -0
- package/dist/test-screenshot.d.ts +1 -0
- package/dist/test-screenshot.js +10 -0
- package/dist/test-screenshot.js.map +1 -0
- package/dist/test-ui-xml-dump.d.ts +15 -0
- package/dist/test-ui-xml-dump.js +49 -0
- package/dist/test-ui-xml-dump.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dump current-screen UI XML for debugging `ui_xml` parsing.
|
|
3
|
+
*
|
|
4
|
+
* Writes under `.debug/ui-xml-dumps/` (override with UI_XML_DUMP_DIR):
|
|
5
|
+
* - `<stamp>-raw.xml` — full uiautomator dump (no truncation)
|
|
6
|
+
* - `<stamp>-tool.txt` — exact string `ui_xml` would return (same truncation / JSON rules)
|
|
7
|
+
* - `<stamp>-parsed.json` — `{ query, nodes }` from {@link searchUiXmlNodes}
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* npx tsx src/test-ui-xml-dump.ts # query = "" → parsed.json lists all nodes (can be large)
|
|
11
|
+
* npx tsx src/test-ui-xml-dump.ts 设置 # filter substring
|
|
12
|
+
*
|
|
13
|
+
* Requires adb + device (GUI_AGENT_DEVICE_ID if multiple).
|
|
14
|
+
*/
|
|
15
|
+
import "dotenv/config";
|
|
16
|
+
import { mkdirSync, writeFileSync } from "node:fs";
|
|
17
|
+
import { join } from "node:path";
|
|
18
|
+
import { AndroidDevice } from "./device/android.js";
|
|
19
|
+
import { formatUiXmlToolOutput, searchUiXmlNodes } from "./device/ui-xml.js";
|
|
20
|
+
const OUT_DIR = process.env.UI_XML_DUMP_DIR ?? join(process.cwd(), ".debug", "ui-xml-dumps");
|
|
21
|
+
function stamp() {
|
|
22
|
+
return new Date().toISOString().replace(/[:.]/g, "-");
|
|
23
|
+
}
|
|
24
|
+
async function main() {
|
|
25
|
+
const query = process.argv.slice(2).join(" ").trim();
|
|
26
|
+
const device = new AndroidDevice(process.env.GUI_AGENT_DEVICE_ID ?? undefined);
|
|
27
|
+
const xml = await device.getUiXml();
|
|
28
|
+
if (!xml) {
|
|
29
|
+
console.error("Failed to read UI XML (adb / uiautomator). Check device connection.");
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
mkdirSync(OUT_DIR, { recursive: true });
|
|
33
|
+
const id = stamp();
|
|
34
|
+
const base = join(OUT_DIR, id);
|
|
35
|
+
writeFileSync(`${base}-raw.xml`, xml, "utf-8");
|
|
36
|
+
const toolText = formatUiXmlToolOutput(xml, query || undefined);
|
|
37
|
+
writeFileSync(`${base}-tool.txt`, toolText, "utf-8");
|
|
38
|
+
const nodes = searchUiXmlNodes(xml, query);
|
|
39
|
+
writeFileSync(`${base}-parsed.json`, `${JSON.stringify({ query: query || null, nodeCount: nodes.length, nodes }, null, 2)}\n`, "utf-8");
|
|
40
|
+
console.log(`Wrote:
|
|
41
|
+
${base}-raw.xml (${xml.length} chars)
|
|
42
|
+
${base}-tool.txt (${toolText.length} chars, same as ui_xml tool output)
|
|
43
|
+
${base}-parsed.json (${nodes.length} nodes${query ? `, query=${JSON.stringify(query)}` : ", query=null (all nodes)"})`);
|
|
44
|
+
}
|
|
45
|
+
main().catch((e) => {
|
|
46
|
+
console.error(e);
|
|
47
|
+
process.exit(1);
|
|
48
|
+
});
|
|
49
|
+
//# sourceMappingURL=test-ui-xml-dump.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-ui-xml-dump.js","sourceRoot":"","sources":["../src/test-ui-xml-dump.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE7E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;AAE7F,SAAS,KAAK;IACZ,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;IACpC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAE/B,aAAa,CAAC,GAAG,IAAI,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,EAAE,KAAK,IAAI,SAAS,CAAC,CAAC;IAChE,aAAa,CAAC,GAAG,IAAI,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAErD,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC3C,aAAa,CACX,GAAG,IAAI,cAAc,EACrB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EACxF,OAAO,CACR,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC;IACV,IAAI,eAAe,GAAG,CAAC,MAAM;IAC7B,IAAI,eAAe,QAAQ,CAAC,MAAM;IAClC,IAAI,iBAAiB,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,0BAA0B,GAAG,CAAC,CAAC;AAC1H,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beeos-ai/device-agent",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "BeeOS device-agent — Android/desktop AI control agent (TypeScript) speaking ACP over Bridge WebSocket. Connects to a sibling device-mcp-server process for device control.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -53,6 +53,7 @@
|
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@beeos-ai/beeos-types": "^1.0.0",
|
|
55
55
|
"@beeos-ai/bridge-client": "^0.1.1",
|
|
56
|
+
"@beeos-ai/message-sdk": "^0.1.0",
|
|
56
57
|
"@fastify/cors": "^11.2.0",
|
|
57
58
|
"@fastify/multipart": "^10.0.0",
|
|
58
59
|
"@mariozechner/pi-coding-agent": "0.70.2",
|