@crowdedkingdoms/crowdy-dsh 0.4.14 → 0.5.1-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.md +61 -10
  2. package/dist/dsh-web/BUILD.json +5 -5
  3. package/dist/dsh-web/preview/vfs-image.tar.gz +0 -0
  4. package/lib/bridge/client-service.js +33 -0
  5. package/lib/bridge/client-service.js.map +1 -0
  6. package/lib/bridge/client.js +20 -1
  7. package/lib/bridge/client.js.map +1 -1
  8. package/lib/bridge/index.js +33 -24
  9. package/lib/bridge/index.js.map +1 -1
  10. package/lib/bridge/protocol.js +30 -1
  11. package/lib/bridge/protocol.js.map +1 -1
  12. package/lib/crowdy/config.js +6 -0
  13. package/lib/crowdy/config.js.map +1 -1
  14. package/lib/crowdy/playbook.js +24 -0
  15. package/lib/crowdy/playbook.js.map +1 -0
  16. package/lib/crowdy/repo-paths.js +27 -0
  17. package/lib/crowdy/repo-paths.js.map +1 -0
  18. package/lib/crowdy/token.js +16 -0
  19. package/lib/crowdy/token.js.map +1 -0
  20. package/lib/fs/crowdy-file-system.js +4 -10
  21. package/lib/fs/crowdy-file-system.js.map +1 -1
  22. package/lib/fs/entry.js +22 -0
  23. package/lib/fs/entry.js.map +1 -0
  24. package/lib/fs/game-file-system.js +532 -0
  25. package/lib/fs/game-file-system.js.map +1 -0
  26. package/lib/fs/studio-fs.js +14 -0
  27. package/lib/fs/studio-fs.js.map +1 -0
  28. package/lib/index.js +2 -0
  29. package/lib/index.js.map +1 -1
  30. package/lib/search/search-tools.js +4 -5
  31. package/lib/search/search-tools.js.map +1 -1
  32. package/lib/skills/playbook.js +80 -0
  33. package/lib/skills/playbook.js.map +1 -0
  34. package/lib/tools/game.js +155 -0
  35. package/lib/tools/game.js.map +1 -0
  36. package/lib/tools/index.js +21 -12
  37. package/lib/tools/index.js.map +1 -1
  38. package/lib/types/bridge/client-service.d.ts +32 -0
  39. package/lib/types/bridge/client-service.d.ts.map +1 -0
  40. package/lib/types/bridge/client.d.ts +6 -0
  41. package/lib/types/bridge/client.d.ts.map +1 -1
  42. package/lib/types/bridge/index.d.ts +9 -13
  43. package/lib/types/bridge/index.d.ts.map +1 -1
  44. package/lib/types/bridge/protocol.d.ts +189 -2
  45. package/lib/types/bridge/protocol.d.ts.map +1 -1
  46. package/lib/types/crowdy/config.d.ts +7 -0
  47. package/lib/types/crowdy/config.d.ts.map +1 -1
  48. package/lib/types/crowdy/playbook.d.ts +13 -0
  49. package/lib/types/crowdy/playbook.d.ts.map +1 -0
  50. package/lib/types/crowdy/repo-paths.d.ts +15 -0
  51. package/lib/types/crowdy/repo-paths.d.ts.map +1 -0
  52. package/lib/types/crowdy/repo-paths.test.d.ts.map +1 -0
  53. package/lib/types/crowdy/token.d.ts +10 -0
  54. package/lib/types/crowdy/token.d.ts.map +1 -0
  55. package/lib/types/crowdy/token.test.d.ts.map +1 -0
  56. package/lib/types/fs/crowdy-file-system.d.ts +7 -2
  57. package/lib/types/fs/crowdy-file-system.d.ts.map +1 -1
  58. package/lib/types/fs/entry.d.ts +21 -0
  59. package/lib/types/fs/entry.d.ts.map +1 -0
  60. package/lib/types/fs/game-file-system.d.ts +107 -0
  61. package/lib/types/fs/game-file-system.d.ts.map +1 -0
  62. package/lib/types/fs/game-file-system.test.d.ts.map +1 -0
  63. package/lib/types/fs/studio-fs.d.ts +42 -0
  64. package/lib/types/fs/studio-fs.d.ts.map +1 -0
  65. package/lib/types/index.d.ts +3 -0
  66. package/lib/types/index.d.ts.map +1 -1
  67. package/lib/types/search/search-tools.d.ts.map +1 -1
  68. package/lib/types/skills/playbook.d.ts +25 -0
  69. package/lib/types/skills/playbook.d.ts.map +1 -0
  70. package/lib/types/skills/playbook.test.d.ts.map +1 -0
  71. package/lib/types/tools/game.d.ts +25 -0
  72. package/lib/types/tools/game.d.ts.map +1 -0
  73. package/lib/types/tools/game.test.d.ts.map +1 -0
  74. package/lib/types/tools/index.d.ts +5 -0
  75. package/lib/types/tools/index.d.ts.map +1 -1
  76. package/lib/vendor/crowdyjs-sdk.js +50 -10
  77. package/lib/vendor/crowdyjs-sdk.version.json +1 -1
  78. package/package.json +25 -9
  79. package/presets/crowdy/agent.cordis.yml +1 -0
  80. package/presets/crowdy-game/agent.cordis.yml +143 -0
  81. package/presets/crowdy-game/preset.yml +3 -0
  82. package/profile/crowdy-node.patch.yml +3 -0
  83. package/profile/crowdy-web.patch.yml +10 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-file-system.js","sourceRoot":"","sources":["../../src/fs/game-file-system.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAcjF,OAAO,EAAE,WAAW,EAAqB,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAA4C,MAAM,uBAAuB,CAAA;AACnG,OAAO,EAAE,gBAAgB,EAAyB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD,MAAM,iBAAiB,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAA;AACvD,MAAM,YAAY,GAAG,CAAC,UAAU,EAAE,SAAS,CAAU,CAAA;AACrD,MAAM,UAAU,GAAG,GAAG,CAAA;AACtB,yFAAyF;AACzF,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AACxC,MAAM,qBAAqB,GAAG,GAAG,GAAG,IAAI,CAAA;AACxC,MAAM,gBAAgB,GAAG,KAAK,CAAA;AAc9B,SAAS,IAAI,CAAC,IAAY;IACxB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACpC,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB,EAAE,MAAc;IACxD,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,CAAA;IACrB,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACpC,OAAO,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,CAAA;QACV,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,4EAA4E;AAC5E,SAAS,SAAS,CAAC,IAAY,EAAE,MAAsB;IACrD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,iBAAiB,CAAC,KAAK;YAC1B,OAAO,MAAM,EAAE,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,CAAA;QACnF,KAAK,iBAAiB,CAAC,QAAQ;YAC7B,OAAO,cAAc,CAAA;QACvB,KAAK,iBAAiB,CAAC,OAAO;YAC5B,OAAO,sBAAsB,CAAA;QAC/B,KAAK,iBAAiB,CAAC,QAAQ;YAC7B,OAAO,cAAc,CAAA;QACvB;YACE,OAAO,aAAa,CAAA;IACxB,CAAC;AACH,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,MAAM,GAAG,CAAC,oBAAoB,CAAC,CAAA;IACtC,MAAM,CAAC,MAAM,GAAc,CAAC,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;KACvC,CAAyB,CAAA;IAEjB,UAAU,GAAG,MAAe,CAAA;IACrC,IAAI,CAAkB;IACb,OAAO,GAAG,IAAI,YAAY,EAAE,CAAA;IACpB,IAAI,CAAQ;IACZ,UAAU,CAAQ;IAClB,MAAM,CAAc;IAC7B,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAA;IAClC,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IAC3B,aAAa,GAAkB,IAAI,CAAA;IACnC,QAAQ,GAAG,CAAC,CAAC,CAAA;IACb,MAAM,GAAyB,IAAI,CAAA;IAC3C,uBAAuB;IACN,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAA;IAChC,QAAQ,GAAa,EAAE,CAAA;IACvB,gBAAgB,GAAG,IAAI,GAAG,EAA6B,CAAA;IAExE,YAAY,GAAY,EAAE,SAAiB,EAAE;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAA;QACV,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QACnD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAA;QAChF,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAA;IAC7C,CAAC;IAED,8EAA8E;IAE9E,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAA;IAC9F,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAM;QAC7C,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAA;QACvC,IAAI,CAAC,UAAU,EAAE,CAAA;IACnB,CAAC;IAED,oFAAoF;IACpF,QAAQ,CAAC,MAA0B,IAAS,CAAC;IAE7C,UAAU;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACpB,CAAC;IAED,gBAAgB,CAAC,MAA2B;QAC1C,2EAA2E;QAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChG,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAM;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;QACxD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;QACzC,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACtB,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;gBACrB,IAAI;gBACJ,IAAI,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC;gBAC9F,MAAM,EAAE,KAAK;aACd,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,SAA0E;QACjF,qEAAqE;QACrE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,QAAmC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACxC,CAAC,CAAA;IACH,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QACzB,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAqB,CAAC;aAC3E,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;QAC7B,IAAI,MAAM,GAAG,gBAAgB,CAAA;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;YACvC,IAAI,MAAM,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC;gBAAE,MAAK;YAClC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAA;YACpB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACzC,MAAM,KAAK,GAAoD,EAAE,CAAA;QACjE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC/B,IAAI,OAAO,KAAK,SAAS;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QACzF,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,YAAY,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC9G,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAA;IACnC,CAAC;IAED,8EAA8E;IAE9E,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAA6C;QACvE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC7B,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAA;QAC9D,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,QAAQ,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;IAC9E,CAAC;IAED,WAAW,CAAC,MAAgB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;IAED,OAAO,CAAC,MAAgB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;aAClC,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aAC7C,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,OAAO,UAAU,OAAO,EAAE,CAAA;IAC5B,CAAC;IAED,QAAQ,CAAC,MAAgB,EAAE,KAAe;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACtC,OAAO,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAA;IACpF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAgB,EAAE,MAAoB;QAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,2FAA2F;QAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,SAAS,CAAA;QACvC,IAAI,QAAQ,KAAK,EAAE,IAAK,YAAkC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;QAC1D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACpH,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,SAAS,CAAA;QAC3C,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACxC,IAAI,KAAK;YAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;QACpF,MAAM,MAAM,GAAG,GAAG,QAAQ,GAAG,CAAA;QAC7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;QACvF,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,IAAuB,EAAE,MAAoB;QACrE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC5C,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAgB,EAAE,MAAoB;QACnD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;YAC3F,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,6CAA6C,EAAE,aAAa,CAAC,CAAA;YACzG,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAA;QACrB,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAgB,EAAE,MAAoB;QACrD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACnD,OAAO;YACL,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC3B,MAAM,OAAO,CAAA;YACf,CAAC;SACF,CAAA;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAgB,EAAE,MAA+B,EAAE,QAAgB;QACjF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChD,IAAI,KAAK,CAAC,UAAU,GAAG,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,KAAK,CAAC,UAAU,qBAAqB,QAAQ,YAAY,EAAE,cAAc,CAAC,CAAA;QAC7H,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAgB,EAAE,KAAyC,EAAE,MAAoB;QACnG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,UAAU;YAAE,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;QAC9D,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAgB,EAAE,MAAoB;QAClD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,IAAK,YAAkC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3D,OAAO,OAAO,CAAC,GAAG,CAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAyC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC1F,IAAI;gBACJ,IAAI,EAAE,MAAe;gBACrB,MAAM,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBAC9D,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;aAC5B,CAAC,CAAC,CACJ,CAAA;QACH,CAAC;QACD,IAAI,QAAQ,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,6BAA6B,EAAE,cAAc,CAAC,CAAA;QAC1F,CAAC;QACD,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,MAAM,GAAG,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAA;QACpD,IAAI,QAAQ,KAAK,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAA;QACvF,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAiB,CAAA;QACtC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,SAAQ;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC/B,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;;gBACnC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QACrC,CAAC;QACD,IAAI,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,+BAA+B,EAAE,cAAc,CAAC,CAAA;QAC5F,CAAC;QACD,MAAM,MAAM,GAAiB,EAAE,CAAA;QAC/B,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACnI,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAA;YAC9B,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI;gBACJ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;gBAC3D,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;YAC9H,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAgB,EAAE,OAAe,EAAE,QAAwB,EAAE,MAAoB;QAC/F,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC7C,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,YAAY,GAChB,QAAQ,EAAE,IAAI,KAAK,gBAAgB;YACjC,CAAC,CAAE,EAAE,IAAI,EAAE,gBAAgB,EAAY;YACvC,CAAC,CAAC,QAAQ,EAAE,IAAI,KAAK,kBAAkB;gBACrC,CAAC,CAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAY;gBAC/D,CAAC,CAAC,SAAS,CAAA;QACjB,IAAI,MAAqF,CAAA;QACzF,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAChC,aAAa,EACb,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EACtE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAC9B,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QACjD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACxF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QACpH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;QACxD,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YAC7D,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7C,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;SACrB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAgB,EAAE,IAAmB,EAAE,QAAiC,EAAE,MAAoB;QAC3G,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC,WAAW,kBAAkB,EAAE,cAAc,CAAC,CAAA;QACxF,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;YAC1D,MAAM,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC,WAAW,wDAAwD,EAAE,kBAAkB,CAAC,CAAA;QACtH,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QACnD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,OAAO,CAAC,gDAAgD,MAAM,CAAC,WAAW,GAAG,EAAE,mBAAmB,CAAC,CAAA;QAC/G,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,OAAO,CACf,4BAA4B,OAAO,aAAa,MAAM,CAAC,WAAW,kDAAkD,EACpH,mBAAmB,CACpB,CAAA;QACH,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9G,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC3H,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;IACpD,CAAC;IAED,8EAA8E;IAEtE,KAAK,CAAC,YAAY,CAAC,MAAoB;QAC7C,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAA;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;YAClB,MAAM,KAAK,CAAA;QACb,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAClD,IAAI,IAAe,CAAA;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACjC,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAA;QACxC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QACnH,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACpC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC7B,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAA;IAC/H,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,MAAoB;QAC/D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,OAAO,CAAC,GAAG,QAAQ,6BAA6B,EAAE,sBAAsB,CAAC,CAAA;QAC9G,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACxC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,+BAA+B,EAAE,cAAc,CAAC,CAAA;QACtG,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,qDAAqD,EAAE,aAAa,CAAC,CAAA;QACjI,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAA;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnC,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,+BAA+B,EAAE,cAAc,CAAC,CAAA;QACrH,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,+EAA+E;IACvE,KAAK,CAAC,QAAQ,CAAC,KAAwB,EAAE,MAAoB;QACnE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAA;QACrC,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;gBAAE,SAAQ;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACxC,IAAI,MAAM,KAAK,SAAS;gBAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;;gBAC1C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAA;YAC5C,IAAI,MAA+G,CAAA;YACnH,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;YACnG,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YAC7C,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBACtC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBAChC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACzC,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;oBAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YACnG,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACpC,IAAI,KAAK;oBAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,MAAgB,EAAE,MAAoB;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;YAC3F,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC;QACD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED,wEAAwE;IAChE,WAAW,CAAC,QAAgB;QAClC,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;QAC1G,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,eAAe,CAAC,MAAgB;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,SAAS,IAAK,YAAkC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvG,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,uDAAuD,EAAE,sBAAsB,CAAC,CAAA;QAC5H,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,2CAA2C,EAAE,sBAAsB,CAAC,CAAA;QAChH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,SAAS,CAAC,KAAc,EAAE,IAAY,EAAE,MAAsB;QACpE,IAAI,KAAK,YAAY,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1C,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;YACzD,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,KAAK,EAAE,CAAC;gBAC3C,OAAO,IAAI,OAAO,CAChB,MAAM,EAAE,IAAI,KAAK,gBAAgB;oBAC/B,CAAC,CAAC,GAAG,OAAO,4DAA4D;oBACxE,CAAC,CAAC,GAAG,OAAO,qEAAqE,EACnF,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAC9B,CAAA;YACH,CAAC;YACD,IAAK,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxE,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;YAClE,CAAC;YACD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAA;IAC3F,CAAC;IAEO,cAAc,CAAC,MAAgB;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAA;QACrC,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3F,CAAC;IAEO,QAAQ,CAAC,MAAgB;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,uCAAuC,IAAI,CAAC,IAAI,GAAG,EAAE,cAAc,CAAC,CAAA;QAChH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,QAAQ,CAAC,MAAgB;QAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACpC,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAClE,CAAC;IAEO,OAAO,CAAC,GAAuB;QACrC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC,IAAI,CAAA;QAC1B,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;QACxC,OAAO,SAAS,KAAK,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IACjG,CAAC;IAEO,IAAI,CAAC,OAAe;QAC1B,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACjE,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,gBAAgB;YAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;IACjE,CAAC;IAEO,UAAU,CAAC,MAAoB;QACrC,IAAI,MAAM,EAAE,OAAO;YAAE,MAAM,IAAI,OAAO,CAAC,uCAAuC,EAAE,YAAY,CAAC,CAAA;IAC/F,CAAC;;AAGH,eAAe,cAAc,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * What the bridge, the search tools and the Studio tools need from whichever
3
+ * filesystem backend this boot mounted: the mod crates
4
+ * (`CrowdyFileSystem`) or the game draft (`GameFileSystem`).
5
+ */
6
+ export function isStudioFileSystem(value) {
7
+ const fs = value;
8
+ return (!!fs &&
9
+ (fs.studioMode === 'mod' || fs.studioMode === 'game') &&
10
+ typeof fs.mountRoot === 'string' &&
11
+ typeof fs.searchSnapshot === 'function' &&
12
+ typeof fs.applyDraftChange === 'function');
13
+ }
14
+ //# sourceMappingURL=studio-fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio-fs.js","sourceRoot":"","sources":["../../src/fs/studio-fs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8BH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,EAAE,GAAG,KAAqD,CAAA;IAChE,OAAO,CACL,CAAC,CAAC,EAAE;QACJ,CAAC,EAAE,CAAC,UAAU,KAAK,KAAK,IAAI,EAAE,CAAC,UAAU,KAAK,MAAM,CAAC;QACrD,OAAO,EAAE,CAAC,SAAS,KAAK,QAAQ;QAChC,OAAO,EAAE,CAAC,cAAc,KAAK,UAAU;QACvC,OAAO,EAAE,CAAC,gBAAgB,KAAK,UAAU,CAC1C,CAAA;AACH,CAAC"}
package/lib/index.js CHANGED
@@ -7,6 +7,8 @@
7
7
  * @module @crowdedkingdoms/crowdy-dsh
8
8
  */
9
9
  export { CrowdyFileSystem, default, versionOf } from './fs/crowdy-file-system.js';
10
+ export { GameFileSystem } from './fs/game-file-system.js';
11
+ export { isStudioFileSystem } from './fs/studio-fs.js';
10
12
  export { ScratchStore } from './fs/scratch-store.js';
11
13
  export { CrowdyApiError, CrowdyStudioClient } from './crowdy/client.js';
12
14
  export { loadCrowdyConfig, describeMissing, CROWDY_CONFIG_FILENAME } from './crowdy/config.js';
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAUvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE9F,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAGrH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAUvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE9F,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAGrH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA"}
@@ -20,8 +20,8 @@
20
20
  */
21
21
  import z from '@deepseek-ai/schemastery';
22
22
  import { defineTool } from '@deepseek-ai/dsh-tools';
23
- import { CrowdyFileSystem } from '../fs/crowdy-file-system.js';
24
23
  import { normalizeAbsolute, resolveAgainst } from '../crowdy/paths.js';
24
+ import { isStudioFileSystem } from '../fs/studio-fs.js';
25
25
  import { globMatches, GlobSyntaxError } from './glob-match.js';
26
26
  /** Cordis plugin name used by loader diagnostics. */
27
27
  export const name = 'tool-fs-search-crowdy';
@@ -241,13 +241,12 @@ function grepMeta(matches, maxMatches) {
241
241
  total: matches.length,
242
242
  };
243
243
  }
244
- /** The mounted Crowdy filesystem backend, or a clear miscomposition error. */
244
+ /** The mounted Studio filesystem, mod or game, or a clear miscomposition error. */
245
245
  function requireCrowdyFs(ctx) {
246
246
  const fs = ctx.fs;
247
- if (fs instanceof CrowdyFileSystem)
247
+ if (isStudioFileSystem(fs))
248
248
  return fs;
249
- throw new Error('the Crowdy search tools require the Crowdy Studio filesystem backend ' +
250
- '(@crowdy/dsh-cockpit) mounted as ctx.fs');
249
+ throw new Error('the Crowdy search tools require a Studio filesystem backend mounted as ctx.fs');
251
250
  }
252
251
  /**
253
252
  * Register the Crowdy-backed `glob` / `grep` tool suite and its system-prompt
@@ -1 +1 @@
1
- {"version":3,"file":"search-tools.js","sourceRoot":"","sources":["../../src/search/search-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-tools.js","sourceRoot":"","sources":["../../src/search/search-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * The game's skills, as an upstream skill provider registered by the
3
+ * `crowdy-game` preset. The page lists them from the game's playbook
4
+ * (`studio.listSkills` reads `<playbookBase>skills/index.json`) and serves
5
+ * each body as a playbook page (`studio.readPlaybook`), so the harness names
6
+ * no game and fetches nothing itself: a game that ships no playbook simply
7
+ * has no skills here.
8
+ *
9
+ * @module @crowdedkingdoms/crowdy-dsh/playbook-skills
10
+ */
11
+ import { assertPlaybookPage, splitFrontmatter } from '../crowdy/playbook.js';
12
+ export const name = 'crowdy-playbook-skills';
13
+ export const inject = ['skills', 'crowdyBridge'];
14
+ /** Between a project's own skills (100-200) and runtime registrations (250). */
15
+ const PLAYBOOK_RANK = 220;
16
+ const PROVIDER = 'crowdy-playbook';
17
+ /** The provider; exported for tests. */
18
+ export function playbookSkillProvider(bridge) {
19
+ return {
20
+ name: PROVIDER,
21
+ async list(options) {
22
+ let result;
23
+ try {
24
+ await bridge.client.whenPagePresent(10_000);
25
+ result = await bridge.client.request('studio.listSkills', {}, { timeoutMs: 15_000, signal: options?.signal });
26
+ }
27
+ catch {
28
+ // No page yet, or it could not read the index: not cached, asked again next lookup.
29
+ return { candidates: [], complete: false };
30
+ }
31
+ const candidates = [];
32
+ for (const skill of result.skills ?? []) {
33
+ let page;
34
+ try {
35
+ page = assertPlaybookPage(skill.page);
36
+ }
37
+ catch {
38
+ continue;
39
+ }
40
+ candidates.push({
41
+ name: skill.name,
42
+ description: skill.description,
43
+ invocation: { modelInvocable: true, userInvocable: true },
44
+ source: 'custom',
45
+ provider: PROVIDER,
46
+ resourceBase: {
47
+ kind: 'opaque',
48
+ description: "Pages of the game's playbook; read the ones a skill names with read_playbook.",
49
+ },
50
+ rank: PLAYBOOK_RANK,
51
+ locator: { page },
52
+ });
53
+ }
54
+ return candidates;
55
+ },
56
+ async get(candidate, options) {
57
+ const page = candidate.locator?.page;
58
+ if (!page)
59
+ return undefined;
60
+ const result = await bridge.client.request('studio.readPlaybook', { page }, { timeoutMs: 15_000, signal: options?.signal });
61
+ const { body } = splitFrontmatter(result.text);
62
+ if (!body)
63
+ return undefined;
64
+ return {
65
+ name: candidate.name,
66
+ description: candidate.description,
67
+ invocation: candidate.invocation,
68
+ source: candidate.source,
69
+ provider: candidate.provider,
70
+ ...(candidate.resourceBase ? { resourceBase: candidate.resourceBase } : {}),
71
+ content: body,
72
+ };
73
+ },
74
+ };
75
+ }
76
+ export function apply(ctx) {
77
+ ctx.skills.registerProvider(() => playbookSkillProvider(ctx.crowdyBridge));
78
+ }
79
+ export default { name, inject, apply };
80
+ //# sourceMappingURL=playbook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playbook.js","sourceRoot":"","sources":["../../src/skills/playbook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAE5E,MAAM,CAAC,MAAM,IAAI,GAAG,wBAAwB,CAAA;AAC5C,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;AAEhD,gFAAgF;AAChF,MAAM,aAAa,GAAG,GAAG,CAAA;AACzB,MAAM,QAAQ,GAAG,iBAAiB,CAAA;AAElC,wCAAwC;AACxC,MAAM,UAAU,qBAAqB,CAAC,MAAoC;IACxE,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,CAAC,IAAI,CAAC,OAA2B;YACpC,IAAI,MAAkC,CAAA;YACtC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;gBAC3C,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YAC/G,CAAC;YAAC,MAAM,CAAC;gBACP,oFAAoF;gBACpF,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;YAC5C,CAAC;YACD,MAAM,UAAU,GAAqB,EAAE,CAAA;YACvC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACxC,IAAI,IAAY,CAAA;gBAChB,IAAI,CAAC;oBACH,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACvC,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAQ;gBACV,CAAC;gBACD,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,UAAU,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;oBACzD,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,QAAQ;oBAClB,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+EAA+E;qBAC7F;oBACD,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,EAAE,IAAI,EAAuC;iBACvD,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,UAAU,CAAA;QACnB,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,SAAyB,EAAE,OAA2B;YAC9D,MAAM,IAAI,GAAI,SAAS,CAAC,OAAyC,EAAE,IAAI,CAAA;YACvE,IAAI,CAAC,IAAI;gBAAE,OAAO,SAAS,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3H,MAAM,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC9C,IAAI,CAAC,IAAI;gBAAE,OAAO,SAAS,CAAA;YAC3B,OAAO;gBACL,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,OAAO,EAAE,IAAI;aACd,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAY;IAChC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAA;AAC5E,CAAC;AAED,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA"}
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Game editor tools, registered by the `crowdy-game` preset. File edits go
3
+ * through the game filesystem into the page's draft; these tools publish the
4
+ * draft, ask whether the world took it, and read the game's playbook.
5
+ *
6
+ * @module @crowdedkingdoms/crowdy-dsh/game-tools
7
+ */
8
+ import z from '@deepseek-ai/schemastery';
9
+ import { defineTool } from '@deepseek-ai/dsh-tools';
10
+ import { BridgeError } from '../bridge/client.js';
11
+ import { DRAFT_ERROR_CODES } from '../bridge/protocol.js';
12
+ import { assertPlaybookPage } from '../crowdy/playbook.js';
13
+ import { isRepoPath } from '../crowdy/repo-paths.js';
14
+ export const name = 'crowdy-game-tools';
15
+ export const inject = ['tools', 'crowdyBridge'];
16
+ export const Config = z.object({
17
+ commitTimeoutMs: z.number().default(180_000),
18
+ });
19
+ const TEXT_OUTPUT = {
20
+ schema: {
21
+ type: 'object',
22
+ additionalProperties: false,
23
+ properties: { text: { type: 'string', required: true } },
24
+ },
25
+ render: (_args, value) => [{ type: 'text', text: value.text }],
26
+ };
27
+ /** A page refusal in words the model can act on. */
28
+ function bridgeFailure(error) {
29
+ if (error instanceof BridgeError) {
30
+ switch (error.code) {
31
+ case DRAFT_ERROR_CODES.declined:
32
+ throw new Error(`${error.message} Do not commit again until the player asks.`);
33
+ case DRAFT_ERROR_CODES.conflict:
34
+ throw new Error(`${error.message} The player settles each conflict in Crowdy Studio's Files pane (keep the draft or take GitHub's version); wait for them, then commit again if they ask.`);
35
+ default:
36
+ throw new Error(error.message);
37
+ }
38
+ }
39
+ throw error instanceof Error ? error : new Error(String(error));
40
+ }
41
+ export async function apply(ctx, config = {}) {
42
+ const bridge = ctx.crowdyBridge;
43
+ const commitTimeout = config.commitTimeoutMs ?? 180_000;
44
+ ctx.tools.register(defineTool({
45
+ name: 'commit_game_files',
46
+ description: 'Commit the draft to the game repository on GitHub as ONE commit with your message. Only when the player asks to commit. ' +
47
+ 'The player approves here and confirms again on the page, seeing the files and the message. ' +
48
+ 'Omit paths to commit every changed file; name paths to commit some of them. Writes alone never reach GitHub.',
49
+ parameters: {
50
+ message: {
51
+ type: 'string',
52
+ required: true,
53
+ description: 'Commit message: what changed and why, in one or two sentences (GitHub shows it).',
54
+ },
55
+ paths: {
56
+ type: 'array',
57
+ items: { type: 'string' },
58
+ description: 'Repository paths to commit. Omit for every changed file.',
59
+ },
60
+ },
61
+ output: TEXT_OUTPUT,
62
+ timeoutMs: commitTimeout + 10_000,
63
+ async execute(args, exec) {
64
+ const message = String(args.message ?? '').trim();
65
+ if (!message)
66
+ throw new Error('A commit needs a message that says what changed.');
67
+ const paths = Array.isArray(args.paths) ? args.paths.map(String) : undefined;
68
+ for (const path of paths ?? []) {
69
+ if (!isRepoPath(path))
70
+ throw new Error(`${path} is not a file in the game repository.`);
71
+ }
72
+ const approval = ctx.get('approval');
73
+ if (!approval || !exec.agent) {
74
+ throw new Error('Commits need the approval service, which this composition does not mount. Ask the player to commit from the Files pane.');
75
+ }
76
+ const outcome = await approval.request({
77
+ agent: exec.agent,
78
+ toolName: 'commit_game_files',
79
+ callId: exec.callId,
80
+ reason: `Commit ${paths ? paths.join(', ') : 'every changed file'} to GitHub: ${message}`,
81
+ signal: exec.signal,
82
+ });
83
+ if (outcome !== 'allowed-once') {
84
+ throw new Error(outcome === 'rejected'
85
+ ? 'The player declined the commit. The draft is unchanged; do not commit again until they ask.'
86
+ : outcome === 'cancelled'
87
+ ? 'The commit approval was cancelled.'
88
+ : 'No one could approve the commit right now; the player can commit from the Files pane.');
89
+ }
90
+ try {
91
+ const result = await bridge.client.request('draft.commit', { message, ...(paths && paths.length > 0 ? { paths } : {}) }, { signal: exec.signal, timeoutMs: commitTimeout });
92
+ return {
93
+ text: `Committed ${result.committed.length} file${result.committed.length === 1 ? '' : 's'} as ${result.commitSha.slice(0, 7)}: ${result.committed.join(', ')}. The draft now builds on that commit.`,
94
+ };
95
+ }
96
+ catch (error) {
97
+ bridgeFailure(error);
98
+ }
99
+ },
100
+ presentCall: (args) => ({
101
+ card: 'generic',
102
+ title: 'Commit to GitHub',
103
+ kind: 'execute',
104
+ rawInput: String(args.message ?? ''),
105
+ }),
106
+ }));
107
+ ctx.tools.register(defineTool({
108
+ name: 'preview_status',
109
+ description: 'Whether the running world took your latest draft writes: the scene it shows and any load or mount errors with their file and line. ' +
110
+ 'Call it after changing a scene, the catalog or the content registry, before telling the player it works.',
111
+ parameters: {
112
+ timeoutSeconds: { type: 'number', description: 'How long to wait for the world to reload (default 10, at most 60).' },
113
+ },
114
+ output: TEXT_OUTPUT,
115
+ timeoutMs: 70_000,
116
+ async execute(args, exec) {
117
+ const wait = Math.min(Math.max(Number(args.timeoutSeconds) || 10, 1), 60) * 1_000;
118
+ try {
119
+ const status = await bridge.client.request('preview.status', { timeoutMs: wait }, { signal: exec.signal, timeoutMs: wait + 5_000 });
120
+ const lines = [
121
+ status.ok ? `The world took draft revision ${status.revision}.` : `The world did NOT take draft revision ${status.revision}.`,
122
+ ...(status.scene ? [`Scene: ${status.scene}.`] : []),
123
+ ...status.errors.map((e) => `- ${e.path ?? '(page)'}${e.line ? `:${e.line}${e.column ? `:${e.column}` : ''}` : ''}: ${e.message}`),
124
+ ...(status.note ? [status.note] : []),
125
+ ];
126
+ return { text: lines.join('\n') };
127
+ }
128
+ catch (error) {
129
+ bridgeFailure(error);
130
+ }
131
+ },
132
+ presentCall: () => ({ card: 'generic', title: 'Preview status', kind: 'read' }),
133
+ }));
134
+ ctx.tools.register(defineTool({
135
+ name: 'read_playbook',
136
+ description: "Read one page of the game's playbook (markdown shipped with the game), such as a page a skill names. page is a relative path like playbook/authoring-loop.md.",
137
+ parameters: {
138
+ page: { type: 'string', required: true, description: 'Relative markdown path under the playbook.' },
139
+ },
140
+ output: TEXT_OUTPUT,
141
+ async execute(args, exec) {
142
+ const page = assertPlaybookPage(String(args.page ?? ''));
143
+ try {
144
+ const result = await bridge.client.request('studio.readPlaybook', { page }, { signal: exec.signal, timeoutMs: 15_000 });
145
+ return { text: result.text };
146
+ }
147
+ catch (error) {
148
+ bridgeFailure(error);
149
+ }
150
+ },
151
+ presentCall: (args) => ({ card: 'generic', title: `Playbook ${String(args.page ?? '')}`, kind: 'read' }),
152
+ }));
153
+ }
154
+ export default { name, inject, Config, apply };
155
+ //# sourceMappingURL=game.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game.js","sourceRoot":"","sources":["../../src/tools/game.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ export const Config = z.object({
19
19
  buildTimeoutMs: z.number().default(180_000),
20
20
  screenshotTimeoutMs: z.number().default(15_000),
21
21
  autoScreenshot: z.boolean().default(true),
22
+ only: z.array(z.string()),
22
23
  });
23
24
  const TEXT_OUTPUT = {
24
25
  schema: {
@@ -69,6 +70,14 @@ export async function apply(ctx, config = {}) {
69
70
  const buildTimeout = config.buildTimeoutMs ?? 180_000;
70
71
  const screenshotTimeout = config.screenshotTimeoutMs ?? 15_000;
71
72
  const autoScreenshot = config.autoScreenshot ?? true;
73
+ const only = config.only && config.only.length > 0 ? new Set(config.only) : null;
74
+ const tools = {
75
+ register(tool) {
76
+ if (only && !only.has(tool.name))
77
+ return;
78
+ ctx.tools.register(tool);
79
+ },
80
+ };
72
81
  /** Persist a capture under `captures/` and turn it into an image block when a store exists. */
73
82
  async function attachCapture(shot) {
74
83
  const { path } = bridge.putCapture(shot);
@@ -134,7 +143,7 @@ export async function apply(ctx, config = {}) {
134
143
  },
135
144
  render: (_args, value) => [{ type: 'text', text: value.text }],
136
145
  };
137
- ctx.tools.register(defineTool({
146
+ tools.register(defineTool({
138
147
  name: 'draft_test',
139
148
  description: 'Compile the current Crowdy Studio project and run it as a DRAFT on the player\'s own grid (server target) and browser (client target). ' +
140
149
  'Returns compiler diagnostics, the build log tail and runtime status; a screenshot of the game is captured when the client target ran. ' +
@@ -146,7 +155,7 @@ export async function apply(ctx, config = {}) {
146
155
  execute: (_args, exec) => runBuild('draft', exec),
147
156
  presentCall: () => ({ card: 'generic', title: 'Draft test', kind: 'execute' }),
148
157
  }));
149
- ctx.tools.register(defineTool({
158
+ tools.register(defineTool({
150
159
  name: 'deploy_live',
151
160
  description: 'Deploy the current project LIVE so other players on the grid run it. Requires the player\'s explicit approval every time; ' +
152
161
  'run draft_test first and only deploy when it passed and the player asked for a live deploy.',
@@ -178,7 +187,7 @@ export async function apply(ctx, config = {}) {
178
187
  },
179
188
  presentCall: (args) => ({ card: 'generic', title: 'Deploy live', kind: 'execute', rawInput: args.reason }),
180
189
  }));
181
- ctx.tools.register(defineTool({
190
+ tools.register(defineTool({
182
191
  name: 'screenshot',
183
192
  description: 'Capture what the player currently sees in the game (the 3D view, HUD text and any overlay a CLIENT mod drew) and attach it as an image. ' +
184
193
  'Use it to check a visual change, or when the player refers to something on screen. Requires a model that accepts images.',
@@ -223,7 +232,7 @@ export async function apply(ctx, config = {}) {
223
232
  },
224
233
  presentCall: (args) => ({ card: 'generic', title: 'Screenshot', kind: 'read', rawInput: args.label ?? '' }),
225
234
  }));
226
- ctx.tools.register(defineTool({
235
+ tools.register(defineTool({
227
236
  name: 'runtime_status',
228
237
  description: 'Current status of the project\'s SERVER and CLIENT modules: saved vs running revision, phase, and the latest runtime logs.',
229
238
  parameters: {
@@ -248,7 +257,7 @@ export async function apply(ctx, config = {}) {
248
257
  },
249
258
  presentCall: () => ({ card: 'generic', title: 'Runtime status', kind: 'read' }),
250
259
  }));
251
- ctx.tools.register(defineTool({
260
+ tools.register(defineTool({
252
261
  name: 'client_logs',
253
262
  description: 'Recent `crowdy::log` output from the CLIENT module running in the player\'s browser, plus browser-side runtime errors.',
254
263
  parameters: {
@@ -267,7 +276,7 @@ export async function apply(ctx, config = {}) {
267
276
  },
268
277
  presentCall: () => ({ card: 'generic', title: 'Client logs', kind: 'read' }),
269
278
  }));
270
- ctx.tools.register(defineTool({
279
+ tools.register(defineTool({
271
280
  name: 'game_observe',
272
281
  description: 'A structured snapshot of the player\'s surroundings from the game: position, grid and chunk, nearby actors and blocks, as the game reports them. ' +
273
282
  'Cheaper than a screenshot and exact; use it to ground world coordinates before writing code that touches voxels or actors.',
@@ -285,7 +294,7 @@ export async function apply(ctx, config = {}) {
285
294
  },
286
295
  presentCall: () => ({ card: 'generic', title: 'Observe game', kind: 'read' }),
287
296
  }));
288
- ctx.tools.register(defineTool({
297
+ tools.register(defineTool({
289
298
  name: 'project_list',
290
299
  description: 'List the player\'s Crowdy Studio projects in this app and which one is open in the editor (and mounted here).',
291
300
  parameters: {},
@@ -302,7 +311,7 @@ export async function apply(ctx, config = {}) {
302
311
  },
303
312
  presentCall: () => ({ card: 'generic', title: 'List projects', kind: 'read' }),
304
313
  }));
305
- ctx.tools.register(defineTool({
314
+ tools.register(defineTool({
306
315
  name: 'project_open',
307
316
  description: 'Open another of the player\'s projects in Crowdy Studio and mount it here; subsequent file tools read and write that project.',
308
317
  parameters: {
@@ -321,7 +330,7 @@ export async function apply(ctx, config = {}) {
321
330
  },
322
331
  presentCall: (args) => ({ card: 'generic', title: `Open project ${args.project_id}`, kind: 'other' }),
323
332
  }));
324
- ctx.tools.register(defineTool({
333
+ tools.register(defineTool({
325
334
  name: 'project_create',
326
335
  description: 'Create a new Crowdy Studio project from a starter template, open it in the editor and mount it here. ' +
327
336
  'Templates come from the Studio starter catalog; omit `template` for the blank full-stack project.',
@@ -342,7 +351,7 @@ export async function apply(ctx, config = {}) {
342
351
  },
343
352
  presentCall: (args) => ({ card: 'generic', title: `Create project "${args.name}"`, kind: 'other' }),
344
353
  }));
345
- ctx.tools.register(defineTool({
354
+ tools.register(defineTool({
346
355
  name: 'grid_context',
347
356
  description: 'The grid this project is bound to: its chunk box, whether the player owns it, and its channels and sessions. ' +
348
357
  'Code on a grid may only address chunks inside the box (spatial sends originate there and may reach past it), post to these channels, and host these sessions; read this before writing code that touches the world.',
@@ -362,7 +371,7 @@ export async function apply(ctx, config = {}) {
362
371
  },
363
372
  presentCall: () => ({ card: 'generic', title: 'Grid context', kind: 'read' }),
364
373
  }));
365
- ctx.tools.register(defineTool({
374
+ tools.register(defineTool({
366
375
  name: 'grid_program_run',
367
376
  description: 'Run a JavaScript grid program from a project file inside the grid, or stop it. The game loads the file\'s saved content into a network-less sandbox ' +
368
377
  'where `createGridProgramClient(port)` gives it the full CrowdyJS SDK confined to the grid. Save the file first; the result carries the program\'s recent console lines.',
@@ -385,7 +394,7 @@ export async function apply(ctx, config = {}) {
385
394
  },
386
395
  presentCall: (args) => ({ card: 'generic', title: `${args.stop ? 'Stop' : 'Run'} ${args.path}`, kind: 'other' }),
387
396
  }));
388
- ctx.tools.register(defineTool({
397
+ tools.register(defineTool({
389
398
  name: 'grid_program_status',
390
399
  description: 'Which JavaScript grid programs the game is running for this grid, with their last error and recent console lines.',
391
400
  parameters: {},