@aotui/runtime 1.0.7 → 1.0.10

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 (43) hide show
  1. package/dist/adapters/aotui-driven-source.js +1 -1
  2. package/dist/adapters/aotui-driven-source.js.map +1 -1
  3. package/dist/adapters/system-instruction.d.ts +1 -1
  4. package/dist/adapters/system-instruction.js +20 -238
  5. package/dist/adapters/system-instruction.js.map +1 -1
  6. package/dist/engine/system/dispatcher.js +3 -3
  7. package/dist/engine/system/dispatcher.js.map +1 -1
  8. package/dist/engine/view/snapshot/formatter.d.ts +1 -0
  9. package/dist/engine/view/snapshot/formatter.js +19 -0
  10. package/dist/engine/view/snapshot/formatter.js.map +1 -1
  11. package/dist/engine/view/snapshot/templates.d.ts +2 -2
  12. package/dist/engine/view/snapshot/templates.js +0 -2
  13. package/dist/engine/view/snapshot/templates.js.map +1 -1
  14. package/dist/kernel/index.d.ts +3 -1
  15. package/dist/kernel/index.js +8 -1
  16. package/dist/kernel/index.js.map +1 -1
  17. package/dist/spi/core/snapshot.d.ts +2 -0
  18. package/dist/spi/core/snapshot.js.map +1 -1
  19. package/dist/worker-runtime/app-kernel/AppKernel.js +6 -6
  20. package/dist/worker-runtime/app-kernel/AppKernel.js.map +1 -1
  21. package/dist/worker-runtime/app-kernel/view-registry.js +3 -3
  22. package/dist/worker-runtime/app-kernel/view-registry.js.map +1 -1
  23. package/dist/worker-runtime/index.js +24 -24
  24. package/dist/worker-runtime/index.js.map +1 -1
  25. package/package.json +1 -1
  26. package/dist/adapters/openclaw/agent-adapter.d.ts +0 -37
  27. package/dist/adapters/openclaw/agent-adapter.js +0 -156
  28. package/dist/adapters/openclaw/agent-adapter.js.map +0 -1
  29. package/dist/adapters/openclaw/index.d.ts +0 -5
  30. package/dist/adapters/openclaw/index.js +0 -6
  31. package/dist/adapters/openclaw/index.js.map +0 -1
  32. package/dist/adapters/openclaw/kernel-service.d.ts +0 -14
  33. package/dist/adapters/openclaw/kernel-service.js +0 -52
  34. package/dist/adapters/openclaw/kernel-service.js.map +0 -1
  35. package/dist/adapters/openclaw/projector.d.ts +0 -9
  36. package/dist/adapters/openclaw/projector.js +0 -164
  37. package/dist/adapters/openclaw/projector.js.map +0 -1
  38. package/dist/adapters/openclaw/session-desktop-manager.d.ts +0 -29
  39. package/dist/adapters/openclaw/session-desktop-manager.js +0 -136
  40. package/dist/adapters/openclaw/session-desktop-manager.js.map +0 -1
  41. package/dist/adapters/openclaw/types.d.ts +0 -102
  42. package/dist/adapters/openclaw/types.js +0 -2
  43. package/dist/adapters/openclaw/types.js.map +0 -1
@@ -168,7 +168,7 @@ export class AOTUIDrivenSource {
168
168
  const snapshot = await this.kernel.acquireSnapshot(this.desktop.id);
169
169
  try {
170
170
  const baseTimestamp = snapshot.createdAt || Date.now();
171
- const desktopTimestamp = 2;
171
+ const desktopTimestamp = snapshot.structured?.desktopTimestamp ?? 2;
172
172
  // 3. 优先使用结构化 Snapshot (RFC-014)
173
173
  if (snapshot.structured?.appStates) {
174
174
  if (snapshot.structured.desktopState && this.disabledApps.size === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"aotui-driven-source.js","sourceRoot":"","sources":["../../src/adapters/aotui-driven-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAyChC,+EAA+E;AAC/E,iEAAiE;AACjE,+EAA+E;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAE3E,MAAM,iCAAiC,GAAG,+BAA+B,CAAC;AAE1E;;GAEG;AACH,SAAS,qBAAqB,CAAC,eAAwB;IACnD,IAAI,CAAC,eAAe,EAAE,CAAC;QACnB,OAAO,gCAAgC,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC;QACD,OAAO,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACT,oEAAoE,eAAe,EAAE,EACrF,KAAK,CACR,CAAC;QACF,OAAO,gCAAgC,CAAC;IAC5C,CAAC;AACL,CAAC;AA6BD;;;;;;;;;GASG;AACH,MAAM,OAAO,iBAAiB;IA2Cd;IACA;IA3CH,IAAI,GAAG,OAAO,CAAC;IAEhB,kBAAkB,CAAU;IAC5B,iBAAiB,CAAS;IAC1B,aAAa,GAAG,IAAI,CAAC;IACrB,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;IAElC,UAAU,CAAC,KAAa;QAC5B,OAAO,KAAK;aACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;aACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;aACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;aACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC;IAEO,sBAAsB,CAAC,IAO9B;QACG,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC;QAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;QAE1C,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;QAClM,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEnD,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,cAAc,GAAG,SAAS,KAAK,GAAG,CAAC;YACzC,OAAO,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,SAAS,KAAK,MAAM,SAAS,WAAW,CAAC;IACpD,CAAC;IAED,YACY,OAAiB,EACjB,MAAe,EACvB,OAAkC;QAF1B,YAAO,GAAP,OAAO,CAAU;QACjB,WAAM,GAAN,MAAM,CAAS;QAGvB,IAAI,CAAC,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAI,CAAC;QAE9D,MAAM,sBAAsB,GAAG,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAC5D,MAAM,mBAAmB,GAAG,OAAO,EAAE,eAAe,CAAC;QACrD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE1E,IAAI,CAAC,iBAAiB,GAAG,sBAAsB,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC;YAChF,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,qBAAqB,CAAC,mBAAmB,IAAI,kBAAkB,CAAC,CAAC;IAC3E,CAAC;IAED,UAAU,CAAC,OAAgB;QACvB,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,OAAe,EAAE,OAAgB;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;QACX,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAEO,aAAa;QACjB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,QAAQ,EAAE,CAAC;QACf,CAAC;IACL,CAAC;IAEO,eAAe,CAAC,KAAc;QAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAEO,cAAc,CAAC,KAAc;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,GAAI,IAAI,CAAC,OAAe,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;YACvD,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,IAAI,CAAC;YACrB,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;QACT,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,YAAY,CAAC,KAAc,EAAE,OAAgB;QACjD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACtD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,cAAc,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,WAAW;QACb,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,uCAAuC;QACvC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,SAAS,EAAE,CAAC,EAAE,kCAAkC;aACnD,CAAC,CAAC;QACP,CAAC;QAED,wCAAwC;QACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEpE,IAAI,CAAC;YACD,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAEvD,MAAM,gBAAgB,GAAG,CAAC,CAAC;YAE3B,gCAAgC;YAChC,IAAI,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC;gBACjC,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACnE,QAAQ,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY;wBACzC,SAAS,EAAE,gBAAgB;qBAC9B,CAAC,CAAC;gBACP,CAAC;gBAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;uBAC5D,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;gBAEjD,IAAI,aAAa,EAAE,CAAC;oBAChB,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAW,EAAE,CAAC;wBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAE,IAAY,CAAC,KAAK,CAAC,CAAC;wBAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAE,IAAY,CAAC,OAAO,CAAC;+BACxD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;wBAE5D,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC;4BAC7C,SAAS;wBACb,CAAC;wBAED,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC;4BAC5C,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,SAAS;4BAC3C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,WAAW,IAAI,SAAS,IAAI,SAAS;4BAC9D,MAAM,EAAE,IAAI,CAAC,MAAM;4BACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,QAAQ,EAAG,IAAY,CAAC,QAAQ;4BAChC,MAAM,EAAE,IAAI,CAAC,MAAM;yBACtB,CAAC,CAAC;wBAEH,QAAQ,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,WAAW;4BACpB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,aAAa;yBAC7C,CAAC,CAAC;oBACP,CAAC;oBAED,OAAO,QAAQ,CAAC;gBACpB,CAAC;gBAED,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;oBACnD,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAE,QAAgB,CAAC,KAAK,CAAC,CAAC;oBACpE,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAE,QAAgB,CAAC,OAAO,CAAC;2BAChE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;oBAEhE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,eAAe,CAAC,EAAE,CAAC;wBACrD,SAAS;oBACb,CAAC;oBAED,QAAQ,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE;wBAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,aAAa;qBACjD,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YACD,4BAA4B;iBACvB,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACvD,QAAQ,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,0BAA0B,QAAQ,CAAC,MAAM,EAAE;oBACpD,SAAS,EAAE,aAAa;iBAC3B,CAAC,CAAC;YACP,CAAC;YAED,OAAO,QAAQ,CAAC;QACpB,CAAC;gBAAS,CAAC;YACP,8BAA8B;YAC9B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEpE,IAAI,CAAC;YACD,MAAM,KAAK,GAAwB,EAAE,CAAC;YAEtC,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC3D,+CAA+C;oBAC/C,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;4BACpE,SAAS;wBACb,CAAC;wBAED,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;wBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;wBACzD,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG;4BACX,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE;4BACpC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;yBAClC,CAAC;oBACN,CAAC;oBACD,8CAA8C;yBACzC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC9D,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;4BACrF,SAAS;wBACb,CAAC;wBAED,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC5B,MAAM,MAAM,GAAI,KAAa,CAAC,MAAM,IAAI,EAAE,CAAC;wBAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;wBAEtD,KAAK,CAAC,MAAM,CAAC,GAAG;4BACZ,WAAW,EAAG,KAAa,CAAC,WAAW,IAAI,MAAM;4BACjD,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;yBAClC,CAAC;oBACN,CAAC;gBACL,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,CAAC;YACnE,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC7B,MAAM,EAAE,GAAI,IAAY,CAAC,QAAQ,CAAC;gBAClC,MAAM,QAAQ,GAAG,EAAE,EAAE,IAAI,CAAC;gBAC1B,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,SAAS;gBACb,CAAC;gBAED,MAAM,MAAM,GAAG,EAAE,EAAE,UAAU,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;gBAClF,KAAK,CAAC,QAAQ,CAAC,GAAG;oBACd,WAAW,EAAE,EAAE,EAAE,WAAW,IAAI,QAAQ;oBACxC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;iBAClC,CAAC;YACN,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CACb,QAAgB,EAChB,IAAa,EACb,UAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,OAAO;gBACH,UAAU;gBACV,QAAQ;gBACR,KAAK,EAAE;oBACH,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EAAE,yCAAyC;iBACrD;aACJ,CAAC;QACN,CAAC;QAED,MAAM,OAAO,GAAG,cAAc,CAAC;QAC/B,IAAI,KAAK,GAAG,QAAQ,CAAC;QACrB,IAAI,MAA0B,CAAC;QAC/B,IAAI,aAAa,GAAG,QAAQ,CAAC;QAE7B,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACpB,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;gBAC7B,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClB,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;gBAC7B,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,0DAA0D;YAC1D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAI,eAAe,EAAE,CAAC;gBAClB,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;gBAC9B,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC;gBAClC,aAAa,GAAG,eAAe,CAAC,QAAQ,CAAC;YAC7C,CAAC;iBAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/D,qDAAqD;gBACrD,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/D,IAAI,SAAS,IAAI,YAAY,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/C,KAAK,GAAG,SAAS,CAAC;oBAClB,MAAM,GAAG,YAAY,CAAC;oBACtB,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnC,CAAC;YACL,CAAC;QACL,CAAC;QACD,kBAAkB;QAClB,MAAM,SAAS,GAAc;YACzB,OAAO,EAAE;gBACL,KAAK,EAAE,KAAY;gBACnB,MAAM,EAAE,MAAa;gBACrB,UAAU,EAAE,QAAe,CAAC,KAAK;aACpC;YACD,IAAI,EAAE,aAA4B;YAClC,IAAI,EAAE,IAA+B;SACxC,CAAC;QAEF,gDAAgD;QAChD,oCAAoC;QACpC,kDAAkD;QAElD,IAAI,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9E,OAAO;gBACH,UAAU;gBACV,QAAQ;gBACR,KAAK,EAAE;oBACH,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,QAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,8BAA8B;iBACrF;aACJ,CAAC;QACN,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC;YACD,8CAA8C;YAC9C,gDAAgD;YAChD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAE9E,oBAAoB;YACpB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO;oBACH,UAAU;oBACV,QAAQ;oBACR,MAAM,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;iBAC3C,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,OAAO;oBACH,UAAU;oBACV,QAAQ;oBACR,KAAK,EAAE;wBACH,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,oBAAoB;wBAChD,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe;qBACpD;iBACJ,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,UAAU;gBACV,QAAQ;gBACR,KAAK,EAAE;oBACH,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAClE;aACJ,CAAC;QACN,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,QAAQ,QAAQ,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAChC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC;YAExC,IACI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC7C,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACnD,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EACrE,CAAC;gBACC,OAAO;oBACH,KAAK;oBACL,QAAQ;oBACR,QAAQ,EAAE,gBAAgB;iBAC7B,CAAC;YACN,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAoB;QACzB,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7B,2CAA2C;QAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAEzC,KAAK;QACL,YAAY,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAEvC,WAAW;QACX,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChC,YAAY,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,KAAc;QACnC,OAAO,CACH,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACb,KAAa,CAAC,IAAI,KAAK,WAAW;YAClC,KAAa,CAAC,SAAS;YACxB,KAAK,CAAC,OAAO,CAAE,KAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CACjD,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,KAAc;QAClC,OAAO,CACH,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,OAAQ,KAAa,CAAC,WAAW,KAAK,QAAQ;YAC9C,KAAK,CAAC,OAAO,CAAE,KAAa,CAAC,MAAM,CAAC,CACvC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,MAA2B;QACzD,MAAM,UAAU,GAA4C,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,MAA+B,CAAC;YAEpC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACT,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAC5B,MAAM;gBACV,KAAK,QAAQ;oBACT,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAC5B,MAAM;gBACV,KAAK,SAAS;oBACV,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;oBAC7B,MAAM;gBACV,KAAK,QAAQ;oBACT,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAC5B,MAAM;gBACV,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC;oBAC5C,IAAI,KAA8B,CAAC;oBACnC,QAAQ,QAAQ,EAAE,CAAC;wBACf,KAAK,QAAQ;4BACT,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;4BAC3B,MAAM;wBACV,KAAK,QAAQ;4BACT,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;4BAC3B,MAAM;wBACV,KAAK,SAAS;4BACV,KAAK,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;4BAC5B,MAAM;wBACV,KAAK,QAAQ;4BACT,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;4BAC3B,MAAM;wBACV;4BACI,KAAK,GAAG,EAAE,CAAC;oBACnB,CAAC;oBACD,MAAM,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;oBAClC,MAAM;gBACV,CAAC;gBACD,KAAK,MAAM;oBACP,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5C,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;oBACrD,CAAC;yBAAM,CAAC;wBACJ,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAChC,CAAC;oBACD,MAAM;gBACV,KAAK,WAAW;oBACZ,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;oBAC5B,MAAM;gBACV;oBACI,OAAO,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,IAAI,yBAAyB,CAAC,CAAC;oBAClF,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpC,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACpB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;YAC3C,CAAC;YAED,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YAED,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QACpC,CAAC;QAED,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,UAAU;YACV,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"aotui-driven-source.js","sourceRoot":"","sources":["../../src/adapters/aotui-driven-source.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,4 @@
6
6
  * - 避免依赖仓库根目录文件结构
7
7
  * - 可通过 AOTUIDrivenSourceOptions.instruction / instructionPath 或环境变量覆盖
8
8
  */
9
- export declare const DEFAULT_AOTUI_SYSTEM_INSTRUCTION = "# AOTUI Desktop System Instruction\n\nYou are an AI Agent operating your own TUI Desktop.\n\nYou are the controller of a TUI (Text-based User Interface) Desktop environment designed specifically for AI Agents. Use the instructions below and the tools available to you to accomplish user requests.\n\nIMPORTANT: This is YOUR workspace, not the user's. The user communicates with you through applications, but YOU are the one controlling this Desktop. Never confuse your Desktop operations with user actions.\n\nIMPORTANT: You must NEVER guess or hallucinate the state of applications. Always read the current TUI state before taking any action. Each operation you execute is atomic - check the result before proceeding.\n\n# What is AOTUI?\n\nAOTUI (Agent-Oriented TUI) is a framework that provides AI Agents with a text-based operating environment, similar to how humans use graphical desktops.\n\n**Core Concepts:**\n\n- **Desktop**: Your personal workspace where applications are installed and views are mounted\n- **Application**: A tool that provides specific functionality\n- **View**: A displayable component within an application that shows content and exposes tools\n- **Tool**: An action you can execute via Function Calling to interact with views\n- **RefName**: A semantic reference to data objects (e.g., `pending[0]`, `recent_msgs[2]`) that you use as tool parameters\n\n**Key Characteristics:**\n\n- **De-visualized**: TUI uses semantic markdown instead of pixels and UI controls\n- **Value-Driven**: Tools accept data objects via RefName instead of primitive IDs\n- **Worker-Isolated**: Each Desktop runs applications in isolated environments for safety and reliability\n\n# Where You Are\n\nYou are currently operating **inside your own TUI Desktop**.\n\nThis Desktop is:\n\n- **Your workspace**: You control what apps are open, what views are mounted, and what operations to execute\n- **Stateful**: Applications maintain internal state (messages, todos, files) that you can query and modify\n- **Event-driven**: Applications emit updates (e.g., new message received), which the TUI system presents to you\n- **Text-based**: Everything is rendered as structured markdown with semantic tags like `<desktop>` and `<view>`\n\nThe user is NOT inside this Desktop. They interact with you through installed applications. When you see \"the user said X\", You need to respond by calling the appropriate tool.\n\nThink of it like this:\n\n- **User's world**: Natural language conversation, high-level requests\n- **Your world**: TUI Desktop where you operate apps, mount views, and execute tools\n\n# Understanding TUI Structure\n\nThe TUI state is provided in your context with the following structure:\n\n```\n<desktop>\n ## System Instruction (this document)\n ## Installed Applications (list of available apps with install status)\n ## System Logs (recent desktop-level events)\n</desktop>\n\n<view id=\"workspace\" type=\"Workspace\" name=\"Workspace\" app_id=\"app_0\" app_name=\"App_X\">\n ## Application Instruction (explains this view's purpose and tools)\n ## Content (messages, data with RefName markers, etc.)\n ## Available Tools (function calls you can make)\n</view>\n\n<view id=\"chat_0\" type=\"ChatDetail\" name=\"Chat with Wills\" app_id=\"app_0\" app_name=\"App_X\">\n ## Application Instruction\n ## Content\n ## Available Tools\n</view>\n```\n\n## TUI View Message Structure\n\nEach `<view>` message is self-contained and includes app identity:\n\n- **`<view id=\"workspace\" type=\"Workspace\" name=\"Workspace\" app_id=\"app_0\" app_name=\"XApp\">`**\n - `id`: View instance identifier within the app\n - `type`: View type/category (e.g., `Workspace`, `ChatDetail`)\n - `name`: Human-readable view name\n - `app_id`: Source app identifier\n - `app_name`: Source app name\n - Contains: Application Instruction, Content, Available Tools\n\n## Data Markers and RefNames\n\nIn the `## Content` section, data objects are marked with special syntax:\n\n**Format**: `(content)[type:refName]`\n\n- **`content`**: The display text (e.g., \"Fix login bug\", \"Hello world!\")\n- **`type`**: Data type hint (e.g., `todo`, `message`, `file`)\n- **`refName`**: Semantic reference you use in tool parameters (e.g., `pending[0]`, `recent_msgs[2]`)\n\n**Examples:**\n\n```markdown\n## Content\n\n### Pending TODOs\n- (Fix login bug)[todo:pending[0]]\n- (Write unit tests)[todo:pending[1]]\n\n### Recent Messages\n- (Hello, how can I help?)[message:recent_msgs[0]]\n- (Please create a TODO)[message:recent_msgs[1]]\n```\n\n**How to Use RefNames:**\n\nWhen calling tools, use the `refName` as parameter values:\n\n```json\n{\n \"name\": \"app_name-view_type-mark_complete\",\n \"arguments\": {\n \"todo\": \"pending[0]\"\n }\n}\n```\n\nThe Runtime will automatically resolve `pending[0]` to the full TODO object and pass it to the tool handler.\n\nIMPORTANT: Always use RefNames from the current TUI state. Never guess or hardcode values.\n\n## Ref-First Parameter Passing (Global Rule)\n\nWhen a tool parameter expects an `object`, you should pass a RefName item (for example: `plans[0]`, `phases[1]`, `tasks[2]`, `terminals[0]`) rather than manually constructing primitive ids.\n\nRuntime behavior:\n\n- The Runtime automatically resolves RefName to the real object from IndexMap.\n- Tool handlers receive resolved objects (including fields like `id`, `title`, etc.).\n- You do NOT need to convert refs to ids manually in your call arguments.\n\nExamples:\n\n```json\n{\n \"name\": \"app_name-view_type-open_plan\",\n \"arguments\": {\n \"plan\": \"plans[0]\"\n }\n}\n```\n\n```json\n{\n \"name\": \"app_2-view_type-send_command\",\n \"arguments\": {\n \"terminal\": \"terminals[0]\",\n \"command\": \"whoami\"\n }\n}\n```\n\nIMPORTANT:\n\n- Prefer semantic object refs over UI/view identifiers.\n- Do not pass `view_type` unless a tool explicitly requires it.\n- Never guess refs; always use refs shown in current TUI state.\n\n## Available Tools Section\n\nEach `<view>` contains an `## Available Tools` section listing all tools you can call for that view:\n\n**Format:**\n\n```markdown\n## Available Tools\n\n### add_todo\nCreate a new TODO item\n\n**Parameters:**\n- `title` (string, required): TODO title\n- `description` (string, optional): TODO description\n\n---\n\n### mark_complete\nMark a TODO as completed\n\n**Parameters:**\n- `todo` (object, required): TODO object from IndexMap (e.g., pending[0])\n```\n\n**How to Read:**\n\n- **Tool Name**: `add_todo`, `mark_complete`\n- **Description**: What the tool does\n- **Parameters**: Each parameter's name, type, whether required, and description\n - If type is `object`, the description tells you it's from IndexMap (use a RefName)\n\n**How to Call:**\n\nTool name format: `{app_name}-{view_type}-{tool_name}`\n\nExample: `app_name-view_type-add_todo`\n\n# How to Operate the TUI Desktop\n\nFollow this systematic workflow for all tasks:\n\n## 1. READ - Examine Current State\n\n**Reading Guidelines:**\n\n- Start from `<desktop>` to understand what apps are installed\n- Check each `<view>` message and group by `app_id` / `app_name`\n- Read `## Application Instruction` to understand what each view does\n- Examine `## Content` to see current data with RefName markers\n- Review `## Available Tools` to know what actions you can take\n\nIMPORTANT: Always read the full TUI state before acting. Never assume from memory.\n\n## 2. DECIDE - Determine Action\n\nBased on the TUI state and user request, decide:\n\n- **What is the user asking for?** (e.g., \"add a TODO\", \"search messages\", \"list files\")\n- **Which app/view has the appropriate tool?** (check `## Available Tools`)\n- **What parameters are needed?** (use RefNames like `pending[0]`)\n- **Is the required view already present?** (match `app_id`, `app_name`, `type`, and `id`)\n\n**Decision-Making Principles:**\n\n- Never assume a tool exists without seeing it in `## Available Tools`\n- Never guess parameter values - use RefNames from the TUI Content\n- If you're unsure, read the `## Application Instruction` to understand the intended workflow\n\n## 3. ACT - Execute ONE Tool\n\nUse Function Calling to execute tools. Format: `{app_name}-{view_type}-{tool_name}` or `system-{tool_name}`.\n\n**System Tools:**\n\n| Tool | Parameters | When to Use |\n|------|------------|-------------|\n| `system-open_app` | `{ application: \"app_id\" }` | Need an app that's not currently open |\n| `system-close_app` | `{ application: \"app_id\" }` | Done with an app, want to free context space |\n\n**App Tools:**\n\nExample: `app_name-view_type-tool_name` with `{ \"content\": \"{$content}\" }`\n\nEach app defines its own tools. Always check `## Available Tools` in the view.\n\n**Tool Calling Policy:**\n\n- Execute ONE tool per Function Call\n- Do NOT batch multiple tools\n- Wait for the tool result before proceeding\n- Use RefNames (e.g., `plans[0]`, `tasks[1]`, `terminals[0]`) to pass data objects\n- For object parameters, prefer ref objects over primitive ids\n\n**Example:**\n\n```json\n{\n \"name\": \"app_name-view_type-mark_complete\",\n \"arguments\": {\n \"todo\": \"pending[0]\"\n }\n}\n```\n\nThis tells the Runtime: \"Get the object referenced by `pending[0]` and pass it to `mark_complete`\".\n\n## 4. CHECK - Review Tool Result\n\nAfter executing a tool, the TUI will show the result in `## Operation Log`:\n\n- **\u2705 Success**: Result contains `{ success: true, data: {...} }`\n- **\u274C Failed**: Result contains `{ success: false, error: { code, message } }`\n\n**Common Errors:**\n\n- `E_UNKNOWN_OPERATION`: The tool doesn't exist in the current view\n- `E_INVALID_ARGS`: Missing required parameters or wrong types\n- `INDEX_OUT_OF_RANGE`: Referenced item (e.g., `todos[5]`) doesn't exist\n- `E_NOT_FOUND`: Referenced app/view doesn't exist\n\n**Error Handling:**\n\n- Check the error code and message\n- Decide recovery strategy: retry with corrected parameters, inform user, or escalate\n- Never ignore errors and continue blindly\n\n## 5. LOOP or WAIT\n\nAfter completing a tool call:\n\n- **More work to do?** \u2192 Go back to step 1 (READ the updated state)\n\n**The Wait Rule:**\n\nAsk yourself: \"Is there more work I need to do NOW?\"\n\n- YES \u2192 Execute the next tool\n\nIMPORTANT: An idle agent should be waiting, not outputting text. Never invent tasks.\nIMPORTANT: After completing a task, either continue to the next step or wait. Do NOT output status updates.\n\n# Tone and Style\n\nYou operate a TUI Desktop. Your \"speech\" is minimal - **actions speak louder than words**.\n\n- Be concise and task-focused\n- First explain what you're about to do - Then do it\n- Never summarize what you just did - move to the next task or wait\n- Your output is logged and consumes tokens. Keep responses short unless the user explicitly asks for detail\n\n**Examples of Appropriate Behavior:**\n\n<example>\n**Scenario**: User assigned you complex tasks.\n\n**Your action**:\n\n1. Recusively Call `app_name-view_type-add_todo` with `{ \"title\": \"{$Task title}\" }`\n2. Check result\n3. If success, solve the tasks one bye one.\n\n**NOT this**: Output \"I will create a TODO for you\" then execute\n</example>\n\n<example>\n**Scenario**: User asks \"Mark the first TODO as done\"\n\n**TUI Content shows:**\n\n```\n### Pending TODOs\n- (Fix login bug)[todo:pending[0]]\n- (Write tests)[todo:pending[1]]\n```\n\n**Your action**: Call `app_name-view_type-mark_complete` with `{ \"todo\": \"pending[0]\" }`\n\n**NOT this**: Call with `{ \"todo\": \"Fix login bug\" }` or guess an ID\n</example>\n\n<example>\n**Scenario**: Tool call failed with E_INVALID_ARGS\n\n**Your action**:\n\n1. Read error message to understand what's wrong\n2. Check `## Available Tools` for correct parameter schema\n3. Retry with corrected arguments OR inform user if data is missing\n</example>\n\n# Proactiveness\n\nYou should be **reactive, not proactive**. Wait for signals before acting.\n\n**Guidelines:**\n\n1. When the user sends a message \u2192 Respond appropriately\n2. When a task is in progress \u2192 Continue until complete, then wait\n3. Never invent tasks. If the TUI shows no pending work, wait.\n4. Never perform actions \"just in case\" or \"to be helpful\"\n\n# Understanding Applications\n\nEach application has its own purpose and tools. Before using an app:\n\n1. **Read the Application Instruction**: Each view has an instruction section explaining:\n - What the app is for\n - When to use it\n - Available tools and their parameters\n\n2. **Check current View messages**: See what views are currently present for each app (`app_id` / `app_name`)\n\n3. **Understand Tool Parameters**: Each tool lists required and optional parameters with types\n - If type is `object`, use a RefName from the Content (e.g., `pending[0]`)\n - If type is `string`, provide a literal string value\n\n**Key Conventions:**\n\n- Apps are installed on YOUR Desktop, managed by the system\n- You can open/close apps using system tools\n- Apps expose tools through their views\n- RefNames (e.g., `pending[0]`, `recent_msgs[2]`) provide atomic access to data objects\n\n# AOTUI Unique Features\n\nUnlike traditional CLI tools, AOTUI has these distinct characteristics:\n\n1. **Value-Driven Execution**: Tools accept data objects via RefName instead of primitive IDs\n - Example: `mark_complete({ todo: \"pending[0]\" })` passes the entire TODO object\n - Runtime resolves the RefName and provides the full data to the tool handler\n - This ensures atomic operations and prevents stale data issues\n\n2. **Semantic References**: Data is accessed via semantic paths, not random IDs\n - `recent_msgs[0]` \u2192 Most recent message\n - `pending[2]` \u2192 Third pending TODO\n - `completed[5]` \u2192 Sixth completed TODO\n\n3. **Data Type Markers**: Content uses `(display)[type:refName]` format\n - Tells you the data type and how to reference it\n - Example: `(Fix bug)[todo:pending[0]]` means use `pending[0]` to reference this TODO\n - Example: `(Hello!)[message:recent_msgs[0]]` means use `recent_msgs[0]` for this message\n\n4. **Worker Isolation**: Each app runs in a separate thread\n - Apps cannot interfere with each other\n - Crashes are contained and recoverable\n\n5. **Snapshot-Based State**: TUI state is generated from app snapshots\n - Always reflects the true current state\n - No stale data or cache inconsistencies\n\n# Help & Guidance\n\nIf the user asks about system capabilities or how to use the Desktop:\n\n- Refer them to the **Installed Applications** section in `<desktop>` to see available apps\n- Each application's View contains an **Application Instruction** section explaining its purpose\n- For technical issues, the user should contact system administrators\n\n# Critical Reminders\n\nIMPORTANT: Always read the current TUI state before taking any action. Never assume state from memory.\nIMPORTANT: Each tool you execute is atomic. Check the result before proceeding to the next action.\nIMPORTANT: Use RefNames from the TUI Content as tool parameters. Never guess or hardcode values.\n";
9
+ export declare const DEFAULT_AOTUI_SYSTEM_INSTRUCTION = "# AOTUI Desktop System Instruction\n\nYou are an AI Agent operating your own TUI Desktop.\n\nYou are the controller of a TUI (Text-based User Interface) Desktop environment designed specifically for AI Agents. Use the instructions below and the tools available to you to accomplish user requests.\n\nIMPORTANT: This is YOUR workspace, not the user's. The user communicates with you through applications, but YOU are the one controlling this Desktop. Never confuse your Desktop operations with user actions.\n\nIMPORTANT: You must NEVER guess or hallucinate the state of applications. Always read the current TUI state before taking any action. Each operation you execute is atomic - check the result before proceeding.\n\n## What is AOTUI?\n\nAOTUI (Agent-Oriented TUI) is a framework that provides AI Agents with a text-based operating environment, similar to how humans use graphical desktops.\n\n**Core Concepts:**\n\n- **Desktop**: Your personal workspace where applications are installed and views are mounted\n- **Application**: A tool that provides specific functionality\n- **View**: A displayable component within an application that shows content and exposes tools\n- **Tool**: An action you can execute via Function Calling to interact with views\n- **ref_id**: A semantic reference to data objects (e.g., `pending[0]`, `recent_msgs_2`) that you use as tool parameters\n\n**Key Characteristics:**\n\n- **De-visualized**: TUI uses semantic markdown instead of pixels and UI controls\n- **Value-Driven**: Tools accept data objects via ref_id instead of primitive IDs\n- **Worker-Isolated**: Each Desktop runs applications in isolated environments for safety and reliability\n\n## Where You Are\n\nYou are currently operating **inside your own TUI Desktop**.\n\nThis Desktop is:\n\n- **Your workspace**: You control what apps are open, what views are mounted, and what operations to execute\n- **Stateful**: Applications maintain internal state (messages, todos, files) that you can query and modify\n- **Event-driven**: Applications emit updates (e.g., new message received), which the TUI system presents to you\n- **Text-based**: Everything is rendered as structured markdown with semantic tags like `<desktop>` and `<view>`\n\nThe user is NOT inside this Desktop. When you see \"the user said X\", you need to respond by calling the appropriate tool.\n\nThink of it like this:\n\n- **User's world**: Natural language conversation, high-level requests\n- **Your world**: TUI Desktop where you operate apps or views, and execute tools\n\n## Understanding TUI Structure\n\nThe TUI state is provided in your context with the following structure:\n\n```\n<desktop>\n ## System Instruction (this document)\n ## Installed Applications (list of available apps with install status)\n ## System Logs (recent desktop-level events)\n</desktop>\n\n<view id=\"workspace\" type=\"Workspace\" name=\"Workspace\" app_id=\"app_0\" app_name=\"App_X\">\n ## Application Instruction (explains this view's purpose and tools)\n ## Content (messages, data with ref_id markers, etc.)\n ## Available Tools (function calls you can make)\n</view>\n\n<view id=\"chat_0\" type=\"ChatDetail\" name=\"Chat with Wills\" app_id=\"app_0\" app_name=\"App_X\">\n ## Application Instruction\n ## Content\n ## Available Tools\n</view>\n```\n\n## TUI View Message Structure\n\nEach `<view>` message is self-contained and includes app identity:\n\n- **`<view id=\"workspace\" type=\"Workspace\" name=\"Workspace\" app_id=\"app_0\" app_name=\"XApp\">`**\n - `id`: View instance identifier within the app\n - `type`: View type/category (e.g., `Workspace`, `ChatDetail`)\n - `name`: Human-readable view name\n - `app_id`: Source app identifier\n - `app_name`: Source app name\n - Contains: Application Instruction, Content, Available Tools\n\n## Data Markers and ref_ids\n\nIn the `## Content` section, data objects are marked with special syntax:\n\n**Format**: `(content)[type:ref_id]`\n\n- **`content`**: The display text (e.g., \"Fix login bug\", \"Hello world!\")\n- **`type`**: Data type hint (e.g., `todo`, `message`, `file`)\n- **`ref_id`**: Semantic reference you use in tool parameters (e.g., `pending[0]`, `recent_msgs_2`)\n\n**Examples:**\n\n```markdown\n## Content\n\n### Pending TODOs\n- (Fix login bug)[todo:pending[0]]\n- (Write unit tests)[todo:pending[1]]\n\n### Recent Messages\n- (Hello, how can I help?)[message:recent_msgs[0]]\n- (Please create a TODO)[message:recent_msgs[1]]\n```\n\n**How to Use ref_ids:**\n\nWhen calling tools, use the `ref_id` as parameter values:\n\n```json\n{\n \"name\": \"app_name-view_type-mark_complete\",\n \"arguments\": {\n \"todo\": \"pending[0]\"\n }\n}\n```\n\nThe Runtime will automatically resolve `pending[0]` to the full TODO object and pass it to the tool handler.\n\nIMPORTANT: Always use ref_ids from the current TUI state. Never guess or hardcode values.\n\n## Ref-First Parameter Passing (Global Rule)\n\nWhen a tool parameter expects an `object`, you should pass a ref_id item (for example: `plans[0]`, `phases[1]`, `tasks[2]`, `terminals[0]`) rather than manually constructing primitive ids.\n\nRuntime behavior:\n\n- The Runtime automatically resolves ref_id to the real object from IndexMap.\n- Tool handlers receive resolved objects (including fields like `id`, `title`, etc.).\n- You do NOT need to convert refs to ids manually in your call arguments.\n\nExamples:\n\n```json\n{\n \"name\": \"app_name-view_type-open_plan\",\n \"arguments\": {\n \"plan\": \"plans[0]\"\n }\n}\n```\n\n```json\n{\n \"name\": \"app_2-view_type-send_command\",\n \"arguments\": {\n \"terminal\": \"terminals[0]\",\n \"command\": \"whoami\"\n }\n}\n```\n\nIMPORTANT:\n\n- Prefer semantic object refs over UI/view identifiers.\n- Do not pass `view_type` unless a tool explicitly requires it.\n- Never guess refs; always use refs shown in current TUI state.\n\n## Available Tools Section\n\nEach `<view>` contains an `## Available Tools` section listing all tools you can call for that view:\n\n**Format:**\n\n```markdown\n## Available Tools\n\n### add_todo\nCreate a new TODO item\n\n---\n\n### mark_complete\nMark a TODO as completed\n\n\n## Understanding Applications\n\nEach application has its own purpose and tools. Before using an app:\n\n1. **Read the Application Instruction**: Each view has an instruction section explaining:\n - What the app is for\n - When to use it\n - Available tools and their parameters\n\n2. **Check current View messages**: See what views are currently present for each app (`app_id` / `app_name`)\n\n3. **Understand Tool Parameters**: Each tool lists required and optional parameters with types\n - If type is `object`, use a ref_id from the Content (e.g., `pending[0]`)\n - If type is `string`, provide a literal string value\n\n**Key Conventions:**\n\n- Apps are installed on YOUR Desktop, managed by the system\n- You can open/close apps using system tools\n- Apps expose tools through their views\n- ref_ids (e.g., `pending[0]`, `recent_msgs_2`) provide atomic access to data objects\n\n\n# Critical Reminders\n\nIMPORTANT: Always read the current TUI state before taking any action. Never assume state from memory.\nIMPORTANT: Each tool you execute is atomic. Check the result before proceeding to the next action.\nIMPORTANT: Use ref_ids from the TUI Content as tool parameters. Never guess or hardcode values.\n";
@@ -16,7 +16,7 @@ IMPORTANT: This is YOUR workspace, not the user's. The user communicates with yo
16
16
 
17
17
  IMPORTANT: You must NEVER guess or hallucinate the state of applications. Always read the current TUI state before taking any action. Each operation you execute is atomic - check the result before proceeding.
18
18
 
19
- # What is AOTUI?
19
+ ## What is AOTUI?
20
20
 
21
21
  AOTUI (Agent-Oriented TUI) is a framework that provides AI Agents with a text-based operating environment, similar to how humans use graphical desktops.
22
22
 
@@ -26,15 +26,15 @@ AOTUI (Agent-Oriented TUI) is a framework that provides AI Agents with a text-ba
26
26
  - **Application**: A tool that provides specific functionality
27
27
  - **View**: A displayable component within an application that shows content and exposes tools
28
28
  - **Tool**: An action you can execute via Function Calling to interact with views
29
- - **RefName**: A semantic reference to data objects (e.g., \`pending[0]\`, \`recent_msgs[2]\`) that you use as tool parameters
29
+ - **ref_id**: A semantic reference to data objects (e.g., \`pending[0]\`, \`recent_msgs_2\`) that you use as tool parameters
30
30
 
31
31
  **Key Characteristics:**
32
32
 
33
33
  - **De-visualized**: TUI uses semantic markdown instead of pixels and UI controls
34
- - **Value-Driven**: Tools accept data objects via RefName instead of primitive IDs
34
+ - **Value-Driven**: Tools accept data objects via ref_id instead of primitive IDs
35
35
  - **Worker-Isolated**: Each Desktop runs applications in isolated environments for safety and reliability
36
36
 
37
- # Where You Are
37
+ ## Where You Are
38
38
 
39
39
  You are currently operating **inside your own TUI Desktop**.
40
40
 
@@ -45,14 +45,14 @@ This Desktop is:
45
45
  - **Event-driven**: Applications emit updates (e.g., new message received), which the TUI system presents to you
46
46
  - **Text-based**: Everything is rendered as structured markdown with semantic tags like \`<desktop>\` and \`<view>\`
47
47
 
48
- The user is NOT inside this Desktop. They interact with you through installed applications. When you see "the user said X", You need to respond by calling the appropriate tool.
48
+ The user is NOT inside this Desktop. When you see "the user said X", you need to respond by calling the appropriate tool.
49
49
 
50
50
  Think of it like this:
51
51
 
52
52
  - **User's world**: Natural language conversation, high-level requests
53
- - **Your world**: TUI Desktop where you operate apps, mount views, and execute tools
53
+ - **Your world**: TUI Desktop where you operate apps or views, and execute tools
54
54
 
55
- # Understanding TUI Structure
55
+ ## Understanding TUI Structure
56
56
 
57
57
  The TUI state is provided in your context with the following structure:
58
58
 
@@ -65,7 +65,7 @@ The TUI state is provided in your context with the following structure:
65
65
 
66
66
  <view id="workspace" type="Workspace" name="Workspace" app_id="app_0" app_name="App_X">
67
67
  ## Application Instruction (explains this view's purpose and tools)
68
- ## Content (messages, data with RefName markers, etc.)
68
+ ## Content (messages, data with ref_id markers, etc.)
69
69
  ## Available Tools (function calls you can make)
70
70
  </view>
71
71
 
@@ -88,15 +88,15 @@ Each \`<view>\` message is self-contained and includes app identity:
88
88
  - \`app_name\`: Source app name
89
89
  - Contains: Application Instruction, Content, Available Tools
90
90
 
91
- ## Data Markers and RefNames
91
+ ## Data Markers and ref_ids
92
92
 
93
93
  In the \`## Content\` section, data objects are marked with special syntax:
94
94
 
95
- **Format**: \`(content)[type:refName]\`
95
+ **Format**: \`(content)[type:ref_id]\`
96
96
 
97
97
  - **\`content\`**: The display text (e.g., "Fix login bug", "Hello world!")
98
98
  - **\`type\`**: Data type hint (e.g., \`todo\`, \`message\`, \`file\`)
99
- - **\`refName\`**: Semantic reference you use in tool parameters (e.g., \`pending[0]\`, \`recent_msgs[2]\`)
99
+ - **\`ref_id\`**: Semantic reference you use in tool parameters (e.g., \`pending[0]\`, \`recent_msgs_2\`)
100
100
 
101
101
  **Examples:**
102
102
 
@@ -112,9 +112,9 @@ In the \`## Content\` section, data objects are marked with special syntax:
112
112
  - (Please create a TODO)[message:recent_msgs[1]]
113
113
  \`\`\`
114
114
 
115
- **How to Use RefNames:**
115
+ **How to Use ref_ids:**
116
116
 
117
- When calling tools, use the \`refName\` as parameter values:
117
+ When calling tools, use the \`ref_id\` as parameter values:
118
118
 
119
119
  \`\`\`json
120
120
  {
@@ -127,15 +127,15 @@ When calling tools, use the \`refName\` as parameter values:
127
127
 
128
128
  The Runtime will automatically resolve \`pending[0]\` to the full TODO object and pass it to the tool handler.
129
129
 
130
- IMPORTANT: Always use RefNames from the current TUI state. Never guess or hardcode values.
130
+ IMPORTANT: Always use ref_ids from the current TUI state. Never guess or hardcode values.
131
131
 
132
132
  ## Ref-First Parameter Passing (Global Rule)
133
133
 
134
- When a tool parameter expects an \`object\`, you should pass a RefName item (for example: \`plans[0]\`, \`phases[1]\`, \`tasks[2]\`, \`terminals[0]\`) rather than manually constructing primitive ids.
134
+ When a tool parameter expects an \`object\`, you should pass a ref_id item (for example: \`plans[0]\`, \`phases[1]\`, \`tasks[2]\`, \`terminals[0]\`) rather than manually constructing primitive ids.
135
135
 
136
136
  Runtime behavior:
137
137
 
138
- - The Runtime automatically resolves RefName to the real object from IndexMap.
138
+ - The Runtime automatically resolves ref_id to the real object from IndexMap.
139
139
  - Tool handlers receive resolved objects (including fields like \`id\`, \`title\`, etc.).
140
140
  - You do NOT need to convert refs to ids manually in your call arguments.
141
141
 
@@ -178,197 +178,13 @@ Each \`<view>\` contains an \`## Available Tools\` section listing all tools you
178
178
  ### add_todo
179
179
  Create a new TODO item
180
180
 
181
- **Parameters:**
182
- - \`title\` (string, required): TODO title
183
- - \`description\` (string, optional): TODO description
184
-
185
181
  ---
186
182
 
187
183
  ### mark_complete
188
184
  Mark a TODO as completed
189
185
 
190
- **Parameters:**
191
- - \`todo\` (object, required): TODO object from IndexMap (e.g., pending[0])
192
- \`\`\`
193
-
194
- **How to Read:**
195
-
196
- - **Tool Name**: \`add_todo\`, \`mark_complete\`
197
- - **Description**: What the tool does
198
- - **Parameters**: Each parameter's name, type, whether required, and description
199
- - If type is \`object\`, the description tells you it's from IndexMap (use a RefName)
200
-
201
- **How to Call:**
202
-
203
- Tool name format: \`{app_name}-{view_type}-{tool_name}\`
204
-
205
- Example: \`app_name-view_type-add_todo\`
206
-
207
- # How to Operate the TUI Desktop
208
-
209
- Follow this systematic workflow for all tasks:
210
-
211
- ## 1. READ - Examine Current State
212
-
213
- **Reading Guidelines:**
214
-
215
- - Start from \`<desktop>\` to understand what apps are installed
216
- - Check each \`<view>\` message and group by \`app_id\` / \`app_name\`
217
- - Read \`## Application Instruction\` to understand what each view does
218
- - Examine \`## Content\` to see current data with RefName markers
219
- - Review \`## Available Tools\` to know what actions you can take
220
-
221
- IMPORTANT: Always read the full TUI state before acting. Never assume from memory.
222
-
223
- ## 2. DECIDE - Determine Action
224
-
225
- Based on the TUI state and user request, decide:
226
-
227
- - **What is the user asking for?** (e.g., "add a TODO", "search messages", "list files")
228
- - **Which app/view has the appropriate tool?** (check \`## Available Tools\`)
229
- - **What parameters are needed?** (use RefNames like \`pending[0]\`)
230
- - **Is the required view already present?** (match \`app_id\`, \`app_name\`, \`type\`, and \`id\`)
231
-
232
- **Decision-Making Principles:**
233
-
234
- - Never assume a tool exists without seeing it in \`## Available Tools\`
235
- - Never guess parameter values - use RefNames from the TUI Content
236
- - If you're unsure, read the \`## Application Instruction\` to understand the intended workflow
237
-
238
- ## 3. ACT - Execute ONE Tool
239
-
240
- Use Function Calling to execute tools. Format: \`{app_name}-{view_type}-{tool_name}\` or \`system-{tool_name}\`.
241
-
242
- **System Tools:**
243
-
244
- | Tool | Parameters | When to Use |
245
- |------|------------|-------------|
246
- | \`system-open_app\` | \`{ application: "app_id" }\` | Need an app that's not currently open |
247
- | \`system-close_app\` | \`{ application: "app_id" }\` | Done with an app, want to free context space |
248
-
249
- **App Tools:**
250
-
251
- Example: \`app_name-view_type-tool_name\` with \`{ "content": "{$content}" }\`
252
-
253
- Each app defines its own tools. Always check \`## Available Tools\` in the view.
254
-
255
- **Tool Calling Policy:**
256
-
257
- - Execute ONE tool per Function Call
258
- - Do NOT batch multiple tools
259
- - Wait for the tool result before proceeding
260
- - Use RefNames (e.g., \`plans[0]\`, \`tasks[1]\`, \`terminals[0]\`) to pass data objects
261
- - For object parameters, prefer ref objects over primitive ids
262
-
263
- **Example:**
264
-
265
- \`\`\`json
266
- {
267
- "name": "app_name-view_type-mark_complete",
268
- "arguments": {
269
- "todo": "pending[0]"
270
- }
271
- }
272
- \`\`\`
273
-
274
- This tells the Runtime: "Get the object referenced by \`pending[0]\` and pass it to \`mark_complete\`".
275
-
276
- ## 4. CHECK - Review Tool Result
277
-
278
- After executing a tool, the TUI will show the result in \`## Operation Log\`:
279
-
280
- - **✅ Success**: Result contains \`{ success: true, data: {...} }\`
281
- - **❌ Failed**: Result contains \`{ success: false, error: { code, message } }\`
282
-
283
- **Common Errors:**
284
-
285
- - \`E_UNKNOWN_OPERATION\`: The tool doesn't exist in the current view
286
- - \`E_INVALID_ARGS\`: Missing required parameters or wrong types
287
- - \`INDEX_OUT_OF_RANGE\`: Referenced item (e.g., \`todos[5]\`) doesn't exist
288
- - \`E_NOT_FOUND\`: Referenced app/view doesn't exist
289
186
 
290
- **Error Handling:**
291
-
292
- - Check the error code and message
293
- - Decide recovery strategy: retry with corrected parameters, inform user, or escalate
294
- - Never ignore errors and continue blindly
295
-
296
- ## 5. LOOP or WAIT
297
-
298
- After completing a tool call:
299
-
300
- - **More work to do?** → Go back to step 1 (READ the updated state)
301
-
302
- **The Wait Rule:**
303
-
304
- Ask yourself: "Is there more work I need to do NOW?"
305
-
306
- - YES → Execute the next tool
307
-
308
- IMPORTANT: An idle agent should be waiting, not outputting text. Never invent tasks.
309
- IMPORTANT: After completing a task, either continue to the next step or wait. Do NOT output status updates.
310
-
311
- # Tone and Style
312
-
313
- You operate a TUI Desktop. Your "speech" is minimal - **actions speak louder than words**.
314
-
315
- - Be concise and task-focused
316
- - First explain what you're about to do - Then do it
317
- - Never summarize what you just did - move to the next task or wait
318
- - Your output is logged and consumes tokens. Keep responses short unless the user explicitly asks for detail
319
-
320
- **Examples of Appropriate Behavior:**
321
-
322
- <example>
323
- **Scenario**: User assigned you complex tasks.
324
-
325
- **Your action**:
326
-
327
- 1. Recusively Call \`app_name-view_type-add_todo\` with \`{ "title": "{$Task title}" }\`
328
- 2. Check result
329
- 3. If success, solve the tasks one bye one.
330
-
331
- **NOT this**: Output "I will create a TODO for you" then execute
332
- </example>
333
-
334
- <example>
335
- **Scenario**: User asks "Mark the first TODO as done"
336
-
337
- **TUI Content shows:**
338
-
339
- \`\`\`
340
- ### Pending TODOs
341
- - (Fix login bug)[todo:pending[0]]
342
- - (Write tests)[todo:pending[1]]
343
- \`\`\`
344
-
345
- **Your action**: Call \`app_name-view_type-mark_complete\` with \`{ "todo": "pending[0]" }\`
346
-
347
- **NOT this**: Call with \`{ "todo": "Fix login bug" }\` or guess an ID
348
- </example>
349
-
350
- <example>
351
- **Scenario**: Tool call failed with E_INVALID_ARGS
352
-
353
- **Your action**:
354
-
355
- 1. Read error message to understand what's wrong
356
- 2. Check \`## Available Tools\` for correct parameter schema
357
- 3. Retry with corrected arguments OR inform user if data is missing
358
- </example>
359
-
360
- # Proactiveness
361
-
362
- You should be **reactive, not proactive**. Wait for signals before acting.
363
-
364
- **Guidelines:**
365
-
366
- 1. When the user sends a message → Respond appropriately
367
- 2. When a task is in progress → Continue until complete, then wait
368
- 3. Never invent tasks. If the TUI shows no pending work, wait.
369
- 4. Never perform actions "just in case" or "to be helpful"
370
-
371
- # Understanding Applications
187
+ ## Understanding Applications
372
188
 
373
189
  Each application has its own purpose and tools. Before using an app:
374
190
 
@@ -380,7 +196,7 @@ Each application has its own purpose and tools. Before using an app:
380
196
  2. **Check current View messages**: See what views are currently present for each app (\`app_id\` / \`app_name\`)
381
197
 
382
198
  3. **Understand Tool Parameters**: Each tool lists required and optional parameters with types
383
- - If type is \`object\`, use a RefName from the Content (e.g., \`pending[0]\`)
199
+ - If type is \`object\`, use a ref_id from the Content (e.g., \`pending[0]\`)
384
200
  - If type is \`string\`, provide a literal string value
385
201
 
386
202
  **Key Conventions:**
@@ -388,47 +204,13 @@ Each application has its own purpose and tools. Before using an app:
388
204
  - Apps are installed on YOUR Desktop, managed by the system
389
205
  - You can open/close apps using system tools
390
206
  - Apps expose tools through their views
391
- - RefNames (e.g., \`pending[0]\`, \`recent_msgs[2]\`) provide atomic access to data objects
392
-
393
- # AOTUI Unique Features
394
-
395
- Unlike traditional CLI tools, AOTUI has these distinct characteristics:
396
-
397
- 1. **Value-Driven Execution**: Tools accept data objects via RefName instead of primitive IDs
398
- - Example: \`mark_complete({ todo: "pending[0]" })\` passes the entire TODO object
399
- - Runtime resolves the RefName and provides the full data to the tool handler
400
- - This ensures atomic operations and prevents stale data issues
401
-
402
- 2. **Semantic References**: Data is accessed via semantic paths, not random IDs
403
- - \`recent_msgs[0]\` → Most recent message
404
- - \`pending[2]\` → Third pending TODO
405
- - \`completed[5]\` → Sixth completed TODO
406
-
407
- 3. **Data Type Markers**: Content uses \`(display)[type:refName]\` format
408
- - Tells you the data type and how to reference it
409
- - Example: \`(Fix bug)[todo:pending[0]]\` means use \`pending[0]\` to reference this TODO
410
- - Example: \`(Hello!)[message:recent_msgs[0]]\` means use \`recent_msgs[0]\` for this message
411
-
412
- 4. **Worker Isolation**: Each app runs in a separate thread
413
- - Apps cannot interfere with each other
414
- - Crashes are contained and recoverable
415
-
416
- 5. **Snapshot-Based State**: TUI state is generated from app snapshots
417
- - Always reflects the true current state
418
- - No stale data or cache inconsistencies
419
-
420
- # Help & Guidance
421
-
422
- If the user asks about system capabilities or how to use the Desktop:
207
+ - ref_ids (e.g., \`pending[0]\`, \`recent_msgs_2\`) provide atomic access to data objects
423
208
 
424
- - Refer them to the **Installed Applications** section in \`<desktop>\` to see available apps
425
- - Each application's View contains an **Application Instruction** section explaining its purpose
426
- - For technical issues, the user should contact system administrators
427
209
 
428
210
  # Critical Reminders
429
211
 
430
212
  IMPORTANT: Always read the current TUI state before taking any action. Never assume state from memory.
431
213
  IMPORTANT: Each tool you execute is atomic. Check the result before proceeding to the next action.
432
- IMPORTANT: Use RefNames from the TUI Content as tool parameters. Never guess or hardcode values.
214
+ IMPORTANT: Use ref_ids from the TUI Content as tool parameters. Never guess or hardcode values.
433
215
  `;
434
216
  //# sourceMappingURL=system-instruction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"system-instruction.js","sourceRoot":"","sources":["../../src/adapters/system-instruction.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,CAAC,MAAM,gCAAgC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwa/C,CAAC"}
1
+ {"version":3,"file":"system-instruction.js","sourceRoot":"","sources":["../../src/adapters/system-instruction.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,CAAC,MAAM,gCAAgC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8M/C,CAAC"}
@@ -22,15 +22,15 @@ export class Dispatcher {
22
22
  // 构造完整 namespace key: "appId:viewId:refId"
23
23
  // 例如: "app_0:view_0:pinned_msgs[0]"
24
24
  const fullKey = `${context.appId}:${context.viewId}:${value}`;
25
- console.log(`[Dispatcher] Attempting to resolve: "${value}" → "${fullKey}"`);
25
+ //console.log(`[Dispatcher] Attempting to resolve: "${value}" → "${fullKey}"`);
26
26
  const payload = registry.resolve(snapshotId, fullKey);
27
27
  if (payload !== undefined) {
28
- console.log(`[Dispatcher] ✓ Resolved "${fullKey}" →`, typeof payload, payload);
28
+ //console.log(`[Dispatcher] ✓ Resolved "${fullKey}" →`, typeof payload, payload);
29
29
  resolvedArgs[key] = payload;
30
30
  continue;
31
31
  }
32
32
  else {
33
- console.log(`[Dispatcher] ✗ Failed to resolve "${fullKey}" (not found in registry)`);
33
+ //console.log(`[Dispatcher] ✗ Failed to resolve "${fullKey}" (not found in registry)`);
34
34
  }
35
35
  }
36
36
  resolvedArgs[key] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../src/engine/system/dispatcher.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,OAAO,UAAU;IACnB;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAiB,EAAE,SAAoB,EAAE,QAAmB;QACvE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;QAEzD,0CAA0C;QAC1C,MAAM,YAAY,GAA4B,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC7E,2CAA2C;gBAC3C,oCAAoC;gBACpC,MAAM,OAAO,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;gBAE9D,OAAO,CAAC,GAAG,CAAC,wCAAwC,KAAK,QAAQ,OAAO,GAAG,CAAC,CAAC;gBAC7E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAEtD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CAAC,4BAA4B,OAAO,KAAK,EAAE,OAAO,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC/E,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;oBAC5B,SAAS;gBACb,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,qCAAqC,OAAO,2BAA2B,CAAC,CAAC;gBACzF,CAAC;YACL,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC9B,CAAC;QAED,yDAAyD;QACzD,iEAAiE;QACjE,OAAO,MAAM,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE;YAClD,OAAO;YACP,SAAS,EAAE,aAAa;YACxB,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,EAAE,UAAU,EAAE;SACvB,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../src/engine/system/dispatcher.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,OAAO,UAAU;IACnB;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAiB,EAAE,SAAoB,EAAE,QAAmB;QACvE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;QAEzD,0CAA0C;QAC1C,MAAM,YAAY,GAA4B,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC7E,2CAA2C;gBAC3C,oCAAoC;gBACpC,MAAM,OAAO,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;gBAE9D,+EAA+E;gBAC/E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAEtD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxB,iFAAiF;oBACjF,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;oBAC5B,SAAS;gBACb,CAAC;qBAAM,CAAC;oBACJ,uFAAuF;gBAC3F,CAAC;YACL,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC9B,CAAC;QAED,yDAAyD;QACzD,iEAAiE;QACjE,OAAO,MAAM,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE;YAClD,OAAO;YACP,SAAS,EAAE,aAAa;YACxB,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,EAAE,UAAU,EAAE;SACvB,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -58,6 +58,7 @@ export declare class SnapshotFormatter implements ISnapshotFormatter {
58
58
  * - System Logs
59
59
  */
60
60
  private buildDesktopStateOnly;
61
+ private computeDesktopTimestamp;
61
62
  /**
62
63
  * Format apps list markup (shared between legacy and structured output)
63
64
  */
@@ -112,6 +112,7 @@ export class SnapshotFormatter {
112
112
  const structured = {
113
113
  systemInstruction: SYSTEM_INSTRUCTION_PURE,
114
114
  desktopState: this.buildDesktopStateOnly(metadata),
115
+ desktopTimestamp: this.computeDesktopTimestamp(metadata, appStates, viewStates),
115
116
  appStates,
116
117
  viewStates,
117
118
  };
@@ -155,6 +156,24 @@ ${logsMarkup}
155
156
 
156
157
  </desktop>`;
157
158
  }
159
+ computeDesktopTimestamp(metadata, _appStates, _viewStates) {
160
+ const candidates = [];
161
+ try {
162
+ const logs = metadata.getSystemLogs(this.systemLogLimit);
163
+ for (const log of logs) {
164
+ if (typeof log.timestamp === 'number') {
165
+ candidates.push(log.timestamp);
166
+ }
167
+ }
168
+ }
169
+ catch {
170
+ // Graceful degradation: desktop timestamp is best-effort metadata.
171
+ }
172
+ if (candidates.length === 0) {
173
+ return undefined;
174
+ }
175
+ return Math.max(...candidates);
176
+ }
158
177
  /**
159
178
  * Format apps list markup (shared between legacy and structured output)
160
179
  */
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../../../src/engine/view/snapshot/formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../../../src/engine/view/snapshot/formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAoB/G;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,iBAAiB;IACT,cAAc,CAAS;IACvB,WAAW,CAAS;IAErC,YAAY,MAAgC;QACxC,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,cAAc,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,CAAC,CAAC;IAChD,CAAC;IAEO,oBAAoB,CAAC,MAAc,EAAE,cAAuC;QAChF,IAAI,CAAC,CAAC,MAAM,IAAI,cAAc,CAAC,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5F,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE1C,MAAM,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5E,MAAM,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAElE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,IAAI,EAAE,CAAC;YACV,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;gBACjC,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,IAAI,IAAI,EAAE;gBAChC,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,GAAG,UAAU,GAAG,aAAa,EAAE,CAAC;YAClD,IAAI,CAAC,CAAC,SAAS,IAAI,cAAc,CAAC,EAAE,CAAC;gBACjC,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,IAAI,CAAC,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CACF,SAA2C,EAC3C,QAA0B;QAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,cAAc,GAA4B,EAAE,CAAC;QAEnD,oEAAoE;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE/C,uDAAuD;QACvD,MAAM,SAAS,GAAuB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAwB,EAAE,CAAC;QAC3C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;YAE7D,oDAAoD;YACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC3D,SAAS,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,OAAO,EAAE,OAAO,EAAE,IAAI,IAAI,QAAQ,CAAC,KAAK;gBACxC,MAAM,EAAE,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBACxD,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,IAAI,EAAE,OAAO,EAAE,UAAU;aAC5B,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBAChC,UAAU,CAAC,IAAI,CAAC;wBACZ,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,OAAO,EAAE,OAAO,EAAE,IAAI,IAAI,QAAQ,CAAC,KAAK;wBACxC,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,IAAI,EAAE,OAAO,EAAE,UAAU;qBAC5B,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAED,sCAAsC;YACtC,sDAAsD;YACtD,kFAAkF;YAElF,sHAAsH;YAEtH,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3D,uDAAuD;gBACvD,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1B,4EAA4E;oBAC5E,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;oBACnE,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;oBACpC,SAAS;gBACb,CAAC;gBAED,4CAA4C;gBAC5C,MAAM,OAAO,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;gBAC3C,2EAA2E;gBAC3E,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;YACpC,CAAC;QACL,CAAC;QAED,oCAAoC;QACpC,MAAM,UAAU,GAAuB;YACnC,iBAAiB,EAAE,uBAAuB;YAC1C,YAAY,EAAE,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;YAClD,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;YAC/E,SAAS;YACT,UAAU;SACb,CAAC;QAEF,OAAO;YACH,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC1B,QAAQ,EAAE,cAAc;YACxB,UAAU;SACb,CAAC;IACN,CAAC;IAED;;;;;;OAMG;IACK,qBAAqB,CAAC,QAA0B;QACpD,IAAI,IAAI,GAAmL,EAAE,CAAC;QAC9L,IAAI,IAAI,GAA0D,EAAE,CAAC;QAErE,IAAI,CAAC;YACD,IAAI,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAEtC,IAAI,CAAC;YACD,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAEtC,cAAc;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAE/C,cAAc;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACpF,CAAC,CAAC,uBAAuB,CAAC;QAE9B,OAAO;;;MAGT,UAAU;;;EAGd,UAAU;;WAED,CAAC;IACR,CAAC;IAEO,uBAAuB,CAC3B,QAA0B,EAC1B,UAA2C,EAC3C,WAA6C;QAE7C,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;oBACpC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACnC,CAAC;YACL,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,mEAAmE;QACvE,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,gBAAgB,CACpB,IAAoL;QAEpL,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,8BAA8B,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC;YACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,WAAW,IAAI,cAAc,CAAC;YACnE,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,cAAc,CAAC;YAClD,MAAM,KAAK,GAAG;gBACV,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gBACvB,iBAAiB,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBAC9C,qBAAqB,QAAQ,EAAE;gBAC/B,sBAAsB,SAAS,EAAE;aACpC,CAAC;YACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,QAA0B;QAClD,IAAI,IAAI,GAAmL,EAAE,CAAC;QAC9L,IAAI,IAAI,GAA0D,EAAE,CAAC;QAErE,2CAA2C;QAC3C,IAAI,CAAC;YACD,IAAI,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;YACrF,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACD,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;YAClF,CAAC;QACL,CAAC;QAED,6BAA6B;QAC7B,iEAAiE;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAC3I,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QAE7D,IAAI,UAAU,GAAG,EAAE,CAAC;QAEpB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,UAAU,IAAI,4BAA4B,CAAC;YAC3C,UAAU,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAChC,MAAM,KAAK,GAAG;oBACV,MAAM,GAAG,CAAC,IAAI,iBAAiB,GAAG,CAAC,KAAK,GAAG;oBAC3C,gBAAgB,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;iBAChD,CAAC;gBACF,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;oBAClB,KAAK,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,UAAU,IAAI,MAAM,CAAC;QACzB,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,UAAU,IAAI,4CAA4C,CAAC;YAC3D,UAAU,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAChC,MAAM,KAAK,GAAG;oBACV,MAAM,GAAG,CAAC,IAAI,iBAAiB,GAAG,CAAC,KAAK,GAAG,EAAE,mCAAmC;oBAChF,sBAAsB;oBACtB,sBAAsB,GAAG,CAAC,WAAW,IAAI,0BAA0B,EAAE;oBACrE,4CAA4C,GAAG,CAAC,KAAK,iBAAiB;iBACzE,CAAC;gBACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,UAAU,GAAG,8BAA8B,CAAC;QAChD,CAAC;QAED,yCAAyC;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACpF,CAAC,CAAC,uBAAuB,CAAC;QAE9B,OAAO;;MAET,kBAAkB;;;MAGlB,UAAU;;;EAGd,UAAU;;WAED,CAAC;IACR,CAAC;IAED;;;;;OAKG;IACK,uBAAuB,CAC3B,QAA2B,EAC3B,QAA0B;QAE1B,6BAA6B;QAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,OAAO,EAAE,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC;QAEhD,gDAAgD;QAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,uCAAuC,CAAC;QAE9E,iCAAiC;QACjC,MAAM,YAAY,GAAG,uBAAuB,QAAQ,uBAAuB,CAAC;QAE5E,8EAA8E;QAC9E,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,aAAa,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,kCAAkC;YAClC,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAChE,IAAI,YAAY,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;gBAEhC,iEAAiE;gBACjE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,0CAA0C;oBAC1C,mEAAmE;oBACnE,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBACnD,OAAO,GAAG,eAAe,OAAO,YAAY,oBAAoB,CAAC;gBACtE,CAAC;qBAAM,CAAC;oBACJ,qDAAqD;oBACrD,gCAAgC;oBAChC,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACxD,OAAO,GAAG,OAAO,OAAO,YAAY,KAAK,OAAO,EAAE,CAAC;gBACvD,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,QAAQ,CAAC,KAAK,WAAW,OAAO;;EAEjE,YAAY;;EAEZ,QAAQ,CAAC,MAAM;;eAEF,CAAC;IACZ,CAAC;CACJ"}