nextclaw 0.45.5 → 0.47.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 (159) hide show
  1. package/dist/cli/app/index.js +2 -2
  2. package/dist/cli/launcher/index.js +10 -4
  3. package/dist/cli/launcher/index.js.map +1 -1
  4. package/dist/distribution-BAU3XUQJ.js +2 -0
  5. package/dist/{nextclaw-distribution.utils-C6_UWes0.js → distribution-CND3AWXk.js} +1 -1
  6. package/dist/distribution-CND3AWXk.js.map +1 -0
  7. package/dist/{nextclaw-cli-app-Bwa2L2Jv.js → nextclaw-cli-app-wU9aUEKj.js} +767 -74
  8. package/dist/nextclaw-cli-app-wU9aUEKj.js.map +1 -0
  9. package/package.json +12 -12
  10. package/resources/USAGE.md +118 -113
  11. package/resources/apps/nextclaw-github-issue-watcher/README.md +43 -0
  12. package/resources/apps/nextclaw-github-issue-watcher/guest/Cargo.lock +455 -0
  13. package/resources/apps/nextclaw-github-issue-watcher/guest/Cargo.toml +27 -0
  14. package/resources/apps/nextclaw-github-issue-watcher/guest/src/bindings.rs +11177 -0
  15. package/resources/apps/nextclaw-github-issue-watcher/guest/src/lib.rs +307 -0
  16. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/clocks@0.2.6/monotonic-clock.wit +50 -0
  17. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/clocks@0.2.6/timezone.wit +55 -0
  18. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/clocks@0.2.6/wall-clock.wit +46 -0
  19. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/clocks@0.2.6/world.wit +11 -0
  20. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/config@0.2.0-draft-2024-09-27/package.wit +1 -0
  21. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/config@0.2.0-draft-2024-09-27/store.wit +9 -0
  22. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/http@0.2.6/handler.wit +49 -0
  23. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/http@0.2.6/package.wit +1 -0
  24. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/http@0.2.6/types.wit +688 -0
  25. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/io@0.2.6/error.wit +34 -0
  26. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/io@0.2.6/poll.wit +47 -0
  27. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/io@0.2.6/streams.wit +290 -0
  28. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/io@0.2.6/world.wit +10 -0
  29. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/deps/keyvalue@0.2.0-draft2/store.wit +124 -0
  30. package/resources/apps/nextclaw-github-issue-watcher/guest/wit/portable-service.wit +56 -0
  31. package/resources/apps/nextclaw-github-issue-watcher/manifest.json +34 -0
  32. package/resources/apps/nextclaw-github-issue-watcher/marketplace.json +18 -0
  33. package/resources/apps/nextclaw-github-issue-watcher/panels/nextclaw-github-issue-watcher-panel.panel/assets/app.js +148 -0
  34. package/resources/apps/nextclaw-github-issue-watcher/panels/nextclaw-github-issue-watcher-panel.panel/index.html +190 -0
  35. package/resources/apps/nextclaw-github-issue-watcher/panels/nextclaw-github-issue-watcher-panel.panel/panel-app.json +11 -0
  36. package/resources/apps/nextclaw-github-issue-watcher/service-components/nextclaw-github-issue-watcher-service/service-app.json +36 -0
  37. package/resources/apps/nextclaw-github-issue-watcher/service-components/nextclaw-github-issue-watcher-service/service.wasm +0 -0
  38. package/resources/apps/nextclaw-github-issue-watcher/tests/public-github-runner-smoke.tools.mjs +150 -0
  39. package/resources/apps/nextclaw-github-issue-watcher/tests/service-smoke.json +12 -0
  40. package/resources/apps/nextclaw-portable-runtime-lab/README.md +5 -3
  41. package/resources/apps/nextclaw-portable-runtime-lab/manifest.json +14 -2
  42. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-contacts.panel/assets/app.js +21 -0
  43. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-contacts.panel/index.html +1 -0
  44. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-focus.panel/assets/app.js +21 -0
  45. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-focus.panel/index.html +1 -0
  46. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-notes.panel/assets/app.js +21 -0
  47. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-notes.panel/index.html +1 -0
  48. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-panel.panel/assets/app.js +201 -0
  49. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-panel.panel/assets/style.css +42 -0
  50. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-panel.panel/index.html +40 -19
  51. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-panel.panel/panel-app.json +2 -2
  52. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-todos.panel/assets/app.js +21 -0
  53. package/resources/apps/nextclaw-portable-runtime-lab/panels/nextclaw-portable-runtime-lab-todos.panel/index.html +1 -0
  54. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-capabilities/service-app.json +110 -3
  55. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-capabilities/service.wasm +0 -0
  56. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-composition/service-app.json +12 -3
  57. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-composition/service.wasm +0 -0
  58. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-provider/service-app.json +11 -0
  59. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-provider/service.wasm +0 -0
  60. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-resident/service.wasm +0 -0
  61. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-sqlite/service-app.json +37 -0
  62. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-sqlite/service.wasm +0 -0
  63. package/resources/apps/nextclaw-portable-runtime-lab/service-components/nextclaw-portable-runtime-lab-state/service.wasm +0 -0
  64. package/ui-dist/assets/{api-DU3C4HfX.js → api-n96IfCKb.js} +3 -3
  65. package/ui-dist/assets/api-n96IfCKb.js.gz +0 -0
  66. package/ui-dist/assets/{appearance-settings-page-CoB3e64T.js → appearance-settings-page-C_AqxSF_.js} +1 -1
  67. package/ui-dist/assets/appearance-settings-page-C_AqxSF_.js.gz +0 -0
  68. package/ui-dist/assets/{book-open-DMnwJfVM.js → book-open-DYRapW_h.js} +1 -1
  69. package/ui-dist/assets/{channels-list-page-BhIoYsyo.js → channels-list-page-uR-M4Ls8.js} +1 -1
  70. package/ui-dist/assets/channels-list-page-uR-M4Ls8.js.gz +0 -0
  71. package/ui-dist/assets/{config-split-page-DON62DcK.js → config-split-page-DJDp86Ne.js} +1 -1
  72. package/ui-dist/assets/config-split-page-DJDp86Ne.js.gz +0 -0
  73. package/ui-dist/assets/{confirm-dialog-B539oJpr.js → confirm-dialog-CHVBMpla.js} +1 -1
  74. package/ui-dist/assets/confirm-dialog-CHVBMpla.js.gz +0 -0
  75. package/ui-dist/assets/{createLucideIcon-CLfqNlvk.js → createLucideIcon-CgM0rnsa.js} +1 -1
  76. package/ui-dist/assets/{desktop-capabilities-page-BgGZ1I8q.js → desktop-capabilities-page-phMuNq1B.js} +1 -1
  77. package/ui-dist/assets/desktop-capabilities-page-phMuNq1B.js.gz +0 -0
  78. package/ui-dist/assets/{desktop-update-config-TrA-h5OG.js → desktop-update-config-C77hkbor.js} +1 -1
  79. package/ui-dist/assets/desktop-update-config-C77hkbor.js.gz +0 -0
  80. package/ui-dist/assets/{dist-GWWehc4w.js → dist-BjYvUhPL.js} +1 -1
  81. package/ui-dist/assets/dist-BjYvUhPL.js.gz +0 -0
  82. package/ui-dist/assets/{dist-WPei0-v8.js → dist-N9zc5bkM.js} +1 -1
  83. package/ui-dist/assets/dist-N9zc5bkM.js.gz +0 -0
  84. package/ui-dist/assets/{doc-browser-CKpps-rb.js → doc-browser-DwRLokCI.js} +1 -1
  85. package/ui-dist/assets/doc-browser-DwRLokCI.js.gz +0 -0
  86. package/ui-dist/assets/doc-browser-JlXVLNRe.js +1 -0
  87. package/ui-dist/assets/{doc-browser-context-Vx418ptC.js → doc-browser-context-BDuypObS.js} +1 -1
  88. package/ui-dist/assets/doc-browser-context-BDuypObS.js.gz +0 -0
  89. package/ui-dist/assets/{extensions-DQ3IQpiE.js → extensions-CQKXTqTI.js} +1 -1
  90. package/ui-dist/assets/extensions-CQKXTqTI.js.gz +0 -0
  91. package/ui-dist/assets/{form-actions-DJlfyLEH.js → form-actions-CzGmrPAv.js} +1 -1
  92. package/ui-dist/assets/{index-CsL49uK2.js → index-CLw9DuCJ.js} +5 -5
  93. package/ui-dist/assets/index-CLw9DuCJ.js.gz +0 -0
  94. package/ui-dist/assets/loader-circle-D9etMT9f.js +1 -0
  95. package/ui-dist/assets/mcp-marketplace-page-CbWOamyW.js +1 -0
  96. package/ui-dist/assets/{mcp-marketplace-page-CEr3FgVp.js → mcp-marketplace-page-s9PTnSDT.js} +1 -1
  97. package/ui-dist/assets/mcp-marketplace-page-s9PTnSDT.js.gz +0 -0
  98. package/ui-dist/assets/{model-config-page-BIpU9Bq5.js → model-config-page-CxnCUWRW.js} +1 -1
  99. package/ui-dist/assets/model-config-page-CxnCUWRW.js.gz +0 -0
  100. package/ui-dist/assets/{navigation-link-DI0mOIVl.js → navigation-link-Ci4Z7Phi.js} +1 -1
  101. package/ui-dist/assets/navigation-link-Ci4Z7Phi.js.gz +0 -0
  102. package/ui-dist/assets/plus-DKGD04AO.js +1 -0
  103. package/ui-dist/assets/{privacy-settings-page-D9qnS5ZE.js → privacy-settings-page-D8HZHHjL.js} +1 -1
  104. package/ui-dist/assets/privacy-settings-page-D8HZHHjL.js.gz +0 -0
  105. package/ui-dist/assets/{providers-config-page-j03VhVjT.js → providers-config-page-C0GIoGxm.js} +1 -1
  106. package/ui-dist/assets/providers-config-page-C0GIoGxm.js.gz +0 -0
  107. package/ui-dist/assets/{react-BwGMzqXA.js → react-CVFx225w.js} +1 -1
  108. package/ui-dist/assets/{react-BwGMzqXA.js.gz → react-CVFx225w.js.gz} +0 -0
  109. package/ui-dist/assets/{refresh-cw-DmR6-f9A.js → refresh-cw-C-3_thgr.js} +1 -1
  110. package/ui-dist/assets/remote-DvTCSAxQ.js +1 -0
  111. package/ui-dist/assets/{rotate-cw-BUWqEgob.js → rotate-cw-DSFTq_yu.js} +1 -1
  112. package/ui-dist/assets/{runtime-config-page-DcyDsmw-.js → runtime-config-page-VNJZui5f.js} +1 -1
  113. package/ui-dist/assets/runtime-config-page-VNJZui5f.js.gz +0 -0
  114. package/ui-dist/assets/{save-DdohrEEJ.js → save-CpPr78_S.js} +1 -1
  115. package/ui-dist/assets/{search-config-page-DBUVi0PY.js → search-config-page-D3_qNXbB.js} +1 -1
  116. package/ui-dist/assets/search-config-page-D3_qNXbB.js.gz +0 -0
  117. package/ui-dist/assets/{search-BVeIVVGT.js → search-msqk2-rd.js} +1 -1
  118. package/ui-dist/assets/{secrets-config-page-Bu58SQa1.js → secrets-config-page-Be4P1E8o.js} +1 -1
  119. package/ui-dist/assets/secrets-config-page-Be4P1E8o.js.gz +0 -0
  120. package/ui-dist/assets/security-config-BtcpKIhQ.js +1 -0
  121. package/ui-dist/assets/{select-DvuHOwPH.js → select-DPKCWajZ.js} +1 -1
  122. package/ui-dist/assets/select-DPKCWajZ.js.gz +0 -0
  123. package/ui-dist/assets/skeleton-BsR5rwB7.js +1 -0
  124. package/ui-dist/assets/{tag-chip-BI9NffVf.js → tag-chip-Dc_NcCEe.js} +1 -1
  125. package/ui-dist/assets/x-Dp5GAFmP.js +1 -0
  126. package/ui-dist/index.html +20 -20
  127. package/ui-dist/index.html.gz +0 -0
  128. package/dist/nextclaw-cli-app-Bwa2L2Jv.js.map +0 -1
  129. package/dist/nextclaw-distribution.utils-C6_UWes0.js.map +0 -1
  130. package/ui-dist/assets/api-DU3C4HfX.js.gz +0 -0
  131. package/ui-dist/assets/appearance-settings-page-CoB3e64T.js.gz +0 -0
  132. package/ui-dist/assets/channels-list-page-BhIoYsyo.js.gz +0 -0
  133. package/ui-dist/assets/config-split-page-DON62DcK.js.gz +0 -0
  134. package/ui-dist/assets/confirm-dialog-B539oJpr.js.gz +0 -0
  135. package/ui-dist/assets/desktop-capabilities-page-BgGZ1I8q.js.gz +0 -0
  136. package/ui-dist/assets/desktop-update-config-TrA-h5OG.js.gz +0 -0
  137. package/ui-dist/assets/dist-GWWehc4w.js.gz +0 -0
  138. package/ui-dist/assets/dist-WPei0-v8.js.gz +0 -0
  139. package/ui-dist/assets/doc-browser-CKpps-rb.js.gz +0 -0
  140. package/ui-dist/assets/doc-browser-context-Vx418ptC.js.gz +0 -0
  141. package/ui-dist/assets/doc-browser-y3e2_MXe.js +0 -1
  142. package/ui-dist/assets/extensions-DQ3IQpiE.js.gz +0 -0
  143. package/ui-dist/assets/index-CsL49uK2.js.gz +0 -0
  144. package/ui-dist/assets/loader-circle-DXH2fVRq.js +0 -1
  145. package/ui-dist/assets/mcp-marketplace-page-CEr3FgVp.js.gz +0 -0
  146. package/ui-dist/assets/mcp-marketplace-page-Dj0xiFAV.js +0 -1
  147. package/ui-dist/assets/model-config-page-BIpU9Bq5.js.gz +0 -0
  148. package/ui-dist/assets/navigation-link-DI0mOIVl.js.gz +0 -0
  149. package/ui-dist/assets/plus-C6Kx4b6T.js +0 -1
  150. package/ui-dist/assets/privacy-settings-page-D9qnS5ZE.js.gz +0 -0
  151. package/ui-dist/assets/providers-config-page-j03VhVjT.js.gz +0 -0
  152. package/ui-dist/assets/remote-BPMM79JV.js +0 -1
  153. package/ui-dist/assets/runtime-config-page-DcyDsmw-.js.gz +0 -0
  154. package/ui-dist/assets/search-config-page-DBUVi0PY.js.gz +0 -0
  155. package/ui-dist/assets/secrets-config-page-Bu58SQa1.js.gz +0 -0
  156. package/ui-dist/assets/security-config-CNdun2s-.js +0 -1
  157. package/ui-dist/assets/select-DvuHOwPH.js.gz +0 -0
  158. package/ui-dist/assets/skeleton-u2lc3JJg.js +0 -1
  159. package/ui-dist/assets/x-27QFIvUt.js +0 -1
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
- import { n as repairPackagedPortableRunnerPermissions, t as createNextclawDistribution } from "../../nextclaw-distribution.utils-C6_UWes0.js";
2
+ import { n as repairPackagedPortableRunnerPermissions, t as createNextclawDistribution } from "../../distribution-CND3AWXk.js";
3
3
  import { NextclawDistributionService } from "@nextclaw/service";
4
4
  //#region src/cli/app/index.ts
5
5
  const distribution = createNextclawDistribution(import.meta.url);
6
6
  repairPackagedPortableRunnerPermissions(distribution);
7
7
  NextclawDistributionService.configureRuntime(distribution);
8
- const { nextclawCliProgram } = await import("../../nextclaw-cli-app-Bwa2L2Jv.js");
8
+ const { nextclawCliProgram } = await import("../../nextclaw-cli-app-wU9aUEKj.js");
9
9
  await nextclawCliProgram.parseAsync(process.argv);
10
10
  //#endregion
11
11
  export {};
@@ -1,9 +1,15 @@
1
1
  #!/usr/bin/env node
2
- import { t as createNextclawDistribution } from "../../nextclaw-distribution.utils-C6_UWes0.js";
3
- import { NextclawDistributionService, runNextclawNpmRuntimeLauncher } from "@nextclaw/service";
4
2
  //#region src/cli/launcher/index.ts
5
- NextclawDistributionService.configure(createNextclawDistribution(import.meta.url));
6
- await runNextclawNpmRuntimeLauncher(process.argv);
3
+ const [nodeMajor = 0, nodeMinor = 0] = process.versions.node.split(".").slice(0, 2).map((part) => Number.parseInt(part, 10));
4
+ if (!(nodeMajor >= 24 || nodeMajor === 22 && nodeMinor >= 12 || nodeMajor === 20 && nodeMinor >= 19)) {
5
+ process.stderr.write(`NextClaw requires Node.js 20.19+, 22.12+, or 24+. Current version: ${process.versions.node}.\nInstall a supported Node.js version and run nextclaw again. No Python, compiler, or system SQLite is required.
6
+ `);
7
+ process.exitCode = 1;
8
+ } else {
9
+ const [{ NextclawDistributionService, runNextclawNpmRuntimeLauncher }, { createNextclawDistribution }] = await Promise.all([import("@nextclaw/service"), import("../../distribution-BAU3XUQJ.js")]);
10
+ NextclawDistributionService.configure(createNextclawDistribution(import.meta.url));
11
+ await runNextclawNpmRuntimeLauncher(process.argv);
12
+ }
7
13
  //#endregion
8
14
  export {};
9
15
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/cli/launcher/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { NextclawDistributionService, runNextclawNpmRuntimeLauncher } from \"@nextclaw/service\";\nimport { createNextclawDistribution } from \"@nextclaw-cli/cli/shared/lib/distribution/index.js\";\n\nNextclawDistributionService.configure(createNextclawDistribution(import.meta.url));\nawait runNextclawNpmRuntimeLauncher(process.argv);\n"],"mappings":";;;;AAIA,4BAA4B,UAAU,2BAA2B,OAAO,KAAK,IAAI,CAAC;AAClF,MAAM,8BAA8B,QAAQ,KAAK"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/cli/launcher/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nconst [nodeMajor = 0, nodeMinor = 0] = process.versions.node\n .split(\".\")\n .slice(0, 2)\n .map((part) => Number.parseInt(part, 10));\nconst nodeSupported = nodeMajor >= 24\n || (nodeMajor === 22 && nodeMinor >= 12)\n || (nodeMajor === 20 && nodeMinor >= 19);\n\nif (!nodeSupported) {\n process.stderr.write(\n `NextClaw requires Node.js 20.19+, 22.12+, or 24+. Current version: ${process.versions.node}.\\n` +\n \"Install a supported Node.js version and run nextclaw again. No Python, compiler, or system SQLite is required.\\n\",\n );\n process.exitCode = 1;\n} else {\n const [{ NextclawDistributionService, runNextclawNpmRuntimeLauncher }, { createNextclawDistribution }] =\n await Promise.all([\n import(\"@nextclaw/service\"),\n import(\"@nextclaw-cli/cli/shared/lib/distribution/index.js\"),\n ]);\n NextclawDistributionService.configure(createNextclawDistribution(import.meta.url));\n await runNextclawNpmRuntimeLauncher(process.argv);\n}\n"],"mappings":";;AAEA,MAAM,CAAC,YAAY,GAAG,YAAY,KAAK,QAAQ,SAAS,KACrD,MAAM,IAAI,CACV,MAAM,GAAG,EAAE,CACX,KAAK,SAAS,OAAO,SAAS,MAAM,GAAG,CAAC;AAK3C,IAAI,EAJkB,aAAa,MAC7B,cAAc,MAAM,aAAa,MACjC,cAAc,MAAM,aAAa,KAEnB;AAClB,SAAQ,OAAO,MACb,sEAAsE,QAAQ,SAAS,KAAK;EAE7F;AACD,SAAQ,WAAW;OACd;CACL,MAAM,CAAC,EAAE,6BAA6B,iCAAiC,EAAE,gCACvE,MAAM,QAAQ,IAAI,CAChB,OAAO,sBACP,OAAO,kCACR,CAAC;AACJ,6BAA4B,UAAU,2BAA2B,OAAO,KAAK,IAAI,CAAC;AAClF,OAAM,8BAA8B,QAAQ,KAAK"}
@@ -0,0 +1,2 @@
1
+ import { n as repairPackagedPortableRunnerPermissions, t as createNextclawDistribution } from "./distribution-CND3AWXk.js";
2
+ export { createNextclawDistribution, repairPackagedPortableRunnerPermissions };
@@ -41,4 +41,4 @@ function repairPackagedPortableRunnerPermissions(distribution) {
41
41
  //#endregion
42
42
  export { repairPackagedPortableRunnerPermissions as n, createNextclawDistribution as t };
43
43
 
44
- //# sourceMappingURL=nextclaw-distribution.utils-C6_UWes0.js.map
44
+ //# sourceMappingURL=distribution-CND3AWXk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distribution-CND3AWXk.js","names":[],"sources":["../src/cli/shared/lib/distribution/nextclaw-distribution.utils.ts"],"sourcesContent":["import { accessSync, chmodSync, constants, existsSync, readFileSync, statSync } from \"node:fs\";\nimport { basename, dirname, resolve } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport type { NextclawDistribution } from \"@nextclaw/service\";\n\nexport function createNextclawDistribution(importMetaUrl: string): NextclawDistribution {\n const entrypoint = fileURLToPath(importMetaUrl);\n const packageRoot = resolve(dirname(entrypoint), \"../../..\");\n const { version } = JSON.parse(readFileSync(resolve(packageRoot, \"package.json\"), \"utf-8\")) as { version?: string };\n const portableRunnerExecutable = process.platform === \"win32\"\n ? \"nextclaw-wasmtime-runner.exe\"\n : \"nextclaw-wasmtime-runner\";\n return {\n version: typeof version === \"string\" ? version : \"0.0.0\",\n productEnvironment: \"development\",\n releaseChannel: \"development\",\n appEntrypoint: resolve(packageRoot, \"dist/cli/app/index.js\"),\n launcherVersion: typeof version === \"string\" ? version : \"0.0.0\",\n launcherEntrypoint: resolve(dirname(entrypoint), \"../launcher\", basename(entrypoint)),\n launchedByLauncher: false,\n templatesDir: resolve(packageRoot, \"templates\"),\n uiDistDir: resolve(packageRoot, \"ui-dist\"),\n runtimeUpdatePublicKeyPath: resolve(packageRoot, \"resources/update-bundle-public.pem\"),\n builtInAppsDirectory: resolve(packageRoot, \"resources/apps\"),\n portableServiceRunnerPath: resolve(\n packageRoot,\n \"resources/native\",\n `${process.platform}-${process.arch}`,\n portableRunnerExecutable,\n )\n };\n}\n\nexport function repairPackagedPortableRunnerPermissions(distribution: NextclawDistribution): boolean {\n if (process.platform === \"win32\") return false;\n const runnerPath = distribution.portableServiceRunnerPath?.trim();\n if (!runnerPath || !existsSync(runnerPath)) return false;\n const runnerStat = statSync(runnerPath);\n if (!runnerStat.isFile()) return false;\n try {\n accessSync(runnerPath, constants.X_OK);\n return false;\n } catch {\n chmodSync(runnerPath, (runnerStat.mode & 0o777) | 0o111);\n accessSync(runnerPath, constants.X_OK);\n process.stderr.write(`[nextclaw] restored executable permission for bundled Portable Service App runner: ${runnerPath}\\n`);\n return true;\n }\n}\n"],"mappings":";;;;AAKA,SAAgB,2BAA2B,eAA6C;CACtF,MAAM,aAAa,cAAc,cAAc;CAC/C,MAAM,cAAc,QAAQ,QAAQ,WAAW,EAAE,WAAW;CAC5D,MAAM,EAAE,YAAY,KAAK,MAAM,aAAa,QAAQ,aAAa,eAAe,EAAE,QAAQ,CAAC;CAC3F,MAAM,2BAA2B,QAAQ,aAAa,UAClD,iCACA;AACJ,QAAO;EACL,SAAS,OAAO,YAAY,WAAW,UAAU;EACjD,oBAAoB;EACpB,gBAAgB;EAChB,eAAe,QAAQ,aAAa,wBAAwB;EAC5D,iBAAiB,OAAO,YAAY,WAAW,UAAU;EACzD,oBAAoB,QAAQ,QAAQ,WAAW,EAAE,eAAe,SAAS,WAAW,CAAC;EACrF,oBAAoB;EACpB,cAAc,QAAQ,aAAa,YAAY;EAC/C,WAAW,QAAQ,aAAa,UAAU;EAC1C,4BAA4B,QAAQ,aAAa,qCAAqC;EACtF,sBAAsB,QAAQ,aAAa,iBAAiB;EAC5D,2BAA2B,QACzB,aACA,oBACA,GAAG,QAAQ,SAAS,GAAG,QAAQ,QAC/B,yBACD;EACF;;AAGH,SAAgB,wCAAwC,cAA6C;AACnG,KAAI,QAAQ,aAAa,QAAS,QAAO;CACzC,MAAM,aAAa,aAAa,2BAA2B,MAAM;AACjE,KAAI,CAAC,cAAc,CAAC,WAAW,WAAW,CAAE,QAAO;CACnD,MAAM,aAAa,SAAS,WAAW;AACvC,KAAI,CAAC,WAAW,QAAQ,CAAE,QAAO;AACjC,KAAI;AACF,aAAW,YAAY,UAAU,KAAK;AACtC,SAAO;SACD;AACN,YAAU,YAAa,WAAW,OAAO,MAAS,GAAM;AACxD,aAAW,YAAY,UAAU,KAAK;AACtC,UAAQ,OAAO,MAAM,sFAAsF,WAAW,IAAI;AAC1H,SAAO"}