@beeos-ai/device-agent 0.9.3 → 0.9.7

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 (102) hide show
  1. package/dist/adapters/transport-bridge-ws.d.ts +12 -0
  2. package/dist/adapters/transport-bridge-ws.js +27 -3
  3. package/dist/adapters/transport-bridge-ws.js.map +1 -1
  4. package/dist/agent-runtime/core.d.ts +1 -1
  5. package/dist/agent-runtime/core.js +41 -0
  6. package/dist/agent-runtime/core.js.map +1 -1
  7. package/dist/app/session-manager.d.ts +14 -11
  8. package/dist/app/session-manager.js +8 -9
  9. package/dist/app/session-manager.js.map +1 -1
  10. package/dist/bootstrap.js +140 -11
  11. package/dist/bootstrap.js.map +1 -1
  12. package/dist/chat.js +11 -1
  13. package/dist/chat.js.map +1 -1
  14. package/dist/config/loader.js +3 -0
  15. package/dist/config/loader.js.map +1 -1
  16. package/dist/config/schema.d.ts +3 -0
  17. package/dist/config/schema.js +65 -21
  18. package/dist/config/schema.js.map +1 -1
  19. package/dist/fleet/adapters/process/node-process-manager.d.ts +115 -13
  20. package/dist/fleet/adapters/process/node-process-manager.js +412 -64
  21. package/dist/fleet/adapters/process/node-process-manager.js.map +1 -1
  22. package/dist/fleet/adapters/state/port-allocator.d.ts +12 -0
  23. package/dist/fleet/adapters/state/port-allocator.js +39 -5
  24. package/dist/fleet/adapters/state/port-allocator.js.map +1 -1
  25. package/dist/fleet/domain/events.d.ts +23 -1
  26. package/dist/fleet/domain/fsm.d.ts +13 -1
  27. package/dist/fleet/domain/fsm.js +70 -0
  28. package/dist/fleet/domain/fsm.js.map +1 -1
  29. package/dist/fleet/supervisor.js +30 -0
  30. package/dist/fleet/supervisor.js.map +1 -1
  31. package/dist/health/adb-track-devices.d.ts +103 -0
  32. package/dist/health/adb-track-devices.js +171 -0
  33. package/dist/health/adb-track-devices.js.map +1 -0
  34. package/dist/health/health-reporter.d.ts +67 -0
  35. package/dist/health/health-reporter.js +123 -0
  36. package/dist/health/health-reporter.js.map +1 -0
  37. package/dist/health/index.d.ts +6 -0
  38. package/dist/health/index.js +4 -0
  39. package/dist/health/index.js.map +1 -0
  40. package/dist/health/mcp-health-monitor.d.ts +190 -0
  41. package/dist/health/mcp-health-monitor.js +267 -0
  42. package/dist/health/mcp-health-monitor.js.map +1 -0
  43. package/dist/inbound/cli/main.js +10 -3
  44. package/dist/inbound/cli/main.js.map +1 -1
  45. package/dist/inbound/cli/run-command.js +24 -2
  46. package/dist/inbound/cli/run-command.js.map +1 -1
  47. package/dist/index.d.ts +1 -1
  48. package/dist/index.js.map +1 -1
  49. package/dist/mcp-client/action-mapping.d.ts +45 -0
  50. package/dist/mcp-client/action-mapping.js +224 -0
  51. package/dist/mcp-client/action-mapping.js.map +1 -0
  52. package/dist/mcp-client/autospawn.d.ts +15 -2
  53. package/dist/mcp-client/autospawn.js +82 -4
  54. package/dist/mcp-client/autospawn.js.map +1 -1
  55. package/dist/mcp-client/client.d.ts +134 -38
  56. package/dist/mcp-client/client.js +394 -87
  57. package/dist/mcp-client/client.js.map +1 -1
  58. package/dist/mcp-client/index.d.ts +5 -3
  59. package/dist/mcp-client/index.js +2 -1
  60. package/dist/mcp-client/index.js.map +1 -1
  61. package/dist/mcp-client/inproc.d.ts +2 -2
  62. package/dist/mcp-client/inproc.js.map +1 -1
  63. package/dist/mcp-client/runtime.d.ts +124 -21
  64. package/dist/mcp-client/runtime.js +18 -7
  65. package/dist/mcp-client/runtime.js.map +1 -1
  66. package/dist/messaging/token-provider.d.ts +15 -14
  67. package/dist/messaging/token-provider.js +16 -16
  68. package/dist/messaging/token-provider.js.map +1 -1
  69. package/dist/model/adapters/autoglm.js +44 -45
  70. package/dist/model/adapters/autoglm.js.map +1 -1
  71. package/dist/model/adapters/guiowl.js +3 -2
  72. package/dist/model/adapters/guiowl.js.map +1 -1
  73. package/dist/model/adapters/maiui.js +80 -53
  74. package/dist/model/adapters/maiui.js.map +1 -1
  75. package/dist/model/adapters/qwenvl.js +147 -51
  76. package/dist/model/adapters/qwenvl.js.map +1 -1
  77. package/dist/model/adapters/tool-call.js +13 -3
  78. package/dist/model/adapters/tool-call.js.map +1 -1
  79. package/dist/model/adapters/uitars.js +80 -84
  80. package/dist/model/adapters/uitars.js.map +1 -1
  81. package/dist/plugins/acp/index.d.ts +35 -0
  82. package/dist/plugins/acp/index.js +121 -0
  83. package/dist/plugins/acp/index.js.map +1 -1
  84. package/dist/plugins/message-bus/busy-reply.d.ts +5 -5
  85. package/dist/plugins/message-bus/busy-reply.js +30 -9
  86. package/dist/plugins/message-bus/busy-reply.js.map +1 -1
  87. package/dist/plugins/message-bus/cancel.d.ts +5 -11
  88. package/dist/plugins/message-bus/cancel.js +8 -14
  89. package/dist/plugins/message-bus/cancel.js.map +1 -1
  90. package/dist/plugins/message-bus/inbound.d.ts +18 -25
  91. package/dist/plugins/message-bus/inbound.js +23 -55
  92. package/dist/plugins/message-bus/inbound.js.map +1 -1
  93. package/dist/plugins/message-bus/index.d.ts +25 -44
  94. package/dist/plugins/message-bus/index.js +70 -111
  95. package/dist/plugins/message-bus/index.js.map +1 -1
  96. package/dist/plugins/message-bus/ms-channel-notifier.d.ts +24 -37
  97. package/dist/plugins/message-bus/ms-channel-notifier.js +39 -59
  98. package/dist/plugins/message-bus/ms-channel-notifier.js.map +1 -1
  99. package/dist/ports/transport.d.ts +11 -0
  100. package/dist/resources/parsers.js +17 -0
  101. package/dist/resources/parsers.js.map +1 -1
  102. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"autoglm.js","sourceRoot":"","sources":["../../../src/model/adapters/autoglm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autoglm.js","sourceRoot":"","sources":["../../../src/model/adapters/autoglm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE1D,+EAA+E;AAE/E,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAC;AAC/E,MAAM,WAAW,GAAG;IAClB,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,UAAU;IACV,QAAQ;CACA,CAAC;AAEX,SAAS,YAAY,CAAC,CAAO;IAC3B,oEAAoE;IACpE,iEAAiE;IACjE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChD,OAAO,GAAG,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,YAAY,CAAC,CAAO;IAC3B,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChD,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,GAAG,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;AACnD,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,2BAA2B,CAAC,OAAa,IAAI,IAAI,EAAE;IACjE,OAAO,WAAW,YAAY,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DrC,CAAC;AACF,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,2BAA2B,CAAC,OAAa,IAAI,IAAI,EAAE;IACjE,OAAO,qBAAqB,YAAY,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkE/C,CAAC;AACF,CAAC;AAED,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,MAAM,cAAe,SAAQ,YAAY;IAC9B,IAAI,GAAG,SAAS,CAAC;IACjB,QAAQ,GAAG;QAClB,SAAS;QACT,cAAc;QACd,mBAAmB;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,OAAO;QACP,QAAQ;KACT,CAAC;IAEF,aAAa,CACX,IAAY,EACZ,UAAsB,EACtB,OAAkB,EAClB,OAAgB,EAChB,IAAY;QAEZ,MAAM,YAAY,GAChB,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC,2BAA2B,EAAE,CAAC;QAEhF,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QAC1B,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,GAAW;QACvB,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACvD,sJAAsJ;QACtJ,OAAO,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,aAAa,CAAC,OAAkB,EAAE,QAAuB,EAAE,MAAoB;QAC7E,qDAAqD;QACrD,IAAI,OAAO,CAAC,MAAM,IAAK,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAa,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACzC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG;oBAC5B,GAAG,IAAI;oBACP,OAAO,EAAG,IAAI,CAAC,OAAmC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;iBACzF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,QAAQ,mBAAmB,SAAS,WAAW,EAAE,CAAC,CAAC;QACxG,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAED,eAAe,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;AAEtC,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AAEjF,SAAS,YAAY,CAAC,IAAY,EAAE,UAAsB,EAAE,IAAY,EAAE,OAAgB;IACxF,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,OAAO;QAClB,CAAC,CAAC,GAAG,IAAI,OAAO,OAAO,EAAE;QACzB,CAAC,CAAC,wBAAwB,OAAO,EAAE,CAAC;IAEtC,MAAM,OAAO,GAAkD,EAAE,CAAC;IAClE,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACpF,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,wDAAwD;IACxD,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACnD,MAAM,GAAG,GACP,MAAM,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;QACvD,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM;YACtB,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO;gBACxB,CAAC,CAAC,CAAC,CAAC,CAAC;IACP,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB,EAAE,QAAgB;IACtD,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAEpF,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;IACrI,CAAC;IAED,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,WAAW;IACX,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CAAC,CAAS,EAAE,QAAgB;IAChD,sBAAsB;IACtB,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE5B,qEAAqE;IACrE,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAClE,+CAA+C;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC7H,CAAC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAEtC,6CAA6C;IAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACpD,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;QAChF,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC;YAC7B,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5E,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAChD,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACd,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC7I,CAAC;QACH,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC3H,CAAC;IAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC/C,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5D,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACxK,CAAC;IAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACtJ,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAClD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACzK,CAAC;IAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAChD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACrJ,CAAC;IAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACzB,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrF,OAAO;YACL,UAAU,EAAE,WAAW;YACvB,MAAM,EAAE,EAAE,IAAI,EAAE;YAChB,QAAQ;YACR,WAAW,EAAE,QAAQ;YACrB,YAAY,EAAE,KAAK;YACnB,aAAa,EAAE,IAAI;SACpB,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QACnD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACrH,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,GAAG,GAA2B;QAClC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;QACpC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY;QAC7E,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY;QAC7E,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ;QAChD,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;QAC7C,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU;QAC5D,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY;QAChE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY;QAChE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAC1B,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW;QACnF,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU;KAC5C,CAAC;IACF,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,IAAI,CAAC,QAAgB;IAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AAC5I,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC;IAC5C,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,mBAAmB,MAAM,CAAC,aAAa,IAAI,EAAE,IAAI,CAAC;IAC7E,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,2BAA2B,CAAC,CAAC,IAAI,IAAI,CAAC;IAC/D,IAAI,CAAC,KAAK,OAAO;QAAE,OAAO,6BAA6B,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC;IAC/G,IAAI,CAAC,KAAK,UAAU;QAAE,OAAO,4BAA4B,CAAC,CAAC,QAAQ,IAAI,CAAC;IACxE,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,mBAAmB,CAAC;IACnD,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,mBAAmB,CAAC;IACnD,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,yCAAyC,CAAC;IACnE,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,MAAM,CAAE,CAA6B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,8BAA8B,OAAO,IAAI,CAAC;IACnD,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,CAAC;AAC7B,CAAC"}
@@ -45,10 +45,11 @@ function buildToolSchema(w, h) {
45
45
  "* `open`: Open an app on the device.\n" +
46
46
  "* `wait`: Wait specified seconds for the change to happen.\n" +
47
47
  "* `answer`: Terminate the current task and output the answer.\n" +
48
+ "* `interact`: Resolve the blocking window by interacting with the user.\n" +
48
49
  "* `terminate`: Terminate the current task and report its completion status.",
49
50
  enum: [
50
51
  "key", "click", "long_press", "swipe", "type",
51
- "system_button", "open", "wait", "answer", "terminate",
52
+ "system_button", "open", "wait", "answer", "interact", "terminate",
52
53
  ],
53
54
  type: "string",
54
55
  },
@@ -62,7 +63,7 @@ function buildToolSchema(w, h) {
62
63
  type: "array",
63
64
  },
64
65
  text: {
65
- description: "Required only by `action=key`, `action=type`, `action=open`, and `action=answer`.",
66
+ description: "Required only by `action=key`, `action=type`, `action=open`, `action=answer`, and `action=interact`.",
66
67
  type: "string",
67
68
  },
68
69
  time: {
@@ -1 +1 @@
1
- {"version":3,"file":"guiowl.js","sourceRoot":"","sources":["../../../src/model/adapters/guiowl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guiowl.js","sourceRoot":"","sources":["../../../src/model/adapters/guiowl.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,gFAAgF;AAChF,6BAA6B;AAC7B,EAAE;AACF,yBAAyB;AACzB,sFAAsF;AACtF,uEAAuE;AACvE,EAAE;AACF,wDAAwD;AACxD,gFAAgF;AAChF,4GAA4G;AAC5G,6EAA6E;AAC7E,iFAAiF;AACjF,wFAAwF;AACxF,gFAAgF;AAEhF,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,QAAQ,GAAG,IAAI,CAAC;AAEtB,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,cAAc,EAAE,YAAY;YAC5B,IAAI,EAAE,YAAY;YAClB,WAAW,EACT,6EAA6E;gBAC7E,8DAA8D;gBAC9D,gEAAgE;gBAChE,iEAAiE;gBACjE,+FAA+F;gBAC/F,gCAAgC,CAAC,IAAI,CAAC,KAAK;gBAC3C,0EAA0E;gBAC1E,8EAA8E;YAChF,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,WAAW,EACT,qDAAqD;4BACrD,sDAAsD;4BACtD,gDAAgD;4BAChD,2EAA2E;4BAC3E,oEAAoE;4BACpE,+FAA+F;4BAC/F,gHAAgH;4BAChH,oEAAoE;4BACpE,+CAA+C;4BAC/C,wCAAwC;4BACxC,8DAA8D;4BAC9D,iEAAiE;4BACjE,2EAA2E;4BAC3E,6EAA6E;wBAC/E,IAAI,EAAE;4BACJ,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM;4BAC7C,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW;yBACnE;wBACD,IAAI,EAAE,QAAQ;qBACf;oBACD,UAAU,EAAE;wBACV,WAAW,EACT,8EAA8E;4BAC9E,2EAA2E;wBAC7E,IAAI,EAAE,OAAO;qBACd;oBACD,WAAW,EAAE;wBACX,WAAW,EACT,0DAA0D;wBAC5D,IAAI,EAAE,OAAO;qBACd;oBACD,IAAI,EAAE;wBACJ,WAAW,EACT,sGAAsG;wBACxG,IAAI,EAAE,QAAQ;qBACf;oBACD,IAAI,EAAE;wBACJ,WAAW,EAAE,kEAAkE;wBAC/E,IAAI,EAAE,QAAQ;qBACf;oBACD,MAAM,EAAE;wBACN,WAAW,EACT,qGAAqG;4BACrG,0CAA0C;wBAC5C,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;wBACvC,IAAI,EAAE,QAAQ;qBACf;oBACD,MAAM,EAAE;wBACN,WAAW,EAAE,mDAAmD;wBAChE,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;qBAC7B;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;gBACpB,IAAI,EAAE,QAAQ;aACf;YACD,WAAW,EAAE,wCAAwC;SACtD;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO;;;;;;EAMP,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;;;uEAkBgD,CAAC;AACxE,CAAC;AAED,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO;;;;;;EAMP,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;;;wDAkBiC,CAAC;AACzD,CAAC;AAED,SAAS,cAAc,CACrB,IAAY,EACZ,OAAiB,EACjB,IAAY,EACZ,IAAiD;IAEjD,MAAM,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM;QAChD,CAAC,CAAC,CAAC,IAAI;YACL,CAAC,CAAC,kFAAkF;YACpF,CAAC,CAAC,0BAA0B,CAAC;QAC/B,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM;YACjC,CAAC,CAAC,CAAC,IAAI;gBACL,CAAC,CAAC,qGAAqG;gBACvG,CAAC,CAAC,iCAAiC,CAAC;YACtC,CAAC,CAAC,CAAC,IAAI;gBACL,CAAC,CAAC,uEAAuE;gBACzE,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAE3B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI;YACT,CAAC,CAAC,iCAAiC,OAAO,qBAAqB,IAAI,EAAE;YACrE,CAAC,CAAC,IAAI,OAAO,oBAAoB,IAAI,EAAE,CAAC;IAC5C,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxF,OAAO,IAAI;QACT,CAAC,CAAC,iCAAiC,OAAO,qBAAqB,IAAI,2BAA2B,IAAI,EAAE;QACpG,CAAC,CAAC,IAAI,OAAO,oBAAoB,IAAI,gBAAgB,IAAI,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,aAAc,SAAQ,YAAY;IAC7B,IAAI,GAAG,QAAQ,CAAC;IACzB,4EAA4E;IACnE,QAAQ,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAElE,aAAa,GAAa,EAAE,CAAC;IAErC,aAAa,CACX,IAAY,EACZ,UAAsB,EACtB,QAAmB,EACnB,OAAgB,EAChB,IAAY;QAEZ,IAAI,OAAO;YAAE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAErC,MAAM,GAAG,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpG,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;QAClC,IAAI,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAClG,IAAI,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YAC/B,QAAQ,IAAI,IAAI,KAAK,IAAI;gBACvB,CAAC,CAAC,iCAAiC,UAAU,CAAC,KAAK,EAAE;gBACrD,CAAC,CAAC,0BAA0B,UAAU,CAAC,KAAK,EAAE,CAAC;QACnD,CAAC;QAED,MAAM,WAAW,GAAkD;YACjE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;SACjC,CAAC;QACF,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE;YAChC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;SACvC,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,GAAW;QACvB,qEAAqE;QACrE,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3F,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;QAC5E,wEAAwE;QACxE,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC9B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,QAAmB,EAAE,SAAwB,EAAE,MAAoB;QAC/E,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACtE,IAAI,IAAI;gBAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,+EAA+E;QAC/E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,YAAY;QACV,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC1B,CAAC;CACF;AAED,eAAe,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;AAErC,SAAS,YAAY,CAAC,QAAgB;IACpC,OAAO;QACL,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE;QAC/B,QAAQ;QACR,WAAW,EAAE,QAAQ;QACrB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,IAAI;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,MAAoB;IACzC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC;IAC5C,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/C,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,SAAS,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IAClE,IAAI,CAAC,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;IACnF,IAAI,CAAC,KAAK,UAAU;QAAE,OAAO,QAAQ,CAAC,CAAC,QAAQ,GAAG,CAAC;IACnD,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,qBAAqB,CAAC;IACrD,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,qBAAqB,CAAC;IACrD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -1,75 +1,105 @@
1
1
  import { ModelAdapter, registerAdapter } from "./base.js";
2
2
  import { parseToolCall } from "./tool-call.js";
3
3
  // MAIUI adapter
4
- // Same <tool_call> JSON format as QwenVL but accumulates multi-turn context
5
- // with a max of 3 images in the window. Handles <thinking> tags.
4
+ // Aligned with ClawGUI prompts_maiui.py (MAI_MOBILE_SYS_PROMPT_CN / MAI_MOBILE_SYS_PROMPT_EN)
5
+ //
6
+ // Message structure (mirrors ClawGUI exactly):
7
+ // First turn : [system(string), user([text:task]), user([image])]
8
+ // Subsequent : [...context, assistant(rawContent), user([image])]
9
+ // Max 3 images in context window (pruned in updateContext).
10
+ //
11
+ // Output format expected:
12
+ // <thinking>...</thinking>
13
+ // <tool_call>{"name": "mobile_use", "arguments": {...}}</tool_call>
6
14
  const MAX_IMAGES = 3;
7
- const SYSTEM_PROMPT_EN = `\
8
- You are a mobile GUI automation agent. Analyze the screenshot and output the next action as a tool call.
15
+ const SYSTEM_PROMPT_CN = `你是一个 GUI 智能体。你将获得一个任务、你的动作历史以及截图。你需要执行下一个动作来完成任务。
9
16
 
17
+ ## 输出格式
18
+ 对于每个函数调用,在 <thinking> </thinking> 标签中返回思考过程,并在 <tool_call></tool_call> XML 标签中返回包含函数名和参数的 json 对象:
19
+ \`\`\`
20
+ <thinking>
21
+ ...
22
+ </thinking>
10
23
  <tool_call>
11
- {"name": "mobile_use", "arguments": {"action": "<action>", ...}}
24
+ {"name": "mobile_use", "arguments": <args-json-object>}
12
25
  </tool_call>
26
+ \`\`\`
13
27
 
14
- Actions and parameters:
15
- - {"action":"tap","coordinate":[x,y]}
16
- - {"action":"double_tap","coordinate":[x,y]}
17
- - {"action":"long_press","coordinate":[x,y]}
18
- - {"action":"swipe","start_coordinate":[x,y],"end_coordinate":[x,y]}
19
- - {"action":"type","text":"..."}
20
- - {"action":"press_back"}
21
- - {"action":"press_home"}
22
- - {"action":"open_app","text":"App Name"}
23
- - {"action":"wait"}
24
- - {"action":"finish","text":"completion reason"}
28
+ ## 动作空间
25
29
 
26
- Coordinates are 0–1000 relative to screen size.`;
27
- const SYSTEM_PROMPT_CN = `\
28
- 你是一个手机 GUI 自动化 Agent。分析截图并以工具调用形式输出下一步操作。
30
+ {"action": "click", "coordinate": [x, y]}
31
+ {"action": "long_press", "coordinate": [x, y]}
32
+ {"action": "type", "text": ""}
33
+ {"action": "swipe", "direction": "up 或 down 或 left 或 right", "coordinate": [x, y]} # "coordinate" 是可选的。如果要滑动特定 UI 元素,请使用 "coordinate"。
34
+ {"action": "open", "text": "app_name"}
35
+ {"action": "drag", "start_coordinate": [x1, y1], "end_coordinate": [x2, y2]}
36
+ {"action": "system_button", "button": "button_name"} # 选项: back, home, menu, enter
37
+ {"action": "wait"}
38
+ {"action": "terminate", "status": "success 或 fail"}
39
+ {"action": "answer", "text": "xxx"} # 在 text 部分使用转义字符 \\'、\\" 和 \\n 以确保我们可以按正常 python 字符串格式解析内容。
29
40
 
41
+ ## 注意事项
42
+ - 写一个小计划,然后在 <thinking></thinking> 部分用一句话总结你的下一个动作(及其目标元素)。
43
+ - 你可以使用 \`open\` 动作直接打开应用,这是打开应用最快的方式。
44
+ - 你必须严格遵循动作空间,并在 <thinking> </thinking> 和 <tool_call></tool_call> XML 标签中返回正确的 json 对象。
45
+ `;
46
+ const SYSTEM_PROMPT_EN = `You are a GUI agent. You are given a task and your action history, with screenshots. You need to perform the next action to complete the task.
47
+
48
+ ## Output Format
49
+ For each function call, return the thinking process in <thinking> </thinking> tags, and a json object with function name and arguments within <tool_call></tool_call> XML tags:
50
+ \`\`\`
51
+ <thinking>
52
+ ...
53
+ </thinking>
30
54
  <tool_call>
31
- {"name": "mobile_use", "arguments": {"action": "<动作>", ...}}
55
+ {"name": "mobile_use", "arguments": <args-json-object>}
32
56
  </tool_call>
57
+ \`\`\`
58
+
59
+ ## Action Space
60
+
61
+ {"action": "click", "coordinate": [x, y]}
62
+ {"action": "long_press", "coordinate": [x, y]}
63
+ {"action": "type", "text": ""}
64
+ {"action": "swipe", "direction": "up or down or left or right", "coordinate": [x, y]} # "coordinate" is optional. Use the "coordinate" if you want to swipe a specific UI element.
65
+ {"action": "open", "text": "app_name"}
66
+ {"action": "drag", "start_coordinate": [x1, y1], "end_coordinate": [x2, y2]}
67
+ {"action": "system_button", "button": "button_name"} # Options: back, home, menu, enter
68
+ {"action": "wait"}
69
+ {"action": "terminate", "status": "success or fail"}
70
+ {"action": "answer", "text": "xxx"} # Use escape characters \\'、\\" and \\n in text part to ensure we can parse the text in normal python string format.
33
71
 
34
- 动作及参数:
35
- - {"action":"tap","coordinate":[x,y]}
36
- - {"action":"double_tap","coordinate":[x,y]}
37
- - {"action":"long_press","coordinate":[x,y]}
38
- - {"action":"swipe","start_coordinate":[x,y],"end_coordinate":[x,y]}
39
- - {"action":"type","text":"..."}
40
- - {"action":"press_back"}
41
- - {"action":"press_home"}
42
- - {"action":"open_app","text":"App名称"}
43
- - {"action":"wait"}
44
- - {"action":"finish","text":"完成原因"}
45
72
 
46
- 坐标范围 0–1000,相对于屏幕尺寸。`;
73
+ ## Note
74
+ - Write a small plan and finally summarize your next action (with its target element) in one sentence in <thinking></thinking> part.
75
+ - You can use the \`open\` action to open the app directly, because it is the fastest way to open the app.
76
+ - You must follow the Action Space strictly, and return the correct json object within <thinking> </thinking> and <tool_call></tool_call> XML tags.
77
+ `;
47
78
  class MAIUIAdapter extends ModelAdapter {
48
79
  name = "maiui";
49
80
  patterns = [/maiui/, /mai[-_]?ui/, /mai_ui/];
50
81
  buildMessages(task, screenInfo, context, isFirst, lang) {
51
82
  const systemPrompt = lang === "cn" ? SYSTEM_PROMPT_CN : SYSTEM_PROMPT_EN;
52
- const msgs = [{ role: "system", content: systemPrompt }];
53
83
  if (isFirst) {
54
- const content = [];
84
+ // First turn: [system(string), user([text:task]), user([image])]
85
+ const msgs = [
86
+ { role: "system", content: systemPrompt },
87
+ { role: "user", content: [{ type: "text", text: task }] },
88
+ ];
55
89
  if (screenInfo.imageRef) {
56
- content.push({ type: "image_url", image_url: { url: screenInfo.imageRef.url } });
90
+ msgs.push({
91
+ role: "user",
92
+ content: [{ type: "image_url", image_url: { url: screenInfo.imageRef.url } }],
93
+ });
57
94
  }
58
- content.push({ type: "text", text: `Task: ${task}` });
59
- msgs.push({ role: "user", content });
95
+ return msgs;
60
96
  }
61
- else {
62
- // Prune old images to keep at most MAX_IMAGES across all messages
63
- const pruned = pruneImages([...context], MAX_IMAGES - 1); // -1 for current screenshot
64
- msgs.push(...pruned);
65
- const content = [];
66
- if (screenInfo.imageRef) {
67
- content.push({ type: "image_url", image_url: { url: screenInfo.imageRef.url } });
68
- }
69
- content.push({ type: "text", text: "Current screen. What is the next action?" });
70
- msgs.push({ role: "user", content });
97
+ // Subsequent turns: [...accumulated context, user([image])]
98
+ const userContent = [];
99
+ if (screenInfo.imageRef) {
100
+ userContent.push({ type: "image_url", image_url: { url: screenInfo.imageRef.url } });
71
101
  }
72
- return msgs;
102
+ return [...context, { role: "user", content: userContent }];
73
103
  }
74
104
  parseResponse(raw) {
75
105
  const thinking = extractThinking(raw);
@@ -77,9 +107,9 @@ class MAIUIAdapter extends ModelAdapter {
77
107
  const toolBlock = cleaned.includes("<tool_call>") ? cleaned : `<tool_call>${cleaned}</tool_call>`;
78
108
  return parseToolCall(toolBlock, thinking) ?? wait(thinking);
79
109
  }
80
- updateContext(context, response, parsed) {
110
+ updateContext(context, response, _parsed) {
81
111
  context.push({ role: "assistant", content: response.rawContent });
82
- return context;
112
+ return pruneImages(context, MAX_IMAGES);
83
113
  }
84
114
  }
85
115
  registerAdapter(new MAIUIAdapter());
@@ -89,9 +119,7 @@ function extractThinking(raw) {
89
119
  return m ? m[1].trim() : "";
90
120
  }
91
121
  function pruneImages(context, keepCount) {
92
- // Find all messages with images, remove oldest ones exceeding keepCount
93
122
  let imageCount = 0;
94
- // Count images from newest to oldest
95
123
  for (let i = context.length - 1; i >= 0; i--) {
96
124
  const msg = context[i];
97
125
  if (Array.isArray(msg.content)) {
@@ -100,7 +128,6 @@ function pruneImages(context, keepCount) {
100
128
  if (hasImage) {
101
129
  imageCount++;
102
130
  if (imageCount > keepCount) {
103
- // Strip images from this message
104
131
  context[i] = {
105
132
  ...msg,
106
133
  content: parts.filter((p) => p.type !== "image_url"),
@@ -1 +1 @@
1
- {"version":3,"file":"maiui.js","sourceRoot":"","sources":["../../../src/model/adapters/maiui.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,gBAAgB;AAChB,4EAA4E;AAC5E,iEAAiE;AAEjE,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;gDAmBuB,CAAC;AAEjD,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;qBAmBJ,CAAC;AAEtB,MAAM,YAAa,SAAQ,YAAY;IAC5B,IAAI,GAAG,OAAO,CAAC;IACf,QAAQ,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAEtD,aAAa,CACX,IAAY,EACZ,UAAsB,EACtB,OAAkB,EAClB,OAAgB,EAChB,IAAY;QAEZ,MAAM,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAEzE,MAAM,IAAI,GAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QAEpE,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,GAAkD,EAAE,CAAC;YAClE,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,kEAAkE;YAClE,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,4BAA4B;YACtF,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;YAErB,MAAM,OAAO,GAAkD,EAAE,CAAC;YAClE,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0CAA0C,EAAE,CAAC,CAAC;YACjF,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,GAAW;QACvB,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,kCAAkC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3E,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,OAAO,cAAc,CAAC;QAClG,OAAO,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,OAAkB,EAAE,QAAuB,EAAE,MAAoB;QAC7E,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAClE,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAED,eAAe,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;AAEpC,gFAAgF;AAEhF,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACzD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,OAAkB,EAAE,SAAiB;IACxD,wEAAwE;IACxE,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,qCAAqC;IACrC,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAkC,CAAC;YACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;YAC3D,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,EAAE,CAAC;gBACb,IAAI,UAAU,GAAG,SAAS,EAAE,CAAC;oBAC3B,iCAAiC;oBACjC,OAAO,CAAC,CAAC,CAAC,GAAG;wBACX,GAAG,GAAG;wBACN,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;qBACrD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,IAAI,CAAC,QAAgB;IAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AAC5I,CAAC"}
1
+ {"version":3,"file":"maiui.js","sourceRoot":"","sources":["../../../src/model/adapters/maiui.ts"],"names":[],"mappings":"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"}
@@ -1,84 +1,168 @@
1
1
  import { ModelAdapter, registerAdapter } from "./base.js";
2
2
  import { parseToolCall } from "./tool-call.js";
3
3
  // Qwen-VL adapter
4
- // Output: <tool_call>{"name":"mobile_use","arguments":{...}}</tool_call>
5
- // Always rebuilds: 1 system + 1 user message (no multi-turn context)
6
- // Coordinates: 0–999 normalized (treated as 0-1000)
7
- const SYSTEM_PROMPT_EN = `\
8
- You are a mobile automation assistant. Given a screenshot and task history, output the next action as a tool call.
4
+ // Aligned with ClawGUI prompts_qwenvl.py (PHONE_USE_QWEN_CN / PHONE_USE_QWEN_EN)
5
+ //
6
+ // Message structure (mirrors ClawGUI exactly):
7
+ // Always 2 messages: [system(XML tools schema), user(text then image)]
8
+ // No multi-turn accumulation; action history injected as text.
9
+ //
10
+ // Output format expected:
11
+ // Thought: <one sentence>
12
+ // Action: <one sentence>
13
+ // <tool_call>{"name":"mobile_use","arguments":{...}}</tool_call>
14
+ //
15
+ // Coordinates: 0–999 normalized (resolution declared as 999x999 in schema)
16
+ const TOOL_SCHEMA = JSON.stringify({
17
+ type: "function",
18
+ function: {
19
+ name_for_human: "mobile_use",
20
+ name: "mobile_use",
21
+ description: "Use a touchscreen to interact with a mobile device, and take screenshots.\n" +
22
+ "* This is an interface to a mobile device with touchscreen. You can perform actions like clicking, typing, swiping, etc.\n" +
23
+ "* Some applications may take time to start or process actions, so you may need to wait and take successive screenshots to see the results of your actions.\n" +
24
+ "* The screen's resolution is 999x999.\n" +
25
+ "* Make sure to click any buttons, links, icons, etc with the cursor tip in the center of the element. Don't click boxes on their edges unless asked.",
26
+ parameters: {
27
+ properties: {
28
+ action: {
29
+ description: "The action to perform. The available actions are:\n" +
30
+ "* `click`: Click the point on the screen with coordinate (x, y).\n" +
31
+ "* `long_press`: Press the point on the screen with coordinate (x, y) for specified seconds.\n" +
32
+ "* `swipe`: Swipe from the starting point with coordinate (x, y) to the end point with coordinates2 (x2, y2).\n" +
33
+ "* `type`: Input the specified text into the activated input box.\n" +
34
+ "* `answer`: Output the answer.\n" +
35
+ "* `system_button`: Press the system button.\n" +
36
+ "* `open_app`: Open the specified application.\n" +
37
+ "* `wait`: Wait specified seconds for the change to happen.\n" +
38
+ "* `terminate`: Terminate the current task and report its completion status.",
39
+ enum: ["click", "long_press", "swipe", "type", "answer", "system_button", "open_app", "wait", "terminate"],
40
+ type: "string",
41
+ },
42
+ coordinate: {
43
+ description: "(x, y): The x (pixels from the left edge) and y (pixels from the top edge) coordinates to move the mouse to. Required only by `action=click`, `action=long_press`, and `action=swipe`.",
44
+ type: "array",
45
+ },
46
+ coordinate2: {
47
+ description: "(x, y): The x (pixels from the left edge) and y (pixels from the top edge) coordinates to move the mouse to. Required only by `action=swipe`.",
48
+ type: "array",
49
+ },
50
+ text: {
51
+ description: "Required only by `action=type` and `action=answer`.",
52
+ type: "string",
53
+ },
54
+ time: {
55
+ description: "The seconds to wait. Required only by `action=long_press` and `action=wait`.",
56
+ type: "number",
57
+ },
58
+ button: {
59
+ description: "Back means returning to the previous interface, Home means returning to the desktop, Menu means opening the application background menu, and Enter means pressing the enter. Required only by `action=system_button`",
60
+ enum: ["Back", "Home", "Menu", "Enter"],
61
+ type: "string",
62
+ },
63
+ status: {
64
+ description: "The status of the task. Required only by `action=terminate`.",
65
+ type: "string",
66
+ enum: ["success", "failure"],
67
+ },
68
+ app_name: {
69
+ description: "The name of the app to open. Required only by `action=open_app`.",
70
+ type: "string",
71
+ },
72
+ },
73
+ required: ["action"],
74
+ type: "object",
75
+ },
76
+ },
77
+ });
78
+ const SYSTEM_PROMPT_CN = `# 工具
9
79
 
10
- Use the mobile_use tool:
80
+ 你可以调用一个或多个函数来辅助完成用户的请求。
81
+
82
+ 可用的函数签名定义在 <tools></tools> XML 标签中:
83
+ <tools>
84
+ ${TOOL_SCHEMA}
85
+ </tools>
86
+
87
+ 每次调用函数时,请在 <tool_call></tool_call> XML 标签中返回一个包含函数名和参数的 JSON 对象:
11
88
  <tool_call>
12
- {"name": "mobile_use", "arguments": {"action": "<action>", ...}}
89
+ {"name": <函数名>, "arguments": <参数JSON对象>}
13
90
  </tool_call>
14
91
 
15
- Actions:
16
- - tap: {"action":"tap","coordinate":[x,y]}
17
- - long_press: {"action":"long_press","coordinate":[x,y]}
18
- - swipe: {"action":"swipe","start_coordinate":[x,y],"end_coordinate":[x,y]}
19
- - type: {"action":"type","text":"..."}
20
- - press_back: {"action":"press_back"}
21
- - press_home: {"action":"press_home"}
22
- - open_app: {"action":"open_app","text":"App Name"}
23
- - wait: {"action":"wait"}
24
- - finish: {"action":"finish","text":"reason"}
92
+ # 响应格式
93
+
94
+ 每一步的响应格式:
95
+ 1) Thought(思考):用一句简洁的话解释下一步操作(不要进行多步推理)。
96
+ 2) Action(动作):用一句简短的祈使句描述要在界面上执行的操作。
97
+ 3) 一个 <tool_call>...</tool_call> 代码块,其中只包含 JSON:{"name": <函数名>, "arguments": <参数JSON对象>}。
98
+
99
+ 规则:
100
+ - 严格按照 Thought、Action、<tool_call> 的顺序输出。
101
+ - 保持简洁:Thought 一句话,Action 一句话。
102
+ - 不要在这三部分之外输出任何其他内容。
103
+ - 如果任务完成,请在 tool_call 中使用 action=terminate。`;
104
+ const SYSTEM_PROMPT_EN = `# Tools
105
+
106
+ You can call one or more functions to assist with the user's request.
25
107
 
26
- Coordinates are 0–999 (relative to screen dimensions).`;
27
- const SYSTEM_PROMPT_CN = `\
28
- 你是一个手机自动化助手。根据截图和历史操作,输出下一个动作的工具调用。
108
+ The available function signatures are defined within <tools></tools> XML tags:
109
+ <tools>
110
+ ${TOOL_SCHEMA}
111
+ </tools>
29
112
 
30
- 使用 mobile_use 工具:
113
+ Each time you call a function, return a JSON object containing the function name and arguments within <tool_call></tool_call> XML tags:
31
114
  <tool_call>
32
- {"name": "mobile_use", "arguments": {"action": "<动作>", ...}}
115
+ {"name": <function_name>, "arguments": <arguments_json_object>}
33
116
  </tool_call>
34
117
 
35
- 动作列表:
36
- - tap: {"action":"tap","coordinate":[x,y]}
37
- - long_press: {"action":"long_press","coordinate":[x,y]}
38
- - swipe: {"action":"swipe","start_coordinate":[x,y],"end_coordinate":[x,y]}
39
- - type: {"action":"type","text":"..."}
40
- - press_back: {"action":"press_back"}
41
- - press_home: {"action":"press_home"}
42
- - open_app: {"action":"open_app","text":"App名称"}
43
- - wait: {"action":"wait"}
44
- - finish: {"action":"finish","text":"原因"}
118
+ # Response Format
45
119
 
46
- 坐标范围 0–999(相对屏幕尺寸)。`;
120
+ Response format for each step:
121
+ 1) Thought: Explain the next action in one concise sentence (do not perform multi-step reasoning).
122
+ 2) Action: Describe the UI operation to perform in one short imperative sentence.
123
+ 3) A <tool_call>...</tool_call> code block containing only JSON: {"name": <function_name>, "arguments": <arguments_json_object>}.
124
+
125
+ Rules:
126
+ - Strictly output in the order of Thought, Action, <tool_call>.
127
+ - Keep it concise: one sentence for Thought, one sentence for Action.
128
+ - Do not output anything beyond these three parts.
129
+ - If the task is completed, use action=terminate in the tool_call.`;
47
130
  class QwenVLAdapter extends ModelAdapter {
48
131
  name = "qwenvl";
49
132
  patterns = [/qwen.*vl/, /qwen2.*vl/, /qvq/, /qwen-vl/];
50
133
  actionHistory = [];
51
- buildMessages(task, screenInfo, context, isFirst, lang) {
134
+ buildMessages(task, screenInfo, _context, _isFirst, lang) {
52
135
  const systemPrompt = lang === "cn" ? SYSTEM_PROMPT_CN : SYSTEM_PROMPT_EN;
53
- // Build single user message with task + history + screenshot
54
- const historyText = this.actionHistory.length > 0
55
- ? `\n\nAction history:\n${this.actionHistory.map((a, i) => `${i + 1}. ${a}`).join("\n")}`
56
- : "";
57
- const taskText = isFirst
58
- ? `Task: ${task}${historyText}`
59
- : `Task: ${task}${historyText}\n\nWhat is the next action?`;
60
- const content = [];
136
+ // Build user query: task + history (ClawGUI format)
137
+ const userQuery = buildUserQuery(task, this.actionHistory);
138
+ // Text first, image second — matches ClawGUI
139
+ const content = [
140
+ { type: "text", text: userQuery },
141
+ ];
61
142
  if (screenInfo.imageRef) {
62
143
  content.push({ type: "image_url", image_url: { url: screenInfo.imageRef.url } });
63
144
  }
64
- content.push({ type: "text", text: taskText });
65
145
  return [
66
- { role: "system", content: systemPrompt },
146
+ { role: "system", content: [{ type: "text", text: systemPrompt }] },
67
147
  { role: "user", content },
68
148
  ];
69
149
  }
70
150
  parseResponse(raw) {
71
- const thinking = extractThinking(raw);
151
+ // Extract Thought: line as thinking
152
+ const thoughtM = raw.match(/^Thought\s*[::]\s*(.+?)(?=\nAction\s*[::]|\n<tool_call>|$)/ms);
153
+ const thinking = thoughtM ? thoughtM[1].trim() : extractThinkTag(raw);
72
154
  const toolBlock = raw.includes("<tool_call>") ? raw : `<tool_call>${raw}</tool_call>`;
73
155
  return parseToolCall(toolBlock, thinking) ?? wait(thinking);
74
156
  }
75
- updateContext(context, response, parsed) {
76
- // Record action in history for next rebuild
157
+ updateContext(_context, response, parsed) {
77
158
  if (!parsed.shouldFinish) {
78
- this.actionHistory.push(actionSummary(parsed));
159
+ // Record the Action: line from raw output as history description (ClawGUI format)
160
+ const actionLineM = response.rawContent.match(/^Action\s*[::]\s*(.+?)$/m);
161
+ const desc = actionLineM ? actionLineM[1].trim() : actionSummary(parsed);
162
+ this.actionHistory.push(desc);
79
163
  }
80
- // QwenVL always rebuilds messages, so context is not used for multi-turn
81
- return context;
164
+ // QwenVL always rebuilds messages; context is not accumulated
165
+ return _context;
82
166
  }
83
167
  clearHistory() {
84
168
  this.actionHistory = [];
@@ -86,7 +170,19 @@ class QwenVLAdapter extends ModelAdapter {
86
170
  }
87
171
  registerAdapter(new QwenVLAdapter());
88
172
  // ── Helpers ──────────────────────────────────────────────────────────────────
89
- function extractThinking(raw) {
173
+ function buildUserQuery(task, history) {
174
+ // Mirrors ClawGUI build_qwenvl_user_query exactly:
175
+ // "The user query: {task}.\nTask progress: Step 1: xxx; Step 2: yyy;\n"
176
+ let query = `The user query: ${task}.\n`;
177
+ if (history.length > 0) {
178
+ const progress = history
179
+ .map((h, i) => `Step ${i + 1}: ${h.replace(/\n/g, "").replace(/"/g, "")};`)
180
+ .join(" ");
181
+ query += `Task progress (You have done the following operation on the current device): ${progress}\n`;
182
+ }
183
+ return query;
184
+ }
185
+ function extractThinkTag(raw) {
90
186
  const m = raw.match(/<think(?:ing)?>([\s\S]*?)<\/think(?:ing)?>/i);
91
187
  return m ? m[1].trim() : "";
92
188
  }
@@ -1 +1 @@
1
- {"version":3,"file":"qwenvl.js","sourceRoot":"","sources":["../../../src/model/adapters/qwenvl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qwenvl.js","sourceRoot":"","sources":["../../../src/model/adapters/qwenvl.ts"],"names":[],"mappings":"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"}
@@ -52,8 +52,7 @@ export function argsToAction(args, thinking) {
52
52
  }
53
53
  if (action === "swipe" && coord) {
54
54
  const dir = String(args.direction ?? "down");
55
- const distMap = { short: 150, medium: 300, long: 500 };
56
- const dist = distMap[String(args.distance ?? "medium")] ?? 300;
55
+ const dist = 300;
57
56
  const [sx, sy] = [coord[0], coord[1]];
58
57
  const [ex, ey] = dir === "up" ? [sx, sy + dist] :
59
58
  dir === "down" ? [sx, sy - dist] :
@@ -61,11 +60,18 @@ export function argsToAction(args, thinking) {
61
60
  [sx - dist, sy];
62
61
  return done("swipe", { start_x: sx, start_y: sy, end_x: ex, end_y: ey }, thinking);
63
62
  }
63
+ if (action === "drag") {
64
+ const sc = startCoord ?? coord;
65
+ const ec = endCoord;
66
+ if (sc && ec) {
67
+ return done("swipe", { start_x: sc[0], start_y: sc[1], end_x: ec[0], end_y: ec[1] }, thinking);
68
+ }
69
+ }
64
70
  if (action === "type") {
65
71
  return done("type", { text: String(args.text ?? "") }, thinking);
66
72
  }
67
73
  if (action === "open_app" || action === "open") {
68
- return done("open_app", { app_name: String(args.text ?? args.app_name ?? "") }, thinking);
74
+ return done("open_app", { app_name: String(args.app_name ?? args.text ?? "") }, thinking);
69
75
  }
70
76
  if (action === "press_back" || action === "back") {
71
77
  return done("press_back", {}, thinking);
@@ -90,6 +96,10 @@ export function argsToAction(args, thinking) {
90
96
  const key = String(args.text ?? args.key ?? "").trim();
91
97
  return done("press_key", { key: key.startsWith("KEYCODE_") ? key : `KEYCODE_${key.toUpperCase()}` }, thinking);
92
98
  }
99
+ if (action === "interact") {
100
+ const msg = String(args.text ?? args.message ?? "User interaction required");
101
+ return done("takeover", { message: msg }, thinking);
102
+ }
93
103
  if (action === "wait") {
94
104
  const time = Number(args.time ?? args.duration_seconds ?? 2);
95
105
  return done("wait", { duration_seconds: time }, thinking);