@darkclaw921/umgt 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +14 -0
  2. package/dist/server/agents/core-tools.d.ts +6 -2
  3. package/dist/server/agents/core-tools.js +8 -3
  4. package/dist/server/agents/core-tools.js.map +1 -1
  5. package/dist/server/agents/core.js +4 -3
  6. package/dist/server/agents/core.js.map +1 -1
  7. package/dist/server/app.js +2 -1
  8. package/dist/server/app.js.map +1 -1
  9. package/dist/server/asset-media.d.ts +2 -1
  10. package/dist/server/asset-media.js +1 -1
  11. package/dist/server/asset-media.js.map +1 -1
  12. package/dist/server/chat-computer.d.ts +3 -1
  13. package/dist/server/chat-computer.js +8 -3
  14. package/dist/server/chat-computer.js.map +1 -1
  15. package/dist/server/chat.js +4 -3
  16. package/dist/server/chat.js.map +1 -1
  17. package/dist/server/core-client.d.ts +4 -0
  18. package/dist/server/core-client.js +19 -0
  19. package/dist/server/core-client.js.map +1 -1
  20. package/dist/server/generated-media.d.ts +19 -0
  21. package/dist/server/generated-media.js +342 -0
  22. package/dist/server/generated-media.js.map +1 -0
  23. package/dist/server/reports.d.ts +4 -0
  24. package/dist/server/reports.js +40 -0
  25. package/dist/server/reports.js.map +1 -0
  26. package/dist/server/routes.js +7 -1
  27. package/dist/server/routes.js.map +1 -1
  28. package/dist/server/updates.d.ts +28 -0
  29. package/dist/server/updates.js +99 -0
  30. package/dist/server/updates.js.map +1 -0
  31. package/dist/shared/generated-media.d.ts +2 -0
  32. package/dist/shared/generated-media.js +3 -0
  33. package/dist/shared/generated-media.js.map +1 -0
  34. package/dist/web/assets/AgentActivity-DRuju8iC.js +9 -0
  35. package/dist/web/assets/{ArrowRight.es-rFSWI60-.js → ArrowRight.es-9w41WqD8.js} +1 -1
  36. package/dist/web/assets/{ArrowUpRight.es-9AGQAwc-.js → ArrowUpRight.es-BmIrpjWN.js} +1 -1
  37. package/dist/web/assets/{AssetMediaPreview-Cqs-ltSx.js → AssetMediaPreview-D2cd6oQO.js} +1 -1
  38. package/dist/web/assets/AssetSelectionWizard-7SBX7wym.js +1 -0
  39. package/dist/web/assets/{CaretDown.es-BF-GEzW4.js → CaretDown.es-Cq33NYip.js} +1 -1
  40. package/dist/web/assets/{CheckCircle.es-CAQfdit1.js → CheckCircle.es-D5B3hdvz.js} +1 -1
  41. package/dist/web/assets/CoreAccount-BfH0gEKJ.js +1 -0
  42. package/dist/web/assets/{DownloadSimple.es-CwuHLlwX.js → DownloadSimple.es-DwOWFbs2.js} +1 -1
  43. package/dist/web/assets/{FileText.es-C7Qe_oPL.js → FileText.es-D83IIiOG.js} +1 -1
  44. package/dist/web/assets/{ImageSquare.es-DXp8f5Py.js → ImageSquare.es-DxCFt99_.js} +1 -1
  45. package/dist/web/assets/KidsApp-ChVKRU9B.js +2 -0
  46. package/dist/web/assets/{MagnifyingGlass.es-DAAoXLM5.js → MagnifyingGlass.es-rkdOU2rH.js} +1 -1
  47. package/dist/web/assets/PaperPlaneRight.es-U0twumpP.js +1 -0
  48. package/dist/web/assets/{PencilSimple.es-B8ERAsFN.js → PencilSimple.es-JVHwRvGx.js} +1 -1
  49. package/dist/web/assets/PlainChat-C4V_wRVc.js +1 -0
  50. package/dist/web/assets/{Sparkle.es-B2bpSK_D.js → Sparkle.es-CmGpvnNm.js} +1 -1
  51. package/dist/web/assets/{Square.es-POdDsCpj.js → Square.es-BjNN9Ypc.js} +1 -1
  52. package/dist/web/assets/{UploadSimple.es-DIzZ2Med.js → UploadSimple.es-DxIuxpCC.js} +1 -1
  53. package/dist/web/assets/{WarningCircle.es-DeosDn7W.js → WarningCircle.es-D63H8cL9.js} +1 -1
  54. package/dist/web/assets/WorkflowJournal-BlTNapOH.js +1 -0
  55. package/dist/web/assets/{YandexConfigFields-B4ZNwcRp.js → YandexConfigFields-DDL22Bfw.js} +1 -1
  56. package/dist/web/assets/{YandexGamesView-JIfZE9xK.js → YandexGamesView-BAuOI0EI.js} +2 -2
  57. package/dist/web/assets/{dist-BmzcNjGQ.js → dist-7vx7MTaJ.js} +1 -1
  58. package/dist/web/assets/index-B6_q6dBC.js +13 -0
  59. package/dist/web/assets/index-Izzbh11U.css +1 -0
  60. package/dist/web/assets/{IconBase.es-Bvh5HoVq.js → jsx-runtime-CdVFa8IP.js} +1 -1
  61. package/dist/web/assets/resources-xyl8IpX6.js +1 -0
  62. package/dist/web/assets/ui-wHE_yBK0.js +41 -0
  63. package/dist/web/assets/workflow-CEkwrbrT.js +34 -0
  64. package/dist/web/assets/workflow-s2TewWL6.css +1 -0
  65. package/dist/web/index.html +4 -4
  66. package/package.json +11 -1
  67. package/dist/web/assets/AgentActivity-BmfJK4y-.js +0 -9
  68. package/dist/web/assets/AssetSelectionWizard-BB3qGs0g.js +0 -1
  69. package/dist/web/assets/Check.es-C6V98Gx8.js +0 -1
  70. package/dist/web/assets/CoreAccount-Dkpl4Rzw.js +0 -1
  71. package/dist/web/assets/KidsApp-BRwDKhZO.js +0 -2
  72. package/dist/web/assets/PlainChat-DT-l2KJ-.js +0 -1
  73. package/dist/web/assets/Plus.es-xuvXKifF.js +0 -1
  74. package/dist/web/assets/WorkflowJournal-CnLiVdGb.js +0 -1
  75. package/dist/web/assets/index-IRbQKmkO.js +0 -13
  76. package/dist/web/assets/index-aj0ikA52.css +0 -1
  77. package/dist/web/assets/resources-CT9ITJ8m.js +0 -1
  78. package/dist/web/assets/ui-CVc6Nw0y.js +0 -41
  79. package/dist/web/assets/workflow-BhcU9uvG.css +0 -1
  80. package/dist/web/assets/workflow-o5sZ-osd.js +0 -34
@@ -1 +1 @@
1
- {"version":3,"file":"core-client.js","sourceRoot":"","sources":["../../src/server/core-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,MAAM,OAAO,SAAU,SAAQ,KAAK;IAEzB,IAAI;IAEJ,UAAU;IAHnB,YACS,IAAY,EACnB,OAAe,EACR,UAAU,GAAG,GAAG;QAEvB,KAAK,CAAC,OAAO,CAAC,CAAC;oBAJR,IAAI;0BAEJ,UAAU;IAGnB,CAAC;CACF;AACD,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CACjB,kBAAkB,EAClB,kCAAkC,EAClC,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,IACE,GAAG,CAAC,QAAQ;QACZ,GAAG,CAAC,QAAQ;QACZ,GAAG,CAAC,MAAM;QACV,GAAG,CAAC,IAAI;QACR,GAAG,CAAC,QAAQ,KAAK,GAAG;QACpB,CAAC,CACC,GAAG,CAAC,QAAQ,KAAK,QAAQ;YACzB,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO;gBACvB,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;oBACzD,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAC/D;QAED,MAAM,IAAI,SAAS,CACjB,kBAAkB,EAClB,4GAA4G,EAC5G,GAAG,CACJ,CAAC;IACJ,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AACD,MAAM,OAAO,UAAU;IAIV,OAAO;IACP,cAAc;IAJjB,UAAU,CAA4B;IACtC,WAAW,CAAmB;IACtC,YACW,OAAe,EACf,cAAc,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;uBADpD,OAAO;8BACP,cAAc;IACtB,CAAC;IACJ,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IACjD,CAAC;IACO,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YAChE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAK,CAA2B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,SAAS,CAAC;YACrE,MAAM,IAAI,SAAS,CACjB,sBAAsB,EACtB,qEAAqE,CACtE,CAAC;QACJ,CAAC;IACH,CAAC;IACO,KAAK,CAAC,IAAI,CAAC,KAAsB;QACvC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,MAAM,CAAC;QACzD,MAAM,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAChD,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IACO,KAAK,CAAC,IAAI,CAChB,GAAW,EACX,IAAY,EACZ,IAAa,EACb,MAAe,EACf,MAAoB;QAEpB,IAAI,CAAC;YACH,OAAO,MAAM,KAAK,CAAC,GAAG,GAAG,UAAU,IAAI,EAAE,EAAE;gBACzC,MAAM,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;gBAC3C,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzD;gBACD,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC3D,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5C,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,KAAK,CAAC;YACjC,MAAM,IAAI,SAAS,CACjB,kBAAkB,EAClB,kDAAkD,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IACO,KAAK,CAAC,IAAI,CAAC,QAAkB;QACnC,IAAI,KAAU,CAAC;QACf,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,SAAS,CACjB,uBAAuB,EACvB,kCAAkC,CACnC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE;YACd,MAAM,IAAI,SAAS,CACjB,KAAK,CAAC,KAAK,IAAI,YAAY,EAC3B,KAAK,CAAC,OAAO,IAAI,aAAa,EAC9B,QAAQ,CAAC,MAAM,CAChB,CAAC;QACJ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,GAAW;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,EACxD,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,IAAI,CAAC,IAAI,CAAC;YACd,GAAG,EAAE,MAAM;YACX,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;QACH,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACD,KAAK,CAAC,qBAAqB;QACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,SAAS,CACjB,oBAAoB,EACpB,2DAA2D,EAC3D,GAAG,CACJ,CAAC;QACJ,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC5D,OAAO,OAAO,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU;YAClB,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE;oBAC5C,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CAAC,CACH,CAAC;gBACF,MAAM,KAAK,GAAG;oBACZ,GAAG,OAAO;oBACV,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC;gBACF,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;gBAChB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAAc,EAAE,MAAoB;QAC9D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,IAAI,CACd,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CACtE,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,MAAM;QACV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO;YACV,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC;QACtE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAE,EAAE,CAAA,SAAS,CAAC,CAAC;QAChH,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAC,UAAU,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACpI,OAAO;YACL,SAAS,EAAE,IAAI;YACf,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,YAAY;YACZ,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAC,OAAO,EAAC,OAAO,CAAC,IAAI,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACnD,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,WAAW;QACf,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO;gBACL;oBACE,EAAE,EAAE,OAAgB;oBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,UAAU,EAAE,eAAe;oBAC3B,cAAc,EAAE,KAAK,CAAC,SAAS;wBAC7B,CAAC,CAAE,OAAiB;wBACpB,CAAC,CAAE,UAAoB;oBACzB,YAAY,EAAE;wBACZ,WAAW;wBACX,aAAa;wBACb,cAAc;wBACd,UAAU;wBACV,UAAU;qBACX;oBACD,QAAQ,EAAE,KAAc;iBACzB;aACF,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL;oBACE,EAAE,EAAE,OAAgB;oBACpB,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,eAAe;oBAC3B,KAAK,EAAE,uCAAuC;oBAC9C,YAAY,EAAE,EAAE;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,OAAO;gBAAE,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QACtD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;oBAAE,MAAM,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;IACD,KAAK,CAAC,IAAI,CACR,SAAiB,EACjB,KAAc,EACd,MAAmB,EACnB,IAA0C;QAE1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;QAClC,IAAI,OAAO,GAAG,GAAG,CAAC;QAClB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,2EAA2E;gBAC3E,uEAAuE;gBACvE,IACE,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC;oBAC7B,KAAK,CAAC,IAAI,KAAK,cAAc;oBAC7B,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,IAAI,KAAK;oBAE7B,MAAM,KAAK,CAAC;gBACd,MAAM,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC5C,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IACO,KAAK,CAAC,QAAQ,CACpB,SAAiB,EACjB,KAAc,EACd,MAAmB,EACnB,IAA0C;QAE1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACnD,IAAI,WAA+B,CAAC;QACpC,IAAI,SAAc,CAAC;QACnB,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,QAAuC,CAAC;QAC5C,MAAM,GAAG,GAAG,CAAC,YAAoB,EAAE,EAAE;YACnC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,QAAQ,GAAG,UAAU,CACnB,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC,EACjE,YAAY,CACb,CAAC;QACJ,CAAC,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,OAAO,CAAC,GAAG,EACX,gBAAgB,SAAS,OAAO,EAChC,KAAK,EACL,OAAO,CAAC,WAAW,EACnB,eAAe,CAChB,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAChB,MAAM,IAAI,SAAS,CACjB,uBAAuB,EACvB,gCAAgC,CACjC,CAAC;YACJ,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,KAAK;qBACf,KAAK,CAAC,IAAI,CAAC;qBACX,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACpC,EAAE,KAAK,CAAC,CAAC,CAAC;qBACT,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,GAAG,KAAK;qBACf,KAAK,CAAC,IAAI,CAAC;qBACX,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;qBACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBAC7B,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,IAAI,KAAK,WAAW;oBAAE,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC;gBACjD,IAAI,IAAI,KAAK,OAAO;oBAAE,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACtE,IAAI,IAAI,KAAK,WAAW;oBAAE,SAAS,GAAG,KAAK,CAAC;gBAC5C,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACpB,CAAC,CAAC;YACF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAW,EAAE,CAAC;gBAC/C,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAChC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACrE,IAAI,GAAG,CAAC;gBACR,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC7C,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5B,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBAC/B,IAAI,SAAS;wBAAE,MAAM;gBACvB,CAAC;gBACD,IAAI,SAAS;oBAAE,MAAM;gBACrB,IAAI,MAAM,CAAC,MAAM,GAAG,QAAQ;oBAC1B,MAAM,IAAI,SAAS,CACjB,uBAAuB,EACvB,6BAA6B,CAC9B,CAAC;YACN,CAAC;YACD,IAAI,CAAC,SAAS;gBACZ,MAAM,IAAI,SAAS,CACjB,yBAAyB,EACzB,mDAAmD,CACpD,CAAC;YACJ,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,QAAS,CAAC,CAAC;YACxB,IAAI,MAAM,CAAC,OAAO,IAAI,WAAW;gBAC/B,MAAM,IAAI,CAAC,OAAO,CAChB,eAAe,WAAW,SAAS,EACnC,EAAE,EACF,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC3B,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC,EAAE,CAAC;gBACpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAClC,eAAe,WAAW,EAAE,CAC7B,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBACzB,IAAI,SAAS,EAAE,MAAM;oBACnB,OAAO;wBACL,GAAG,SAAS,CAAC,MAAM;wBACnB,WAAW;wBACX,OAAO,EAAE,SAAS,CAAC,MAAM;qBAC1B,CAAC;YACN,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,OAAO;gBAC7C,MAAM,IAAI,SAAS,CACjB,qBAAqB,EACrB,gHAAgH,CACjH,CAAC;YACJ,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,QAAS,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF;AACD,MAAM,UAAU,kBAAkB,CAAC,GAAoB,EAAE,MAAkB;IACzE,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACjD,MAAM,KAAK,GAAG,CAAC;aACZ,MAAM,CAAC;YACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;SAClC,CAAC;aACD,MAAM,EAAE;aACR,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAC,KAAK,EAAC,OAAO,EAAA,EAAE;QACvC,MAAM,KAAK,GAAC,CAAC,CAAC,MAAM,CAAC,EAAC,SAAS,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxH,MAAM,QAAQ,GAAC,IAAI,CAAC,GAAG,EAAE,GAAC,KAAK,CAAC;QAAA,IAAI,MAAU,CAAC;QAC/C,OAAM,IAAI,EAAC,CAAC;YAAA,IAAG,CAAC;gBAAA,MAAM,GAAC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,EAAC,KAAK,EAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAA,MAAM;YAAA,CAAC;YAAA,OAAM,KAAK,EAAC,CAAC;gBAAA,IAAG,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC,IAAE,KAAK,CAAC,IAAI,KAAG,cAAc,IAAE,IAAI,CAAC,GAAG,EAAE,IAAE,QAAQ;oBAAC,MAAM,KAAK,CAAC;gBAAA,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;YAAA,CAAC;QAAA,CAAC;QAC/N,IAAG,CAAC,CAAC,MAAM,EAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAE,CAAC,CAAC,YAAY,EAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAE,OAAO,MAAM,CAAC,KAAK,KAAG,QAAQ,IAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAC,OAAO,IAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,yBAAyB,EAAC,gDAAgD,CAAC,CAAC;QACzS,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,IAAI,SAAS,CAAC,uBAAuB,EAAE,0EAA0E,EAAE,GAAG,CAAC,CAAC;IAChI,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,CAAC;aACZ,MAAM,CAAC;YACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;YAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;SAC1C,CAAC;aACD,MAAM,EAAE;aACR,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CACL,2BAA2B,EAC3B,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAC5E,CAAC;IACF,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;AAChF,CAAC"}
1
+ {"version":3,"file":"core-client.js","sourceRoot":"","sources":["../../src/server/core-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { FastifyInstance } from "fastify";
2
+ import type { AgentRequest } from "./agents/types.js";
3
+ import { type CoreTool } from "./agents/core-tools.js";
4
+ import { CoreClient } from "./core-client.js";
5
+ export { generatedUrlPattern } from "../shared/generated-media.js";
6
+ export declare const mediaAgentGuidance = "You can create game covers, illustrations, music and short video clips through generate_image, generate_music and generate_video. Use paid generation ONLY when the current user explicitly requests those assets (including a cover or trailer), or has approved a plan that calls for them. Models and billing are managed by Core; never ask the user for a provider key or model. Use a local referenceImage path for game-specific artwork/initial video frames when available. Generation can take minutes; use get_media_generation or list_media_generations to recover existing work instead of generating and paying again. A video tool makes one short clip; for a longer trailer plan scenes and assemble returned clips/music with local tools (such as ffmpeg when installed), under the normal permissions. Never invent gameplay footage, files or success. Use the actual returned file paths, and include the returned preview URL as a Markdown link in your final answer.";
7
+ export declare function mediaOwner(core: CoreClient): Promise<string>;
8
+ export declare class GeneratedMediaTools {
9
+ private core;
10
+ private request;
11
+ readonly definitions: CoreTool[];
12
+ constructor(core: CoreClient, request: AgentRequest);
13
+ call(name: string, input: any, identity?: string): Promise<string>;
14
+ private assertWorkspace;
15
+ private wait;
16
+ private download;
17
+ private result;
18
+ }
19
+ export declare function registerGeneratedMedia(app: FastifyInstance, core: CoreClient): void;
@@ -0,0 +1,342 @@
1
+ import { createHash, randomUUID } from "node:crypto";
2
+ import { mkdir, readFile, writeFile, rename, readdir, stat, } from "node:fs/promises";
3
+ import { join, dirname, extname, relative } from "node:path";
4
+ import { setTimeout as delay } from "node:timers/promises";
5
+ import { z } from "zod";
6
+ import { projectPath } from "./agents/core-tools.js";
7
+ import { sendMedia } from "./asset-media.js";
8
+ export { generatedUrlPattern } from "../shared/generated-media.js";
9
+ export const mediaAgentGuidance = "You can create game covers, illustrations, music and short video clips through generate_image, generate_music and generate_video. Use paid generation ONLY when the current user explicitly requests those assets (including a cover or trailer), or has approved a plan that calls for them. Models and billing are managed by Core; never ask the user for a provider key or model. Use a local referenceImage path for game-specific artwork/initial video frames when available. Generation can take minutes; use get_media_generation or list_media_generations to recover existing work instead of generating and paying again. A video tool makes one short clip; for a longer trailer plan scenes and assemble returned clips/music with local tools (such as ffmpeg when installed), under the normal permissions. Never invent gameplay footage, files or success. Use the actual returned file paths, and include the returned preview URL as a Markdown link in your final answer.";
10
+ const uuid = z.string().uuid();
11
+ const base = z
12
+ .object({
13
+ prompt: z.string().trim().min(3).max(12000),
14
+ path: z.string().min(1).max(4000),
15
+ aspectRatio: z.enum(["1:1", "16:9", "9:16", "4:3", "3:4"]).default("16:9"),
16
+ referenceImage: z.string().min(1).max(4000).optional(),
17
+ })
18
+ .strict();
19
+ const video = base.extend({
20
+ duration: z.number().int().min(1).max(15).default(4),
21
+ });
22
+ const music = base.omit({ referenceImage: true, aspectRatio: true });
23
+ const statusInput = z
24
+ .object({
25
+ generationId: uuid,
26
+ waitSeconds: z.number().int().min(0).max(120).default(90),
27
+ })
28
+ .strict();
29
+ const formats = {
30
+ "image/png": "png",
31
+ "image/jpeg": "jpg",
32
+ "image/webp": "webp",
33
+ "audio/wav": "wav",
34
+ "audio/mpeg": "mp3",
35
+ "audio/ogg": "ogg",
36
+ "audio/flac": "flac",
37
+ "video/mp4": "mp4",
38
+ };
39
+ export async function mediaOwner(core) {
40
+ const credentials = await core.credentialsForRequest(), ent = await core.request("/entitlements");
41
+ if (typeof ent.user_id !== "string" || !ent.user_id)
42
+ throw new Error("Аккаунт UMGT недоступен.");
43
+ return createHash("sha256")
44
+ .update(credentials.url + "\0" + ent.user_id)
45
+ .digest("hex");
46
+ }
47
+ function folder(core, owner) {
48
+ return join(core.dataDir, "generated-media", owner);
49
+ }
50
+ async function load(core, owner, id) {
51
+ uuid.parse(id);
52
+ try {
53
+ const record = JSON.parse(await readFile(join(folder(core, owner), id + ".json"), "utf8"));
54
+ if (record.id !== id || record.owner !== owner)
55
+ throw new Error("owner");
56
+ return record;
57
+ }
58
+ catch {
59
+ throw Object.assign(new Error("Генерация не найдена в этом аккаунте."), {
60
+ statusCode: 404,
61
+ });
62
+ }
63
+ }
64
+ async function save(core, record) {
65
+ const root = folder(core, record.owner);
66
+ await mkdir(root, { recursive: true, mode: 0o700 });
67
+ const staged = join(root, randomUUID() + ".tmp");
68
+ await writeFile(staged, JSON.stringify(record), { mode: 0o600, flag: "wx" });
69
+ await rename(staged, join(root, record.id + ".json"));
70
+ }
71
+ export class GeneratedMediaTools {
72
+ core;
73
+ request;
74
+ definitions;
75
+ constructor(core, request) {
76
+ this.core = core;
77
+ this.request = request;
78
+ this.definitions = [
79
+ [
80
+ "generate_image",
81
+ "Generate a cover, poster or image through OpenRouter, save it locally and return a preview link.",
82
+ base,
83
+ ],
84
+ [
85
+ "generate_music",
86
+ "Generate music through OpenRouter (default model: a 30-second clip), save it locally and return a playable link.",
87
+ music,
88
+ ],
89
+ [
90
+ "generate_video",
91
+ "Generate one short video clip through OpenRouter, optionally using a game image as the first frame; save the MP4 locally.",
92
+ video,
93
+ ],
94
+ [
95
+ "get_media_generation",
96
+ "Resume/check an existing local generation without paying for a second generation.",
97
+ statusInput,
98
+ ],
99
+ [
100
+ "list_media_generations",
101
+ "List existing generated media and pending jobs in this conversation/project workspace.",
102
+ z.object({}).strict(),
103
+ ],
104
+ ].map(([name, description, schema]) => ({
105
+ type: "function",
106
+ function: {
107
+ name: name,
108
+ description: description,
109
+ parameters: z.toJSONSchema(schema),
110
+ },
111
+ }));
112
+ }
113
+ async call(name, input, identity) {
114
+ if (name === "list_media_generations") {
115
+ z.object({}).strict().parse(input);
116
+ const owner = await mediaOwner(this.core), root = await projectPath(this.request.cwd, ".");
117
+ let names = [];
118
+ try {
119
+ names = await readdir(folder(this.core, owner));
120
+ }
121
+ catch { }
122
+ const rows = [];
123
+ for (const name of names.filter((n) => n.endsWith(".json")).slice(-100)) {
124
+ try {
125
+ const row = await load(this.core, owner, name.slice(0, -5));
126
+ if (row.root === root)
127
+ rows.push({
128
+ generationId: row.id,
129
+ kind: row.kind,
130
+ path: row.path ?? row.requestedPath,
131
+ completed: !!row.completed,
132
+ createdAt: row.createdAt,
133
+ });
134
+ }
135
+ catch { }
136
+ }
137
+ return JSON.stringify(rows.slice(-20));
138
+ }
139
+ if (name === "get_media_generation") {
140
+ const args = statusInput.parse(input), owner = await mediaOwner(this.core), record = await load(this.core, owner, args.generationId);
141
+ await this.assertWorkspace(record);
142
+ return JSON.stringify(await this.wait(record, args.waitSeconds));
143
+ }
144
+ const kind = name === "generate_image"
145
+ ? "image"
146
+ : name === "generate_music"
147
+ ? "music"
148
+ : name === "generate_video"
149
+ ? "video"
150
+ : undefined;
151
+ if (!kind)
152
+ throw new Error("Unknown media tool");
153
+ const args = (kind === "video" ? video : kind === "music" ? music : base).parse(input);
154
+ const owner = await mediaOwner(this.core), root = await projectPath(this.request.cwd, ".");
155
+ await projectPath(root, args.path, true);
156
+ if (!(await this.request.permission("write_file", {
157
+ path: args.path,
158
+ purpose: kind === "image"
159
+ ? "Создание изображения через OpenRouter"
160
+ : kind === "music"
161
+ ? "Создание музыки через OpenRouter"
162
+ : "Создание видео через OpenRouter",
163
+ })).allow)
164
+ return "Permission denied";
165
+ this.request.signal.throwIfAborted();
166
+ if ((await mediaOwner(this.core)) !== owner)
167
+ throw new Error("Аккаунт изменился. Повторите команду.");
168
+ let referenceImage;
169
+ if (args.referenceImage) {
170
+ const path = await projectPath(root, args.referenceImage), extension = extname(path).toLowerCase(), mime = extension === ".png"
171
+ ? "image/png"
172
+ : [".jpg", ".jpeg"].includes(extension)
173
+ ? "image/jpeg"
174
+ : extension === ".webp"
175
+ ? "image/webp"
176
+ : undefined;
177
+ if (!mime || (await stat(path)).size > 6000000)
178
+ throw new Error("Референс должен быть PNG, JPEG или WebP до 6 МБ.");
179
+ referenceImage = `data:${mime};base64,${(await readFile(path)).toString("base64")}`;
180
+ }
181
+ const bytes = createHash("sha256")
182
+ .update([owner, root, identity ?? randomUUID(), name].join("\0"))
183
+ .digest();
184
+ bytes[6] = (bytes[6] & 15) | 64;
185
+ bytes[8] = (bytes[8] & 63) | 128;
186
+ const hex = bytes.subarray(0, 16).toString("hex"), id = `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
187
+ const body = {
188
+ requestId: id,
189
+ kind,
190
+ prompt: args.prompt,
191
+ ...(kind !== "music" ? { aspectRatio: args.aspectRatio } : {}),
192
+ ...(kind === "video" ? { duration: args.duration } : {}),
193
+ ...(referenceImage ? { referenceImage } : {}),
194
+ };
195
+ const fingerprint = createHash("sha256")
196
+ .update(JSON.stringify({ body, path: args.path }))
197
+ .digest("hex");
198
+ let record;
199
+ try {
200
+ record = await load(this.core, owner, id);
201
+ if (record.fingerprint !== fingerprint)
202
+ throw new Error("Идентификатор инструмента уже использован с другими параметрами.");
203
+ }
204
+ catch (error) {
205
+ if (error.statusCode !== 404)
206
+ throw error;
207
+ record = {
208
+ id,
209
+ owner,
210
+ root,
211
+ requestedPath: args.path,
212
+ kind,
213
+ fingerprint,
214
+ input: body,
215
+ createdAt: new Date().toISOString(),
216
+ };
217
+ await save(this.core, record);
218
+ }
219
+ return JSON.stringify(await this.wait(record, 90));
220
+ }
221
+ async assertWorkspace(record) {
222
+ if (record.root !== (await projectPath(this.request.cwd, ".")))
223
+ throw new Error("Генерация относится к другому диалогу или проекту.");
224
+ }
225
+ async wait(record, seconds) {
226
+ await this.assertWorkspace(record);
227
+ const signal = this.request.signal;
228
+ if (!record.operationId) {
229
+ signal.throwIfAborted();
230
+ const response = await this.core.request("/media", record.input, signal);
231
+ record.operationId = uuid.parse(response.id);
232
+ delete record.input;
233
+ await save(this.core, record);
234
+ }
235
+ const until = Date.now() + seconds * 1000;
236
+ while (true) {
237
+ signal.throwIfAborted();
238
+ const state = await this.core.request("/media/" + record.operationId, undefined, signal);
239
+ if (state.state === "ready")
240
+ return this.download(record, state);
241
+ if (state.state === "failed")
242
+ return {
243
+ generationId: record.id,
244
+ operationId: record.operationId,
245
+ status: state.state,
246
+ error: state.error,
247
+ message: "Генерация завершилась ошибкой; не создавайте повторную платную задачу без решения пользователя.",
248
+ };
249
+ if (Date.now() >= until)
250
+ return {
251
+ generationId: record.id,
252
+ operationId: record.operationId,
253
+ status: state.state,
254
+ message: "Генерация выполняется у провайдера. Продолжите через get_media_generation; повторная генерация не нужна.",
255
+ };
256
+ this.request.emit("agent.activity", {
257
+ id: "media:" + record.id,
258
+ kind: "tool",
259
+ status: "running",
260
+ text: `Создание ${record.kind === "image" ? "изображения" : record.kind === "music" ? "музыки" : "видео"}`,
261
+ });
262
+ await delay(5000, undefined, { signal });
263
+ }
264
+ }
265
+ async download(record, state) {
266
+ if (!["paid", "waived"].includes(state.billing) ||
267
+ state.files?.length !== 1)
268
+ throw new Error("Файл ещё не готов к скачиванию.");
269
+ const descriptor = state.files[0], extension = formats[descriptor.mime];
270
+ if (!extension || extension !== descriptor.extension)
271
+ throw new Error("Неизвестный формат генерации.");
272
+ const relativePath = record.path ??
273
+ record.requestedPath.replace(/\.(png|jpe?g|webp|wav|mp3|ogg|flac|mp4)$/i, "") +
274
+ "." +
275
+ extension;
276
+ let target = await projectPath(record.root, relativePath, true);
277
+ if (record.completed && record.path) {
278
+ try {
279
+ if ((await stat(target)).size === record.size)
280
+ return this.result(record, state);
281
+ }
282
+ catch { }
283
+ }
284
+ if ((await mediaOwner(this.core)) !== record.owner)
285
+ throw new Error("Аккаунт изменился. Файл не сохранён.");
286
+ const file = await this.core.download(`/media/${record.operationId}/files/0`, AbortSignal.any([this.request.signal, AbortSignal.timeout(120000)]));
287
+ if (file.mime !== descriptor.mime || file.bytes.length !== descriptor.size)
288
+ throw new Error("Ядро вернуло повреждённый файл.");
289
+ if ((await mediaOwner(this.core)) !== record.owner)
290
+ throw new Error("Аккаунт изменился. Файл не сохранён.");
291
+ await mkdir(dirname(target), { recursive: true });
292
+ await projectPath(record.root, relativePath, true);
293
+ try {
294
+ await writeFile(target, file.bytes, { flag: "wx" });
295
+ }
296
+ catch (error) {
297
+ if (error.code !== "EEXIST")
298
+ throw error;
299
+ const alternative = relativePath.slice(0, -extension.length - 1) +
300
+ "-" +
301
+ record.id.slice(0, 8) +
302
+ "." +
303
+ extension;
304
+ target = await projectPath(record.root, alternative, true);
305
+ await writeFile(target, file.bytes, { flag: "wx" });
306
+ }
307
+ record.path = relative(record.root, target).replaceAll("\\", "/");
308
+ record.mime = file.mime;
309
+ record.extension = extension;
310
+ record.size = file.bytes.length;
311
+ record.completed = true;
312
+ await save(this.core, record);
313
+ return this.result(record, state);
314
+ }
315
+ result(record, state) {
316
+ return {
317
+ generationId: record.id,
318
+ operationId: record.operationId,
319
+ status: "ready",
320
+ path: record.path,
321
+ mime: record.mime,
322
+ url: `/api/v1/generated-media/${record.id}/content.${record.extension}`,
323
+ costUsd: state.costUsd,
324
+ billing: state.billing,
325
+ };
326
+ }
327
+ }
328
+ export function registerGeneratedMedia(app, core) {
329
+ app.route({
330
+ method: ["GET", "HEAD"],
331
+ url: "/api/v1/generated-media/:id/content.:extension",
332
+ handler: async (req, reply) => {
333
+ const owner = await mediaOwner(core), record = await load(core, owner, uuid.parse(req.params.id));
334
+ if (!record.completed ||
335
+ record.extension !== req.params.extension ||
336
+ !record.path)
337
+ throw Object.assign(new Error("Файл не найден."), { statusCode: 404 });
338
+ return sendMedia(req, reply, { root: record.root, files: [record.path] }, "0");
339
+ },
340
+ });
341
+ }
342
+ //# sourceMappingURL=generated-media.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-media.js","sourceRoot":"","sources":["../../src/server/generated-media.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { FastifyInstance } from "fastify";
2
+ import type { CoreClient } from "./core-client.js";
3
+ /** Core determines identity from its session; the browser cannot supply an account. */
4
+ export declare function registerReports(app: FastifyInstance, core: CoreClient): void;
@@ -0,0 +1,40 @@
1
+ import { z } from "zod";
2
+ /** Core determines identity from its session; the browser cannot supply an account. */
3
+ export function registerReports(app, core) {
4
+ const params = z.object({ id: z.string().uuid() });
5
+ const message = z
6
+ .object({
7
+ body: z.string().trim().min(1).max(10000),
8
+ attachments: z
9
+ .array(z
10
+ .object({
11
+ name: z.string().min(1).max(150),
12
+ data: z.string().max(2800000),
13
+ })
14
+ .strict())
15
+ .max(3)
16
+ .default([]),
17
+ })
18
+ .strict();
19
+ app.get("/api/v1/reports", async (req) => {
20
+ const query = z
21
+ .object({
22
+ limit: z.coerce.number().int().min(1).max(100).default(50),
23
+ offset: z.coerce.number().int().nonnegative().max(1000000).default(0),
24
+ })
25
+ .strict()
26
+ .parse(req.query);
27
+ return core.request(`/reports?${new URLSearchParams({ limit: String(query.limit), offset: String(query.offset) })}`);
28
+ });
29
+ app.get("/api/v1/reports/:id", async (req) => core.request(`/reports/${params.parse(req.params).id}`));
30
+ app.post("/api/v1/reports", { bodyLimit: 8500000 }, async (req, reply) => reply
31
+ .code(201)
32
+ .send(await core.request("/reports", message
33
+ .extend({
34
+ kind: z.enum(["bug", "wish"]),
35
+ title: z.string().trim().min(1).max(160),
36
+ })
37
+ .parse(req.body))));
38
+ app.post("/api/v1/reports/:id/messages", { bodyLimit: 8500000 }, async (req) => core.request(`/reports/${params.parse(req.params).id}/messages`, message.parse(req.body)));
39
+ }
40
+ //# sourceMappingURL=reports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/server/reports.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import { registerUpdates } from "./updates.js";
2
+ import { registerGeneratedMedia } from './generated-media.js';
3
+ import { registerReports } from "./reports.js";
1
4
  import { INTERFACE_MODES } from '../shared/aspects.js';
2
5
  import { registerPush } from './push.js';
3
6
  import { searchAssets, importAsset, assetDetails } from './assets.js';
@@ -34,7 +37,10 @@ function body(schema, value) {
34
37
  export async function registerRoutes(app, hub, workflowOptions = {}) {
35
38
  const core = new CoreClient(hub.dataDir);
36
39
  registerCoreRoutes(app, core);
40
+ registerReports(app, core);
41
+ registerUpdates(app);
37
42
  const coreAdapters = { codex: new CoreAdapter(core, 'codex'), claude: new CoreAdapter(core, 'claude'), kimi: new CoreAdapter(core, 'kimi') };
43
+ registerGeneratedMedia(app, core);
38
44
  registerDirectoryPicker(app, workflowOptions.directoryPicker);
39
45
  registerPush(app, hub.store, hub.events, workflowOptions.pushSender);
40
46
  let mcp;
@@ -128,7 +134,7 @@ export async function registerRoutes(app, hub, workflowOptions = {}) {
128
134
  };
129
135
  app.post('/api/v1/projects', async (request, reply) => reply.code(201).send(await createProject(request.body)));
130
136
  const chatGames = new ChatGames(hub, workflow, createProject);
131
- registerChatRoutes(app, hub, core, chatGames, new ChatComputer(hub));
137
+ registerChatRoutes(app, hub, core, chatGames, new ChatComputer(hub, core));
132
138
  app.addHook('preClose', () => chatGames.close());
133
139
  app.get('/api/v1/projects/:id', async (request) => workflow.snapshot(request.params.id));
134
140
  app.patch('/api/v1/projects/:id', async (request) => {