@inkeep/open-knowledge 0.51.0-beta.7 → 0.51.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 (511) hide show
  1. package/dist/THIRD_PARTY_NOTICES.md +2 -2
  2. package/dist/{acp-harness-probe-BWRTcfl5.mjs → acp-harness-probe-CC4ubVJ1.mjs} +2 -2
  3. package/dist/cli.mjs +61 -61
  4. package/dist/constants-Cot22XLz.mjs +2 -0
  5. package/dist/index.mjs +1 -1
  6. package/dist/init-Bw1sAHkg.mjs +638 -0
  7. package/dist/init-koQ7Wt5A.mjs +1 -0
  8. package/dist/{launch-json-removal-BpqUErtZ.mjs → launch-json-removal-Dm80Psms.mjs} +2 -2
  9. package/dist/{loader-CzrbSVUr.mjs → loader-93NFlOsA.mjs} +2 -2
  10. package/dist/loader-BxtW0j5I.mjs +1 -0
  11. package/dist/{open-browser-CQP79XeJ.mjs → open-browser-De70N-tU.mjs} +2 -2
  12. package/dist/preview-B4x8Gv8H.mjs +1 -0
  13. package/dist/{preview-CQ_44H1v.mjs → preview-BY3uu_oE.mjs} +2 -2
  14. package/dist/public/assets/{ActivityModeContent-NOKRoNvx.js → ActivityModeContent-Cjkui6nd.js} +1 -1
  15. package/dist/public/assets/AgentDiffPane-u-5ilTRE.js +2 -0
  16. package/dist/public/assets/{AgentThreadClientBinder-BFNjsn1A.js → AgentThreadClientBinder-BrrOZdn1.js} +1 -1
  17. package/dist/public/assets/AppMenubar-DzKyqu4x.js +1 -0
  18. package/dist/public/assets/BugReportHistory-mvsL4k28.js +1 -0
  19. package/dist/public/assets/{BugReportHistoryDialog-C2b4xA3d.js → BugReportHistoryDialog-DpBx3OAi.js} +1 -1
  20. package/dist/public/assets/ChangedOutsideBadge-BcoH6-nw.js +1 -0
  21. package/dist/public/assets/{CodeMirrorPropInput-BPYAZ8kt.js → CodeMirrorPropInput-D50z9yLP.js} +3 -3
  22. package/dist/public/assets/{ConfigSharingInfoTooltip-4T5uhyyt.js → ConfigSharingInfoTooltip-BPA8HEYl.js} +1 -1
  23. package/dist/public/assets/{ConsentDialogBody-DfhGpXdb.js → ConsentDialogBody-KXeO_ZFL.js} +1 -1
  24. package/dist/public/assets/{CopyButton-ByR_1gcU.js → CopyButton-DhHoiQJR.js} +1 -1
  25. package/dist/public/assets/{DiffView-BkhkquRc.js → DiffView-BjOsi4GM.js} +1 -1
  26. package/dist/public/assets/DocumentContext-CasGadtG.js +38 -0
  27. package/dist/public/assets/EditorModeToggle-6-QjT8Ga.js +1 -0
  28. package/dist/public/assets/EnableSyncConfirmDialog-CYGOKMM4.js +1 -0
  29. package/dist/public/assets/FeedbackForm-jU5fMAff.js +1 -0
  30. package/dist/public/assets/{GraphPanel-D3eqDrvs.js → GraphPanel-H0Dz8I1Y.js} +2 -2
  31. package/dist/public/assets/ImportSkillDialog-mMdMQEcu.js +1 -0
  32. package/dist/public/assets/{LintConfigEditor-13jZ4Dsg.js → LintConfigEditor-DGxetApx.js} +1 -1
  33. package/dist/public/assets/ManagedArtifactProperties-5u803JAP.js +2 -0
  34. package/dist/public/assets/ManagedArtifactProperties-CutBH5nQ.js +1 -0
  35. package/dist/public/assets/McpConsentDialogBody-BB44PQE6.js +1 -0
  36. package/dist/public/assets/{Mermaid-BHfANkja.js → Mermaid-D-pcyGRV.js} +2 -2
  37. package/dist/public/assets/{MermaidDocEditor-BwM26FyA.js → MermaidDocEditor-BDExs-LW.js} +1 -1
  38. package/dist/public/assets/{RegisteredAgentIcon-gjOJZp_B.js → RegisteredAgentIcon-BgDInKA9.js} +1 -1
  39. package/dist/public/assets/ReportBugDialogBody-Cedm28lz.js +3 -0
  40. package/dist/public/assets/{SchemaConfigEditor-BMX58iGg.js → SchemaConfigEditor-Dbn9RObT.js} +1 -1
  41. package/dist/public/assets/SessionsHost-CPuk32sz.js +2 -0
  42. package/dist/public/assets/SettingsDialogBody-Cy0NXh6T.js +12 -0
  43. package/dist/public/assets/ShareBranchSwitchDialog-Co8TuLoa.js +1 -0
  44. package/dist/public/assets/ShareReceiveDialog-DHLrIRs0.js +1 -0
  45. package/dist/public/assets/{ShareReceiveMissDialog-CjusDUpU.js → ShareReceiveMissDialog-BHMkU4HH.js} +1 -1
  46. package/dist/public/assets/{SkillEditBanner-DAXtbz8B.js → SkillEditBanner-UvWXpguP.js} +1 -1
  47. package/dist/public/assets/{SkillOriginInline-CSKIzMpb.js → SkillOriginInline-D8kmShJA.js} +1 -1
  48. package/dist/public/assets/{SkillToolbarControls-Co9gbY4r.js → SkillToolbarControls-B9upYwy8.js} +1 -1
  49. package/dist/public/assets/SlidesToolbarControls-B_zJy_NS.js +1 -0
  50. package/dist/public/assets/SourceEditor-BYbqK1qo.js +1 -0
  51. package/dist/public/assets/{TerminalPanel-CCfioVTh.js → TerminalPanel-D5dGBcUr.js} +1 -1
  52. package/dist/public/assets/{TerminalWindowApp-CXQsiNzb.js → TerminalWindowApp-DxDcT0Nb.js} +1 -1
  53. package/dist/public/assets/TextDocEditor-GLvDavbc.js +1 -0
  54. package/dist/public/assets/ThreadView-B7F0lkW2.js +10 -0
  55. package/dist/public/assets/TimelineDiffPane-CjnN3faR.js +2 -0
  56. package/dist/public/assets/{abnfDiagram-VRR7QNED-By0_za11.js → abnfDiagram-VRR7QNED-CQ5y3jGZ.js} +1 -1
  57. package/dist/public/assets/{agent-diff-store-B8KERfT2.js → agent-diff-store-ghKYlKOr.js} +1 -1
  58. package/dist/public/assets/{arc-5_RUQzQ7.js → arc-DllfmQO6.js} +1 -1
  59. package/dist/public/assets/architecture-TIHT7OUA-CIR5HZsg.js +1 -0
  60. package/dist/public/assets/{architectureDiagram-ZJ3FMSHR-PHjEFax1.js → architectureDiagram-ZJ3FMSHR-DEDVgPeV.js} +1 -1
  61. package/dist/public/assets/arrow-up-right-D_WN0VGP.js +1 -0
  62. package/dist/public/assets/auth-state-cache-Z9zb3Xiw.js +11 -0
  63. package/dist/public/assets/{badge-DFX4S3a5.js → badge-zHd29IKW.js} +1 -1
  64. package/dist/public/assets/{blockDiagram-677ZJIJ3-BUuJiGZl.js → blockDiagram-677ZJIJ3-Biovo5Vk.js} +1 -1
  65. package/dist/public/assets/{braces-CJEjDc1f.js → braces-B2tgJ4cu.js} +1 -1
  66. package/dist/public/assets/{button-CA0dewJJ.js → button-RQ5o7P7w.js} +1 -1
  67. package/dist/public/assets/{c4Diagram-LMCZKHZV-D4UjQlwU.js → c4Diagram-LMCZKHZV-BUMbkcfU.js} +1 -1
  68. package/dist/public/assets/{calendar-BTcSoUWo.js → calendar-q3K0fDI1.js} +1 -1
  69. package/dist/public/assets/{case-sensitive-CE1B0vR4.js → case-sensitive-Cz58rAyi.js} +1 -1
  70. package/dist/public/assets/channel-C6KgPQqg.js +1 -0
  71. package/dist/public/assets/check-xiKupoJh.js +1 -0
  72. package/dist/public/assets/{checkbox-vidgONxv.js → checkbox-DxTkAw0k.js} +1 -1
  73. package/dist/public/assets/{chevron-down-DabHDQTe.js → chevron-down-DmoBYxyq.js} +1 -1
  74. package/dist/public/assets/chevron-left-CiNweXA3.js +1 -0
  75. package/dist/public/assets/chevron-right-DJvandMc.js +1 -0
  76. package/dist/public/assets/{chevron-up-BNZIobnQ.js → chevron-up-eNJS5_XA.js} +1 -1
  77. package/dist/public/assets/chunk-2Q5K7J3B-CgG_zTm9.js +1 -0
  78. package/dist/public/assets/{chunk-32BRIVSS-CqHtBxci.js → chunk-32BRIVSS-CJfLw0io.js} +1 -1
  79. package/dist/public/assets/{chunk-52WLFC77-Ct--wlEg.js → chunk-52WLFC77-CKUXR-Lo.js} +1 -1
  80. package/dist/public/assets/{chunk-5FCAYU7R-D4Qemx4Q.js → chunk-5FCAYU7R-Blhoqerk.js} +1 -1
  81. package/dist/public/assets/{chunk-5HE753X5-AFxpbWC8.js → chunk-5HE753X5-Be3l52OO.js} +1 -1
  82. package/dist/public/assets/{chunk-5JV3BV7I-DQech1b8.js → chunk-5JV3BV7I-COJRGdXn.js} +1 -1
  83. package/dist/public/assets/{chunk-5TONJI2A-DhQn7UEA.js → chunk-5TONJI2A-6Fwn-ZXg.js} +1 -1
  84. package/dist/public/assets/{chunk-5VM5RSS4-Mk-moEej.js → chunk-5VM5RSS4-CBB7ddJZ.js} +1 -1
  85. package/dist/public/assets/{chunk-7BUUIJ7U-NgiLm4do.js → chunk-7BUUIJ7U-BCqa-5nq.js} +1 -1
  86. package/dist/public/assets/{chunk-BIQX33UG-BGOx5d7P.js → chunk-BIQX33UG-DzD4i2B0.js} +1 -1
  87. package/dist/public/assets/{chunk-BO2N2NFS-BD-R2P8f.js → chunk-BO2N2NFS-KCTBsTca.js} +4 -4
  88. package/dist/public/assets/{chunk-C7G6YPKG-ETQuvHy_.js → chunk-C7G6YPKG-DxT1wdEz.js} +1 -1
  89. package/dist/public/assets/{chunk-CQNSW5MT-BtseeAyV.js → chunk-CQNSW5MT-DFeH5OJq.js} +1 -1
  90. package/dist/public/assets/{chunk-CYSBUYHQ-BMn0BrMO.js → chunk-CYSBUYHQ-BnJMwkKI.js} +1 -1
  91. package/dist/public/assets/{chunk-EMLP6XTP-CMh4Lfqa.js → chunk-EMLP6XTP-MSvlJ735.js} +1 -1
  92. package/dist/public/assets/{chunk-EX3LRPZG-9JJX2N4p.js → chunk-EX3LRPZG-DUzsTxw6.js} +1 -1
  93. package/dist/public/assets/{chunk-FWX5IMBZ-BG7sIfOm.js → chunk-FWX5IMBZ-D3EMolHi.js} +2 -2
  94. package/dist/public/assets/{chunk-HOUHSVGY-DZGPL4gA.js → chunk-HOUHSVGY-CA499J_e.js} +1 -1
  95. package/dist/public/assets/{chunk-ICXQ74PX-CKtDW9ht.js → chunk-ICXQ74PX-CNLojPkU.js} +1 -1
  96. package/dist/public/assets/{chunk-JG7HCLWE-Bx0614Ks.js → chunk-JG7HCLWE-BjvLoZ4O.js} +1 -1
  97. package/dist/public/assets/{chunk-JWPE2WC7-CTPvDarN.js → chunk-JWPE2WC7-DKo0ygBr.js} +1 -1
  98. package/dist/public/assets/{chunk-MOJQB5TN-BAhZ0kPA.js → chunk-MOJQB5TN-hxtcpfx_.js} +1 -1
  99. package/dist/public/assets/{chunk-MOZMSUNE-Cw75i_mo.js → chunk-MOZMSUNE-DQOK9LgW.js} +1 -1
  100. package/dist/public/assets/{chunk-OGEWGWER-CXRXvI-G.js → chunk-OGEWGWER-DmUP6YIh.js} +1 -1
  101. package/dist/public/assets/{chunk-OSBZ3O6U-3rlBFXeF.js → chunk-OSBZ3O6U-D1WpsIpR.js} +1 -1
  102. package/dist/public/assets/{chunk-PUDLZKDR-m0_LideR.js → chunk-PUDLZKDR-CQKVQESS.js} +1 -1
  103. package/dist/public/assets/{chunk-Q4XR5HBZ-DtfMFxTy.js → chunk-Q4XR5HBZ-CChmYrK9.js} +1 -1
  104. package/dist/public/assets/{chunk-QBLGF6JB-ClgYvCDk.js → chunk-QBLGF6JB-CgndLuEz.js} +1 -1
  105. package/dist/public/assets/{chunk-R7FJI6CG-Byfy5jLm.js → chunk-R7FJI6CG-DCv2sUq2.js} +1 -1
  106. package/dist/public/assets/{chunk-RYQCIY6F-BcYiXXs_.js → chunk-RYQCIY6F-AIaldrY4.js} +1 -1
  107. package/dist/public/assets/{chunk-U6XO7XAA-BgHi1_DT.js → chunk-U6XO7XAA-CxMMdww-.js} +1 -1
  108. package/dist/public/assets/{chunk-V7JOEXUC-87Dg_1li.js → chunk-V7JOEXUC-CXy9SmJk.js} +1 -1
  109. package/dist/public/assets/chunk-VAUOI2AC-ujVxk4Ze.js +1 -0
  110. package/dist/public/assets/{chunk-VR4S4FIN-CgLu4IqR.js → chunk-VR4S4FIN-KG7H_g4c.js} +1 -1
  111. package/dist/public/assets/{chunk-WYO6CB5R-DDQFGPZ4.js → chunk-WYO6CB5R-B368j75q.js} +2 -2
  112. package/dist/public/assets/chunk-XXDRQBXY-B7w13F3i.js +1 -0
  113. package/dist/public/assets/{chunk-YOTPTUD7-Bb6P7QJ5.js → chunk-YOTPTUD7-Cqb1OWoI.js} +1 -1
  114. package/dist/public/assets/{chunk-ZGVPDNZ5-Cps1Smx5.js → chunk-ZGVPDNZ5-BKdDRJat.js} +1 -1
  115. package/dist/public/assets/{chunk-ZIRB5QZD-BUb1k7IW.js → chunk-ZIRB5QZD-CvXXd6Mf.js} +1 -1
  116. package/dist/public/assets/classDiagram-OUVF2IWQ-CrrbWSrl.js +1 -0
  117. package/dist/public/assets/classDiagram-v2-EOCWNBFH-BYbi6pvW.js +1 -0
  118. package/dist/public/assets/client-version-C6LF52yy.js +1 -0
  119. package/dist/public/assets/{cm-theme-NiQt8zc0.js → cm-theme-ChFGbVCe.js} +1 -1
  120. package/dist/public/assets/{code-highlighter-impl-Dk8zJoMV.js → code-highlighter-impl-CHS525hA.js} +1 -1
  121. package/dist/public/assets/{collapsible-COrqeoHr.js → collapsible-OhEmjTXw.js} +1 -1
  122. package/dist/public/assets/comment-chips-S0s83wIP.js +5 -0
  123. package/dist/public/assets/{config-provider-hPtL5Ruf.js → config-provider-BIse3_Yo.js} +3 -3
  124. package/dist/public/assets/{context-menu-D1MgERPo.js → context-menu-CYgsnEgV.js} +1 -1
  125. package/dist/public/assets/{cose-bilkent-JH36ORCC-B5G6WpVe.js → cose-bilkent-JH36ORCC-CwtkHR1Y.js} +1 -1
  126. package/dist/public/assets/cynefin-VYW2F7L2-BdPtv88z.js +1 -0
  127. package/dist/public/assets/{cynefinDiagram-TSTJHNR4-xWzANYbb.js → cynefinDiagram-TSTJHNR4-LsplRO2K.js} +1 -1
  128. package/dist/public/assets/{dagre-DU0bSWB3.js → dagre-C6VKrNvO.js} +1 -1
  129. package/dist/public/assets/{dagre-VKFMJZFB-DRyoGqzk.js → dagre-VKFMJZFB-DhzjgRUZ.js} +1 -1
  130. package/dist/public/assets/{diagram-FQU43EPY-nZKoVz4B.js → diagram-FQU43EPY-a4jh9ybB.js} +1 -1
  131. package/dist/public/assets/{diagram-G47NLZAW-DPNtUg-P.js → diagram-G47NLZAW-Jgkwuc6y.js} +1 -1
  132. package/dist/public/assets/{diagram-NH7WQ7WH-Zm853285.js → diagram-NH7WQ7WH-Cz1HEitz.js} +1 -1
  133. package/dist/public/assets/{diagram-OA4YK3LP-DAhRUKgQ.js → diagram-OA4YK3LP-CIcVtjXP.js} +1 -1
  134. package/dist/public/assets/{diagram-WEI45ONY-D3E8BHEU.js → diagram-WEI45ONY-C8wU887b.js} +1 -1
  135. package/dist/public/assets/dialog-Bxcn1sLm.js +5 -0
  136. package/dist/public/assets/{dist-BSAh-TK7.js → dist-B0Beym3_.js} +1 -1
  137. package/dist/public/assets/{dist-CrYLos7c.js → dist-BOhFaMG0.js} +1 -1
  138. package/dist/public/assets/{dist-B55799jR.js → dist-Bb1r1o6u.js} +1 -1
  139. package/dist/public/assets/{dist-DsLZcVyZ.js → dist-Bi80hc1t.js} +1 -1
  140. package/dist/public/assets/{dist-BUDkMEzD.js → dist-Bx9oFJRu.js} +1 -1
  141. package/dist/public/assets/{dist-gTGB_-tT.js → dist-By2lAhKX.js} +1 -1
  142. package/dist/public/assets/{dist-DpjZjxsY.js → dist-C9uRrl_E.js} +1 -1
  143. package/dist/public/assets/{dist-RxK2lKIj.js → dist-CFyOS6pn.js} +1 -1
  144. package/dist/public/assets/{dist-DoYGOGZp.js → dist-CHVHOG7X2.js} +4 -4
  145. package/dist/public/assets/{dist-DX6BuR0m.js → dist-CR6aO28t.js} +1 -1
  146. package/dist/public/assets/{dist-lGeJn8Qx.js → dist-CXSIgvvA.js} +1 -1
  147. package/dist/public/assets/{dist-DU3mip8Z.js → dist-DL1WTl5d.js} +1 -1
  148. package/dist/public/assets/{dist-Bme5LuHX.js → dist-DMj9iIHH.js} +1 -1
  149. package/dist/public/assets/{dist-DPG-4B8V.js → dist-DRg5A_HQ.js} +1 -1
  150. package/dist/public/assets/{dist-BvwnbioL.js → dist-DY-494HN.js} +1 -1
  151. package/dist/public/assets/{dist-C6lhy_gK.js → dist-D_1xxRDt.js} +1 -1
  152. package/dist/public/assets/{dist-Ds8NLlxa.js → dist-DgRDZMLf.js} +1 -1
  153. package/dist/public/assets/{dist-DmTWt7nC.js → dist-DpaqLIPT.js} +1 -1
  154. package/dist/public/assets/{dist-DwFjOxj-.js → dist-DrCK4JBL.js} +1 -1
  155. package/dist/public/assets/{dist-CADCdgrq.js → dist-DuPjpj5-.js} +1 -1
  156. package/dist/public/assets/{dist-DbcFk_pj.js → dist-EpVTQF77.js} +1 -1
  157. package/dist/public/assets/{dist-6Kl8HTi9.js → dist-G89kioZo.js} +1 -1
  158. package/dist/public/assets/doc-paths-DEUIlKvV.js +1 -0
  159. package/dist/public/assets/documents-events-CNRzblNO.js +1 -0
  160. package/dist/public/assets/{download-C3PYuI1f.js → download-btG_KeFQ.js} +1 -1
  161. package/dist/public/assets/{dropdown-menu-CLgDYkh1.js → dropdown-menu-K4eCFwQy.js} +1 -1
  162. package/dist/public/assets/{ebnfDiagram-CCIWWBDH-BildoPpV.js → ebnfDiagram-CCIWWBDH-CjptFZja.js} +1 -1
  163. package/dist/public/assets/{erDiagram-Q63AITRT-CrQn__5X.js → erDiagram-Q63AITRT-BYiJa_5G.js} +1 -1
  164. package/dist/public/assets/{es2015-wpLRKwCl.js → es2015-B2hWAwcf.js} +1 -1
  165. package/dist/public/assets/eventmodeling-45OFAUF4-ur3Hg9pT.js +1 -0
  166. package/dist/public/assets/{eye-CSz7ogHo.js → eye-j_4QS15C.js} +1 -1
  167. package/dist/public/assets/{field-CtVP3IIV.js → field-9eXIpxzl.js} +1 -1
  168. package/dist/public/assets/file-tree-adapter-DYdb8QDM.js +1 -0
  169. package/dist/public/assets/file-tree-utils-CaXhxBar.js +1 -0
  170. package/dist/public/assets/flowDiagram-23GEKE2U-C1BAvCbz.js +1 -0
  171. package/dist/public/assets/{folder-CopDpuy5.js → folder-C8rE1Soy.js} +1 -1
  172. package/dist/public/assets/{folder-config-api-7-6Lsx3w.js → folder-config-api-Cm-dSVuA.js} +1 -1
  173. package/dist/public/assets/{folder-open-DUSc8NL8.js → folder-open-CB-trByC.js} +1 -1
  174. package/dist/public/assets/follow-file-DIXrodzs.js +1 -0
  175. package/dist/public/assets/{form-dlFqxdSN.js → form-_Bm7VdZa.js} +1 -1
  176. package/dist/public/assets/{ganttDiagram-NO4QXBWP-D3jf9kZJ.js → ganttDiagram-NO4QXBWP-TYuuGc0X.js} +1 -1
  177. package/dist/public/assets/{git-branch-CCnsAeFH.js → git-branch-JnfmLuHd.js} +1 -1
  178. package/dist/public/assets/gitGraph-TEB2WS4Q-l_1SzZcb.js +1 -0
  179. package/dist/public/assets/{gitGraphDiagram-IHSO6WYX-DlDGz9cq.js → gitGraphDiagram-IHSO6WYX-BrjUrrk2.js} +1 -1
  180. package/dist/public/assets/globals-Ba8eSnNC.css +1 -0
  181. package/dist/public/assets/{graphlib-C4PVrCSd.js → graphlib-D8PlvV2o.js} +1 -1
  182. package/dist/public/assets/{hash-DI30zEBt.js → hash-DKiwvmF3.js} +1 -1
  183. package/dist/public/assets/{highlighted-body-OFNGDK62-BRij1le7.js → highlighted-body-OFNGDK62-eJrwOujA.js} +1 -1
  184. package/dist/public/assets/{history-B1SZDFzE.js → history-eaFgPZWX.js} +1 -1
  185. package/dist/public/assets/i18n-lVHP3BYW.js +1 -0
  186. package/dist/public/assets/index-DbydDmJw.js +2097 -0
  187. package/dist/public/assets/{info-CV59RycV.js → info-CsTy513y.js} +1 -1
  188. package/dist/public/assets/info-DKCQHKI2-CCDXfGhV.js +1 -0
  189. package/dist/public/assets/{infoDiagram-FWYZ7A6U-Bl9xWhB1.js → infoDiagram-FWYZ7A6U-B6_Knuir.js} +1 -1
  190. package/dist/public/assets/{input-group-BiaQ-rIw.js → input-group-BA2Li4LU.js} +1 -1
  191. package/dist/public/assets/{ishikawaDiagram-FXEZZL3T-gaFrf2SM.js → ishikawaDiagram-FXEZZL3T-CqxHoebw.js} +1 -1
  192. package/dist/public/assets/{journeyDiagram-5HDEW3XC-DpjawWEP.js → journeyDiagram-5HDEW3XC-B1-3fVtR.js} +1 -1
  193. package/dist/public/assets/{kanban-definition-HUTT4EX6-CEd1M9Jf.js → kanban-definition-HUTT4EX6-CdhMOBCU.js} +1 -1
  194. package/dist/public/assets/{label-B5yNUINo.js → label-BT2yjpKR.js} +1 -1
  195. package/dist/public/assets/{lib-C0Wr4O8I.js → lib-BHGXbMkc.js} +1 -1
  196. package/dist/public/assets/{lib-Bgq5iQnh.js → lib-DcrRfjuF.js} +1 -1
  197. package/dist/public/assets/{line-DF4qqG3z.js → line-C0o9Fjf4.js} +1 -1
  198. package/dist/public/assets/{linear-B3i0ZXFo.js → linear-CjM1R4zy.js} +1 -1
  199. package/dist/public/assets/lint-config-client-Di_wU0g4.js +1 -0
  200. package/dist/public/assets/{list-plus-DBdmIc6v.js → list-plus-ByOuGBSE.js} +1 -1
  201. package/dist/public/assets/{local-menu-action-bus-Cypryz6Z.js → local-menu-action-bus-BKJCODnD.js} +1 -1
  202. package/dist/public/assets/{map-DtIcVWDF.js → map-Cu759seX.js} +1 -1
  203. package/dist/public/assets/markdownlint-rule-browser-CepJct7F.js +1 -0
  204. package/dist/public/assets/{mcp-consent-store-BASpxNOZ.js → mcp-consent-store-CBPF1Ll9.js} +1 -1
  205. package/dist/public/assets/mermaid-GHXKKRXX-C9G7CQ6h.js +1 -0
  206. package/dist/public/assets/{mermaid-parser.core-ByQzJt56.js → mermaid-parser.core-DpHycRcl.js} +2 -2
  207. package/dist/public/assets/{mermaid.core-q87AkGda.js → mermaid.core-BnYdLHjl.js} +3 -3
  208. package/dist/public/assets/messages-B12ABuMo.js +1 -0
  209. package/dist/public/assets/messages-BUufFcK8.js +1 -0
  210. package/dist/public/assets/messages-BV-Jgai1.js +1 -0
  211. package/dist/public/assets/messages-B_u6thtp.js +1 -0
  212. package/dist/public/assets/messages-CS-CWF8r.js +1 -0
  213. package/dist/public/assets/messages-CwQGRPEE.js +1 -0
  214. package/dist/public/assets/messages-Cwceyxby.js +1 -0
  215. package/dist/public/assets/messages-DGpodehZ.js +1 -0
  216. package/dist/public/assets/messages-DHl_AYzv.js +1 -0
  217. package/dist/public/assets/messages-DbRvxOAn.js +1 -0
  218. package/dist/public/assets/messages-DdKkPWw3.js +1 -0
  219. package/dist/public/assets/{mindmap-definition-LN4V7U3C-Dn7sM2vD.js → mindmap-definition-LN4V7U3C-D6FYi_vY.js} +1 -1
  220. package/dist/public/assets/minus-H7UCODAH.js +1 -0
  221. package/dist/public/assets/{miss-dialog-store-sSyy54tn.js → miss-dialog-store-DKfFwAsF.js} +1 -1
  222. package/dist/public/assets/navigation-targets-Dh0TaCXK.js +1 -0
  223. package/dist/public/assets/{now-Bs9xiL-y.js → now-Cd_fQsCQ.js} +1 -1
  224. package/dist/public/assets/{open-managed-artifact-tab-ChY4GdUc.js → open-managed-artifact-tab-DflI2eed.js} +1 -1
  225. package/dist/public/assets/{ordinal-CBsC_qub.js → ordinal-oNJqAlZi.js} +1 -1
  226. package/dist/public/assets/packet-7NZHBO7P-BBeRj-Du.js +1 -0
  227. package/dist/public/assets/{panel-right-open-B66oA9M1.js → panel-right-open-JxkSMPMb.js} +1 -1
  228. package/dist/public/assets/{paperclip-BlKB6Xwa.js → paperclip-BxFhnUjq.js} +1 -1
  229. package/dist/public/assets/pdf-19dxfod4.js +54 -0
  230. package/dist/public/assets/{pdf.worker-CLesOks4.mjs → pdf.worker-B1D2UnXD.mjs} +6625 -8349
  231. package/dist/public/assets/pdf.worker-Cn0IyjYR.js +1 -0
  232. package/dist/public/assets/{pegDiagram-2B236MQR-C05FQYWa.js → pegDiagram-2B236MQR-Cic2_Ooi.js} +1 -1
  233. package/dist/public/assets/{pending-receive-nav-store-CzDpDZMG.js → pending-receive-nav-store-yXsV1Iit.js} +1 -1
  234. package/dist/public/assets/pie-RZYD4A2V-BszLCTWh.js +1 -0
  235. package/dist/public/assets/{pieDiagram-ENE6RG2P-yyTCawlg.js → pieDiagram-ENE6RG2P-DgqO0C3j.js} +1 -1
  236. package/dist/public/assets/{project-paths-_w2mRvRX.js → project-paths-DC6bWLUQ.js} +1 -1
  237. package/dist/public/assets/prop-types-CLe_EOJt.js +1 -0
  238. package/dist/public/assets/{propagation-api-PBYTadVM.js → propagation-api-DSg7UKuw.js} +1 -1
  239. package/dist/public/assets/{quadrantDiagram-ABIIQ3AL-B3sRVPYy.js → quadrantDiagram-ABIIQ3AL-CC3ZGpWb.js} +1 -1
  240. package/dist/public/assets/radar-I7S5WNFK-CG0ShGDu.js +1 -0
  241. package/dist/public/assets/{radio-group-BSCe7mNt.js → radio-group-CmCnommQ.js} +1 -1
  242. package/dist/public/assets/railroad-3IZDKUUU-N5ekmrCL.js +1 -0
  243. package/dist/public/assets/railroad-abnf-AHOZXSZD-DnjoKlG9.js +1 -0
  244. package/dist/public/assets/railroad-ebnf-EBAXGLYW-qDwmtJRh.js +1 -0
  245. package/dist/public/assets/railroad-peg-LSFZ7HO6-DSfMsKSD.js +1 -0
  246. package/dist/public/assets/{railroadDiagram-RFXS5EU6-BU6ZoyHj.js → railroadDiagram-RFXS5EU6-DaoKPEli.js} +1 -1
  247. package/dist/public/assets/{receive-store-BJRLpWDq.js → receive-store-DrPPaP0S.js} +1 -1
  248. package/dist/public/assets/{refresh-cw-DQervzDZ.js → refresh-cw-CAV3aG7d.js} +1 -1
  249. package/dist/public/assets/{requirementDiagram-TGXJPOKE-CUJr32-2.js → requirementDiagram-TGXJPOKE-qmFI0ev3.js} +1 -1
  250. package/dist/public/assets/{sankeyDiagram-HTMAVEWB-bGsSEqGh.js → sankeyDiagram-HTMAVEWB-CYeZQsa5.js} +1 -1
  251. package/dist/public/assets/{schema-fields-view-intent-DiE8NL9y.js → schema-fields-view-intent-CeZOW3HG.js} +1 -1
  252. package/dist/public/assets/{select-CguJodwX.js → select-BjNoD_FX.js} +1 -1
  253. package/dist/public/assets/{selection-context-5FLhwrRu.js → selection-context-BxRPPU5Z.js} +1 -1
  254. package/dist/public/assets/{separator-vdmCepR4.js → separator-BKbgOjgy.js} +1 -1
  255. package/dist/public/assets/{sequenceDiagram-DBY2YBRQ-d6rntmdd.js → sequenceDiagram-DBY2YBRQ-DfXkoRwp.js} +1 -1
  256. package/dist/public/assets/{sizeCapture-X5ZJPWSS-CJquhL5U.js → sizeCapture-X5ZJPWSS-Bd7A4fpz.js} +1 -1
  257. package/dist/public/assets/skill-actions-Dj2NwLGa.js +2 -0
  258. package/dist/public/assets/skill-scope-BzUNaBG8.js +1 -0
  259. package/dist/public/assets/skills-api-VZRmji1_.js +1 -0
  260. package/dist/public/assets/{spinner-BqySY7qY.js → spinner-D7fgqgRw.js} +1 -1
  261. package/dist/public/assets/{square-pen-Cb57Y3fg.js → square-pen-hwoIfi3M.js} +1 -1
  262. package/dist/public/assets/{src-Dlkd7M23.js → src-CbX6YXDU.js} +1 -1
  263. package/dist/public/assets/{src-DTnqSW2M.js → src-XHagG0Wj.js} +1 -1
  264. package/dist/public/assets/{stateDiagram-2N3HPSRC-kGd_FNp8.js → stateDiagram-2N3HPSRC-CCh_abZC.js} +1 -1
  265. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-CUhlDos5.js +1 -0
  266. package/dist/public/assets/{swimlanes-5IMT3BWC-v_MAyooN.js → swimlanes-5IMT3BWC-Dk2uoutn.js} +2 -2
  267. package/dist/public/assets/swimlanesDiagram-G3AALYLV-DHL99Ckz.js +8 -0
  268. package/dist/public/assets/{switch-B2sF5R0q.js → switch-0kSGDL9E.js} +1 -1
  269. package/dist/public/assets/{tabs-DlmsMbtD.js → tabs-CjOEhhKP.js} +1 -1
  270. package/dist/public/assets/tag-pill-input-GrIUFiT7.js +1 -0
  271. package/dist/public/assets/{target-navigation-intent-Dn77egCV.js → target-navigation-intent-CqhpK9cj.js} +1 -1
  272. package/dist/public/assets/{telemetry-impl-5ki23cLU.js → telemetry-impl-DlE3Lv5F.js} +2 -2
  273. package/dist/public/assets/telemetry-startup-hv8lBqwj.js +1 -0
  274. package/dist/public/assets/terminal-bCsp6kPz.js +1 -0
  275. package/dist/public/assets/terminal-cli-display-DLfTA9tz.js +1 -0
  276. package/dist/public/assets/terminal-launch-events-DaPNTH_g.js +1 -0
  277. package/dist/public/assets/{terminal-telemetry-DATv4VP7.js → terminal-telemetry-BdrnMW3b.js} +1 -1
  278. package/dist/public/assets/{text-viewer-languages-4qbY4VOt.js → text-viewer-languages-BmEIetCD.js} +2 -2
  279. package/dist/public/assets/{thread-client-DnaLPSLV.js → thread-client-DySYYPC9.js} +1 -1
  280. package/dist/public/assets/{timeline-definition-FHXFAJF6-B79HsAbT.js → timeline-definition-FHXFAJF6-tb13RhWP.js} +1 -1
  281. package/dist/public/assets/{toggle-group-CZcn-1gX.js → toggle-group-DAYvcc1F.js} +1 -1
  282. package/dist/public/assets/{tooltip-DHXgxWLL.js → tooltip-x7BNUa3s.js} +1 -1
  283. package/dist/public/assets/{trash-2-N0ilsnnr.js → trash-2-CSpv7np3.js} +1 -1
  284. package/dist/public/assets/treeView-QDETBFTQ-DwFOcFO4.js +1 -0
  285. package/dist/public/assets/treemap-6X3UGDF4-D_-cggQd.js +1 -0
  286. package/dist/public/assets/{triangle-alert-COo6wbUK.js → triangle-alert-xKPljhlK.js} +1 -1
  287. package/dist/public/assets/{typing-burst-detector-CsTrQNxg.js → typing-burst-detector-COX8FDXD.js} +2 -2
  288. package/dist/public/assets/{undo-2-WGCwknr8.js → undo-2-D5cqFzyJ.js} +1 -1
  289. package/dist/public/assets/uninstall-e3XxU518.js +1 -0
  290. package/dist/public/assets/use-activity-panel-CtHXJ4mx.js +1 -0
  291. package/dist/public/assets/use-apply-config-color-theme-Be4mSe54.js +1 -0
  292. package/dist/public/assets/use-collab-url-ChXwOaQi.js +1 -0
  293. package/dist/public/assets/{use-live-xterm-theme-XZ_rkAuD.js → use-live-xterm-theme-CaipyTAZ.js} +1 -1
  294. package/dist/public/assets/use-open-skill-DASBRT-Y.js +1 -0
  295. package/dist/public/assets/{use-popular-skills-iSI9dtuW.js → use-popular-skills-BEpYkbxf.js} +1 -1
  296. package/dist/public/assets/use-settings-route-MF7LcF5y.js +1 -0
  297. package/dist/public/assets/use-skill-origin-qCGon4Nv.js +1 -0
  298. package/dist/public/assets/use-skills-C13KTW_J.js +1 -0
  299. package/dist/public/assets/use-terminal-enabled-r2pfLhCY.js +1 -0
  300. package/dist/public/assets/{use-timeline-entry-diff-CJCmKbXD.js → use-timeline-entry-diff-C9owRy-n.js} +1 -1
  301. package/dist/public/assets/use-workspace-CEaEfKKU.js +1 -0
  302. package/dist/public/assets/{vennDiagram-L72KCM5P-CNfULt3I.js → vennDiagram-L72KCM5P-Cyp_-2xs.js} +1 -1
  303. package/dist/public/assets/wardley-OPB4EBWU-Dz0s9mBi.js +1 -0
  304. package/dist/public/assets/{wardleyDiagram-EHGQE667-CJYAF8du.js → wardleyDiagram-EHGQE667-C5z1_r-x.js} +1 -1
  305. package/dist/public/assets/{wrench-CP2MIQHF.js → wrench-yAsO-Pm9.js} +1 -1
  306. package/dist/public/assets/x-BopM5CF8.js +1 -0
  307. package/dist/public/assets/{xychartDiagram-FW5EYKEG-CDXLQgim.js → xychartDiagram-FW5EYKEG-DH9RxgRE.js} +1 -1
  308. package/dist/public/index.html +161 -162
  309. package/dist/public/uninstall.html +30 -30
  310. package/dist/{repair-launch-json-i4R0znAY.mjs → repair-launch-json-aJerBRgL.mjs} +2 -2
  311. package/dist/{repair-mcp-configs-Cfs-VUUG.mjs → repair-mcp-configs-DGTO7xF0.mjs} +2 -2
  312. package/dist/{repair-skills-CBiPGgau.mjs → repair-skills-BFfQjF9F.mjs} +2 -2
  313. package/dist/repair-skills-Dz417BMs.mjs +1 -0
  314. package/dist/{skill-teardown-RIfU9RXJ.mjs → skill-teardown-BppNXkpR.mjs} +2 -2
  315. package/dist/{src-Co6VRihn.mjs → src-BDoOZy48.mjs} +8 -8
  316. package/dist/src-CHBsouW-.mjs +1 -0
  317. package/dist/{src-CLSt7s4C.mjs → src-CwuSSZyu.mjs} +368 -369
  318. package/dist/src-DR51i3QD.mjs +1 -0
  319. package/dist/start-CHnZWFjF.mjs +1 -0
  320. package/dist/start-DDMuipA1.mjs +10 -0
  321. package/dist/ui-BBGFVQDX.mjs +1 -0
  322. package/dist/ui-CNA2d6cp.mjs +3 -0
  323. package/dist/{write-project-skill-KUk3TJzG.mjs → write-project-skill-DHsuRyv9.mjs} +3 -3
  324. package/package.json +4 -4
  325. package/dist/constants-cHW6U6sH.mjs +0 -2
  326. package/dist/init-Bq54wJz9.mjs +0 -1
  327. package/dist/init-D35f12T2.mjs +0 -638
  328. package/dist/loader-Ds3-YThN.mjs +0 -1
  329. package/dist/preview-BlgTgAfQ.mjs +0 -1
  330. package/dist/public/assets/AgentDiffPane-D6y-RNd5.js +0 -2
  331. package/dist/public/assets/AppMenubar-CYaE7Hn6.js +0 -1
  332. package/dist/public/assets/BugReportHistory-C59fSH13.js +0 -1
  333. package/dist/public/assets/ChangedOutsideBadge-CTtTUnmJ.js +0 -7
  334. package/dist/public/assets/DocumentContext-Cmtye82b.js +0 -38
  335. package/dist/public/assets/EditorModeToggle-BQwt-g16.js +0 -1
  336. package/dist/public/assets/EnableSyncConfirmDialog-CeD6U8jw.js +0 -1
  337. package/dist/public/assets/FeedbackForm-BiAgA0cr.js +0 -1
  338. package/dist/public/assets/ImportSkillDialog-Dus8C3ya.js +0 -1
  339. package/dist/public/assets/ManagedArtifactProperties-BDvo6tfo.js +0 -1
  340. package/dist/public/assets/ManagedArtifactProperties-ppSBOaES.js +0 -2
  341. package/dist/public/assets/McpConsentDialogBody-CmWQQsvA.js +0 -1
  342. package/dist/public/assets/ReportBugDialogBody-AcYxCdAP.js +0 -3
  343. package/dist/public/assets/SessionsHost-0gH5fj7L.js +0 -2
  344. package/dist/public/assets/SettingsDialogBody-CSGA73Nq.js +0 -12
  345. package/dist/public/assets/ShareBranchSwitchDialog-ClrT-3XL.js +0 -1
  346. package/dist/public/assets/ShareReceiveDialog-CGp7LdmP.js +0 -1
  347. package/dist/public/assets/SlidesToolbarControls-bvIjkbin.js +0 -1
  348. package/dist/public/assets/SourceEditor-BgLK1i4n.js +0 -1
  349. package/dist/public/assets/TextDocEditor-BhSgQ-DA.js +0 -1
  350. package/dist/public/assets/ThreadView-DfJo0d_V.js +0 -10
  351. package/dist/public/assets/TimelineDiffPane-NIZsgHzq.js +0 -2
  352. package/dist/public/assets/architecture-TIHT7OUA-DwJXOzeg.js +0 -1
  353. package/dist/public/assets/arrow-up-right-CGe6dTck.js +0 -1
  354. package/dist/public/assets/auth-state-cache-CdxRaOii.js +0 -11
  355. package/dist/public/assets/channel-DPiKu0N2.js +0 -1
  356. package/dist/public/assets/check-CGfmW4da.js +0 -1
  357. package/dist/public/assets/chevron-left-UUhIKmW4.js +0 -1
  358. package/dist/public/assets/chevron-right-Diamp-K_.js +0 -1
  359. package/dist/public/assets/chunk-2Q5K7J3B-CSqFa28W.js +0 -1
  360. package/dist/public/assets/chunk-VAUOI2AC-BRgZjfPj.js +0 -1
  361. package/dist/public/assets/chunk-XXDRQBXY-CSo_IP1t.js +0 -1
  362. package/dist/public/assets/classDiagram-OUVF2IWQ-B4b2FFhv.js +0 -1
  363. package/dist/public/assets/classDiagram-v2-EOCWNBFH-D-BosVMB.js +0 -1
  364. package/dist/public/assets/client-version-DygZeHKE.js +0 -1
  365. package/dist/public/assets/comment-chips-DUivrMCA.js +0 -5
  366. package/dist/public/assets/cynefin-VYW2F7L2-DCXxsTQd.js +0 -1
  367. package/dist/public/assets/dialog-DztIj-ZS.js +0 -5
  368. package/dist/public/assets/doc-paths-SFSlIMRQ.js +0 -1
  369. package/dist/public/assets/documents-events-a5eIuqSk.js +0 -1
  370. package/dist/public/assets/eventmodeling-45OFAUF4-CrAU37MM.js +0 -1
  371. package/dist/public/assets/file-tree-adapter-oSszPvAJ.js +0 -1
  372. package/dist/public/assets/file-tree-utils-BG5IgULP.js +0 -1
  373. package/dist/public/assets/flowDiagram-23GEKE2U-BDzq_lmd.js +0 -1
  374. package/dist/public/assets/follow-file-BukSIwm0.js +0 -4
  375. package/dist/public/assets/gitGraph-TEB2WS4Q-C3je2KR3.js +0 -1
  376. package/dist/public/assets/globals-DXwGOGPM.css +0 -1
  377. package/dist/public/assets/i18n-BAXNC2k8.js +0 -1
  378. package/dist/public/assets/index-BRKZBUZB.js +0 -2095
  379. package/dist/public/assets/info-DKCQHKI2-CT9KyzjE.js +0 -1
  380. package/dist/public/assets/lint-config-client-DPKnQGxT.js +0 -1
  381. package/dist/public/assets/markdownlint-rule-browser-CljNGtQ4.js +0 -1
  382. package/dist/public/assets/mermaid-GHXKKRXX-8B8K64kM.js +0 -1
  383. package/dist/public/assets/messages-B6vvv7H-.js +0 -1
  384. package/dist/public/assets/messages-Bf16a61t.js +0 -1
  385. package/dist/public/assets/messages-BlMkdPL-.js +0 -1
  386. package/dist/public/assets/messages-BrwWcQ1q.js +0 -1
  387. package/dist/public/assets/messages-Bsokz5p_.js +0 -1
  388. package/dist/public/assets/messages-CWnVB_17.js +0 -1
  389. package/dist/public/assets/messages-CgqvsJOb.js +0 -1
  390. package/dist/public/assets/messages-D3GzXczV.js +0 -1
  391. package/dist/public/assets/messages-DAiMiSQb.js +0 -1
  392. package/dist/public/assets/messages-DKla4fHa.js +0 -1
  393. package/dist/public/assets/messages-DhVrLKqA.js +0 -1
  394. package/dist/public/assets/minus-D07ZsfDZ.js +0 -1
  395. package/dist/public/assets/navigation-targets-CmqNPgrG.js +0 -1
  396. package/dist/public/assets/packet-7NZHBO7P-CH_5gegW.js +0 -1
  397. package/dist/public/assets/pdf-BFuk-PLE.js +0 -54
  398. package/dist/public/assets/pdf.worker-C9DGCxWN.js +0 -1
  399. package/dist/public/assets/pie-RZYD4A2V-aYfmJZ12.js +0 -1
  400. package/dist/public/assets/platform-labels-glrfxkSh.js +0 -1
  401. package/dist/public/assets/progress-BdSO2c_8.js +0 -6
  402. package/dist/public/assets/prop-types-BuByQU-C.js +0 -1
  403. package/dist/public/assets/radar-I7S5WNFK-DADBQ4w5.js +0 -1
  404. package/dist/public/assets/railroad-3IZDKUUU-pWB1DEQS.js +0 -1
  405. package/dist/public/assets/railroad-abnf-AHOZXSZD-DyMKsKhG.js +0 -1
  406. package/dist/public/assets/railroad-ebnf-EBAXGLYW-D6s4IM0k.js +0 -1
  407. package/dist/public/assets/railroad-peg-LSFZ7HO6-BTTgV3Yi.js +0 -1
  408. package/dist/public/assets/skill-actions-DwL1MSzH.js +0 -2
  409. package/dist/public/assets/skill-scope-ByxyMqpD.js +0 -1
  410. package/dist/public/assets/skills-api-CD1FoT1f.js +0 -1
  411. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-6-zLyJUk.js +0 -1
  412. package/dist/public/assets/swimlanesDiagram-G3AALYLV-BBH-ZYmT.js +0 -8
  413. package/dist/public/assets/tag-pill-input-D9TPdQQY.js +0 -1
  414. package/dist/public/assets/telemetry-startup-CbAvyxdB.js +0 -1
  415. package/dist/public/assets/terminal-Cvoe7pfU.js +0 -1
  416. package/dist/public/assets/terminal-cli-display-ceeLXdxI.js +0 -1
  417. package/dist/public/assets/terminal-launch-events-un6YHfuE.js +0 -1
  418. package/dist/public/assets/treeView-QDETBFTQ-Dx6w4y7n.js +0 -1
  419. package/dist/public/assets/treemap-6X3UGDF4-BDQteRlb.js +0 -1
  420. package/dist/public/assets/uninstall-97GnPmGj.js +0 -1
  421. package/dist/public/assets/use-activity-panel-DwhRkMuD.js +0 -1
  422. package/dist/public/assets/use-apply-config-color-theme-Cwl6JTaa.js +0 -1
  423. package/dist/public/assets/use-collab-url-B6fAlmsp.js +0 -1
  424. package/dist/public/assets/use-open-skill-C9c3oqii.js +0 -1
  425. package/dist/public/assets/use-settings-route-D49weK6e.js +0 -1
  426. package/dist/public/assets/use-skill-origin-CbV3B2nV.js +0 -1
  427. package/dist/public/assets/use-skills-DWcQk94I.js +0 -1
  428. package/dist/public/assets/use-terminal-enabled-CkJ-MlfR.js +0 -1
  429. package/dist/public/assets/use-workspace-DTMCKV7B.js +0 -1
  430. package/dist/public/assets/wardley-OPB4EBWU-D46U-qP9.js +0 -1
  431. package/dist/public/assets/x-DS57FvHW.js +0 -1
  432. package/dist/repair-skills-D8TKPOmv.mjs +0 -1
  433. package/dist/src-Bw2xGQFS.mjs +0 -1
  434. package/dist/src-DStuuia4.mjs +0 -1
  435. package/dist/start-Ba1HQRTu.mjs +0 -1
  436. package/dist/start-pmfWlRKV.mjs +0 -12
  437. package/dist/ui-CjlnXaCK.mjs +0 -3
  438. package/dist/ui-DQkCLucF.mjs +0 -1
  439. /package/dist/public/assets/{ActivityPanelDiffView-GFnvFJPJ.js → ActivityPanelDiffView-fDxLwTi2.js} +0 -0
  440. /package/dist/public/assets/{SkillModeBanner-cMF-HPLA.js → SkillModeBanner-d0ZDkWTk.js} +0 -0
  441. /package/dist/public/assets/{__vite-browser-external-DD8Jl_VU.js → __vite-browser-external-D_48KNDi.js} +0 -0
  442. /package/dist/public/assets/{agent-presence-C3GIHDxc.js → agent-presence-DK_W4GTa.js} +0 -0
  443. /package/dist/public/assets/{array-Cf_JnmE6.js → array-DYKIbRR-.js} +0 -0
  444. /package/dist/public/assets/{asset-dispatch-Cz1weVX3.js → asset-dispatch-DsHoHhCG.js} +0 -0
  445. /package/dist/public/assets/{auth-prompt-store-BYOv6_8O.js → auth-prompt-store-CyiGTt3C.js} +0 -0
  446. /package/dist/public/assets/{chunk-KEIR6QF5-BOpPjw4C.js → chunk-KEIR6QF5-Z0IgTo4K.js} +0 -0
  447. /package/dist/public/assets/{chunk-Y2CYZVJY-Bw2nvaMQ.js → chunk-Y2CYZVJY-Bmis3P2F.js} +0 -0
  448. /package/dist/public/assets/{clike-BBEjy26W.js → clike-l3ublWpW.js} +0 -0
  449. /package/dist/public/assets/{clipboard-adapter-DqemxSWT.js → clipboard-adapter-DEJxizFj.js} +0 -0
  450. /package/dist/public/assets/{colors-CElM_Snc.js → colors-C77NTF6g.js} +0 -0
  451. /package/dist/public/assets/{copilot-Dh1BU6kS.js → copilot-BdGxiVpg.js} +0 -0
  452. /package/dist/public/assets/{createLucideIcon-Bhw2PmPp.js → createLucideIcon-6iYxif1u.js} +0 -0
  453. /package/dist/public/assets/{cursor-B6reg1lS.js → cursor-CUtcHGV-.js} +0 -0
  454. /package/dist/public/assets/{cytoscape.esm-h5J7wFxJ.js → cytoscape.esm-C2gIT5zZ.js} +0 -0
  455. /package/dist/public/assets/{defaultLocale-a-gWoIXg.js → defaultLocale-BugBqEWo.js} +0 -0
  456. /package/dist/public/assets/{desktop-bridge-types-NXCK8Pd7.js → desktop-bridge-types-oYPdTDmz.js} +0 -0
  457. /package/dist/public/assets/{diff-CvpcR3NJ.js → diff-TXhtTD_D.js} +0 -0
  458. /package/dist/public/assets/{dist-CK4VZUF5.js → dist-1ia0sKe1.js} +0 -0
  459. /package/dist/public/assets/{dist-B6jB2qbD2.js → dist-Bkx5dDHT2.js} +0 -0
  460. /package/dist/public/assets/{dist-DH4zqp8r.js → dist-CIv09IXf.js} +0 -0
  461. /package/dist/public/assets/{dist-DvG1-wV_.js → dist-DNiTklSL.js} +0 -0
  462. /package/dist/public/assets/{dist-mv8e6dBX.js → dist-DUWYPul7.js} +0 -0
  463. /package/dist/public/assets/{dist-DUfEoSbR.js → dist-DoS8xGN6.js} +0 -0
  464. /package/dist/public/assets/{documents-fetch-CV8lWh8v.js → documents-fetch-I34CgFeh.js} +0 -0
  465. /package/dist/public/assets/{external-link-BIMZpgNa.js → external-link-CHCx4FXC.js} +0 -0
  466. /package/dist/public/assets/{file-tree-rename-validation-CCqiFGp1.js → file-tree-rename-validation-DEuNOzhg.js} +0 -0
  467. /package/dist/public/assets/{floating-ui.dom-By-yeALv.js → floating-ui.dom-C0wusa09.js} +0 -0
  468. /package/dist/public/assets/{format-I3YtNHrv.js → format-Dx1Bv63R.js} +0 -0
  469. /package/dist/public/assets/{gherkin-D3uEvcwv.js → gherkin-Bu_VunKM.js} +0 -0
  470. /package/dist/public/assets/{globals-Ctlj0TIx.js → globals-BSqcs0wt.js} +0 -0
  471. /package/dist/public/assets/{go-fa_HI4OB.js → go-BYJ3ESi0.js} +0 -0
  472. /package/dist/public/assets/{html-void-elements-C35FEqss.js → html-void-elements-Bkr32DGT.js} +0 -0
  473. /package/dist/public/assets/{init-B1Vy7sk-.js → init-B44NBVpk.js} +0 -0
  474. /package/dist/public/assets/{input-BYiOK210.js → input-VnbFvuKd.js} +0 -0
  475. /package/dist/public/assets/{isObject-DaQSDnzB.js → isObject-Dhzo1ma6.js} +0 -0
  476. /package/dist/public/assets/{katex-Bbx57GnP.js → katex-BE6VA85g.js} +0 -0
  477. /package/dist/public/assets/{libesm-DQtLkQQh.js → libesm-BYxokP1G.js} +0 -0
  478. /package/dist/public/assets/{lint-plugin-meta-CKntN3M1.js → lint-plugin-meta-FPoTE-0t.js} +0 -0
  479. /package/dist/public/assets/{lru-string-cache-Ckr1Pjrr.js → lru-string-cache-BgNKFfCO.js} +0 -0
  480. /package/dist/public/assets/{lua-D7ZxzT_Z.js → lua-De9v6Xwm.js} +0 -0
  481. /package/dist/public/assets/{markdownit-C1Squg6O.js → markdownit-CIgVFnWs.js} +0 -0
  482. /package/dist/public/assets/{min-Dbr9KJ3U.js → min-CgRbfTQR.js} +0 -0
  483. /package/dist/public/assets/{overlay-layers-Bj-TVfKw.js → overlay-layers-C1Y78Wu8.js} +0 -0
  484. /package/dist/public/assets/{panel-CbGx_cRv.js → panel-9S5Pf2VO.js} +0 -0
  485. /package/dist/public/assets/{panzoom.es-BtVt9FgW.js → panzoom.es-CebiCTnw.js} +0 -0
  486. /package/dist/public/assets/{parse-api-error-DfesE4Y7.js → parse-api-error-Mgtc4OJu.js} +0 -0
  487. /package/dist/public/assets/{path-kpTbN09k.js → path-DNVjzh9n.js} +0 -0
  488. /package/dist/public/assets/{perl-B2T_oOXa.js → perl-DAC-0-L4.js} +0 -0
  489. /package/dist/public/assets/{properties-BlzchQr8.js → properties-BuEq0L0N.js} +0 -0
  490. /package/dist/public/assets/{r-BuKMh1KL.js → r-D6J_8GbJ.js} +0 -0
  491. /package/dist/public/assets/{rough.esm-CP-YPkih.js → rough.esm-hH2VdTtm.js} +0 -0
  492. /package/dist/public/assets/{ruby-CUkUilNJ.js → ruby-BulDdqGQ.js} +0 -0
  493. /package/dist/public/assets/{share-metadata-rows-D5y9TY7o.js → share-metadata-rows-CBd7DuHz.js} +0 -0
  494. /package/dist/public/assets/{shell-DhuGq92J.js → shell-FYbPjPiK.js} +0 -0
  495. /package/dist/public/assets/{skeleton-D4wPMdlV.js → skeleton-BOVIbSHk.js} +0 -0
  496. /package/dist/public/assets/{sortable.esm-Dd5A8_XI.js → sortable.esm-mqYoEMD5.js} +0 -0
  497. /package/dist/public/assets/{sql-PCnKIGcH.js → sql-BTcd-g6A.js} +0 -0
  498. /package/dist/public/assets/{src-DlFhp60C.js → src-D2oHIihg.js} +0 -0
  499. /package/dist/public/assets/{startup-marks-Cdkh8q3E.js → startup-marks-BYurBbnW.js} +0 -0
  500. /package/dist/public/assets/{stex-PMopVeEZ.js → stex-BmYSnOnf.js} +0 -0
  501. /package/dist/public/assets/{swift-BxR8RYdU.js → swift-CnW5XUwC.js} +0 -0
  502. /package/dist/public/assets/{terminal-command-events-DXmeHtnk.js → terminal-command-events-mSM3ArSl.js} +0 -0
  503. /package/dist/public/assets/{textarea-yZk4yd9U.js → textarea-D59GB_Zy.js} +0 -0
  504. /package/dist/public/assets/{thread-draft-staging-BG7XGHEN.js → thread-draft-staging-BZaq81Sj.js} +0 -0
  505. /package/dist/public/assets/{timeline-diff-store-DnRthkM7.js → timeline-diff-store-cCBpDgND.js} +0 -0
  506. /package/dist/public/assets/{toml-nuQJU7MH.js → toml-vEnVjPi4.js} +0 -0
  507. /package/dist/public/assets/{trace-api-18gcBe0u.js → trace-api-DH580DYm.js} +0 -0
  508. /package/dist/public/assets/{use-installed-clis-Cydpb5jd.js → use-installed-clis-CdB0ME5s.js} +0 -0
  509. /package/dist/public/assets/{useLintConfigViewMode-DX8l9aBY.js → useLintConfigViewMode-C89oTBHY.js} +0 -0
  510. /package/dist/public/assets/{w3c-keyname-Bw5giFqP.js → w3c-keyname-hgmz1BF7.js} +0 -0
  511. /package/dist/public/assets/{workspace-paths-CKUFX0v6.js → workspace-paths-C2pS_Pbn.js} +0 -0
@@ -0,0 +1 @@
1
+ import{Go as e,Gs as t,Ho as n,Ko as r,P as i,R as a,cs as o,d as s,l as c,os as l,vs as u}from"./src-DMpGVIiQ.mjs";import{$ as d,$i as f,$n as p,$r as m,$t as h,A as g,Ai as _,An as v,Ar as y,At as b,B as x,Bi as S,Bn as C,Bt as w,C as T,Ca as E,Ci as D,Cn as O,Cr as k,Ct as A,D as j,Di as M,Dn as N,Dr as P,Dt as F,E as I,Ea as L,Ei as R,En as z,Er as B,Et as V,F as H,Fi as U,Fn as W,Fr as G,Ft as K,G as q,Gi as J,Gn as Y,Gr as X,Gt as Z,H as Q,Hi as $,Hn as ee,Ht as te,I as ne,Ii as re,In as ie,Ir as ae,It as oe,J as se,Ji as ce,Jn as le,Jr as ue,Jt as de,K as fe,Ki as pe,Kn as me,Kr as he,Kt as ge,L as _e,Li as ve,Ln as ye,Lr as be,Lt as xe,M as Se,Mi as Ce,Mn as we,Mr as Te,Mt as Ee,N as De,Ni as Oe,Nn as ke,Nr as Ae,Nt as je,O as Me,Oi as Ne,On as Pe,Or as Fe,Ot as Ie,P as Le,Pi as Re,Pn as ze,Pr as Be,Pt as Ve,Q as He,Qi as Ue,Qn as We,Qr as Ge,Qt as Ke,R as qe,Ri as Je,Rn as Ye,Rr as Xe,Rt as Ze,S as Qe,Sa as $e,Si as et,Sn as tt,Sr as nt,St as rt,T as it,Ta as at,Ti as ot,Tn as st,Tr as ct,Tt as lt,U as ut,Ui as dt,Un as ft,Ut as pt,V as mt,Vi as ht,Vn as gt,Vt as _t,W as vt,Wi as yt,Wn as bt,Wr as xt,Wt as St,X as Ct,Xi as wt,Xn as Tt,Xr as Et,Xt as Dt,Y as Ot,Yi as kt,Yn as At,Yr as jt,Yt as Mt,Z as Nt,Zi as Pt,Zn as Ft,Zr as It,Zt as Lt,_ as Rt,_a as zt,_i as Bt,_n as Vt,_r as Ht,_t as Ut,a as Wt,aa as Gt,ai as Kt,an as qt,ar as Jt,at as Yt,b as Xt,ba as Zt,bi as Qt,bn as $t,br as en,bt as tn,c as nn,ca as rn,ci as an,cn as on,cr as sn,d as cn,da as ln,di as un,dn,dr as fn,ea as pn,ei as mn,en as hn,er as gn,et as _n,f as vn,fa as yn,fi as bn,fn as xn,fr as Sn,g as Cn,ga as wn,gi as Tn,gn as En,gr as Dn,gt as On,h as kn,ha as An,hi as jn,hn as Mn,hr as Nn,ht as Pn,i as Fn,ia as In,ii as Ln,in as Rn,ir as zn,it as Bn,j as Vn,ji as Hn,jn as Un,jr as Wn,jt as Gn,k as Kn,ki as qn,kn as Jn,kr as Yn,kt as Xn,l as Zn,la as Qn,li as $n,ln as er,lr as tr,m as nr,ma as rr,mi as ir,mn as ar,mr as or,mt as sr,n as cr,na as lr,ni as ur,nn as dr,nr as fr,nt as pr,o as mr,oa as hr,oi as gr,on as _r,or as vr,ot as yr,p as br,pa as xr,pi as Sr,pn as Cr,pr as wr,q as Tr,qi as Er,qn as Dr,qr as Or,qt as kr,r as Ar,ra as jr,ri as Mr,rn as Nr,rr as Pr,rt as Fr,s as Ir,sa as Lr,si as Rr,sn as zr,sr as Br,st as Vr,t as Hr,ta as Ur,ti as Wr,tn as Gr,tr as Kr,tt as qr,u as Jr,ua as Yr,ui as Xr,un as Zr,ur as Qr,v as $r,va as ei,vi as ti,vn as ni,vr as ri,vt as ii,w as ai,wa as oi,wn as si,wr as ci,wt as li,x as ui,xa as di,xi as fi,xn as pi,xr as mi,xt as hi,y as gi,ya as _i,yi as vi,yn as yi,yr as bi,yt as xi,z as Si,zi as Ci,zn as wi,zt as Ti}from"./src-CwuSSZyu.mjs";import{C as Ei,E as Di,T as Oi,_ as ki,b as Ai,c as ji,d as Mi,g as Ni,i as Pi,l as Fi,m as Ii,n as Li,p as Ri,s as zi,t as Bi,u as Vi,v as Hi,w as Ui,x as Wi,y as Gi}from"./fs-traced-RPXwxrA5.mjs";import{a as Ki,d as qi,f as Ji,i as Yi,l as Xi,n as Zi,r as Qi,t as $i,u as ea}from"./logger-CnfEoHs1.mjs";import{C as ta,S as na,_ as ra,a as ia,c as aa,d as oa,g as sa,h as ca,i as la,l as ua,m as da,n as fa,o as pa,p as ma,r as ha,s as ga,t as _a,u as va,v as ya,y as ba}from"./server-lock-BV0Ktccm.mjs";export{zt as AGENT_ID_MAX_LEN,ei as AGENT_ID_RE,Oe as AGENT_WRITE_ORIGIN,oi as AcpPermissionStore,di as AcpRegistry,Ne as AcpThreadManager,R as AgentFocusBroadcaster,ot as AgentPresenceBroadcaster,Re as AgentSessionCapacityError,U as AgentSessionManager,Pn as AutoStartDisabledError,ci as BUNDLE_IDS,ct as BUNDLE_SCOPE,B as BUNDLE_SKILL_NAME,p as BacklinkIndex,J as CC1Broadcaster,o as CC1_CONTRACT_VERSION,Zr as CONFIG_FILENAME,Dr as CONFLICT_MARKER_RE,he as CURSOR_BUNDLE_PATHS_BY_PLATFORM,Rt as ConfigSchema,Pt as DEFAULT_CHECKPOINT_RETENTION,un as DEFAULT_EMBEDDINGS_DIMENSIONS,K as DEFAULT_PACK_ID,mt as DocumentDurabilityState,bn as EMBEDDINGS_API_KEY_ENV,ni as ExposureConsentError,$e as FEATURED_AGENT_IDS,Ue as FILE_SYSTEM_WRITER,Ft as FILE_WATCHER_ORIGIN,Kt as FileEmbeddingsBackend,Lt as GIT_PREFLIGHT_FAIL_SPAN_NAME,f as GIT_UPSTREAM_WRITER,at as GitDirAccessError,h as GitNotAvailableError,hn as GitTooOldError,On as HOCUSPOCUS_AUTH_REJECTION_REASONS,Ut as HocuspocusAuthRejection,ii as HocuspocusAuthTokenSchema,Ge as INSTALLED_AGENTS_SCHEMES,l as LINEAGE_EPOCH_KEY,qe as LIVE_DERIVED_INDEX_DEBOUNCE_MS,oe as LOG_MD_TEMPLATE,lt as MANAGED_RENAME_ORIGIN,qn as MAX_ACP_THREADS,re as MAX_AGENT_SESSIONS,Hn as MCP_CONNECTION_ID_HEADER,n as MCP_SERVER_NAME,ve as MIN_EVICTABLE_IDLE_MS,Gr as MIN_GIT_VERSION,Q as MISSING_OK_CONFIG_MESSAGE,L as MalformedGitPointerError,_n as McpLogger,ut as MissingOkConfigError,Ci as OBSERVER_SYNC_ORIGIN,dn as OK_OKIGNORE_TEMPLATE,e as ORPHAN_MODES,t as PROTOCOL_VERSION,$i as PinoLogger,aa as ProcessLockCollisionError,Zn as ProjectGitInitError,V as ROLLBACK_ORIGIN,xn as ROOT_GITIGNORE_TEMPLATE,ra as RUNTIME_VERSION,st as RemoteConfigError,pn as SERVICE_WRITER,bi as SKILL_INSTALL_EVENTS_FILE_REL,i as SKILL_STATE_TARGETS,xe as STARTER_FOLDERS,Ze as STARTER_FOLDER_FRONTMATTER_FILENAME,Ti as STARTER_PACKS,w as STARTER_PACK_IDS,_t as STARTER_TEMPLATES,it as STATE_MANIFEST_FILENAME,ya as STATE_SCHEMA_VERSION,u as SYSTEM_DOC_NAME,kr as SeedPrerequisiteError,de as SeedRootDirError,_a as ServerLockCollisionError,Hr as SingleFileNotAFileError,cr as SingleFileNotFoundError,Ar as SingleFileNotMarkdownError,I as StateManifestError,We as TagIndex,P as USER_GLOBAL_BUNDLE_IDS,Kr as UiLockCollisionError,F as __getShowAllWalkStatsForTesting,Ie as __resetShowAllWalkStatsForTesting,ua as acquireProcessLock,fa as acquireServerLock,fr as acquireUiLock,Je as applyAgentMarkdownWrite,Y as applyExternalChange,Ve as applySeed,j as assertCompatibleStateManifest,dr as assertGitAvailable,ke as assertNeverDiskEvent,M as attachAcpThreadSocket,sr as attachIdleShutdown,$r as bootServer,vr as buildAndOpenSkill,Cr as buildConfigYmlContent,Ot as buildExecResult,yi as buildIngressPolicy,_ as buildOkMcpStdioCommand,mi as buildSkillZip,te as buildStarterFolderFrontmatterYaml,Ur as buildWipTree,Fe as bundleSkillMdPath,gr as canonicalProjectKey,ze as classifyEvents,Bi as classifyFsPath,Rr as clearAllEmbeddingsKeys,ir as clearContributors,pt as coercePackId,c as colorFromSeed,lr as commitUpstreamImport,jr as commitWip,In as commitWipFromTree,Nr as compareSemver,Wn as composeEffectiveLinterConfig,Te as composeFrontmatterSchemasConfig,le as containsConflictMarkers,W as contentHash,jn as contributorCount,Le as countShadowObjects,H as countStaleAgentWipRefs,ne as countWipRefs,Xn as createApiExtension,li as createAssetServeMiddleware,q as createCollaborationHost,xt as createContentFilter,X as createContentFilterAsync,an as createEmbeddingsSecretStore,Fn as createEphemeralProjectDir,me as createExternalChangeHandler,vn as createFileLogger,Si as createLiveDerivedIndexExtension,Tr as createMcpHttpHandler,m as createOsProbe,De as createPersistenceExtension,T as createServer,Vn as createServerObserverExtension,$ as createStreamingErrorWriter,Zi as createTestLogger,$n as describeStoredEmbeddingsKey,Cn as detectClaudeDesktopPresence,Rn as detectGit,Me as detectProjectShape,Br as detectUserSkillHosts,Fr as discoverLockDirs,G as discoverMarkdownlintConfig,Ke as emitPreflightFailureSpan,Ct as encodeDocName,Nt as encodeFolderRoute,He as encodeSkillRoute,Jr as ensureProjectGit,ar as ensureProjectSkillGitignore,dt as errorResponse,ie as evictStaleTrackerEntries,b as extractHeadings,Bn as extractOkBinaryPath,gn as extractWikiLinksFromMarkdown,qt as fallbackPaths,cn as findEnclosingGitRoot,Un as findEnclosingProjectRoot,ae as findNativeMarkdownlintFile,br as flushFileLogger,xi as formatAuthRejectionWire,Tn as formatContributors,Bt as formatContributorsFrom,Ee as formatPackRationale,Gt as gcCheckpointRefs,qr as getCurrentMcpLogger,$t as getIngressContext,fi as getLocalDir,nr as getLogFilePath,Qi as getLogger,kn as getLogsDir,ba as getMachineId,Gi as getMeter,yn as getMetrics,Ai as getTracer,xr as handleCollabSocketError,Or as handleSpawnCursor,z as hasForwardingHeaders,_e as hasGcLogLatch,s as iconFromClientName,rr as incrementCollabSocketFilteredError,An as incrementServerObserverFire,Mn as initContent,hr as initShadowRepo,Wi as initTelemetry,Xt as initToleranceTelemetryWriter,Vr as installPrettyZodErrors,Yi as installTestLoggers,sn as installUserSkill,si as isAllowedApiOrigin,Jn as isAllowedWorkspaceHostHeader,pe as isConfigDoc,tn as isHocuspocusAuthRejectionReason,pi as isHostAdmitted,St as isKnownPackId,Er as isLinkIndexExcludedDoc,v as isLoopbackAddress,ce as isManagedArtifactDoc,tt as isOriginAdmitted,r as isOrphanMode,S as isPairedWriteOrigin,ue as isPathWithinDir,O as isPeerAdmitted,na as isProcessAlive,we as isProjectRoot,N as isRemoteAdmitted,kt as isReservedForUserTree,ye as isSelfWrite,wt as isSystemDoc,ui as isToleranceTelemetryEnabled,ta as isValidLockPid,Ye as lastKnownHash,Lr as listRescueCheckpoints,Z as listStarterPacks,E as loadCustomAgents,Se as loadPrincipal,va as lockBaseUrl,oa as lockFilePath,Ki as loggerFactory,Xi as logsCurrentPath,ea as logsPreviousPath,Xr as makeLazyEmbeddingsKeyStore,ha as markServerLockDraining,vt as mountMcpAndApi,Li as normalizeFsPath,Yn as originGitHubHost,En as packageVersionMajorMinor,hi as parseAuthRejectionWire,_r as parseGitVersion,rt as parseHocuspocusAuthToken,fe as parseKeepaliveConnectionId,wi as pathToDocName,je as planSeed,Wt as prepareSingleFileOpen,Yt as processCommand,yr as processUsage,Qr as readAllTargets,fn as readBundleDecision,be as readOwnNativeRules,ma as readProcessLock,da as readProcessLockDetailed,x as readProjectHeadState,Ln as readProjectLocalSemanticConfig,la as readServerLock,Sn as readServerPackageVersion,wr as readSkillInstallStateSnapshot,Kn as readStateManifest,or as readTargetRecordedAt,Nn as readTargetVersion,Pr as readUiLock,At as reconcile,ti as recordContributor,en as recordSkillInstallEvent,se as registerAllTools,C as registerWrite,ca as releaseProcessLock,ia as releaseServerLock,zn as releaseUiLock,gt as removeLastKnownHash,tr as reportSkillInstall,wn as resetMetrics,a as resolveBundleEnabled,nt as resolveBundledSkillDir,et as resolveContentDir,jt as resolveCursorBinaryDefault,Et as resolveCursorSpawnInvocation,Ae as resolveEffectiveLinterConfig,Sr as resolveEmbeddingsCredential,D as resolveLockDir,Be as resolveNativeConfigForDoc,Xe as resolveNativeMarkdownlintConfig,ge as resolvePack,Ir as resolvePackageVersion,Pe as resolveRemoteAccess,ri as resolveSkillInstallReportSettings,d as resolveUiInfo,vi as restoreContributors,gi as restoreLifecycleFromConflictsJson,ur as rewriteMarkdownLinksForDocumentRename,Mr as rewriteWikiLinksForDocumentRename,zr as runAuthReposSubprocess,on as runAuthStatusSubprocess,Mt as runCloneSubprocess,er as runDeviceFlowSubprocess,pr as runWithMcpLogger,Wr as safeContentPath,Gn as safeSubdir,rn as safetyCheckpoint,Ce as sanitizeClientName,Qn as saveInMemoryCheckpoint,Yr as saveVersion,A as seedBasenameIndex,mr as serializeError,Ei as setActiveSpanAttributes,ht as setupServerObservers,ln as shadowGit,Ui as shutdownTelemetry,qi as spansCurrentPath,Ji as spansPreviousPath,It as spawnDetached,Tt as splitMarkdownBlocks,ee as startWatcher,yt as streamingProblemEvent,Qt as swapContributors,Qe as teardownToleranceTelemetryWriter,_i as toBroadcasterKey,Pi as tracedAppendFileSync,zi as tracedLinkSync,ji as tracedMkdir,Fi as tracedMkdirSync,Vi as tracedRename,Mi as tracedRenameSync,Ri as tracedRmSync,Ii as tracedRmdirSync,Ni as tracedUnlinkSync,ki as tracedWriteFile,Hi as tracedWriteFileSync,ai as trustSystemCertificates,nn as untrackTrackedProjectSkillProjection,ft as updateLastKnownHash,sa as updateProcessLockPort,pa as updateServerLockPort,Jt as updateUiLockPort,Zt as validateAgentId,Dt as validateCloneInputs,k as validateSkillZip,ga as waitForServerLockDrain,mn as withHiddenWindowsConsole,Oi as withSpan,Di as withSpanSync,Dn as writeBundleDecision,y as writeMarkdownlintRule,Vt as writeRootGitignoreForNewRepo,g as writeStateManifest,Ht as writeTargetVersion,bt as writeTracker};
@@ -0,0 +1 @@
1
+ import{D as e,g as t,r as n,v as r}from"./start-DDMuipA1.mjs";export{n as bootStartServer,t as resolveBundledReactShellDir,r as resolveHost,e as startCommand};
@@ -0,0 +1,10 @@
1
+ import{M as e}from"./sleep-ChZE9826.mjs";import{As as t,Fs as n,Is as r,Ls as i,Ns as a,Q as o,Y as s}from"./src-DMpGVIiQ.mjs";import{Mn as c,a as l,ui as u}from"./src-CwuSSZyu.mjs";import{n as d,r as f,t as p}from"./esm-DmX1RzAi.mjs";import{a as m,c as h,d as g,i as _,o as v,r as y,t as b}from"./acp-harness-probe-CC4ubVJ1.mjs";import{n as ee}from"./constants-Cot22XLz.mjs";import{spawn as x}from"node:child_process";import{basename as S,join as C,posix as w,resolve as T}from"node:path";import{closeSync as E,existsSync as D,mkdirSync as O,openSync as k}from"node:fs";import{rm as A}from"node:fs/promises";import{setTimeout as j}from"node:timers/promises";function M(e){return w.join(w.dirname(e),`..`,`Frameworks`,`OpenKnowledge Server.app`,`Contents`,`MacOS`,`OpenKnowledge Helper`)}const N=/\/[^/]+\.app\/Contents\/MacOS\/[^/]+$/;function P(e){if(e.platform!==`darwin`||!N.test(e.execPath))return null;let t=M(e.execPath);return e.exists(t)?t:null}function F(e={}){let t=e.execPath??process.execPath,n=e.platform??process.platform,r=e.argv??process.argv,i=e.exists??D,a=r[1];return a?{command:P({execPath:t,platform:n,exists:i})??t,prefixArgs:[a]}:(console.warn(`[self-spawn] process.argv[1] is empty — falling back to \`npx -y @inkeep/open-knowledge@latest\`. This re-introduces the registry-fetch surface that re-exec was fixing. Observed argv: ${JSON.stringify(r)}`),{command:`npx`,prefixArgs:[`-y`,`@inkeep/open-knowledge@latest`]})}function I(e,t){return e.bind?.[0]??e.host??t.HOST??`127.0.0.1`}function L(e){if(e===`ui`||e===`server`)return e;throw new d(`--only must be 'ui' or 'server'`)}function R(e=D){let t=import.meta.dirname??new URL(`.`,import.meta.url).pathname;return[T(t,`public`),T(t,`../../app/dist`),T(t,`../../../app/dist`)].find(t=>e(t))}function z(e){if(e.explicitDir!==void 0)return{dir:e.explicitDir,missingBundle:!1};if(e.only===`server`||e.uiPortSet&&!e.remoteEnabled)return{dir:void 0,missingBundle:!1};let t=e.findBundledDir();return{dir:t,missingBundle:t===void 0}}function B(t){if(t===`off`)return`off`;if(!e.test(t))throw new d(`--idle-shutdown must be 'off' or a duration like 90s, 30m, 2h`);return t}function V(e){return e===`localhost`||e===`::1`||e===`[::1]`||e.startsWith(`127.`)}function te(e){return!e.flagBindSet&&!e.okBindSet&&e.hostEnvSet&&e.fileBindCount>1}function ne(e){return!e.openBrowser||e.remoteEnabled||e.ephemeral||e.only===`server`||!e.servesUi?!1:e.legacyOpen?!0:(e.explicitOn||V(e.host))&&e.isTTY}function re(e,t){return t&&(e===`::`||e===`::1`||e===`[::1]`||e===`localhost`||e===`0.0.0.0`)?{host:`127.0.0.1`,coerced:!0}:{host:e,coerced:!1}}function ie(e){let t=S(e).replace(/[^\x20-\x7E]/g,``).trim().slice(0,64);return`open-knowledge-server ${t.length>0?t:`unknown`}`}var H=class extends Error{cwd;constructor(e){super("This directory isn't set up yet. Run `ok init` first, then `ok start` again."),this.name=`OkDirMissingError`,this.cwd=e}};function U(e){return e.uiLock?e.isAlive(e.uiLock.pid)?{action:`skip`,reason:`alive`,pid:e.uiLock.pid,port:e.uiLock.port}:{action:`spawn`,reason:`stale`,stalePid:e.uiLock.pid}:{action:`spawn`,reason:`absent`}}function W(e){D(e.lockDir)||O(e.lockDir,{recursive:!0});let t=k(C(e.lockDir,o),`w`),n=e.spawn??x,{PORT:r,...i}=process.env,a=F();try{let r=n(a.command,[...a.prefixArgs,...e.args??[`ui`]],{detached:!0,stdio:[`ignore`,`ignore`,t],windowsHide:!0,cwd:e.cwd,env:{...i,ELECTRON_RUN_AS_NODE:`1`}});return r.unref(),r}finally{try{E(t)}catch{}}}function ae(e,t,n,r=!1){return e??(n!==void 0||r?void 0:t)}function oe(e,t){return e!==void 0&&t!==null&&t.port>0&&t.draining!==!0}function G(e,t,n){return e??+(t!=null&&!n)}async function K(e){let t=e.spawn??x,n=F(),{PORT:r,...i}=process.env,a=t(n.command,[...n.prefixArgs,`ui`,`--port`,String(e.uiPort)],{cwd:e.cwd,stdio:`inherit`,windowsHide:!0,env:{...i,ELECTRON_RUN_AS_NODE:`1`}}),o=!1,s=e=>{o=!0;try{a.kill(e)}catch{}},c=()=>s(`SIGINT`),l=()=>s(`SIGTERM`);process.once(`SIGINT`,c),process.once(`SIGTERM`,l),await new Promise(e=>{a.on(`exit`,(t,n)=>{process.exitCode=G(t,n,o),e()}),a.on(`error`,t=>{console.error(`[start] connect fallback: failed to spawn ok ui — ${t instanceof Error?t.message:String(t)}`),process.exitCode=1,e()})}),process.removeListener(`SIGINT`,c),process.removeListener(`SIGTERM`,l)}async function q(e){let t=e.now()+e.timeoutMs;for(;e.now()<t;){let t=e.readUiLock();if(t&&t.port>0)return t.port;await e.sleep(e.pollIntervalMs)}let n=e.readUiLock();return n&&n.port>0?n.port:null}const se=s;function J(e,t,n=e=>A(e,{recursive:!0,force:!0})){return async()=>{try{await e()}finally{try{await n(t)}catch(e){process.stderr.write(`[start] ephemeral temp dir reap failed for ${t}: ${e instanceof Error?e.message:String(e)}\n`)}}}}function Y(e,t={}){let n=t.exit??(e=>process.exit(e)),r=t.getActiveHandles??(()=>{let e=process._getActiveHandles;return e?e.call(process):null});return async()=>{let i=!1;try{await e()}catch(e){i=!0,t.log?.error({err:e},`idle-shutdown: destroy failed — exiting anyway`)}finally{let e=null;try{let t=r();if(t!==null){e={};for(let n of t){let t=n?.constructor?.name??`unknown`;e[t]=(e[t]??0)+1}}}catch{e=null}t.log?.info({event:`idle-shutdown-exit`,exitCode:+!!i,openHandles:e??{},handlesAvailable:e!==null},`idle-shutdown: teardown finished — exiting process`),n(+!!i)}}}async function X(e){let t=e.sigtermGraceMs??se,n=e.sigtermPollIntervalMs??200,r=e.sleep??(e=>j(e)),i=e.reason??`teardown`;try{let a=e.readUiLock(),o=e.spawnedUiPid();if(a&&e.isAlive(a.pid)&&a.pid!==o)e.log?.info({pid:a.pid,port:a.port,spawnedUiPid:o},`${i}: ui.lock holder is not our spawned sibling — leaving it alone`);else if(a&&e.isAlive(a.pid))try{e.killPid(a.pid,`SIGTERM`),e.log?.info({pid:a.pid,port:a.port},`${i}: SIGTERM UI sibling`);let o=Date.now()+t;for(;Date.now()<o&&e.isAlive(a.pid);)await r(n);if(e.isAlive(a.pid))try{e.killPid(a.pid,`SIGKILL`),e.log?.warn({pid:a.pid,graceMs:t},`${i}: SIGTERM grace expired — escalated to SIGKILL`)}catch(t){e.log?.error({pid:a.pid,err:t},`${i}: SIGKILL failed`)}}catch(t){e.log?.warn({pid:a.pid,err:t},`${i}: failed to SIGTERM UI sibling`)}}catch(t){e.log?.warn({err:t},`${i}: UI lookup failed; proceeding`)}}function Z(e){let{destroy:t,...n}=e;return async()=>{await X({...n,reason:`idle-shutdown`}),await t()}}async function ce(e){let{config:t,cwd:n,host:r}=e,i=e.skipAutoInit??!1,a=e.skipUiAutoSpawn??!1,o=e.idleThresholdMs===void 0?18e5:e.idleThresholdMs,{existsSync:s,mkdirSync:d}=await import(`node:fs`),{basename:f,dirname:p}=await import(`node:path`),{bootServer:m,getLogger:_,isProcessAlive:v,readUiLock:y,resolveContentDir:ee,resolveLockDir:x,waitForServerLockDrain:S}=await import(`./src-DR51i3QD.mjs`),C=e.log??_(`start`),w=e.singleFile!==void 0,T=e.projectDir??n,E=w?l(e.singleFile).canonicalFilePath:void 0,D=E?p(E):void 0,O=E?f(E):void 0;if(!w){if(!i&&!c(n))throw new H(n);let t=process.env.OK_RECLAIM_DISABLE??null,r=e=>{let t=typeof e.event==`string`?e.event:``;(t.endsWith(`-failed`)||t.endsWith(`-error`)||t.endsWith(`-missing`))&&C.warn({event:e},`[start] reclaim sweep reported a problem`)};try{(e.repairMcpConfigsFn??(await import(`./repair-mcp-configs-DGTO7xF0.mjs`)).repairMcpConfigs)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){C.warn({err:e},`[start] mcp-config repair sweep failed; continuing`)}try{(e.repairLaunchJsonFn??(await import(`./repair-launch-json-aJerBRgL.mjs`)).repairLaunchJson)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){C.warn({err:e},`[start] launch.json repair sweep failed; continuing`)}try{await(e.repairSkillsFn??(await import(`./repair-skills-Dz417BMs.mjs`)).repairSkills)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){C.warn({err:e},`[start] skill repair sweep failed; continuing`)}}let k=D??ee(t,n);!w&&!s(k)&&(d(k,{recursive:!0}),C.info({contentDir:k},`Created content directory`));let A=null,M=null,N=async({lockDir:t})=>{if(A=U({uiLock:y(t),isAlive:v}),A.action===`spawn`&&!a)try{let r=e.uiPort===void 0?void 0:[`ui`,`--port`,String(e.uiPort)];M=W({lockDir:t,cwd:n,spawn:e.spawn,args:r}).pid??null,C.info({reason:A.reason,uiPort:e.uiPort},`[start] auto-spawned ok ui sibling`)}catch(e){console.warn(`[start] failed to auto-spawn ok ui: ${e instanceof Error?e.message:String(e)}`)}else A.action===`skip`&&C.info({port:A.port,pid:A.pid},`UI already running at port ${A.port}`)},P=e.reactShellDistDir===void 0,F=g(),I=u();{let e=x(w?T:n),t=Date.now(),r=await S(e);r!==`no-drain`&&C.info({event:`start-waited-for-draining-predecessor`,outcome:r,waitedMs:Date.now()-t,drainLockDir:e},r===`released`?`[start] predecessor server finished draining — proceeding`:`[start] predecessor server still draining after wait — proceeding to collide`)}let L=await m({config:t,contentDir:k,projectDir:w?T:n,contentRoot:w?void 0:t.content.dir,port:e.port,host:r,...e.enableRemote===!0?{enableRemote:!0}:{},quiet:!1,detectGh:h,tokenStore:F,embeddingsKeyStore:I,...w?{ephemeral:!0,singleDocRelPath:O,gitEnabled:!1,gitPreflight:()=>({ok:!0,version:`0.0.0`,resolvedPath:`git`,source:`PATH`})}:{},localOpCliArgs:[process.execPath,process.argv[1]],probeHarnessManagedMcpEntry:(e,t)=>b(e,t),attachUiSibling:P,idleShutdownMs:o,...e.serverRuntime===void 0?{}:{serverRuntime:e.serverRuntime},...e.bind===void 0?{}:{bind:e.bind},skipAutoInit:!0,...P?{spawnUiSiblingFn:N}:{},idleShutdownHandler:t=>{let n=Z({readUiLock:()=>y(L.lockDir),spawnedUiPid:()=>M,isAlive:v,killPid:(e,t)=>{process.kill(e,t)},destroy:t,log:C});return Y(w?J(n,T):n,{log:C,exit:e.idleExit})},log:C,...e.serveContentAssets===void 0?{}:{serveContentAssets:e.serveContentAssets},...e.reactShellDistDir?{reactShellDistDir:e.reactShellDistDir}:{}});A||={action:`skip`,reason:`alive`,pid:0,port:0};let R=A,z=null;if(R.action===`skip`)z=R.port>0?R.port:null;else if(!a){let t=e.uiBindTimeoutMs??3e3;z=await q({readUiLock:()=>y(L.lockDir),now:Date.now,sleep:e=>j(e),timeoutMs:t,pollIntervalMs:50}),z===null&&C.warn({timeoutMs:t},`[start] ok ui did not bind within timeout — banner falls back to API URL`)}return{httpServer:L.httpServer,destroy:L.destroy,lockDir:L.lockDir,contentDir:k,port:L.port,ready:L.ready,degraded:L.degraded,uiSpawnDecision:A,spawnedUiPid:M,resolvedUiPort:z}}function le(e){if(e===`browser`||e===`app`)return e;throw new d(`--mode must be 'browser' or 'app'`)}function ue(e){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<1||t>65535)throw new d(`--ui-port must be a port number between 1 and 65535`);return t}function de(e){return e.OK_CONSOLE_LEVEL!==void 0||e.LOG_LEVEL!==void 0?null:`warn`}function fe(e){let t=[`Stopping OpenKnowledge…`,`Saving pending changes and releasing the server lock — this can take a few seconds.`];return e===`SIGINT`&&t.push(`Press Ctrl+C again to force quit.`),t}async function pe(e,o){let s=de(process.env);s!==null&&(process.env.OK_CONSOLE_LEVEL=s);let{renderBanner:c}=await import(`./banner-B6HYYw6k.mjs`),{accent:l,dim:u,error:d,warning:f}=await import(`./colors-MGDi6UGf.mjs`),p=process.cwd(),m=o.remote!==void 0&&o.remote!==!1,h=typeof o.remote==`string`?o.remote:void 0,g=h===void 0?e:{...e,remote:{...e.remote,url:h}};process.title=ie(p),m&&(typeof g.remote?.url!=`string`||g.remote.url===``)&&(console.error(d("--remote requires a public tunnel URL — pass it (`ok start --remote https://<your-tunnel-host>`) or set remote.url in .ok/config.yml.")),process.exit(78)),m&&console.warn(f([``,`⚠ REMOTE ACCESS ENABLED — no server-side authentication.`,` Anyone who can reach ${g.remote?.url} has FULL control of this`,` knowledge base, including sync, publishing, credentials, and local operations.`,` Restrict who can reach it at the tunnel: ngrok OAuth, Cloudflare Access,`,` Tailscale ACLs, or equivalent edge auth.`,``].join(`
2
+ `)));let _;try{_=i(process.env)}catch(e){throw e instanceof n&&(console.error(d(e.message)),process.exit(78)),e}for(let e of _.diagnostics)console.warn(f(`[config] ${e.message}`));let v=r(g,_.layer),y=_.overrides.some(e=>e.envVar===`OK_BIND`),b=o.bind!==void 0&&o.bind.length>0?o.bind:o.host===void 0?void 0:[o.host],x=process.env.HOST,S=x!==void 0&&x.trim()!==``?x:void 0,C=a(v),w=b??(y||S===void 0?[...C.bind]:[S]);te({flagBindSet:b!==void 0,okBindSet:y,hostEnvSet:S!==void 0,fileBindCount:C.bind.length})&&console.warn(f(`[config] HOST=${S} overrides server.bind — dropping the file-configured addresses (${C.bind.join(`, `)}). Use OK_BIND with a space-separated list to keep multiple binds.`));let T=w[0]??`127.0.0.1`,E=re(T,m);E.coerced&&console.warn(`remote access is enabled and ${T} is not an IPv4 loopback bind — tunnels proxy to 127.0.0.1, so binding ${T} would leave the tunnel dialing a dead port. Using 127.0.0.1.`);let D=E.host,O=m?[D]:w,k=a(r(v,{server:{bind:O}}));if(!m&&k.allowExternal&&(!k.loopbackOnly||k.publicUrl)){let e=k.publicUrl??k.bind.join(`, `);console.warn(f([``,`⚠ EXTERNAL ACCESS ENABLED (server.allowExternal) — no server-side authentication.`,` This server is reachable beyond this machine (${e}). Anyone who can`,` reach it has FULL control of this knowledge base — sync, publishing, GitHub`,` credentials, and local operations (clone, sign-in, repo spawn).`,` Restrict who can reach it at the edge: a Tailscale ACL, a reverse proxy with`,` auth (Cloudflare Access, oauth2-proxy), or a firewall.`,``].join(`
3
+ `)))}let A=o.port===void 0?void 0:Number(o.port),M=_.overrides.find(e=>e.envVar===`PORT`)?.value,N=o.uiPort===void 0?void 0:Number(o.uiPort),P=a(g).port,F=g.server?.port;m&&A===void 0&&M!==void 0&&console.warn(`remote access is enabled — ignoring env PORT=${process.env.PORT}; the tunnel's port mapping targets the stable remote port (${P??24550}). Pass --port to override deliberately.`);let I=ae(A,M,N,m)??(m?P??24550:F);if(N!==void 0){let{readServerLock:e,resolveLockDir:t}=await import(`./src-DR51i3QD.mjs`);if(oe(N,e(t(p)))){await K({cwd:p,uiPort:N});return}}let L=z({explicitDir:o.reactShellDistDir,only:o.only,uiPortSet:N!==void 0,remoteEnabled:m,findBundledDir:R}),B=L.dir;L.missingBundle&&console.warn(m?`remote access: bundled web UI not found — serving /mcp and /api only over the tunnel.`:`bundled web UI not found — serving /api and /mcp only. Reinstall @inkeep/open-knowledge, or build packages/app in a source checkout.`);let V;try{V=await ce({config:g,cwd:p,host:D,port:I,bind:O,...N===void 0?{}:{uiPort:N},...o.serveContentAssets===void 0?{}:{serveContentAssets:o.serveContentAssets},...B?{reactShellDistDir:B}:{},...o.only===`server`||L.missingBundle?{skipUiAutoSpawn:!0}:{},idleThresholdMs:t(o.idleShutdown??k.idleShutdown),serverRuntime:k,...o.singleFile?{singleFile:o.singleFile}:{},...o.projectDir?{projectDir:o.projectDir}:{},...m?{enableRemote:!0}:{}})}catch(e){e instanceof H&&(console.error(d(e.message)),process.exit(1));let t=await import(`./src-DR51i3QD.mjs`);if((e instanceof t.GitNotAvailableError||e instanceof t.GitTooOldError)&&process.exit(78),e instanceof t.RemoteConfigError&&(console.error(d(e.message)),process.exit(78)),e instanceof t.ExposureConsentError&&(console.error(d(e.message)),process.exit(78)),(e instanceof t.SingleFileNotFoundError||e instanceof t.SingleFileNotAFileError||e instanceof t.SingleFileNotMarkdownError)&&(console.error(d(e.message)),process.exit(1)),N!==void 0&&$(e,t)){await K({cwd:p,uiPort:N});return}if(N===void 0&&$(e,t)){let e=t.resolveLockDir(p),n=null;try{n=await Q({readServerLock:()=>t.readServerLock(e),readUiLock:()=>t.readUiLock(e),now:Date.now,sleep:e=>j(e),timeoutMs:3e3,pollIntervalMs:50})}catch(e){process.stderr.write(`[start] spawn-or-reuse: lock poll failed (${e instanceof Error?e.message:String(e)}) — falling back to the collision message\n`)}if(n!==null){let[e,...t]=me(n);console.log(l(e));for(let e of t)console.log(u(e));process.exit(0)}}let n=he(e,p,t);n!==null&&(console.error(d(n)),process.exit(1)),console.error(`${d(`Failed to start:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exit(1)}let U=!1,W=async e=>{if(U)return;U=!0;let[t,...n]=fe(e);console.log(l(`\n${t}`));for(let e of n)console.log(u(` ${e}`));if(V.spawnedUiPid!==null)try{let{getLogger:e,isProcessAlive:t,readUiLock:n}=await import(`./src-DR51i3QD.mjs`);await X({readUiLock:()=>n(V.lockDir),spawnedUiPid:()=>V.spawnedUiPid,isAlive:t,killPid:(e,t)=>process.kill(e,t),log:e(`start`),reason:`shutdown`})}catch(e){console.error(`${d(`ui sibling teardown failed:`)} ${e instanceof Error?e.stack??e.message:String(e)}`)}try{await V.destroy()}catch(e){console.error(`${d(`destroy() failed:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exitCode=1}process.exit(process.exitCode??0)};process.once(`SIGINT`,()=>{W(`SIGINT`)}),process.once(`SIGTERM`,()=>{W(`SIGTERM`)});let G=D.includes(`:`)&&!D.startsWith(`[`)?`[${D}]`:D,q=`http://${G}:${V.port}`,se=D===`0.0.0.0`||D===`::`?`http://0.0.0.0:${V.port}`:void 0,J=V.resolvedUiPort,Y=J!==null&&J>0?`http://${G}:${J}`:q;console.log(c({name:`open-knowledge`,version:ee,localUrl:Y,apiUrl:Y===q?void 0:q,networkUrl:se,nextSteps:[`Open the Editor URL in your browser to start editing.`]}));let Z={"shadow-repo":`Version history and branch-switch safety unavailable`,"file-watcher":`External file changes will not sync to the editor`,"head-watcher":`Git branch switches may cause document inconsistency`};V.ready.then(async()=>{if(V.degraded.length>0){console.log();for(let e of V.degraded){let t=Z[e]??`${e} (check server logs for details)`;console.warn(` ${f(`⚠`)} ${f(e)}: ${u(t)}`)}console.log()}if(ne({openBrowser:o.openBrowser!==!1&&k.openBrowser,explicitOn:o.openBrowser!==!1&&v.server?.openBrowser===!0,legacyOpen:o.open===!0,host:D,isTTY:process.stdout.isTTY===!0,remoteEnabled:m,ephemeral:o.singleFile!==void 0,only:o.only,servesUi:B!==void 0})){let{openBrowser:e}=await import(`./open-browser-De70N-tU.mjs`);e(Y)}}).catch(e=>{console.error(` ${d(`Server initialization failed:`)} ${e instanceof Error?e.message:String(e)}`)})}async function Q(e){let t=e.now()+e.timeoutMs,n=e.readServerLock();for(;n!==null&&n.draining!==!0&&n.port<=0&&e.now()<t;)await e.sleep(e.pollIntervalMs),n=e.readServerLock();if(n===null||n.draining===!0||n.port<=0)return null;if(n.capabilities?.includes(`ui`)===!0&&n.url!==void 0)return{url:n.url,kind:n.kind,pid:n.pid,servesUi:!0};let r=e.readUiLock();return r!==null&&r.port>0?{url:r.url??`http://localhost:${r.port}`,kind:n.kind,pid:n.pid,servesUi:!1}:{url:n.url??`http://127.0.0.1:${n.port}`,kind:n.kind,pid:n.pid,servesUi:!1}}function me(e){return[`${e.kind===`mcp-spawned`?`An MCP-spawned OpenKnowledge server is already running on this project`:`OpenKnowledge is already running on this project`} (pid ${e.pid}).`,` ${e.url}`,"Leaving it running — run `ok stop` first if you want a fresh server."]}function $(e,t){let n=t.ServerLockCollisionError;return n!==void 0&&e instanceof n}function he(e,t,n){let r=n.ServerLockCollisionError;if(r===void 0||!(e instanceof r))return null;try{let e=n.readServerLock(n.resolveLockDir(t));return e&&e.kind===`mcp-spawned`?"An MCP-spawned server holds this lock; it should release on idle-shutdown (~30 min). Or run `ok stop`.":"OpenKnowledge server is already running on this project — check `ok status` or `ok stop`."}catch{return null}}function ge(e){return new p(`start`).description(`Start the OpenKnowledge server (UI + API + MCP + collab on one port)`).option(`-p, --port <port>`,`Server port`,void 0).option(`--ui-port <port>`,`Pin the ok ui sibling to <port> and connect (not exit) if a server already runs here — the worktree-preview recipe path`,ue).option(`--bind <address>`,`Bind address (repeatable; default 127.0.0.1 — loopback only)`,(e,t)=>[...t??[],e]).addOption(new f(`-H, --host <host>`,`Deprecated alias of --bind`).hideHelp()).option(`--no-open-browser`,`Do not open the browser after start (interactive loopback starts open it by default)`).addOption(new f(`--open`,`Deprecated: force-open the browser after start`).hideHelp()).option(`--only <module>`,`Serve one module: 'server' (API + MCP only, no shell or browser) or 'ui' (shell + proxy only; requires --server-url)`,L).option(`--server-url <url>`,`Project-server URL the --only ui process proxies to (e.g. http://127.0.0.1:24550)`).option(`--idle-shutdown <duration>`,`Shut the server down after this long with no connected clients ('off', or a duration like 90s, 30m, 2h; default 30m)`,B).option(`--mode <mode>`,`Force dispatch mode: 'browser' or 'app'`,le).option(`--serve-content-assets`,`Serve content assets from this server (now the default; kept for compatibility)`).option(`--react-shell-dist-dir <path>`,`Serve React shell from <path> (suppresses ok ui sibling)`).option(`--single-file <path>`,`No-project ephemeral single-file mode: scope the server to one markdown file (git + MCP off)`).option(`--project-dir <dir>`,`Throwaway project root for --single-file (where ephemeral .ok/ state lives)`).option(`--remote [url]`,`Serve through a tunnel: admit requests carrying the tunnel Host with NO server-side auth (anyone who can reach the URL has full control — restrict access at the tunnel with edge auth). Bare --remote uses remote.url from .ok/config.yml; --remote <url> supplies it for this run.`).action(async t=>{let n=e();if(t.serverUrl!==void 0&&t.only!==`ui`&&(process.stderr.write(`error: option '--server-url' requires '--only ui'
4
+ `),process.exit(2)),t.only===`server`&&t.reactShellDistDir!==void 0&&(process.stderr.write(`error: option '--only server' cannot be combined with '--react-shell-dist-dir'
5
+ `),process.exit(2)),t.only===`ui`){t.serverUrl===void 0&&(process.stderr.write(`error: '--only ui' requires '--server-url <url>' (where the project server runs)
6
+ `),process.exit(2)),t.mode===`app`&&(process.stderr.write(`error: option '--only ui' cannot be combined with '--mode app'
7
+ `),process.exit(2)),t.remote!==void 0&&t.remote!==!1&&(process.stderr.write(`error: option '--only ui' cannot be combined with '--remote'
8
+ `),process.exit(2));let{runUiCommand:e}=await import(`./ui-BBGFVQDX.mjs`);await e(n,{...t.port===void 0?{}:{port:String(t.port)},...t.bind?.[0]===void 0?t.host===void 0?{}:{host:t.host}:{host:t.bind[0]},upstreamUrl:t.serverUrl});return}if(t.mode===`app`){t.open&&(process.stderr.write(`error: option '--mode=app' cannot be combined with '--open' (--open opens a browser tab against the local server, which app mode does not boot)
9
+ `),process.exit(2));let e=[];if(t.port!==void 0&&e.push(`--port`),t.uiPort!==void 0&&e.push(`--ui-port`),t.bind!==void 0&&e.push(`--bind`),t.host!==void 0&&e.push(`--host`),t.only!==void 0&&e.push(`--only`),t.serverUrl!==void 0&&e.push(`--server-url`),t.idleShutdown!==void 0&&e.push(`--idle-shutdown`),t.openBrowser===!1&&e.push(`--no-open-browser`),e.length>0){let t=process.env.OK_LOG_LEVEL??`info`;(t===`debug`||t===`trace`)&&console.error(`--mode=app: ignoring ${e.join(`, `)}`)}let n=_(y());if(n.available){m({spawn:x},n);return}console.error(v(n.reason)),process.exit(1)}await pe(n,t)})}export{J as A,oe as C,ge as D,W as E,F as M,X as O,pe as S,te as T,ae as _,re as a,de as b,U as c,fe as d,V as f,R as g,L as h,Z as i,Y as j,he as k,ie as l,B as m,q as n,G as o,$ as p,ce as r,K as s,H as t,me as u,I as v,ne as w,z as x,Q as y};
10
+ //# sourceMappingURL=start-DDMuipA1.mjs.map
@@ -0,0 +1 @@
1
+ import{c as e}from"./ui-CNA2d6cp.mjs";export{e as runUiCommand};
@@ -0,0 +1,3 @@
1
+ import{Q as e,it as t,tt as n}from"./sleep-ChZE9826.mjs";import{Ro as r,Ya as i,st as a}from"./src-DMpGVIiQ.mjs";import{An as o,kn as s,wn as c}from"./src-CwuSSZyu.mjs";import{t as l}from"./esm-DmX1RzAi.mjs";import{randomUUID as u}from"node:crypto";import{createServer as d,request as f}from"node:http";import{connect as p}from"node:net";function m(e,t,n,r,a){let o=`urn:uuid:${u()}`;if(e.headersSent||e.writableEnded||e.destroyed){console.error(`[ok ui] emitProblem called after headers sent — suppressed`,{type:n,status:t,instance:o});return}let s={type:n,title:r,status:t,instance:o,...a===void 0?{}:{detail:a}},c=i.safeParse(s);if(!c.success){console.error(`[ok ui] emitProblem produced an invalid ProblemDetails body:`,{issues:c.error.issues,originalStatus:t,body:s}),e.writeHead(500,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify({type:`urn:ok:error:internal-server-error`,title:`Internal server error.`,status:500,instance:o}));return}e.writeHead(t,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify(s))}const h=1e4;function g(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!o(n))return m(t,403,`urn:ok:error:loopback-required`,`Request must originate from a loopback address.`),!0;if(!s(e.headers.host))return m(t,403,`urn:ok:error:host-not-allowed`,`Host header is not in the loopback allowlist.`),!0;let r=e.headers.origin;return r!==void 0&&!c(r)?(m(t,403,`urn:ok:error:invalid-origin`,`Origin header is not in the loopback allowlist.`),!0):!1}const _=3e4;function v(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!o(n)||!s(e.headers.host))return t.destroy(),!0;let r=e.headers.origin;return typeof r==`string`&&!c(r)?(t.destroy(),!0):!1}function y(e,t,n,r,i,a){a.add(t),t.once(`close`,()=>a.delete(t));let o=p({host:r,port:i,timeout:h});a.add(o),o.once(`close`,()=>a.delete(o));let s=!1,c=n=>{if(!s){if(s=!0,n!==void 0){let t=n.err;console.warn(JSON.stringify({event:n.event,upstreamHost:r,upstreamPort:i,url:e.url,code:t instanceof Error?t.code:void 0,message:t instanceof Error?t.message:void 0}))}try{o.destroy()}catch{}try{t.destroy()}catch{}}};o.once(`connect`,()=>{o.setTimeout(0);let a=[`${e.method??`GET`} ${e.url??`/`} HTTP/1.1`,`host: ${r}:${i}`];for(let[t,n]of Object.entries(e.headers))if(t.toLowerCase()!==`host`&&n!==void 0)if(Array.isArray(n))for(let e of n)a.push(`${t}: ${e}`);else a.push(`${t}: ${n}`);try{o.write(`${a.join(`\r
2
+ `)}\r\n\r\n`),n.length>0&&o.write(n)}catch(e){c({event:`proxy-upgrade-handshake-write-failed`,err:e});return}o.on(`data`,e=>{t.writable&&t.write(e)}),t.on(`data`,e=>{o.writable&&o.write(e)})}),o.once(`timeout`,()=>{c({event:`proxy-upgrade-upstream-connect-timeout`})}),o.on(`error`,e=>c({event:`proxy-upgrade-upstream-error`,err:e})),t.on(`error`,e=>c({event:`proxy-upgrade-client-error`,err:e})),o.once(`close`,()=>c()),t.once(`close`,()=>c())}const b=[`connection`,`keep-alive`,`proxy-authenticate`,`proxy-authorization`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`cookie`,`set-cookie`];async function x(e){let t=e.upstreamTimeoutMs??h,n=new Set,r=d((n,r)=>{g(n,r)||S(n,r,e.upstreamHost,e.upstreamPort,t)});r.on(`upgrade`,(t,r,i)=>{v(t,r)||y(t,r,i,e.upstreamHost,e.upstreamPort,n)}),await new Promise((t,n)=>{let i=e=>n(e);r.once(`error`,i),r.listen(e.listenPort,e.host,()=>{r.off(`error`,i),t()})});let i=r.address();return{httpServer:r,port:typeof i==`object`&&i?i.port:e.listenPort,close:()=>new Promise(e=>{for(let e of n)try{e.destroy()}catch{}n.clear(),r.close(()=>e()),r.closeIdleConnections()})}}function ee(e,t,n){S(e,t,n.upstreamHost,n.upstreamPort,n.upstreamTimeoutMs??h)}function S(e,t,n,r,i){let a={...e.headers};delete a.host;for(let e of b)delete a[e];e.setTimeout(_,()=>{if(t.headersSent)try{t.end()}catch{}else try{m(t,408,`urn:ok:error:request-timeout`,`Proxy request exceeded the per-request deadline.`,`Slow-loris-class: client did not finish within ${_/1e3}s.`)}catch{}try{e.socket?.destroy()}catch{}});let o=f({host:n,port:r,method:e.method,path:e.url,headers:{...a,host:`${n}:${r}`}},e=>{let n={...e.headers};for(let e of b)delete n[e];t.writeHead(e.statusCode??502,n),e.pipe(t),e.once(`error`,()=>{try{t.end()}catch{}})});i>0&&o.setTimeout(i,()=>{if(!t.headersSent)m(t,504,`urn:ok:error:gateway-timeout`,`Upstream did not respond before the gateway deadline.`,`Upstream timeout: ${i/1e3}s elapsed without a response.`);else try{t.end()}catch{}o.destroy()}),o.on(`error`,()=>{if(!t.headersSent)m(t,502,`urn:ok:error:collab-server-not-running`,`Collab server is unreachable.`,`Upstream connection failed or dropped before a response was received.`);else try{t.end()}catch{}}),e.on(`error`,()=>{o.destroy()}),e.pipe(o)}const C=720*60*1e3,w=39847;async function T(e){await Promise.all(e.map(e=>new Promise(t=>{e.close(()=>t())})))}function E(e){let t;try{t=new URL(e)}catch{throw Error(`Invalid --server-url '${e}' — expected e.g. http://127.0.0.1:24550`)}if(t.protocol!==`http:`)throw Error(`--server-url must be http: (got '${t.protocol}//') — the UI proxy speaks plain HTTP; terminate TLS at your ingress`);let n=t.port===``?80:Number(t.port);return{host:t.hostname.replace(/^\[(.+)\]$/,`$1`),port:n}}async function D(i){let{existsSync:o}=await import(`node:fs`),{createServer:s}=await import(`node:http`),{resolve:c}=await import(`node:path`),{acquireUiLock:l,createAssetServeMiddleware:u,createContentFilter:d,readServerLock:f,releaseUiLock:p,updateUiLockPort:h}=await import(`./src-DR51i3QD.mjs`),{default:_}=await import(`./build-BcDJ6qQ2.mjs`),{resolveContentDir:b,resolveLockDir:x}=await import(`./src-DR51i3QD.mjs`),S=b(i.config,i.cwd),C=x(i.cwd);l(C,{port:0,worktreeRoot:i.cwd});let w=import.meta.dirname??new URL(`.`,import.meta.url).pathname,T=[c(w,`public`),c(w,`../../app/dist`),c(w,`../../../app/dist`)],D=i.assetDir??T.find(e=>o(e)),k=D?_(D,{single:!0,gzip:!0,etag:!0,dev:!0,extensions:[]}):null,A=o(S)?u({contentFilter:d({projectDir:i.cwd,contentDir:S}),contentSirv:_(S,{dotfiles:!1,dev:!0,extensions:[]}),inlineExtensions:t,assetExtensions:e,blocklistExtensions:n}):null,j=i.upstreamUrl===void 0?null:E(i.upstreamUrl),M=()=>{if(j!==null)return j;let e=f(C);return!e||e.port<=0?null:{host:r,port:e.port}},N=i.port,P=null,F=(e,t)=>{let n=e.url?.split(`?`)[0];if((n===`/`||n===``)&&(e.url=`/index.html`),!(n?.startsWith(`/api/`)&&g(e,t))){if(n===`/api/config`&&(e.method===`GET`||e.method===`HEAD`)){P?.();let n=e.headers.host??`localhost:${N}`,r=M()===null?null:`ws://${n}/collab`,i=JSON.stringify({collabUrl:r,previewUrl:null,port:N});t.setHeader(`Content-Type`,`application/json`),t.setHeader(`Cache-Control`,`no-store`),t.setHeader(`X-Content-Type-Options`,`nosniff`),t.statusCode=200,e.method===`HEAD`?t.end():t.end(i);return}if(n?.startsWith(`/api/`)){P?.();let r=M();if(r===null){m(t,503,`urn:ok:error:collab-server-not-running`,"Collab server not running. Start `ok start` or run `ok status`.",`Path: ${n}`);return}ee(e,t,{upstreamHost:r.host,upstreamPort:r.port});return}if(k&&n?.startsWith(`/assets/`)){k(e,t,()=>{A?A(e,t,()=>O(t)):O(t)});return}if(A){A(e,t,()=>{k?k(e,t):O(t)});return}if(k){k(e,t);return}O(t)}},I=new Set,L=(e,t,n)=>{if(v(e,t))return;let r=e.url?.split(`?`)[0]??``;if(r!==`/collab`&&!r.startsWith(`/collab/`)){t.destroy();return}let i=M();if(i===null){console.warn(JSON.stringify({event:`ok-ui-upgrade-no-collab-lock`,url:r,reason:"server.lock missing or port unbound — is `ok start` running?"})),t.destroy();return}y(e,t,n,i.host,i.port,I)},R=()=>{for(let e of I)try{e.destroy()}catch{}I.clear()},z=i.host===void 0?[`::1`,`127.0.0.1`]:[i.host],B=[],V=i.port,te=e=>e instanceof Error&&e.code===`EADDRINUSE`,H=async()=>{await Promise.all(B.splice(0).map(e=>new Promise(t=>{try{e.close(()=>t())}catch{t()}})))},U=async e=>{V=e;for(let e of z){let t=s(F);t.on(`upgrade`,L),B.push(t),await new Promise((n,r)=>{let i=e=>r(e);t.once(`error`,i),t.listen(V,e,()=>{t.off(`error`,i);let e=t.address();typeof e==`object`&&e&&(V=e.port),n()})})}};try{try{await U(i.port)}catch(e){if(i.fallbackToKernel===!0&&te(e))await H(),await U(0);else throw e}}catch(e){await H();try{p(C)}catch{}throw e}let W=V;N=W,h(C,W,`http://localhost:${W}`);let G=i.scheduler??a,K=i.safetyNetMs??432e5,q=null,J=!1,Y=!1,X=()=>{J||(J=!0,q!==null&&(G.clearTimeout(q),q=null))},Z=()=>{if(X(),!Y){Y=!0;try{p(C)}catch{}}},Q=()=>{J||K<=0||(q!==null&&(G.clearTimeout(q),q=null),q=G.setTimeout(()=>{q=null,console.warn(`[ui] safety-net (${K}ms) reached — shutting down (D-025 backstop)`);try{i.onSafetyNet?.()}catch{}R();for(let e of B)try{e.close()}catch{}Z()},K))},$=()=>{J||K<=0||Q()};return P=$,Q(),{httpServers:B,port:W,release:Z,detachSafetyNet:X,nudgeSafetyNet:$,drainUpgradeSockets:R}}function O(e){e.headersSent||e.writableEnded||e.destroyed||(e.setHeader(`X-Content-Type-Options`,`nosniff`),e.setHeader(`Cache-Control`,`no-store`),e.statusCode=404,e.end())}function k(e,t){if(e!==void 0){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<0||t>65535)throw Error(`Invalid --port value '${e}'`);return{port:t,fallbackToKernel:!1}}if(t!==void 0&&t!==``){let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<0||e>65535)throw Error(`Invalid PORT env value '${t}'`);return{port:e,fallbackToKernel:!1}}return{port:w,fallbackToKernel:!0}}async function A(e){let t=e.readLock??(async()=>{let{readUiLock:t}=await import(`./src-DR51i3QD.mjs`);return t(e.lockDir)}),n=await t();if(!n)throw Error(`UI lock collision reported but the lock disappeared before handling — retry acquiring.`);if(n.port===e.requestedPort&&n.port>0)return{mode:`already-running`,port:n.port};let r=n.port;if(r===0){let n=Date.now()+(e.pollDeadlineMs??2e3),i=e.pollIntervalMs??100;for(;Date.now()<n;){await new Promise(e=>{setTimeout(e,i)});let e=await t();if(e&&e.port>0){r=e.port;break}}if(r===0)throw Error("UI did not bind within 2s; run `ok clean`");if(r===e.requestedPort)return{mode:`already-running`,port:r}}return{mode:`proxy`,handle:await x({listenPort:e.requestedPort,host:e.host,upstreamHost:`localhost`,upstreamPort:r}),upstreamPort:r}}async function j(e,t){let{dim:n}=await import(`./colors-MGDi6UGf.mjs`),{UiLockCollisionError:r}=await import(`./src-DR51i3QD.mjs`),{resolveLockDir:i}=await import(`./src-DR51i3QD.mjs`),a=t.host;if(t.upstreamUrl!==void 0)try{E(t.upstreamUrl)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(2)}let o;try{o=k(t.port,process.env.PORT)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(2)}let s=o.port;try{let r=await D({config:e,cwd:process.cwd(),port:s,fallbackToKernel:o.fallbackToKernel,host:a,...t.upstreamUrl===void 0?{}:{upstreamUrl:t.upstreamUrl}}),i=a===void 0||a===`::`||a===`0.0.0.0`?`localhost`:a;console.log(`${n(`[ui]`)} listening on http://${i}:${r.port}`);let c=!1,l=e=>{if(c)return;c=!0,console.log(n(`\n[ui] Shutting down (${e})`)),r.detachSafetyNet();let t=()=>{try{r.release()}finally{process.exit(process.exitCode??0)}};r.drainUpgradeSockets(),T(r.httpServers).then(t,t),setTimeout(t,2e3).unref()};process.once(`SIGINT`,()=>l(`SIGINT`)),process.once(`SIGTERM`,()=>l(`SIGTERM`));return}catch(e){if(!(e instanceof r))throw e;let t=i(process.cwd()),o=a??`localhost`,c;try{c=await A({requestedPort:s,host:o,lockDir:t})}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(1)}if(c.mode===`already-running`){if(console.log(`UI already running at http://${o}:${c.port}`),N(process)){await new Promise(e=>{let t=t=>{console.log(n(`\n[ui-keepalive] Shutting down (${t})`)),e()};process.once(`SIGINT`,()=>t(`SIGINT`)),process.once(`SIGTERM`,()=>t(`SIGTERM`))});return}process.exit(0)}console.log(`UI running at http://${o}:${c.upstreamPort}; acting as HTTP proxy on port ${c.handle.port}`);let l=!1,u=e=>{l||(l=!0,console.log(n(`\n[ui-proxy] Shutting down (${e})`)),c.handle.close().finally(()=>process.exit(process.exitCode??0)),setTimeout(()=>process.exit(process.exitCode??0),2e3).unref())};process.once(`SIGINT`,()=>u(`SIGINT`)),process.once(`SIGTERM`,()=>u(`SIGTERM`))}}function M(e){return new l(`ui`).description("Deprecated: serve the React editor UI as a sibling process (plain `ok start` now serves the UI itself)").option(`-p, --port <port>`,`UI port (default: $PORT env or ${w}, kernel-allocated fallback if busy)`).option(`-H, --host <host>`,"UI host. Default: two-socket loopback bind (`[::1]` + `127.0.0.1`) so cross-family collisions fail loud. Pass an explicit host (e.g. `127.0.0.1`, `0.0.0.0`) to bind a single socket on that host.").action(async t=>{let{warning:n}=await import(`./colors-MGDi6UGf.mjs`);console.error(n("[ui] Deprecated: use `ok start` instead — it now serves the editor UI on one port. `ok ui` remains for older desktop builds and will be removed in a future release.")),await j(e(),t)})}function N(e){let t=e.stdout.isTTY===!0,n=typeof e.env.PORT==`string`&&e.env.PORT!==``;return!t||n}export{E as a,j as c,N as i,D as l,C as n,k as o,T as r,A as s,w as t,M as u};
3
+ //# sourceMappingURL=ui-CNA2d6cp.mjs.map
@@ -1,4 +1,4 @@
1
- import{Ho as e,Xo as t,Zo as n,ts as r}from"./src-DMpGVIiQ.mjs";import{yr as i,zr as a}from"./src-CLSt7s4C.mjs";import{basename as o,dirname as s,isAbsolute as c,join as l,posix as u,relative as ee,resolve as d,sep as f,win32 as p}from"node:path";import{cpSync as m,existsSync as h,lstatSync as g,mkdirSync as te,readFileSync as ne,realpathSync as _,rmSync as v,statSync as y}from"node:fs";import{homedir as b}from"node:os";const x=t,S=n,C=r,w=`node`,T={MCP_DEBUG:`1`,OK_LOG_FILE:`/tmp/ok-mcp.log`},E=`# ok-mcp-v2
1
+ import{Ho as e,Xo as t,Zo as n,ts as r}from"./src-DMpGVIiQ.mjs";import{Hr as i,Sr as a}from"./src-CwuSSZyu.mjs";import{basename as o,dirname as s,isAbsolute as c,join as l,posix as u,relative as ee,resolve as d,sep as f,win32 as p}from"node:path";import{cpSync as m,existsSync as h,lstatSync as g,mkdirSync as te,readFileSync as ne,realpathSync as _,rmSync as v,statSync as y}from"node:fs";import{homedir as b}from"node:os";const x=t,S=n,C=r,w=`node`,T={MCP_DEBUG:`1`,OK_LOG_FILE:`/tmp/ok-mcp.log`},E=`# ok-mcp-v2
2
2
  USER_BUNDLE="$HOME/Applications/OpenKnowledge.app/Contents/Resources/cli/bin/ok.sh"
3
3
  [ -f "$USER_BUNDLE" ] && [ -x "$USER_BUNDLE" ] && exec "$USER_BUNDLE" mcp
4
4
  BUNDLE="/Applications/OpenKnowledge.app/Contents/Resources/cli/bin/ok.sh"
@@ -34,5 +34,5 @@ foreach ($d in $dirs) {
34
34
  if (Test-Path -LiteralPath $probe -PathType Leaf) { & $probe -y '@inkeep/open-knowledge@latest' mcp; exit $LASTEXITCODE }
35
35
  }
36
36
  [Console]::Error.WriteLine('OpenKnowledge: install Node.js 24+ (npm i -g @inkeep/open-knowledge), then restart your editor')
37
- exit 127`,O=`// ok-pi-bridge`,k=`${O}-v1`,A=`ok-pi-managed-extension`;function j(e){if(typeof e!=`object`||!e)return!1;let t=e;if(t.command===`/bin/sh`){if(!Array.isArray(t.args)||t.args[0]!==`-l`||t.args[1]!==`-c`)return!1;let e=t.args[2];return typeof e==`string`&&e.includes(`# ok-mcp-v2`)}if(t.command===`powershell`){if(!Array.isArray(t.args)||t.args[0]!==`-NoProfile`||t.args[1]!==`-NonInteractive`||t.args[2]!==`-Command`)return!1;let e=t.args[3];return typeof e==`string`&&e.includes(`# ok-mcp-win-v1`)}if(t.type===`local`&&Array.isArray(t.command)){if(t.command[0]===`/bin/sh`){if(t.command[1]!==`-l`||t.command[2]!==`-c`)return!1;let e=t.command[3];return typeof e==`string`&&e.includes(`# ok-mcp-v2`)}if(t.command[0]===`powershell`){if(t.command[1]!==`-NoProfile`||t.command[2]!==`-NonInteractive`||t.command[3]!==`-Command`)return!1;let e=t.command[4];return typeof e==`string`&&e.includes(`# ok-mcp-win-v1`)}return!1}if(t.command===`ok-pi-managed-extension`){if(!Array.isArray(t.args))return!1;let e=t.args[0];return typeof e==`string`&&e.startsWith(k)}return!1}function M(e=process.argv[1]){if(!e)throw Error(`Cannot infer the local CLI entry for --dev-mcp because process.argv[1] is empty.`);let t=d(e);if(o(t)===`cli.mjs`&&o(s(t))===`dist`)return t;let n=t.split(f),r=n.lastIndexOf(`packages`);if(r===-1||n[r+1]!==`cli`)throw Error(`Cannot infer the repo root for --dev-mcp from ${t}. Run the local CLI from this repo so the built dist path can be derived.`);let i=n.slice(0,r);return l(i.length===0?f:i.join(f),`packages`,`cli`,`dist`,`cli.mjs`)}function N(e={}){return e.mode===`dev`?{command:w,args:[M(),`mcp`],env:{...T}}:(e.platformName??process.platform)===`win32`?{command:`powershell`,args:[`-NoProfile`,`-NonInteractive`,`-Command`,D]}:{command:`/bin/sh`,args:[`-l`,`-c`,E]}}function P(e={}){return e.mode===`dev`?{type:`local`,enabled:!0,command:[w,M(),`mcp`],environment:{...T}}:(e.platformName??process.platform)===`win32`?{type:`local`,enabled:!0,command:[`powershell`,`-NoProfile`,`-NonInteractive`,`-Command`,D]}:{type:`local`,enabled:!0,command:[`/bin/sh`,`-l`,`-c`,E]}}function re(e){if(typeof e!=`object`||!e)return!1;let t=e;return F(t,N({mode:`published`,platformName:`darwin`}))||F(t,N({mode:`published`,platformName:`win32`}))}function F(e,t){return Object.keys(e).length===Object.keys(t).length?ie(e,t):!1}function ie(e,t){if(e.command!==t.command)return!1;let n=t.args;return!Array.isArray(n)||!Array.isArray(e.args)||e.args.length!==n.length?!1:e.args.every((e,t)=>e===n[t])}function I(e,t){let n=e=>typeof e==`string`&&e.includes(`# ok-mcp`);return t===`/bin/sh`?e[0]===`-l`&&e[1]===`-c`&&n(e[2]):t===`powershell`?e[0]===`-NoProfile`&&e[1]===`-NonInteractive`&&e[2]===`-Command`&&n(e[3]):!1}function L(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.enabled===!1||typeof t.command!=`string`||!Array.isArray(t.args)?!1:I(t.args,t.command)}function R(e){if(typeof e!=`object`||!e)return!1;let t=e;if(t.type!==`local`||t.enabled===!1||!Array.isArray(t.command))return!1;let[n,...r]=t.command;return typeof n==`string`&&I(r,n)}function z(e){return e===`win32`?p:u}function B(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env,i=z(t);return t===`darwin`?i.join(n,`Library`,`Application Support`):t===`win32`?r.APPDATA??i.join(n,`AppData`,`Roaming`):r.XDG_CONFIG_HOME??i.join(n,`.config`)}function V(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.claude.json`)}function H(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env;if(t===`darwin`)return u.join(n,`Library`,`Application Support`,`Claude`,`claude_desktop_config.json`);if(t===`win32`){let e=r.APPDATA??p.join(n,`AppData`,`Roaming`);return p.join(e,`Claude`,`claude_desktop_config.json`)}throw Error(`Claude Desktop is not available on ${t}. Supported: macOS, Windows.`)}function U(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.cursor`,`mcp.json`)}function W(e={}){let t=e.platformName??process.platform,n=e.home??b();return(e.env??process.env).CODEX_HOME??z(t).join(n,`.codex`)}function G(e={}){return z(e.platformName??process.platform).join(W(e),`config.toml`)}function K(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=(e.env??process.env).COPILOT_HOME??z(t).join(n,`.copilot`);return z(t).join(r,`mcp-config.json`)}function q(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env,i=z(t);if(t===`win32`){let e=r.APPDATA??i.join(n,`AppData`,`Roaming`);return i.join(e,`opencode`)}let a=r.XDG_CONFIG_HOME??i.join(n,`.config`);return i.join(a,`opencode`)}function J(e={}){return z(e.platformName??process.platform).join(q(e),`opencode.json`)}function ae(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.openclaw`,`openclaw.json`)}function oe(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.hermes`,`config.yaml`)}function se(e={}){let t=e.platformName??process.platform,n=e.home??b();return(e.env??process.env).PI_CODING_AGENT_DIR??z(t).join(n,`.pi`,`agent`)}function ce(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.gemini`,`config`,`mcp_config.json`)}function le(e,t){let n=z(t),r=n.join(e,`.lmstudio`,`mcp.json`),i=n.join(e,`.cache`,`lm-studio`,`mcp.json`);return t===`darwin`?[i,r]:[r,i]}function Y(e={}){let t=e.platformName??process.platform,n=le(e.home??b(),t);return n.find(e=>h(e))||n.find(e=>h(s(e)))||n[0]}const X={claude:{id:`claude`,label:S.claude,configPath:(e,t)=>V({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.claude`),projectConfigPath:e=>l(e,`.mcp.json`),projectSkillPath:e=>l(e,`.claude`,`skills`,`open-knowledge`,`SKILL.md`)},"claude-desktop":{id:`claude-desktop`,label:S[`claude-desktop`],configPath:(e,t)=>H({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(H({home:t}))},cursor:{id:`cursor`,label:S.cursor,configPath:(e,t)=>U({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(U({home:t})),projectConfigPath:e=>l(e,`.cursor`,`mcp.json`),projectSkillPath:e=>l(e,`.cursor`,`skills`,`open-knowledge`,`SKILL.md`)},codex:{id:`codex`,label:S.codex,configPath:(e,t)=>G({home:t}),format:`toml`,topLevelKey:`mcp_servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(G({home:t})),projectConfigPath:e=>l(e,`.codex`,`config.toml`),projectSkillPath:e=>l(e,`.codex`,`skills`,`open-knowledge`,`SKILL.md`)},copilot:{id:`copilot`,label:S.copilot,configPath:(e,t)=>K({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(K({home:t})),projectSkillPath:e=>l(e,`.github`,`skills`,`open-knowledge`,`SKILL.md`)},opencode:{id:`opencode`,label:S.opencode,configPath:(e,t)=>J({home:t}),format:`json`,topLevelKey:`mcp`,serverName:()=>e,buildEntry:(e,t)=>P(t),scope:`global`,detectPath:(e,t)=>s(J({home:t})),projectConfigPath:e=>l(e,`opencode.json`),projectSkillPath:e=>l(e,`.opencode`,`skills`,`open-knowledge`,`SKILL.md`)},openclaw:{id:`openclaw`,label:S.openclaw,configPath:(e,t)=>ae({home:t}),format:`json`,topLevelKey:`mcp`,serverMapSubKey:`servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.openclaw`),offerOnlyWhenDetected:!0},pi:{id:`pi`,label:S.pi,configPath:()=>{throw Error("Pi has no user-global MCP config; OK's integration is the project-scoped bridge extension at .pi/extensions/open-knowledge.ts (run `ok init` in the project).")},format:`file`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:()=>{throw Error(`Pi has no MCP entry shape; the managed bridge file is built by buildPiExtensionSource (integrations/pi-extension.ts).`)},scope:`project`,detectPath:(e,t)=>se({home:t}),projectConfigPath:e=>l(e,`.pi`,`extensions`,`open-knowledge.ts`),projectSkillPath:e=>l(e,`.pi`,`skills`,`open-knowledge`,`SKILL.md`)},antigravity:{id:`antigravity`,label:S.antigravity,configPath:(e,t)=>ce({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.gemini`),offerOnlyWhenDetected:!0},"lm-studio":{id:`lm-studio`,label:S[`lm-studio`],configPath:(e,t)=>Y({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(Y({home:t})),offerOnlyWhenDetected:!0},hermes:{id:`hermes`,label:S.hermes,configPath:(e,t)=>oe({home:t}),format:`yaml`,topLevelKey:`mcp_servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.hermes`),offerOnlyWhenDetected:!0}};function ue(e){let t=e.filter(e=>!Object.hasOwn(X,e));if(t.length>0)throw Error(`Unknown editor(s): ${t.join(`, `)}. Valid options: ${x.join(`, `)}`);return e.map(e=>X[e])}function Z(e,t){let n;try{n=g(e)}catch(e){if(e.code!==`ENOENT`)throw e}if(n?.isSymbolicLink())throw Error(`Refusing to write through a symbolic link at ${e}. Remove the symlink and re-run project setup.`);Q(e,t)}function de(e,t){Q(e,t)}function Q(e,t){let n;try{n=_(t)}catch{n=d(t)}let r=s(e);for(;r.length>1&&r!==f;){let t;try{t=_(r)}catch(e){if(e.code===`ENOENT`){r=s(r);continue}throw e}let i=ee(n,t);if(i===``||!i.startsWith(`..`)&&!c(i))return;throw Error(`Refusing to write at ${e}: ancestor ${r} resolves to ${t}, which is outside the project directory ${n}. A symbolic link in the path likely escapes the project. Remove the symlink and re-run project setup.`)}}function $(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function fe(e,t,n){try{if(y(n).size>10485760)return!1}catch{return!1}let r;try{r=ne(n,`utf-8`)}catch{return!1}let i=[],o=a(r.charCodeAt(0)===65279?r.slice(1):r,i,{allowTrailingComma:!0,disallowComments:!1});if(i.length>0||!$(o))return!1;let s=o[e.topLevelKey];if(!$(s))return!1;let c=e.serverMapSubKey?s[e.serverMapSubKey]:s;return $(c)?$(c[e.serverName(t)]):!1}function pe(e,t,n={}){if(e.id!==`copilot`)return!0;try{return fe(e,t,e.configPath(t,n.home))}catch{return!1}}function me(e,t,n={}){let r=e.projectSkillPath?.(t);if(!r)return{editorId:e.id,label:e.label,action:`skipped-unsupported`,path:``};if(!pe(e,t,n))return{editorId:e.id,label:e.label,action:`skipped-prerequisite`,path:r};try{let n=i(`project`,{checkDesktop:!0}),a=s(r);Z(a,t);let o=h(r)?`overwritten`:`written`;return v(a,{recursive:!0,force:!0}),te(s(a),{recursive:!0}),m(n,a,{recursive:!0}),{editorId:e.id,label:e.label,action:o,path:r}}catch(t){return{editorId:e.id,label:e.label,action:`failed`,path:r,error:t instanceof Error?t.message:String(t)}}}export{ue as _,S as a,O as c,N as d,L as f,B as g,R as h,x as i,k as l,re as m,de as n,X as o,j as p,me as r,C as s,Z as t,A as u};
38
- //# sourceMappingURL=write-project-skill-KUk3TJzG.mjs.map
37
+ exit 127`,O=`// ok-pi-bridge`,k=`${O}-v1`,A=`ok-pi-managed-extension`;function j(e){if(typeof e!=`object`||!e)return!1;let t=e;if(t.command===`/bin/sh`){if(!Array.isArray(t.args)||t.args[0]!==`-l`||t.args[1]!==`-c`)return!1;let e=t.args[2];return typeof e==`string`&&e.includes(`# ok-mcp-v2`)}if(t.command===`powershell`){if(!Array.isArray(t.args)||t.args[0]!==`-NoProfile`||t.args[1]!==`-NonInteractive`||t.args[2]!==`-Command`)return!1;let e=t.args[3];return typeof e==`string`&&e.includes(`# ok-mcp-win-v1`)}if(t.type===`local`&&Array.isArray(t.command)){if(t.command[0]===`/bin/sh`){if(t.command[1]!==`-l`||t.command[2]!==`-c`)return!1;let e=t.command[3];return typeof e==`string`&&e.includes(`# ok-mcp-v2`)}if(t.command[0]===`powershell`){if(t.command[1]!==`-NoProfile`||t.command[2]!==`-NonInteractive`||t.command[3]!==`-Command`)return!1;let e=t.command[4];return typeof e==`string`&&e.includes(`# ok-mcp-win-v1`)}return!1}if(t.command===`ok-pi-managed-extension`){if(!Array.isArray(t.args))return!1;let e=t.args[0];return typeof e==`string`&&e.startsWith(k)}return!1}function M(e=process.argv[1]){if(!e)throw Error(`Cannot infer the local CLI entry for --dev-mcp because process.argv[1] is empty.`);let t=d(e);if(o(t)===`cli.mjs`&&o(s(t))===`dist`)return t;let n=t.split(f),r=n.lastIndexOf(`packages`);if(r===-1||n[r+1]!==`cli`)throw Error(`Cannot infer the repo root for --dev-mcp from ${t}. Run the local CLI from this repo so the built dist path can be derived.`);let i=n.slice(0,r);return l(i.length===0?f:i.join(f),`packages`,`cli`,`dist`,`cli.mjs`)}function N(e={}){return e.mode===`dev`?{command:w,args:[M(),`mcp`],env:{...T}}:(e.platformName??process.platform)===`win32`?{command:`powershell`,args:[`-NoProfile`,`-NonInteractive`,`-Command`,D]}:{command:`/bin/sh`,args:[`-l`,`-c`,E]}}function P(e={}){return e.mode===`dev`?{type:`local`,enabled:!0,command:[w,M(),`mcp`],environment:{...T}}:(e.platformName??process.platform)===`win32`?{type:`local`,enabled:!0,command:[`powershell`,`-NoProfile`,`-NonInteractive`,`-Command`,D]}:{type:`local`,enabled:!0,command:[`/bin/sh`,`-l`,`-c`,E]}}function re(e){if(typeof e!=`object`||!e)return!1;let t=e;return F(t,N({mode:`published`,platformName:`darwin`}))||F(t,N({mode:`published`,platformName:`win32`}))}function F(e,t){return Object.keys(e).length===Object.keys(t).length?ie(e,t):!1}function ie(e,t){if(e.command!==t.command)return!1;let n=t.args;return!Array.isArray(n)||!Array.isArray(e.args)||e.args.length!==n.length?!1:e.args.every((e,t)=>e===n[t])}function I(e,t){let n=e=>typeof e==`string`&&e.includes(`# ok-mcp`);return t===`/bin/sh`?e[0]===`-l`&&e[1]===`-c`&&n(e[2]):t===`powershell`?e[0]===`-NoProfile`&&e[1]===`-NonInteractive`&&e[2]===`-Command`&&n(e[3]):!1}function L(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.enabled===!1||typeof t.command!=`string`||!Array.isArray(t.args)?!1:I(t.args,t.command)}function R(e){if(typeof e!=`object`||!e)return!1;let t=e;if(t.type!==`local`||t.enabled===!1||!Array.isArray(t.command))return!1;let[n,...r]=t.command;return typeof n==`string`&&I(r,n)}function z(e){return e===`win32`?p:u}function B(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env,i=z(t);return t===`darwin`?i.join(n,`Library`,`Application Support`):t===`win32`?r.APPDATA??i.join(n,`AppData`,`Roaming`):r.XDG_CONFIG_HOME??i.join(n,`.config`)}function V(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.claude.json`)}function H(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env;if(t===`darwin`)return u.join(n,`Library`,`Application Support`,`Claude`,`claude_desktop_config.json`);if(t===`win32`){let e=r.APPDATA??p.join(n,`AppData`,`Roaming`);return p.join(e,`Claude`,`claude_desktop_config.json`)}throw Error(`Claude Desktop is not available on ${t}. Supported: macOS, Windows.`)}function U(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.cursor`,`mcp.json`)}function W(e={}){let t=e.platformName??process.platform,n=e.home??b();return(e.env??process.env).CODEX_HOME??z(t).join(n,`.codex`)}function G(e={}){return z(e.platformName??process.platform).join(W(e),`config.toml`)}function K(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=(e.env??process.env).COPILOT_HOME??z(t).join(n,`.copilot`);return z(t).join(r,`mcp-config.json`)}function q(e={}){let t=e.platformName??process.platform,n=e.home??b(),r=e.env??process.env,i=z(t);if(t===`win32`){let e=r.APPDATA??i.join(n,`AppData`,`Roaming`);return i.join(e,`opencode`)}let a=r.XDG_CONFIG_HOME??i.join(n,`.config`);return i.join(a,`opencode`)}function J(e={}){return z(e.platformName??process.platform).join(q(e),`opencode.json`)}function ae(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.openclaw`,`openclaw.json`)}function oe(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.hermes`,`config.yaml`)}function se(e={}){let t=e.platformName??process.platform,n=e.home??b();return(e.env??process.env).PI_CODING_AGENT_DIR??z(t).join(n,`.pi`,`agent`)}function ce(e={}){let t=e.platformName??process.platform,n=e.home??b();return z(t).join(n,`.gemini`,`config`,`mcp_config.json`)}function le(e,t){let n=z(t),r=n.join(e,`.lmstudio`,`mcp.json`),i=n.join(e,`.cache`,`lm-studio`,`mcp.json`);return t===`darwin`?[i,r]:[r,i]}function Y(e={}){let t=e.platformName??process.platform,n=le(e.home??b(),t);return n.find(e=>h(e))||n.find(e=>h(s(e)))||n[0]}const X={claude:{id:`claude`,label:S.claude,configPath:(e,t)=>V({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.claude`),projectConfigPath:e=>l(e,`.mcp.json`),projectSkillPath:e=>l(e,`.claude`,`skills`,`open-knowledge`,`SKILL.md`)},"claude-desktop":{id:`claude-desktop`,label:S[`claude-desktop`],configPath:(e,t)=>H({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(H({home:t}))},cursor:{id:`cursor`,label:S.cursor,configPath:(e,t)=>U({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(U({home:t})),projectConfigPath:e=>l(e,`.cursor`,`mcp.json`),projectSkillPath:e=>l(e,`.cursor`,`skills`,`open-knowledge`,`SKILL.md`)},codex:{id:`codex`,label:S.codex,configPath:(e,t)=>G({home:t}),format:`toml`,topLevelKey:`mcp_servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(G({home:t})),projectConfigPath:e=>l(e,`.codex`,`config.toml`),projectSkillPath:e=>l(e,`.codex`,`skills`,`open-knowledge`,`SKILL.md`)},copilot:{id:`copilot`,label:S.copilot,configPath:(e,t)=>K({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(K({home:t})),projectSkillPath:e=>l(e,`.github`,`skills`,`open-knowledge`,`SKILL.md`)},opencode:{id:`opencode`,label:S.opencode,configPath:(e,t)=>J({home:t}),format:`json`,topLevelKey:`mcp`,serverName:()=>e,buildEntry:(e,t)=>P(t),scope:`global`,detectPath:(e,t)=>s(J({home:t})),projectConfigPath:e=>l(e,`opencode.json`),projectSkillPath:e=>l(e,`.opencode`,`skills`,`open-knowledge`,`SKILL.md`)},openclaw:{id:`openclaw`,label:S.openclaw,configPath:(e,t)=>ae({home:t}),format:`json`,topLevelKey:`mcp`,serverMapSubKey:`servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.openclaw`),offerOnlyWhenDetected:!0},pi:{id:`pi`,label:S.pi,configPath:()=>{throw Error("Pi has no user-global MCP config; OK's integration is the project-scoped bridge extension at .pi/extensions/open-knowledge.ts (run `ok init` in the project).")},format:`file`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:()=>{throw Error(`Pi has no MCP entry shape; the managed bridge file is built by buildPiExtensionSource (integrations/pi-extension.ts).`)},scope:`project`,detectPath:(e,t)=>se({home:t}),projectConfigPath:e=>l(e,`.pi`,`extensions`,`open-knowledge.ts`),projectSkillPath:e=>l(e,`.pi`,`skills`,`open-knowledge`,`SKILL.md`)},antigravity:{id:`antigravity`,label:S.antigravity,configPath:(e,t)=>ce({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.gemini`),offerOnlyWhenDetected:!0},"lm-studio":{id:`lm-studio`,label:S[`lm-studio`],configPath:(e,t)=>Y({home:t}),format:`json`,topLevelKey:`mcpServers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>s(Y({home:t})),offerOnlyWhenDetected:!0},hermes:{id:`hermes`,label:S.hermes,configPath:(e,t)=>oe({home:t}),format:`yaml`,topLevelKey:`mcp_servers`,serverName:()=>e,buildEntry:(e,t)=>N(t),scope:`global`,detectPath:(e,t)=>l(t??b(),`.hermes`),offerOnlyWhenDetected:!0}};function ue(e){let t=e.filter(e=>!Object.hasOwn(X,e));if(t.length>0)throw Error(`Unknown editor(s): ${t.join(`, `)}. Valid options: ${x.join(`, `)}`);return e.map(e=>X[e])}function Z(e,t){let n;try{n=g(e)}catch(e){if(e.code!==`ENOENT`)throw e}if(n?.isSymbolicLink())throw Error(`Refusing to write through a symbolic link at ${e}. Remove the symlink and re-run project setup.`);Q(e,t)}function de(e,t){Q(e,t)}function Q(e,t){let n;try{n=_(t)}catch{n=d(t)}let r=s(e);for(;r.length>1&&r!==f;){let t;try{t=_(r)}catch(e){if(e.code===`ENOENT`){r=s(r);continue}throw e}let i=ee(n,t);if(i===``||!i.startsWith(`..`)&&!c(i))return;throw Error(`Refusing to write at ${e}: ancestor ${r} resolves to ${t}, which is outside the project directory ${n}. A symbolic link in the path likely escapes the project. Remove the symlink and re-run project setup.`)}}function $(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function fe(e,t,n){try{if(y(n).size>10485760)return!1}catch{return!1}let r;try{r=ne(n,`utf-8`)}catch{return!1}let a=[],o=i(r.charCodeAt(0)===65279?r.slice(1):r,a,{allowTrailingComma:!0,disallowComments:!1});if(a.length>0||!$(o))return!1;let s=o[e.topLevelKey];if(!$(s))return!1;let c=e.serverMapSubKey?s[e.serverMapSubKey]:s;return $(c)?$(c[e.serverName(t)]):!1}function pe(e,t,n={}){if(e.id!==`copilot`)return!0;try{return fe(e,t,e.configPath(t,n.home))}catch{return!1}}function me(e,t,n={}){let r=e.projectSkillPath?.(t);if(!r)return{editorId:e.id,label:e.label,action:`skipped-unsupported`,path:``};if(!pe(e,t,n))return{editorId:e.id,label:e.label,action:`skipped-prerequisite`,path:r};try{let n=a(`project`,{checkDesktop:!0}),i=s(r);Z(i,t);let o=h(r)?`overwritten`:`written`;return v(i,{recursive:!0,force:!0}),te(s(i),{recursive:!0}),m(n,i,{recursive:!0}),{editorId:e.id,label:e.label,action:o,path:r}}catch(t){return{editorId:e.id,label:e.label,action:`failed`,path:r,error:t instanceof Error?t.message:String(t)}}}export{ue as _,S as a,O as c,N as d,L as f,B as g,R as h,x as i,k as l,re as m,de as n,X as o,j as p,me as r,C as s,Z as t,A as u};
38
+ //# sourceMappingURL=write-project-skill-DHsuRyv9.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inkeep/open-knowledge",
3
- "version": "0.51.0-beta.7",
3
+ "version": "0.51.1",
4
4
  "license": "GPL-3.0-or-later",
5
5
  "private": false,
6
6
  "type": "module",
@@ -62,10 +62,10 @@
62
62
  "ajv-formats": "^3.0.1",
63
63
  "tsdown": "^0.21.7",
64
64
  "typescript": "^5.9.3",
65
- "@inkeep/open-knowledge-app": "0.51.0-beta.7",
66
- "@inkeep/open-knowledge-core": "0.51.0-beta.7",
65
+ "@inkeep/open-knowledge-app": "0.51.1",
67
66
  "@inkeep/open-knowledge-native-config": "0.0.0",
68
- "@inkeep/open-knowledge-server": "0.51.0-beta.7"
67
+ "@inkeep/open-knowledge-server": "0.51.1",
68
+ "@inkeep/open-knowledge-core": "0.51.1"
69
69
  },
70
70
  "scripts": {
71
71
  "build:cli": "rm -rf dist && tsdown",
@@ -1,2 +0,0 @@
1
- import"./src-DMpGVIiQ.mjs";var e=`0.51.0-beta.7`;const t=`config.yml`,n=e;export{n,t};
2
- //# sourceMappingURL=constants-cHW6U6sH.mjs.map
@@ -1 +0,0 @@
1
- import{g as e}from"./init-D35f12T2.mjs";export{e as runInit};