@inkeep/open-knowledge 0.40.0-beta.2 → 0.41.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/dist/{acp-harness-probe-DR1ZKGnH.mjs → acp-harness-probe-BxjXsPOq.mjs} +2 -2
  2. package/dist/assets/skills/discovery/SKILL.md +1 -1
  3. package/dist/assets/skills/project/SKILL.md +1 -1
  4. package/dist/assets/skills/write-skill/SKILL.md +1 -1
  5. package/dist/cli.mjs +63 -63
  6. package/dist/config-schema.json +56 -0
  7. package/dist/config.project.schema.json +56 -0
  8. package/dist/constants-bmev5FwS.mjs +2 -0
  9. package/dist/{fs-traced-PoaSX4-V.mjs → fs-traced-CNJs7Awa.mjs} +2 -2
  10. package/dist/fs-traced-DgSYzTia.mjs +1 -0
  11. package/dist/{git-handle-DQgl5oTH.mjs → git-handle-DklxWau8.mjs} +2 -2
  12. package/dist/git-handle-sbdi3Vzr.mjs +1 -0
  13. package/dist/index.d.mts +9 -1
  14. package/dist/index.mjs +1 -1
  15. package/dist/init-B-FNuVLD.mjs +1 -0
  16. package/dist/{init-CRqHukN0.mjs → init-JMQ-3ZKg.mjs} +11 -11
  17. package/dist/{launch-json-removal-D2RKDIfa.mjs → launch-json-removal-xORplwHY.mjs} +2 -2
  18. package/dist/loader-DdZabgzf.mjs +1 -0
  19. package/dist/{loader-B2FwNLO-.mjs → loader-G247xVVO.mjs} +2 -2
  20. package/dist/md-manager-BxIIRrx9.mjs +2 -0
  21. package/dist/{open-browser-B_gopYWU.mjs → open-browser-BxTeTvF1.mjs} +2 -2
  22. package/dist/parse-worker.mjs +1 -1
  23. package/dist/preview-C3pbNWkQ.mjs +1 -0
  24. package/dist/{preview-2zt9BjS6.mjs → preview-CpkyThwj.mjs} +2 -2
  25. package/dist/public/assets/{ActivityModeContent-dWIhYEu6.js → ActivityModeContent-D4HgJCqO.js} +1 -1
  26. package/dist/public/assets/{ActivityPanelDiffView-Ca-9q7Zb.js → ActivityPanelDiffView-BlsCddlr.js} +1 -1
  27. package/dist/public/assets/{AgentDiffPane-ZSMGc24S.js → AgentDiffPane-CF-TbfmZ.js} +2 -2
  28. package/dist/public/assets/AgentThreadClientBinder-Dpyf5sM1.js +1 -0
  29. package/dist/public/assets/{AppMenubar-BuB4TAd6.js → AppMenubar-CqSGRAc3.js} +1 -1
  30. package/dist/public/assets/CodeMirrorPropInput-DtBXfCv4.js +3 -0
  31. package/dist/public/assets/{ConsentDialogBody-BBzNYhHt.js → ConsentDialogBody-Cdr00Adv.js} +1 -1
  32. package/dist/public/assets/{CopyButton-Ja2824Ao.js → CopyButton-tIb30IiS.js} +1 -1
  33. package/dist/public/assets/DocumentContext-DOrUYOMA.js +38 -0
  34. package/dist/public/assets/EditorModeToggle-BbmLhPID.js +2 -0
  35. package/dist/public/assets/{EnableSyncConfirmDialog-DPaSz-wC.js → EnableSyncConfirmDialog-joOV35Dx.js} +1 -1
  36. package/dist/public/assets/FeedbackForm-CQc3lxnB.js +1 -0
  37. package/dist/public/assets/{GraphPanel-BpzaeAQp.js → GraphPanel-6soc8rip.js} +2 -2
  38. package/dist/public/assets/LintConfigEditor-CDx1eqC2.js +1 -0
  39. package/dist/public/assets/ManagedArtifactProperties-KEOfe-lF.js +1 -0
  40. package/dist/public/assets/{McpConsentDialogBody-DHTkre7u.js → McpConsentDialogBody-CMdEW0Jf.js} +1 -1
  41. package/dist/public/assets/MermaidDocEditor-BvnOVcfR.js +1 -0
  42. package/dist/public/assets/PropertyPanel-CnC-grqg.js +2 -0
  43. package/dist/public/assets/{RegisteredAgentIcon-B57vI5w6.js → RegisteredAgentIcon-BYstaLMY.js} +1 -1
  44. package/dist/public/assets/{ReportBugDialogBody-DrIG1ML_.js → ReportBugDialogBody-DWp9BbwF.js} +1 -1
  45. package/dist/public/assets/SchemaConfigEditor-CS0s2hEm.js +1 -0
  46. package/dist/public/assets/SettingsDialogBody-D4oXv9m2.js +7 -0
  47. package/dist/public/assets/{ShareBranchSwitchDialog-C179lw0C.js → ShareBranchSwitchDialog-I1sCMM_-.js} +1 -1
  48. package/dist/public/assets/{ShareReceiveDialog-TtY0UQrE.js → ShareReceiveDialog-BmY-2e0s.js} +1 -1
  49. package/dist/public/assets/{ShareReceiveMissDialog-op0Pk4ih.js → ShareReceiveMissDialog-qvLgAowX.js} +1 -1
  50. package/dist/public/assets/{SkillEditorActions-DVAUJ782.js → SkillEditorActions-Dg-HbG9_.js} +1 -1
  51. package/dist/public/assets/SourceEditor-DH16cqjY.js +1 -0
  52. package/dist/public/assets/{TerminalPanel-DqAeIpPV.js → TerminalPanel-DXQ0GSej.js} +3 -3
  53. package/dist/public/assets/TerminalSessionsHost-BscGA05Z.js +2 -0
  54. package/dist/public/assets/{TerminalWindowApp-C0nQcTDF.js → TerminalWindowApp-BLTq-pir.js} +1 -1
  55. package/dist/public/assets/ThreadView-BBswMilr.js +6 -0
  56. package/dist/public/assets/TimelineDiffPane-DYqU_NIC.js +2 -0
  57. package/dist/public/assets/__vite-browser-external-Ducgp38Y.js +1 -0
  58. package/dist/public/assets/{abnfDiagram-VRR7QNED-D9F9DXsr.js → abnfDiagram-VRR7QNED-Pz-d7QUO.js} +1 -1
  59. package/dist/public/assets/{agent-diff-store-_LaXNJgH.js → agent-diff-store-CCCbFYpb.js} +1 -1
  60. package/dist/public/assets/agent-visibility-BKmC0R33.js +1 -0
  61. package/dist/public/assets/{arc-CycIfT6O.js → arc-zavTz6Mi.js} +1 -1
  62. package/dist/public/assets/architecture-TIHT7OUA-BmEXwMPm.js +1 -0
  63. package/dist/public/assets/{architectureDiagram-ZJ3FMSHR-DfsVDv0h.js → architectureDiagram-ZJ3FMSHR-DPFdhM_J.js} +1 -1
  64. package/dist/public/assets/arrow-up-right-DtHvY6Qg.js +1 -0
  65. package/dist/public/assets/auth-state-cache-C3hA0fzC.js +11 -0
  66. package/dist/public/assets/{badge-BDZGi1Ks.js → badge-kWhLcwP5.js} +1 -1
  67. package/dist/public/assets/{blockDiagram-677ZJIJ3-a-alorma.js → blockDiagram-677ZJIJ3-BcUTUrKf.js} +1 -1
  68. package/dist/public/assets/braces-DUywltjC.js +1 -0
  69. package/dist/public/assets/{button-DHE6Sx02.js → button-B5JstM7q.js} +1 -1
  70. package/dist/public/assets/{c4Diagram-LMCZKHZV-Cc0-n0UQ.js → c4Diagram-LMCZKHZV-DX6b63EP.js} +1 -1
  71. package/dist/public/assets/{calendar-HuZ4s1vW.js → calendar-B17Fe4zV.js} +1 -1
  72. package/dist/public/assets/case-sensitive-B_HNX58h.js +1 -0
  73. package/dist/public/assets/channel-DnLJ-ZjM.js +1 -0
  74. package/dist/public/assets/check-DJxEKgxy.js +1 -0
  75. package/dist/public/assets/{checkbox-DAZcO8UL.js → checkbox-DgMFNyxc.js} +1 -1
  76. package/dist/public/assets/{chevron-down-CQd32BUC.js → chevron-down-DQUaF_vw.js} +1 -1
  77. package/dist/public/assets/chevron-left-DemaPXNL.js +1 -0
  78. package/dist/public/assets/chevron-right-DNxn1CM1.js +1 -0
  79. package/dist/public/assets/chunk-2Q5K7J3B-Bw7pux3Y.js +1 -0
  80. package/dist/public/assets/{chunk-32BRIVSS-DAp6JEen.js → chunk-32BRIVSS-Demy6w9E.js} +1 -1
  81. package/dist/public/assets/{chunk-52WLFC77-DOJ_zrKl.js → chunk-52WLFC77-BlEIphDp.js} +1 -1
  82. package/dist/public/assets/{chunk-5FCAYU7R-BZbSx9vA.js → chunk-5FCAYU7R-lS620rLS.js} +1 -1
  83. package/dist/public/assets/{chunk-5HE753X5-B2Flc7i4.js → chunk-5HE753X5-Ctwpftk0.js} +1 -1
  84. package/dist/public/assets/{chunk-5JV3BV7I-B6P7lOib.js → chunk-5JV3BV7I-B0xTm5To.js} +1 -1
  85. package/dist/public/assets/{chunk-5TONJI2A-Bx2IxKM5.js → chunk-5TONJI2A-CTbq1Ges.js} +1 -1
  86. package/dist/public/assets/{chunk-5VM5RSS4-DC5JDqIq.js → chunk-5VM5RSS4-DIOyJEh7.js} +1 -1
  87. package/dist/public/assets/{chunk-7BUUIJ7U-D6E7ODqO.js → chunk-7BUUIJ7U-DJAQBDRB.js} +1 -1
  88. package/dist/public/assets/{chunk-BIQX33UG-BK09YW6f.js → chunk-BIQX33UG-BJ4KOiuD.js} +1 -1
  89. package/dist/public/assets/{chunk-BO2N2NFS-d0sH-rMK.js → chunk-BO2N2NFS-BKwKMCf_.js} +4 -4
  90. package/dist/public/assets/{chunk-C7G6YPKG-DyJUpciK.js → chunk-C7G6YPKG-DKtlXCwT.js} +1 -1
  91. package/dist/public/assets/{chunk-CQNSW5MT-BAtlNSBX.js → chunk-CQNSW5MT-CztK3zab.js} +1 -1
  92. package/dist/public/assets/{chunk-CYSBUYHQ-D8hsDORv.js → chunk-CYSBUYHQ-CvFdHE5W.js} +1 -1
  93. package/dist/public/assets/{chunk-EMLP6XTP-ChQSYJxh.js → chunk-EMLP6XTP-VxWimccr.js} +1 -1
  94. package/dist/public/assets/{chunk-EX3LRPZG-h-6LYf1x.js → chunk-EX3LRPZG-CO_SPblJ.js} +1 -1
  95. package/dist/public/assets/{chunk-FWX5IMBZ-DRwSfJSX.js → chunk-FWX5IMBZ-JMqub3ht.js} +2 -2
  96. package/dist/public/assets/{chunk-HOUHSVGY-F4yPi64m.js → chunk-HOUHSVGY-By4XpU6I.js} +1 -1
  97. package/dist/public/assets/{chunk-ICXQ74PX-BF1AraUQ.js → chunk-ICXQ74PX-DWdDeVYv.js} +1 -1
  98. package/dist/public/assets/{chunk-JG7HCLWE-Biog_J3i.js → chunk-JG7HCLWE-BQ8U-ghC.js} +1 -1
  99. package/dist/public/assets/{chunk-JWPE2WC7-BuX-EugW.js → chunk-JWPE2WC7-DcQSwMri.js} +1 -1
  100. package/dist/public/assets/{chunk-MOJQB5TN-Pk-JS7uF.js → chunk-MOJQB5TN-BBaMKQVw.js} +1 -1
  101. package/dist/public/assets/{chunk-MOZMSUNE-CPb1eEls.js → chunk-MOZMSUNE-CRVOIrQ5.js} +1 -1
  102. package/dist/public/assets/{chunk-OGEWGWER-D_9VshMV.js → chunk-OGEWGWER-ba9ltMXK.js} +1 -1
  103. package/dist/public/assets/{chunk-OSBZ3O6U-DLOl9lpV.js → chunk-OSBZ3O6U-BwLKYi-M.js} +1 -1
  104. package/dist/public/assets/{chunk-PUDLZKDR-D_qil-uw.js → chunk-PUDLZKDR-DJ-xx1Uu.js} +1 -1
  105. package/dist/public/assets/{chunk-Q4XR5HBZ--lNMVAiV.js → chunk-Q4XR5HBZ-BNj93MDr.js} +1 -1
  106. package/dist/public/assets/{chunk-QBLGF6JB-CXHeFNVR.js → chunk-QBLGF6JB-hOGtWhlz.js} +1 -1
  107. package/dist/public/assets/{chunk-R7FJI6CG-C16CHt3a.js → chunk-R7FJI6CG-BjWQRpAc.js} +1 -1
  108. package/dist/public/assets/{chunk-RYQCIY6F-DNu-IRpO.js → chunk-RYQCIY6F-B9SS86ok.js} +1 -1
  109. package/dist/public/assets/{chunk-U6XO7XAA-DbjPtJON.js → chunk-U6XO7XAA-DBbzoX4Z.js} +1 -1
  110. package/dist/public/assets/{chunk-V7JOEXUC-TOHJpp-0.js → chunk-V7JOEXUC-EpFJBpvk.js} +1 -1
  111. package/dist/public/assets/chunk-VAUOI2AC-Dn-E52TZ.js +1 -0
  112. package/dist/public/assets/{chunk-VR4S4FIN-DRClO3Vp.js → chunk-VR4S4FIN-B7zogTZo.js} +1 -1
  113. package/dist/public/assets/{chunk-WYO6CB5R-DyzfGKK0.js → chunk-WYO6CB5R-bpRilmGb.js} +2 -2
  114. package/dist/public/assets/chunk-XXDRQBXY-sKXoKzRW.js +1 -0
  115. package/dist/public/assets/{chunk-YOTPTUD7-CI44npHy.js → chunk-YOTPTUD7-WzuLu2rZ.js} +1 -1
  116. package/dist/public/assets/{chunk-ZGVPDNZ5-B4UAL6rf.js → chunk-ZGVPDNZ5-BwWckaeQ.js} +1 -1
  117. package/dist/public/assets/{chunk-ZIRB5QZD-BSn4ei2K.js → chunk-ZIRB5QZD-BtkU1hkD.js} +1 -1
  118. package/dist/public/assets/chunk-zsgVPwQN.js +1 -0
  119. package/dist/public/assets/classDiagram-OUVF2IWQ-DnCJ0gX4.js +1 -0
  120. package/dist/public/assets/classDiagram-v2-EOCWNBFH-Dm_rQEzS.js +1 -0
  121. package/dist/public/assets/client-version-Bma7l-bS.js +1 -0
  122. package/dist/public/assets/{collapsible-BIzY37go.js → collapsible-snx-HFVG.js} +1 -1
  123. package/dist/public/assets/compiler-runtime-YPpVnfQ-.js +1 -0
  124. package/dist/public/assets/config-context-Lgd8fBM2.js +1 -0
  125. package/dist/public/assets/{config-provider-BgOkEHZH.js → config-provider-DQaCjhBX.js} +2 -2
  126. package/dist/public/assets/{copilot-Be7YOjJF.js → copilot-fpMAoCAq.js} +1 -1
  127. package/dist/public/assets/{copy-Dwat-rG5.js → copy-C1RMi2cI.js} +1 -1
  128. package/dist/public/assets/{cose-bilkent-JH36ORCC-CNo4r1jR.js → cose-bilkent-JH36ORCC-v6AC1hlD.js} +1 -1
  129. package/dist/public/assets/{createLucideIcon-BUb14crZ.js → createLucideIcon-BwsSSL7z.js} +1 -1
  130. package/dist/public/assets/{cursor-AolWKuZw.js → cursor-BSZbWhxr.js} +1 -1
  131. package/dist/public/assets/cynefin-VYW2F7L2-BgEeRk9i.js +1 -0
  132. package/dist/public/assets/{cynefinDiagram-TSTJHNR4-BerNcsRY.js → cynefinDiagram-TSTJHNR4-DJT_8PZ9.js} +1 -1
  133. package/dist/public/assets/{dagre-B556Eg9Y.js → dagre-C139UR6G.js} +1 -1
  134. package/dist/public/assets/{dagre-VKFMJZFB-DsGixG0T.js → dagre-VKFMJZFB-5RJKKLB6.js} +1 -1
  135. package/dist/public/assets/{diagram-FQU43EPY-Bn3pI3fo.js → diagram-FQU43EPY-CMw4bmCQ.js} +1 -1
  136. package/dist/public/assets/{diagram-G47NLZAW-DlmHXzE8.js → diagram-G47NLZAW-CYLhDQDm.js} +1 -1
  137. package/dist/public/assets/{diagram-NH7WQ7WH-DSU5C3aY.js → diagram-NH7WQ7WH-lnG_Yvrf.js} +1 -1
  138. package/dist/public/assets/{diagram-OA4YK3LP-BxczHUUr.js → diagram-OA4YK3LP-tjz67Utc.js} +1 -1
  139. package/dist/public/assets/{diagram-WEI45ONY-9RfHZ21T.js → diagram-WEI45ONY-keCs6tdk.js} +1 -1
  140. package/dist/public/assets/{dialog-BLaUGJCd.js → dialog-BvA78Pbg.js} +1 -1
  141. package/dist/public/assets/{dist-C5VV4AJh.js → dist-B22zi36Z.js} +1 -1
  142. package/dist/public/assets/{dist-Cx2QCt5k.js → dist-B2SLv_cy.js} +1 -1
  143. package/dist/public/assets/{dist-DUnAX2Ky.js → dist-BHnd2TCW.js} +1 -1
  144. package/dist/public/assets/{dist-Bv-DNDka.js → dist-BNSJKKYT.js} +1 -1
  145. package/dist/public/assets/{dist-C5oOOujV.js → dist-BPbnU4MJ.js} +1 -1
  146. package/dist/public/assets/{dist-COAuqNbv.js → dist-C3RLAwRF.js} +1 -1
  147. package/dist/public/assets/{dist-BlUN9R-p.js → dist-CEEceAlU.js} +1 -1
  148. package/dist/public/assets/{dist-BgCLeN3Q.js → dist-CUQV7eXO.js} +1 -1
  149. package/dist/public/assets/{dist-DfKVxirz.js → dist-CXEsWt_M.js} +1 -1
  150. package/dist/public/assets/{dist-n-Hi6NdA.js → dist-Ck2P_69m.js} +1 -1
  151. package/dist/public/assets/{dist-DrdxKM3X.js → dist-Cm6pClkc2.js} +1 -1
  152. package/dist/public/assets/dist-CwM3Fx_3.js +565 -0
  153. package/dist/public/assets/{dist-93kZXTH1.js → dist-CwZTPnUs.js} +1 -1
  154. package/dist/public/assets/dist-DEF-YX4p.js +1 -0
  155. package/dist/public/assets/{dist-CcNiwixP.js → dist-DNTp9iqB.js} +1 -1
  156. package/dist/public/assets/dist-DVNg6hPx.js +2 -0
  157. package/dist/public/assets/{dist-DBENJeML.js → dist-De9aiAJx.js} +1 -1
  158. package/dist/public/assets/{dist-kVT8A9Kf.js → dist-DoAMXMs5.js} +1 -1
  159. package/dist/public/assets/{dist-B4uQVk5s.js → dist-DoyeToaO.js} +1 -1
  160. package/dist/public/assets/{dist-5kUc8Rop.js → dist-Ds91W2q2.js} +1 -1
  161. package/dist/public/assets/{dist-uVOKoIoH.js → dist-EBCF8Hyi.js} +1 -1
  162. package/dist/public/assets/{dist-635PXtcP.js → dist-PyCLG6aQ.js} +1 -1
  163. package/dist/public/assets/{dist-BJxDYUHt.js → dist-UJD1w5LO.js} +1 -1
  164. package/dist/public/assets/{dist-DwCd6eR-.js → dist-t90i8nhW.js} +1 -1
  165. package/dist/public/assets/{doc-hash-Bgdowslw.js → doc-hash-CzxKqowf.js} +1 -1
  166. package/dist/public/assets/{documents-events-HEfBwy2y.js → documents-events-BL57BK03.js} +1 -1
  167. package/dist/public/assets/{dropdown-menu-DVTufjNA.js → dropdown-menu-Br5y3pW-.js} +1 -1
  168. package/dist/public/assets/{ebnfDiagram-CCIWWBDH-D2xzvzqw.js → ebnfDiagram-CCIWWBDH-B-u3v2zf.js} +1 -1
  169. package/dist/public/assets/{erDiagram-Q63AITRT-CYNZizIY.js → erDiagram-Q63AITRT-CJ_Cnn6b.js} +1 -1
  170. package/dist/public/assets/{es2015-D5U2f808.js → es2015-BPXMTj9r.js} +1 -1
  171. package/dist/public/assets/esm-BTOPTNTx.js +1 -0
  172. package/dist/public/assets/eventmodeling-45OFAUF4-ZjNWMPgH.js +1 -0
  173. package/dist/public/assets/{eye-DuFNDQPj.js → eye-Bd06Ragq.js} +1 -1
  174. package/dist/public/assets/field-L06JWfWh.js +1 -0
  175. package/dist/public/assets/file-tree-adapter-BPfbWs81.js +1 -0
  176. package/dist/public/assets/file-tree-utils-D741Um3O.js +1 -0
  177. package/dist/public/assets/flowDiagram-23GEKE2U-emKuZ14A.js +1 -0
  178. package/dist/public/assets/{folder-open-C-WgQ0Xp.js → folder-open-uBVyDcrj.js} +1 -1
  179. package/dist/public/assets/follow-file-DcOgGK76.js +1 -0
  180. package/dist/public/assets/{form-CTttIps7.js → form-DqVoiojI.js} +1 -1
  181. package/dist/public/assets/{ganttDiagram-NO4QXBWP-sqpYy8P9.js → ganttDiagram-NO4QXBWP-DHV4x4CM.js} +1 -1
  182. package/dist/public/assets/{git-branch-DFJ3yJt8.js → git-branch-Dt9AthpR.js} +1 -1
  183. package/dist/public/assets/gitGraph-TEB2WS4Q-DULAthqL.js +1 -0
  184. package/dist/public/assets/{gitGraphDiagram-IHSO6WYX-LRtYXzVh.js → gitGraphDiagram-IHSO6WYX-BCudlL0f.js} +1 -1
  185. package/dist/public/assets/{graphlib-C8fe8zk2.js → graphlib-C20MI2IN.js} +1 -1
  186. package/dist/public/assets/hash-BBX_Yf_s.js +1 -0
  187. package/dist/public/assets/{highlighted-body-OFNGDK62-D_PnaFD1.js → highlighted-body-OFNGDK62-C-4VTnbV.js} +1 -1
  188. package/dist/public/assets/index-BH0n8V71.js +2022 -0
  189. package/dist/public/assets/index-BNgm62X1.css +1 -0
  190. package/dist/public/assets/{info-DV3bzhzI.js → info-CUyu_utl.js} +1 -1
  191. package/dist/public/assets/info-DKCQHKI2-bR6bCx3M.js +1 -0
  192. package/dist/public/assets/{infoDiagram-FWYZ7A6U-CoQbECuU.js → infoDiagram-FWYZ7A6U-BgYy4d56.js} +1 -1
  193. package/dist/public/assets/{input-CsXmpyZP.js → input-DAAOxj0-.js} +1 -1
  194. package/dist/public/assets/{ishikawaDiagram-FXEZZL3T-C_Cz2h3y.js → ishikawaDiagram-FXEZZL3T-CCS72EW8.js} +1 -1
  195. package/dist/public/assets/{journeyDiagram-5HDEW3XC-DFrtpWnU.js → journeyDiagram-5HDEW3XC-CoREp23c.js} +1 -1
  196. package/dist/public/assets/{jsx-runtime-DyiINK0N.js → jsx-runtime-Dda6ZcOg.js} +1 -1
  197. package/dist/public/assets/{kanban-definition-HUTT4EX6-BpqONXYd.js → kanban-definition-HUTT4EX6-DSFIJzBy.js} +1 -1
  198. package/dist/public/assets/{label-bn6BDr7p.js → label-BPs9TAEe.js} +1 -1
  199. package/dist/public/assets/{lib-9ZUh4rh4.js → lib-7eiHvDyn.js} +1 -1
  200. package/dist/public/assets/{line-CGcPvb4l.js → line-DN_hBe-O.js} +1 -1
  201. package/dist/public/assets/{linear-DrLUUwfa.js → linear-D449kPqH.js} +1 -1
  202. package/dist/public/assets/lint-config-client-tK7RuglK.js +1 -0
  203. package/dist/public/assets/lint-plugin-meta-CZ4Yze5u.js +1 -0
  204. package/dist/public/assets/loader-circle-DquHdXOY.js +1 -0
  205. package/dist/public/assets/{map-WpH6dMWB.js → map-MD1QDiqI.js} +1 -1
  206. package/dist/public/assets/{markdownit-BEubyjFu.js → markdownit-D5ckRcLX.js} +1 -1
  207. package/dist/public/assets/markdownlint-rule-browser-DvPHhOzr.js +1 -0
  208. package/dist/public/assets/mermaid-GHXKKRXX-CmCfs7wO.js +1 -0
  209. package/dist/public/assets/{mermaid-parser.core-3Xu6H-xr.js → mermaid-parser.core-Cm2pHXoA.js} +2 -2
  210. package/dist/public/assets/{mermaid.core-BgfUsmdk.js → mermaid.core-CBLgP-tq.js} +3 -3
  211. package/dist/public/assets/{mindmap-definition-LN4V7U3C-C5hGDmLh.js → mindmap-definition-LN4V7U3C-CuiM6FsU.js} +1 -1
  212. package/dist/public/assets/{miss-dialog-store-81J1GwFD.js → miss-dialog-store-tptqlgbE.js} +1 -1
  213. package/dist/public/assets/navigation-targets-BkPd72gM.js +1 -0
  214. package/dist/public/assets/{now-LAZzaJBH.js → now-Dq6LIEaU.js} +1 -1
  215. package/dist/public/assets/{open-managed-artifact-tab-D70MXBHT.js → open-managed-artifact-tab-Bo3JdcHq.js} +1 -1
  216. package/dist/public/assets/{ordinal-DC5m951M.js → ordinal-BIOoIzFp.js} +1 -1
  217. package/dist/public/assets/packet-7NZHBO7P-CcYWaX_e.js +1 -0
  218. package/dist/public/assets/{panel-DLUMbyPl.js → panel-DoEQccon.js} +1 -1
  219. package/dist/public/assets/{panel-right-open-CBweAP43.js → panel-right-open-DXZ0AA7N.js} +1 -1
  220. package/dist/public/assets/{paperclip-DF10JkTg.js → paperclip-B0H0WUBm.js} +1 -1
  221. package/dist/public/assets/{pegDiagram-2B236MQR-BWoigFVh.js → pegDiagram-2B236MQR-BLm9aXLc.js} +1 -1
  222. package/dist/public/assets/{pending-receive-nav-store-CMbR1DlR.js → pending-receive-nav-store-DILNtcMD.js} +1 -1
  223. package/dist/public/assets/pie-RZYD4A2V-BDSTcnr_.js +1 -0
  224. package/dist/public/assets/{pieDiagram-ENE6RG2P-CkC6m5hO.js → pieDiagram-ENE6RG2P-DWSDBj0y.js} +1 -1
  225. package/dist/public/assets/{project-paths-DcJ4HDNl.js → project-paths-s6FVZ5CP.js} +1 -1
  226. package/dist/public/assets/{prop-types-X3nIYAt7.js → prop-types-deRNMwVG.js} +1 -1
  227. package/dist/public/assets/{propagation-api-yIIm019t.js → propagation-api-C2s1QQGZ.js} +1 -1
  228. package/dist/public/assets/{quadrantDiagram-ABIIQ3AL-CHcF1Exh.js → quadrantDiagram-ABIIQ3AL-y4XpclHG.js} +1 -1
  229. package/dist/public/assets/radar-I7S5WNFK-BxDARIlg.js +1 -0
  230. package/dist/public/assets/{radio-group-DW_ypmKx.js → radio-group-CAXEEQ3G.js} +1 -1
  231. package/dist/public/assets/railroad-3IZDKUUU-BCCxSkZw.js +1 -0
  232. package/dist/public/assets/railroad-abnf-AHOZXSZD-Cuizy3dO.js +1 -0
  233. package/dist/public/assets/railroad-ebnf-EBAXGLYW-TmaYmurZ.js +1 -0
  234. package/dist/public/assets/railroad-peg-LSFZ7HO6-DB-VHQzx.js +1 -0
  235. package/dist/public/assets/{railroadDiagram-RFXS5EU6-DFdEG7eg.js → railroadDiagram-RFXS5EU6-D9LfvazB.js} +1 -1
  236. package/dist/public/assets/{react-JNybMug3.js → react-BN2QHhcO.js} +1 -1
  237. package/dist/public/assets/{react-dom-Db7zF7dM.js → react-dom-BtuvISNc.js} +1 -1
  238. package/dist/public/assets/{receive-store-CXRtunGe.js → receive-store-WiVBTPya.js} +1 -1
  239. package/dist/public/assets/{refresh-cw-DSH9Of_0.js → refresh-cw-iL3pn0CM.js} +1 -1
  240. package/dist/public/assets/{requirementDiagram-TGXJPOKE-CGyQCT2G.js → requirementDiagram-TGXJPOKE-CagEMoI5.js} +1 -1
  241. package/dist/public/assets/{sankeyDiagram-HTMAVEWB-DTVS4b12.js → sankeyDiagram-HTMAVEWB-DJKiupTl.js} +1 -1
  242. package/dist/public/assets/schema-fields-view-intent-BjfU6Zlh.js +1 -0
  243. package/dist/public/assets/{selection-context-BiPXU2rp.js → selection-context-BS88-VYp.js} +1 -1
  244. package/dist/public/assets/separator-DDR192VD.js +1 -0
  245. package/dist/public/assets/{sequenceDiagram-DBY2YBRQ-pna9hZ0I.js → sequenceDiagram-DBY2YBRQ-nJTL2lqd.js} +1 -1
  246. package/dist/public/assets/{share-metadata-rows-C7rJ-Cd0.js → share-metadata-rows-Bv7Ioipm.js} +1 -1
  247. package/dist/public/assets/{sizeCapture-X5ZJPWSS-zTum-WLf.js → sizeCapture-X5ZJPWSS-dyd3KiMv.js} +1 -1
  248. package/dist/public/assets/{skeleton-CA6hvjst.js → skeleton-CHlN2fwE.js} +1 -1
  249. package/dist/public/assets/skill-actions-DYgaLxsb.js +1 -0
  250. package/dist/public/assets/{skills-api-C_fjXVRf.js → skills-api-uFanX4oJ.js} +1 -1
  251. package/dist/public/assets/{sliders-horizontal-C9Uy29A1.js → sliders-horizontal-BF9G548a.js} +1 -1
  252. package/dist/public/assets/{sortable.esm-DcjmFgta.js → sortable.esm-Cj1OlkyK.js} +1 -1
  253. package/dist/public/assets/square-pen-DYNBYC6t.js +1 -0
  254. package/dist/public/assets/{src-BlkIpXCO.js → src-BM1NAcg_.js} +1 -1
  255. package/dist/public/assets/{src-Bv1hrVBW.js → src-h4FvJn1N.js} +1 -1
  256. package/dist/public/assets/{startup-marks-CytO17UM.js → startup-marks-lzQ6NDDC.js} +1 -1
  257. package/dist/public/assets/{stateDiagram-2N3HPSRC-CyBtuA0r.js → stateDiagram-2N3HPSRC-SO_TzvB4.js} +1 -1
  258. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-JVqQagQd.js +1 -0
  259. package/dist/public/assets/{stex-Hrt2qQag.js → stex-CcubjMmP.js} +1 -1
  260. package/dist/public/assets/{swimlanes-5IMT3BWC-D50reMLQ.js → swimlanes-5IMT3BWC-I_fog1Gx.js} +2 -2
  261. package/dist/public/assets/swimlanesDiagram-G3AALYLV-DRypLOPY.js +8 -0
  262. package/dist/public/assets/switch-BHGjWF45.js +1 -0
  263. package/dist/public/assets/tag-pill-input-BMmUS_WQ.js +1 -0
  264. package/dist/public/assets/{target-navigation-intent-DW8AJzuM.js → target-navigation-intent-BBHZfQ77.js} +1 -1
  265. package/dist/public/assets/{telemetry-impl-5fGxwbNg.js → telemetry-impl-BKKGF3Eq.js} +2 -2
  266. package/dist/public/assets/telemetry-startup-DukOvXUN.js +1 -0
  267. package/dist/public/assets/{terminal-input-events-DxwonmvH.js → terminal-input-events-Bedf4049.js} +1 -1
  268. package/dist/public/assets/{terminal-launch-events-CuvBwfob.js → terminal-launch-events-B9McD1vp.js} +1 -1
  269. package/dist/public/assets/{terminal-telemetry-qJ0O-9wu.js → terminal-telemetry-D45Iq_is.js} +1 -1
  270. package/dist/public/assets/{textarea-DwJR-19i.js → textarea-BuxwyMFe.js} +1 -1
  271. package/dist/public/assets/{thread-client-DyotU42S.js → thread-client-CZmxW8Kl.js} +1 -1
  272. package/dist/public/assets/{timeline-definition-FHXFAJF6-CuzBF-5l.js → timeline-definition-FHXFAJF6-BQOKl1Wr.js} +1 -1
  273. package/dist/public/assets/{timeline-diff-store-dt1fl2gd.js → timeline-diff-store-C_Gy5mJi.js} +1 -1
  274. package/dist/public/assets/{toggle-group-CxrQL99E.js → toggle-group-D6QJybW6.js} +1 -1
  275. package/dist/public/assets/{tooltip-BCGL5jDF.js → tooltip-BI4ZrlGO.js} +1 -1
  276. package/dist/public/assets/{trash-2-DpF__0y9.js → trash-2-Baoxa0CE.js} +1 -1
  277. package/dist/public/assets/treeView-QDETBFTQ-Dpe2j0i9.js +1 -0
  278. package/dist/public/assets/treemap-6X3UGDF4-C95sDBTA.js +1 -0
  279. package/dist/public/assets/{triangle-alert-DpxK7pzx.js → triangle-alert-CoYdkHNh.js} +1 -1
  280. package/dist/public/assets/typing-burst-detector-BIkRjVzN.js +6 -0
  281. package/dist/public/assets/{use-activity-panel-DEqogtJb.js → use-activity-panel-moy0VULL.js} +1 -1
  282. package/dist/public/assets/{use-apply-config-color-theme-CbAc42DQ.js → use-apply-config-color-theme-DjtvV6aD.js} +1 -1
  283. package/dist/public/assets/{use-collab-url-CDJf5CAl.js → use-collab-url-WOwjT5g9.js} +1 -1
  284. package/dist/public/assets/{use-installed-clis-DmVWBoog.js → use-installed-clis-Civ9j_Zf.js} +1 -1
  285. package/dist/public/assets/{use-live-xterm-theme-DsNSOoA7.js → use-live-xterm-theme-Cy4XCERE.js} +1 -1
  286. package/dist/public/assets/use-settings-route-B9FDd0vP.js +1 -0
  287. package/dist/public/assets/{use-terminal-enabled-CjyUXLzD.js → use-terminal-enabled-Dzj-2NfI.js} +1 -1
  288. package/dist/public/assets/use-timeline-entry-diff-BbF516OI.js +6 -0
  289. package/dist/public/assets/{use-workspace-CHGWiUmE.js → use-workspace-ZAVODT_V.js} +1 -1
  290. package/dist/public/assets/useLintConfigViewMode-B3XLyk60.js +1 -0
  291. package/dist/public/assets/{useQuery-NsPxD6kI.js → useQuery-4J-R1a0S.js} +1 -1
  292. package/dist/public/assets/{vennDiagram-L72KCM5P-BehiEQfV.js → vennDiagram-L72KCM5P-qzJ6aksY.js} +1 -1
  293. package/dist/public/assets/wardley-OPB4EBWU-Ce2t1r0s.js +1 -0
  294. package/dist/public/assets/{wardleyDiagram-EHGQE667-C30zq5TO.js → wardleyDiagram-EHGQE667-CiP5w3Gp.js} +1 -1
  295. package/dist/public/assets/{workspace-paths-DgJUp1dw.js → workspace-paths-CWFRWNa_.js} +1 -1
  296. package/dist/public/assets/{wrench-BDWKT3wQ.js → wrench-C6cgdqwA.js} +1 -1
  297. package/dist/public/assets/x-CxAa17gB.js +1 -0
  298. package/dist/public/assets/{xychartDiagram-FW5EYKEG-G_u042Mg.js → xychartDiagram-FW5EYKEG-DlKpchAN.js} +1 -1
  299. package/dist/public/index.html +135 -125
  300. package/dist/{repair-launch-json-C3uqYkeS.mjs → repair-launch-json-BYeznHy1.mjs} +2 -2
  301. package/dist/{repair-mcp-configs-i7dMnghP.mjs → repair-mcp-configs-BRROn8jU.mjs} +2 -2
  302. package/dist/{repair-skills-P9l196Qv.mjs → repair-skills-151h5k8W.mjs} +2 -2
  303. package/dist/repair-skills-DZ0Xp2Qs.mjs +1 -0
  304. package/dist/schemas/v0/config.project.schema.json +56 -0
  305. package/dist/server-lock-B5AUGEQr.mjs +1 -0
  306. package/dist/{server-lock-DWsOY8Sf.mjs → server-lock-KBZIBxqm.mjs} +2 -2
  307. package/dist/{sleep-CnRgOMGV.mjs → sleep-DPcGAk1M.mjs} +2 -2
  308. package/dist/src-BTZ4BQel.mjs +330 -0
  309. package/dist/{src-Dj-HA_-C.mjs → src-CCAHJYob.mjs} +5 -5
  310. package/dist/src-DFk8Tui7.mjs +3265 -0
  311. package/dist/src-DyjLVrS0.mjs +1 -0
  312. package/dist/{start-CcMTV_IU.mjs → start-BJNRAUkA.mjs} +2 -2
  313. package/dist/start-DEJNwvqi.mjs +1 -0
  314. package/dist/{write-project-skill-Cm0CAVv2.mjs → write-project-skill-XdhLhz7G.mjs} +4 -4
  315. package/package.json +4 -4
  316. package/dist/constants-BJzJKgN0.mjs +0 -2
  317. package/dist/fs-traced-CIBSRy3q.mjs +0 -1
  318. package/dist/git-handle-Dv50ya_5.mjs +0 -1
  319. package/dist/init-BNoSqnre.mjs +0 -1
  320. package/dist/loader-3kHXROAa.mjs +0 -1
  321. package/dist/md-manager-BFa4uLFA.mjs +0 -2
  322. package/dist/preview-rVAd6E5r.mjs +0 -1
  323. package/dist/public/assets/AgentThreadClientBinder-CLmx-vqX.js +0 -1
  324. package/dist/public/assets/CodeMirrorPropInput-C9WmN90w.js +0 -3
  325. package/dist/public/assets/DocumentContext-BcbJIejF.js +0 -38
  326. package/dist/public/assets/FeedbackForm-BeMx2Cc0.js +0 -1
  327. package/dist/public/assets/ManagedArtifactProperties-CQXgVT_Z.js +0 -1
  328. package/dist/public/assets/MermaidDocEditor-DL9NPMko.js +0 -1
  329. package/dist/public/assets/PropertyPanel-DEgQa4x9.js +0 -2
  330. package/dist/public/assets/SettingsDialogBody-BZ10IzbM.js +0 -7
  331. package/dist/public/assets/SourceEditor-Nfwr4rkI.js +0 -1
  332. package/dist/public/assets/TerminalSessionsHost-CMZ3pfB8.js +0 -2
  333. package/dist/public/assets/ThreadView-Dd8w-hhw.js +0 -6
  334. package/dist/public/assets/TimelineDiffPane-DKx6CcI9.js +0 -2
  335. package/dist/public/assets/__vite-browser-external-CW7faKnP.js +0 -1
  336. package/dist/public/assets/agent-visibility-CaL4MDEH.js +0 -1
  337. package/dist/public/assets/architecture-TIHT7OUA-B1GVwxkr.js +0 -1
  338. package/dist/public/assets/arrow-up-right-Bzc4GmE5.js +0 -1
  339. package/dist/public/assets/auth-state-cache-9Mxvjb5G.js +0 -11
  340. package/dist/public/assets/channel-Dnd06LFp.js +0 -1
  341. package/dist/public/assets/check-D_9hlB38.js +0 -1
  342. package/dist/public/assets/chevron-left-4ixwi2VD.js +0 -1
  343. package/dist/public/assets/chevron-right-cXK7rcek.js +0 -1
  344. package/dist/public/assets/chunk-2Q5K7J3B-Bk0ErfBQ.js +0 -1
  345. package/dist/public/assets/chunk-DseTPa7n.js +0 -1
  346. package/dist/public/assets/chunk-VAUOI2AC-BGyW6aBf.js +0 -1
  347. package/dist/public/assets/chunk-XXDRQBXY-D5Z2YAqk.js +0 -1
  348. package/dist/public/assets/classDiagram-OUVF2IWQ-T0UcJd03.js +0 -1
  349. package/dist/public/assets/classDiagram-v2-EOCWNBFH-vS8mV2Ho.js +0 -1
  350. package/dist/public/assets/client-version-yw5_4u_I.js +0 -1
  351. package/dist/public/assets/compiler-runtime-dQcBxOhn.js +0 -1
  352. package/dist/public/assets/config-context-C5AosGyi.js +0 -1
  353. package/dist/public/assets/cynefin-VYW2F7L2-IoPsg8uT.js +0 -1
  354. package/dist/public/assets/dist-Bjs7qRWH.js +0 -2
  355. package/dist/public/assets/dist-CHLZ8lz0.js +0 -557
  356. package/dist/public/assets/dist-xZVtOT7r.js +0 -1
  357. package/dist/public/assets/eventmodeling-45OFAUF4-Miu5EHpe.js +0 -1
  358. package/dist/public/assets/file-tree-adapter-Bvk6LAfH.js +0 -1
  359. package/dist/public/assets/flowDiagram-23GEKE2U-k4ax4B4W.js +0 -1
  360. package/dist/public/assets/follow-file-grI1hNx7.js +0 -1
  361. package/dist/public/assets/gitGraph-TEB2WS4Q-OmjugmYN.js +0 -1
  362. package/dist/public/assets/index-DsA_F7eu.js +0 -2022
  363. package/dist/public/assets/index-G6x9YQiR.css +0 -1
  364. package/dist/public/assets/info-DKCQHKI2-BNI5cXhn.js +0 -1
  365. package/dist/public/assets/keyboard-shortcuts-DEJA0SzW.js +0 -1
  366. package/dist/public/assets/lint-config-client-DJccpgCS.js +0 -1
  367. package/dist/public/assets/loader-circle-K7Xwpjny.js +0 -1
  368. package/dist/public/assets/mermaid-GHXKKRXX-m6Nh9s9H.js +0 -1
  369. package/dist/public/assets/navigation-targets-CPuDxLos.js +0 -1
  370. package/dist/public/assets/packet-7NZHBO7P-B_5BB2Lm.js +0 -1
  371. package/dist/public/assets/pie-RZYD4A2V-DN_XCApP.js +0 -1
  372. package/dist/public/assets/radar-I7S5WNFK-KdS1Y0nk.js +0 -1
  373. package/dist/public/assets/railroad-3IZDKUUU-CargXMo2.js +0 -1
  374. package/dist/public/assets/railroad-abnf-AHOZXSZD-rKz-719h.js +0 -1
  375. package/dist/public/assets/railroad-ebnf-EBAXGLYW-BwxcIuUm.js +0 -1
  376. package/dist/public/assets/railroad-peg-LSFZ7HO6-D-qfZOX5.js +0 -1
  377. package/dist/public/assets/separator-Cvkbg_YK.js +0 -1
  378. package/dist/public/assets/skill-actions-8sFn_d3u.js +0 -1
  379. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-DqUkY3SY.js +0 -1
  380. package/dist/public/assets/swimlanesDiagram-G3AALYLV-DauLKJFl.js +0 -8
  381. package/dist/public/assets/telemetry-startup-CLLgwJqA.js +0 -1
  382. package/dist/public/assets/treeView-QDETBFTQ-ocdjjjzR.js +0 -1
  383. package/dist/public/assets/treemap-6X3UGDF4-PQZ2TLFo.js +0 -1
  384. package/dist/public/assets/typing-burst-detector-CY0OrGne.js +0 -6
  385. package/dist/public/assets/use-timeline-entry-diff-CaKIZSP2.js +0 -6
  386. package/dist/public/assets/wardley-OPB4EBWU-CAyNEwcQ.js +0 -1
  387. package/dist/public/assets/x-6ATUQvcC.js +0 -1
  388. package/dist/repair-skills-DJ7FOTZZ.mjs +0 -1
  389. package/dist/server-lock-Bhmg0tcS.mjs +0 -1
  390. package/dist/src-7LOBasfG.mjs +0 -3272
  391. package/dist/src-CgblAAT9.mjs +0 -1
  392. package/dist/src-IQdx1yfl.mjs +0 -322
  393. package/dist/start-Br97vCln.mjs +0 -1
  394. /package/dist/public/assets/{agent-presence-DdJtLtJ1.js → agent-presence-DNc33brV.js} +0 -0
  395. /package/dist/public/assets/{array-rrgqyMEz.js → array-CymCLnp2.js} +0 -0
  396. /package/dist/public/assets/{chunk-KEIR6QF5-dYt3HMDt.js → chunk-KEIR6QF5-lISElqQF.js} +0 -0
  397. /package/dist/public/assets/{chunk-Y2CYZVJY-CX0MjbSu.js → chunk-Y2CYZVJY-DG6TUVdx.js} +0 -0
  398. /package/dist/public/assets/{clike-mYAQK8rB.js → clike-9w8A902Z.js} +0 -0
  399. /package/dist/public/assets/{clipboard-adapter-BGIXxhKQ.js → clipboard-adapter-Drwe8q2F.js} +0 -0
  400. /package/dist/public/assets/{colors-N4wXgevD.js → colors-C5iIWSWx.js} +0 -0
  401. /package/dist/public/assets/{cytoscape.esm-DVWrVKKE.js → cytoscape.esm-o_6HroCP.js} +0 -0
  402. /package/dist/public/assets/{defaultLocale-D0l1NlB5.js → defaultLocale-Ci_cmxto.js} +0 -0
  403. /package/dist/public/assets/{desktop-bridge-types-Ij8BA7el.js → desktop-bridge-types-D4yyohEA.js} +0 -0
  404. /package/dist/public/assets/{diff-CQoFqEJ8.js → diff-n4NkdSZN.js} +0 -0
  405. /package/dist/public/assets/{dist-Y35lJRjm.js → dist-AKpDSDgD.js} +0 -0
  406. /package/dist/public/assets/{dist-BD3698ve.js → dist-BsjuWfqE.js} +0 -0
  407. /package/dist/public/assets/{documents-fetch-CyAk_i-3.js → documents-fetch-DjUIhwk3.js} +0 -0
  408. /package/dist/public/assets/{external-link-BtglP1zb.js → external-link-I5y7ImPR.js} +0 -0
  409. /package/dist/public/assets/{file-tree-rename-validation-DMHa94fr.js → file-tree-rename-validation-VypXChwN.js} +0 -0
  410. /package/dist/public/assets/{format-Dn5VT_ew.js → format-Dz9WHgnR.js} +0 -0
  411. /package/dist/public/assets/{go-DksFOnIG.js → go-D_ersHVS.js} +0 -0
  412. /package/dist/public/assets/{init-BZfMkAqI.js → init-C7ZvyJtv.js} +0 -0
  413. /package/dist/public/assets/{isObject-ClHKc-zZ.js → isObject-DaX0mC2K.js} +0 -0
  414. /package/dist/public/assets/{katex-arNHcYlY.js → katex-DZtlYSy3.js} +0 -0
  415. /package/dist/public/assets/{libesm-BUX1Jc4h.js → libesm-Dk2Xd9ht.js} +0 -0
  416. /package/dist/public/assets/{lru-string-cache-D19dwCKJ.js → lru-string-cache-mZvIfIzw.js} +0 -0
  417. /package/dist/public/assets/{lua-DtKxmweM.js → lua-BZ3SwmRr.js} +0 -0
  418. /package/dist/public/assets/{mcp-consent-store-rBVJ88Wy.js → mcp-consent-store-D6bfXqet.js} +0 -0
  419. /package/dist/public/assets/{min-C03Z0UNc.js → min-BNBb-xib.js} +0 -0
  420. /package/dist/public/assets/{panzoom.es-DSQCRJbU.js → panzoom.es-ChI1_jtK.js} +0 -0
  421. /package/dist/public/assets/{parse-api-error-DucXvNZh.js → parse-api-error-CWeCvbNN.js} +0 -0
  422. /package/dist/public/assets/{path-vgVLrjZ6.js → path-CYY6b8e4.js} +0 -0
  423. /package/dist/public/assets/{pdf-B7Aueyrp.js → pdf-DQbEAtJS.js} +0 -0
  424. /package/dist/public/assets/{pdf.worker-DcgidUky.js → pdf.worker-DsFSKvhP.js} +0 -0
  425. /package/dist/public/assets/{perl-BXzCUtdd.js → perl-FdQByH_S.js} +0 -0
  426. /package/dist/public/assets/{properties-CJAqwakm.js → properties-CBj992v9.js} +0 -0
  427. /package/dist/public/assets/{r-Brb1bnAX.js → r-qg1NnfeR.js} +0 -0
  428. /package/dist/public/assets/{rough.esm-DTi2YMB-.js → rough.esm-wROa2UhX.js} +0 -0
  429. /package/dist/public/assets/{ruby-CWNYdZZ6.js → ruby-Cg1fwXaw.js} +0 -0
  430. /package/dist/public/assets/{shell-B3Wf6FeS.js → shell-CA2_MAbd.js} +0 -0
  431. /package/dist/public/assets/{sql-BRvyk2_W.js → sql-Cr2C6qVg.js} +0 -0
  432. /package/dist/public/assets/{src-DlwJ21NB.js → src-CrMlpkn3.js} +0 -0
  433. /package/dist/public/assets/{swift-DT2ta4LM.js → swift-D3NgIBNg.js} +0 -0
  434. /package/dist/public/assets/{toml-C1FnyICQ.js → toml-DzNmVe9T.js} +0 -0
  435. /package/dist/public/assets/{trace-api-CXljsYUC.js → trace-api-BEJdTRcX.js} +0 -0
  436. /package/dist/public/assets/{w3c-keyname-Daddi42S.js → w3c-keyname-BPyKWMWB.js} +0 -0
  437. /package/dist/public/assets/{worktree-store-1tC864Do.js → worktree-store-CcI-M07q.js} +0 -0
package/dist/index.d.mts CHANGED
@@ -2352,11 +2352,19 @@ declare const ConfigSchema: ZodObject<{
2352
2352
  markdownlint: ZodDefault<ZodObject<{
2353
2353
  enabled: ZodDefault<ZodBoolean>;
2354
2354
  }, $strip>>;
2355
+ frontmatter: ZodDefault<ZodObject<{
2356
+ enabled: ZodDefault<ZodBoolean>;
2357
+ schemas: ZodDefault<ZodArray<ZodObject<{
2358
+ appliesTo: ZodOptional<ZodUnion<readonly [ZodString, ZodArray<ZodString>]>>;
2359
+ file: ZodString;
2360
+ enabled: ZodOptional<ZodBoolean>;
2361
+ }, $strip>>>;
2362
+ }, $strip>>;
2355
2363
  }, $loose>>;
2356
2364
  validation: ZodDefault<ZodObject<{
2357
2365
  links: ZodDefault<ZodEnum<{
2358
- off: "off";
2359
2366
  error: "error";
2367
+ off: "off";
2360
2368
  warning: "warning";
2361
2369
  }>>;
2362
2370
  fileTreeIndicators: ZodDefault<ZodBoolean>;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{_ as e,a as t,c as n,g as r,i,l as a,m as o,o as s,r as c,s as l,t as u,u as d}from"./write-project-skill-Cm0CAVv2.mjs";import{C as f,_ as p,b as m,c as h,f as g,g as _,h as v,i as y,l as b,n as x,r as S,s as C,t as w,u as T,v as E,w as D}from"./src-Dj-HA_-C.mjs";import{a as O,i as k,n as A,t as j}from"./acp-harness-probe-DR1ZKGnH.mjs";import{A as M,F as N,I as P,M as F,N as I,O as L,P as R,d as z,j as B,k as V,n as H,o as U,s as W,v as G,x as K,y as q}from"./init-CRqHukN0.mjs";import{n as J}from"./loader-B2FwNLO-.mjs";import{n as Y}from"./preview-2zt9BjS6.mjs";import{n as X,t as Z}from"./mcp-migrate-event-CWx0WLdE.mjs";export{l as ALL_EDITOR_IDS,n as EDITOR_LABELS,a as EDITOR_TARGETS,d as HOSTS_WITH_USER_SKILL_DIR,H as LAUNCH_CONFIG_NAME,h as PATH_SHIM_BEGIN,b as PATH_SHIM_BLOCK_RE,T as PATH_SHIM_END,L as addOkPathsToGitExclude,u as assertProjectPathSafe,o as buildManagedServerEntry,S as buildMcpConfigDeclineEvent,Z as buildMcpConfigMigrateEvent,U as classifyExistingMcpEntry,m as collectReportBundle,k as createTokenStore,f as defaultBugReportZipPath,A as detectGh,W as detectInstalledEditors,V as formatTrackedRemediation,M as getExcludedOkPaths,B as getOkArtifactPaths,r as isEntryUpToDate,e as isOwnManagedEntry,J as loadConfig,O as makeLazyProbeTokenStore,v as parseGitHubBlobUrl,_ as parseGitHubShareUrl,p as parseGitHubTreeUrl,E as parseGitUrl,g as pathInstallMarkerPath,Y as previewContent,j as probeOwnManagedEditorMcpEntry,F as probeTrackedOkPaths,z as readExistingMcpEntry,I as readSharingMode,R as readSkillsShared,D as redactContent,N as removeOkPathsFromGitExclude,C as removeOwnMcpEntry,c as removeProjectSkill,t as removeUserGlobalSkillBundle,K as resolveProjectRoot,y as runStop,P as setSkillsShared,X as truncatePriorEntry,s as userGlobalSkillBundleTargets,x as validateLocalFolderForShare,G as writeEditorMcpConfig,w as writeProjectAiIntegrations,i as writeProjectSkill,q as writeUserMcpConfigs};
1
+ import{_ as e,a as t,c as n,g as r,i,l as a,m as o,o as s,r as c,s as l,t as u,u as d}from"./write-project-skill-XdhLhz7G.mjs";import{C as f,_ as p,b as m,c as h,f as g,g as _,h as v,i as y,l as b,n as x,r as S,s as C,t as w,u as T,v as E,w as D}from"./src-CCAHJYob.mjs";import{a as O,i as k,n as A,t as j}from"./acp-harness-probe-BxjXsPOq.mjs";import{A as M,F as N,I as P,M as F,N as I,O as L,P as R,d as z,j as B,k as V,n as H,o as U,s as W,v as G,x as K,y as q}from"./init-JMQ-3ZKg.mjs";import{n as J}from"./loader-G247xVVO.mjs";import{n as Y}from"./preview-CpkyThwj.mjs";import{n as X,t as Z}from"./mcp-migrate-event-CWx0WLdE.mjs";export{l as ALL_EDITOR_IDS,n as EDITOR_LABELS,a as EDITOR_TARGETS,d as HOSTS_WITH_USER_SKILL_DIR,H as LAUNCH_CONFIG_NAME,h as PATH_SHIM_BEGIN,b as PATH_SHIM_BLOCK_RE,T as PATH_SHIM_END,L as addOkPathsToGitExclude,u as assertProjectPathSafe,o as buildManagedServerEntry,S as buildMcpConfigDeclineEvent,Z as buildMcpConfigMigrateEvent,U as classifyExistingMcpEntry,m as collectReportBundle,k as createTokenStore,f as defaultBugReportZipPath,A as detectGh,W as detectInstalledEditors,V as formatTrackedRemediation,M as getExcludedOkPaths,B as getOkArtifactPaths,r as isEntryUpToDate,e as isOwnManagedEntry,J as loadConfig,O as makeLazyProbeTokenStore,v as parseGitHubBlobUrl,_ as parseGitHubShareUrl,p as parseGitHubTreeUrl,E as parseGitUrl,g as pathInstallMarkerPath,Y as previewContent,j as probeOwnManagedEditorMcpEntry,F as probeTrackedOkPaths,z as readExistingMcpEntry,I as readSharingMode,R as readSkillsShared,D as redactContent,N as removeOkPathsFromGitExclude,C as removeOwnMcpEntry,c as removeProjectSkill,t as removeUserGlobalSkillBundle,K as resolveProjectRoot,y as runStop,P as setSkillsShared,X as truncatePriorEntry,s as userGlobalSkillBundleTargets,x as validateLocalFolderForShare,G as writeEditorMcpConfig,w as writeProjectAiIntegrations,i as writeProjectSkill,q as writeUserMcpConfigs};
@@ -0,0 +1 @@
1
+ import{g as e}from"./init-JMQ-3ZKg.mjs";export{e as runInit};
@@ -1,4 +1,4 @@
1
- import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Ia as r,O as i,j as a,ya as o}from"./src-IQdx1yfl.mjs";import{Gr as s,Kr as c,Nr as l,Pr as u,Yr as d,_r as f,ar as p,c as m,ci as h,dn as g,fn as _,gn as v,ir as y,l as b,ma as x,mn as S,qr as C,u as ee,wr as te}from"./src-7LOBasfG.mjs";import{G as ne}from"./sleep-CnRgOMGV.mjs";import{M as w,P as T}from"./fs-traced-PoaSX4-V.mjs";import{C as re,a as ie,b as ae,d as E,f as oe,i as se,l as D,m as ce,p as le,s as ue,t as de,x as fe}from"./write-project-skill-Cm0CAVv2.mjs";import{i as O,n as pe,o as k,r as me,s as A,t as j}from"./colors-BsmVIwfM.mjs";import{t as he}from"./constants-BJzJKgN0.mjs";import{t as M}from"./is-object-ByG7RnjH.mjs";import{t as ge}from"./preview-2zt9BjS6.mjs";import{createRequire as _e}from"node:module";import{execFileSync as ve}from"node:child_process";import N,{dirname as P,isAbsolute as ye,join as F,relative as I,resolve as be,sep as xe}from"node:path";import{existsSync as L,lstatSync as Se,mkdirSync as Ce,readFileSync as R,readlinkSync as we,realpathSync as Te,statSync as Ee,writeFileSync as De}from"node:fs";import{homedir as Oe}from"node:os";import z from"node:process";import{fileURLToPath as ke}from"node:url";import*as Ae from"node:readline";import{inspect as je,stripVTControlCharacters as Me,styleText as B}from"node:util";import{AsyncLocalStorage as Ne,AsyncResource as Pe}from"node:async_hooks";const Fe=new Set([`emacs`,`vim`]);function Ie(e){return Fe.has(e)}function Le(){let e=process.env.INQUIRER_KEYBINDINGS;return e?Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(Ie))):[]}const V=(e,t=[])=>e.name===`up`||t.includes(`vim`)&&e.name===`k`||t.includes(`emacs`)&&e.ctrl&&e.name===`p`,Re=(e,t=[])=>e.name===`down`||t.includes(`vim`)&&e.name===`j`||t.includes(`emacs`)&&e.ctrl&&e.name===`n`,ze=e=>e.name===`space`,Be=e=>e.name===`backspace`,Ve=e=>`1234567890`.includes(e.name),He=e=>e.name===`enter`||e.name===`return`;var Ue=class extends Error{name=`AbortPromptError`;message=`Prompt was aborted`;constructor(e){super(),this.cause=e?.cause}},We=class extends Error{name=`CancelPromptError`;message=`Prompt was canceled`},Ge=class extends Error{name=`ExitPromptError`},Ke=class extends Error{name=`HookError`},qe=class extends Error{name=`ValidationError`};const Je=new Ne;function Ye(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function Xe(e,t){let n=Ye(e);return Je.run(n,()=>{function e(e){n.handleChange=()=>{n.index=0,e()},n.handleChange()}return t(e)})}function H(){let e=Je.getStore();if(!e)throw new Ke(`[Inquirer] Hook functions can only be called from within a prompt`);return e}function Ze(){return H().rl}function Qe(e){return Pe.bind((...t)=>{let n=H(),r=!1,i=n.handleChange;n.handleChange=()=>{r=!0};let a=e(...t);return r&&i(),n.handleChange=i,a})}function $e(e){let t=H(),{index:n}=t,r=e({get(){return t.hooks[n]},set(e){t.hooks[n]=e},initialized:n in t.hooks});return t.index++,r}function et(){H().handleChange()}const tt={queue(e){let t=H(),{index:n}=t;t.hooksEffect.push(()=>{t.hooksCleanup[n]?.();let r=e(Ze());if(r!=null&&typeof r!=`function`)throw new qe(`useEffect return value must be a cleanup function or nothing.`);t.hooksCleanup[n]=r})},run(){let e=H();Qe(()=>{e.hooksEffect.forEach(e=>{e()}),e.hooksEffect.length=0})()},clearAll(){let e=H();e.hooksCleanup.forEach(e=>{e?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function nt(e){return typeof e==`function`}function U(e){return $e(t=>{let n=Pe.bind(function(e){t.get()!==e&&(t.set(e),et())});if(t.initialized)return[t.get(),n];let r=nt(e)?e():e;return t.set(r),[r,n]})}function rt(e,t){$e(n=>{let r=n.get();(!Array.isArray(r)||t.some((e,t)=>!Object.is(e,r[t])))&&tt.queue(e),n.set(t)})}function it(){return z.platform.startsWith(`win`)?!!z.env.CI||!!z.env.WT_SESSION||!!z.env.TERMINUS_SUBLIME||z.env.ConEmuTask===`{cmd::Cmder}`||z.env.TERM_PROGRAM===`Terminus-Sublime`||z.env.TERM_PROGRAM===`vscode`||z.env.TERM===`xterm-256color`||z.env.TERM===`alacritty`||z.env.TERMINAL_EMULATOR===`JetBrains-JediTerm`:z.env.TERM!==`linux`}const at={circleQuestionMark:`(?)`,questionMarkPrefix:`(?)`,square:`█`,squareDarkShade:`▓`,squareMediumShade:`▒`,squareLightShade:`░`,squareTop:`▀`,squareBottom:`▄`,squareLeft:`▌`,squareRight:`▐`,squareCenter:`■`,bullet:`●`,dot:`․`,ellipsis:`…`,pointerSmall:`›`,triangleUp:`▲`,triangleUpSmall:`▴`,triangleDown:`▼`,triangleDownSmall:`▾`,triangleLeftSmall:`◂`,triangleRightSmall:`▸`,home:`⌂`,heart:`♥`,musicNote:`♪`,musicNoteBeamed:`♫`,arrowUp:`↑`,arrowDown:`↓`,arrowLeft:`←`,arrowRight:`→`,arrowLeftRight:`↔`,arrowUpDown:`↕`,almostEqual:`≈`,notEqual:`≠`,lessOrEqual:`≤`,greaterOrEqual:`≥`,identical:`≡`,infinity:`∞`,subscriptZero:`₀`,subscriptOne:`₁`,subscriptTwo:`₂`,subscriptThree:`₃`,subscriptFour:`₄`,subscriptFive:`₅`,subscriptSix:`₆`,subscriptSeven:`₇`,subscriptEight:`₈`,subscriptNine:`₉`,oneHalf:`½`,oneThird:`⅓`,oneQuarter:`¼`,oneFifth:`⅕`,oneSixth:`⅙`,oneEighth:`⅛`,twoThirds:`⅔`,twoFifths:`⅖`,threeQuarters:`¾`,threeFifths:`⅗`,threeEighths:`⅜`,fourFifths:`⅘`,fiveSixths:`⅚`,fiveEighths:`⅝`,sevenEighths:`⅞`,line:`─`,lineBold:`━`,lineDouble:`═`,lineDashed0:`┄`,lineDashed1:`┅`,lineDashed2:`┈`,lineDashed3:`┉`,lineDashed4:`╌`,lineDashed5:`╍`,lineDashed6:`╴`,lineDashed7:`╶`,lineDashed8:`╸`,lineDashed9:`╺`,lineDashed10:`╼`,lineDashed11:`╾`,lineDashed12:`−`,lineDashed13:`–`,lineDashed14:`‐`,lineDashed15:`⁃`,lineVertical:`│`,lineVerticalBold:`┃`,lineVerticalDouble:`║`,lineVerticalDashed0:`┆`,lineVerticalDashed1:`┇`,lineVerticalDashed2:`┊`,lineVerticalDashed3:`┋`,lineVerticalDashed4:`╎`,lineVerticalDashed5:`╏`,lineVerticalDashed6:`╵`,lineVerticalDashed7:`╷`,lineVerticalDashed8:`╹`,lineVerticalDashed9:`╻`,lineVerticalDashed10:`╽`,lineVerticalDashed11:`╿`,lineDownLeft:`┐`,lineDownLeftArc:`╮`,lineDownBoldLeftBold:`┓`,lineDownBoldLeft:`┒`,lineDownLeftBold:`┑`,lineDownDoubleLeftDouble:`╗`,lineDownDoubleLeft:`╖`,lineDownLeftDouble:`╕`,lineDownRight:`┌`,lineDownRightArc:`╭`,lineDownBoldRightBold:`┏`,lineDownBoldRight:`┎`,lineDownRightBold:`┍`,lineDownDoubleRightDouble:`╔`,lineDownDoubleRight:`╓`,lineDownRightDouble:`╒`,lineUpLeft:`┘`,lineUpLeftArc:`╯`,lineUpBoldLeftBold:`┛`,lineUpBoldLeft:`┚`,lineUpLeftBold:`┙`,lineUpDoubleLeftDouble:`╝`,lineUpDoubleLeft:`╜`,lineUpLeftDouble:`╛`,lineUpRight:`└`,lineUpRightArc:`╰`,lineUpBoldRightBold:`┗`,lineUpBoldRight:`┖`,lineUpRightBold:`┕`,lineUpDoubleRightDouble:`╚`,lineUpDoubleRight:`╙`,lineUpRightDouble:`╘`,lineUpDownLeft:`┤`,lineUpBoldDownBoldLeftBold:`┫`,lineUpBoldDownBoldLeft:`┨`,lineUpDownLeftBold:`┥`,lineUpBoldDownLeftBold:`┩`,lineUpDownBoldLeftBold:`┪`,lineUpDownBoldLeft:`┧`,lineUpBoldDownLeft:`┦`,lineUpDoubleDownDoubleLeftDouble:`╣`,lineUpDoubleDownDoubleLeft:`╢`,lineUpDownLeftDouble:`╡`,lineUpDownRight:`├`,lineUpBoldDownBoldRightBold:`┣`,lineUpBoldDownBoldRight:`┠`,lineUpDownRightBold:`┝`,lineUpBoldDownRightBold:`┡`,lineUpDownBoldRightBold:`┢`,lineUpDownBoldRight:`┟`,lineUpBoldDownRight:`┞`,lineUpDoubleDownDoubleRightDouble:`╠`,lineUpDoubleDownDoubleRight:`╟`,lineUpDownRightDouble:`╞`,lineDownLeftRight:`┬`,lineDownBoldLeftBoldRightBold:`┳`,lineDownLeftBoldRightBold:`┯`,lineDownBoldLeftRight:`┰`,lineDownBoldLeftBoldRight:`┱`,lineDownBoldLeftRightBold:`┲`,lineDownLeftRightBold:`┮`,lineDownLeftBoldRight:`┭`,lineDownDoubleLeftDoubleRightDouble:`╦`,lineDownDoubleLeftRight:`╥`,lineDownLeftDoubleRightDouble:`╤`,lineUpLeftRight:`┴`,lineUpBoldLeftBoldRightBold:`┻`,lineUpLeftBoldRightBold:`┷`,lineUpBoldLeftRight:`┸`,lineUpBoldLeftBoldRight:`┹`,lineUpBoldLeftRightBold:`┺`,lineUpLeftRightBold:`┶`,lineUpLeftBoldRight:`┵`,lineUpDoubleLeftDoubleRightDouble:`╩`,lineUpDoubleLeftRight:`╨`,lineUpLeftDoubleRightDouble:`╧`,lineUpDownLeftRight:`┼`,lineUpBoldDownBoldLeftBoldRightBold:`╋`,lineUpDownBoldLeftBoldRightBold:`╈`,lineUpBoldDownLeftBoldRightBold:`╇`,lineUpBoldDownBoldLeftRightBold:`╊`,lineUpBoldDownBoldLeftBoldRight:`╉`,lineUpBoldDownLeftRight:`╀`,lineUpDownBoldLeftRight:`╁`,lineUpDownLeftBoldRight:`┽`,lineUpDownLeftRightBold:`┾`,lineUpBoldDownBoldLeftRight:`╂`,lineUpDownLeftBoldRightBold:`┿`,lineUpBoldDownLeftBoldRight:`╃`,lineUpBoldDownLeftRightBold:`╄`,lineUpDownBoldLeftBoldRight:`╅`,lineUpDownBoldLeftRightBold:`╆`,lineUpDoubleDownDoubleLeftDoubleRightDouble:`╬`,lineUpDoubleDownDoubleLeftRight:`╫`,lineUpDownLeftDoubleRightDouble:`╪`,lineCross:`╳`,lineBackslash:`╲`,lineSlash:`╱`},ot={tick:`✔`,info:`ℹ`,warning:`⚠`,cross:`✘`,squareSmall:`◻`,squareSmallFilled:`◼`,circle:`◯`,circleFilled:`◉`,circleDotted:`◌`,circleDouble:`◎`,circleCircle:`ⓞ`,circleCross:`ⓧ`,circlePipe:`Ⓘ`,radioOn:`◉`,radioOff:`◯`,checkboxOn:`☒`,checkboxOff:`☐`,checkboxCircleOn:`ⓧ`,checkboxCircleOff:`Ⓘ`,pointer:`❯`,triangleUpOutline:`△`,triangleLeft:`◀`,triangleRight:`▶`,lozenge:`◆`,lozengeOutline:`◇`,hamburger:`☰`,smiley:`㋡`,mustache:`෴`,star:`★`,play:`▶`,nodejs:`⬢`,oneSeventh:`⅐`,oneNinth:`⅑`,oneTenth:`⅒`},st={tick:`√`,info:`i`,warning:`‼`,cross:`×`,squareSmall:`□`,squareSmallFilled:`■`,circle:`( )`,circleFilled:`(*)`,circleDotted:`( )`,circleDouble:`( )`,circleCircle:`(○)`,circleCross:`(×)`,circlePipe:`(│)`,radioOn:`(*)`,radioOff:`( )`,checkboxOn:`[×]`,checkboxOff:`[ ]`,checkboxCircleOn:`(×)`,checkboxCircleOff:`( )`,pointer:`>`,triangleUpOutline:`∆`,triangleLeft:`◄`,triangleRight:`►`,lozenge:`♦`,lozengeOutline:`◊`,hamburger:`≡`,smiley:`☺`,mustache:`┌─┐`,star:`✶`,play:`►`,nodejs:`♦`,oneSeventh:`1/7`,oneNinth:`1/9`,oneTenth:`1/10`},ct={...at,...ot},lt={...at,...st},W=it()?ct:lt;Object.entries(ot);const ut={prefix:{idle:B(`blue`,`?`),done:B(`green`,W.tick)},spinner:{interval:80,frames:[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`].map(e=>B(`yellow`,e))},keybindings:[],style:{answer:e=>B(`cyan`,e),message:e=>B(`bold`,e),error:e=>B(`red`,`> ${e}`),defaultAnswer:e=>B(`dim`,`(${e})`),help:e=>B(`dim`,e),highlight:e=>B(`cyan`,e),key:e=>B(`cyan`,B(`bold`,`<${e}>`))}};function dt(){return{...ut,keybindings:Le()}}function ft(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function pt(...e){let t={};for(let n of e)for(let[e,r]of Object.entries(n)){let n=t[e];t[e]=ft(n)&&ft(r)?pt(n,r):r}return t}function mt(...e){return pt(dt(),...e.filter(e=>e!=null))}function ht({status:e=`idle`,theme:t}){let[n,r]=U(!1),[i,a]=U(0),{prefix:o,spinner:s}=mt(t);return rt(()=>{if(e===`loading`){let e,t=-1,n=setTimeout(()=>{r(!0),e=setInterval(()=>{t+=1,a(t%s.frames.length)},s.interval)},300);return()=>{clearTimeout(n),clearInterval(e)}}else r(!1)},[e]),n?s.frames[i]:typeof o==`string`?o:o[e===`loading`?`idle`:e]??o.idle}function gt(e,t){return $e(n=>{let r=n.get();if(!r||r.dependencies.length!==t.length||r.dependencies.some((e,n)=>e!==t[n])){let r=e();return n.set({value:r,dependencies:t}),r}return r.value})}function _t(e){return U({current:e})[0]}function vt(e){let t=_t(e);t.current=e,rt(e=>{let n=!1,r=Qe((r,i)=>{n||t.current(i,e)});return e.input.on(`keypress`,r),()=>{n=!0,e.input.removeListener(`keypress`,r)}},[])}var yt=t(n(((t,n)=>{n.exports=i;function r(t){let n={defaultWidth:0,output:process.stdout,tty:e(`tty`)};return t?(Object.keys(n).forEach(function(e){t[e]||(t[e]=n[e])}),t):n}function i(e){let t=r(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let e=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(e)&&e!==0)return e}return t.defaultWidth}}))(),1);const bt=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return t=>{let n=0;for(e.lastIndex=0;e.test(t);)n+=1;return t.length-n}})(),xt=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,St=e=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141,Ct=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,wt=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Tt=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/uy,Et=/\t{1,1000}/y,Dt=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/uy,Ot=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,kt=/\p{M}+/gu,At={limit:1/0,ellipsis:``},jt=(e,t={},n={})=>{let r=t.limit??1/0,i=t.ellipsis??``,a=t?.ellipsisWidth??(i?jt(i,At,n).width:0),o=n.controlWidth??0,s=n.tabWidth??8,c=n.emojiWidth??2,l=n.regularWidth??1,u=n.wideWidth??2,d=[[Ot,l],[Ct,0],[wt,o],[Et,s],[Dt,c],[Tt,u]],f=0,p=0,m=e.length,h=0,g=!1,_=m,v=Math.max(0,r-a),y=0,b=0,x=0,S=0;outer:for(;;){if(b>y||p>=m&&p>f){let t=e.slice(y,b)||e.slice(f,p);h=0;for(let e of t.replaceAll(kt,``)){let t=e.codePointAt(0)||0;if(S=xt(t)?2:St(t)?u:l,x+S>v&&(_=Math.min(_,Math.max(y,f)+h)),x+S>r){g=!0;break outer}h+=e.length,x+=S}y=b=0}if(p>=m)break outer;for(let t=0,n=d.length;t<n;t++){let[n,i]=d[t];if(n.lastIndex=p,n.test(e)){if(h=n===Tt?bt(e.slice(p,n.lastIndex)):n===Dt?1:n.lastIndex-p,S=h*i,x+S>v&&(_=Math.min(_,p+Math.floor((v-x)/i))),x+S>r){g=!0;break outer}x+=S,y=f,b=p,p=f=n.lastIndex;continue outer}}p+=1}return{width:g?v:x,index:g?_:m,truncated:g,ellipsed:g&&r>=a}},Mt={limit:1/0,ellipsis:``,ellipsisWidth:0},G=(e,t={})=>jt(e,Mt,t).width,Nt=`]8;;`,Pt=RegExp(`(?:\\[(?<code>\\d+)m|\\${Nt}(?<uri>.*))`,`y`),Ft=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},It=e=>`[${e}m`,Lt=e=>`${Nt}${e}`,Rt=(e,t,n)=>{let r=t[Symbol.iterator](),i=!1,a=!1,o=e.at(-1),s=o===void 0?0:G(o),c=r.next(),l=r.next(),u=0;for(;!c.done;){let o=c.value,d=G(o);s+d<=n?e[e.length-1]+=o:(e.push(o),s=0),(o===`\x1B`||o===`›`)&&(i=!0,a=t.startsWith(Nt,u+1)),i?a?o===`\x07`&&(i=!1,a=!1):o===`m`&&(i=!1):(s+=d,s===n&&!l.done&&(e.push(``),s=0)),c=l,l=r.next(),u+=o.length}o=e.at(-1),!s&&o!==void 0&&o.length&&e.length>1&&(e[e.length-2]+=e.pop())},zt=e=>{let t=e.split(` `),n=t.length;for(;n&&!G(t[n-1]);)n--;return n===t.length?e:t.slice(0,n).join(` `)+t.slice(n).join(``)},Bt=(e,t,n={})=>{if(n.trim!==!1&&e.trim()===``)return``;let r=``,i,a,o=e.split(` `),s=[``],c=0;for(let e=0;e<o.length;e++){let r=o[e];if(n.trim!==!1){let e=s.at(-1)??``,t=e.trimStart();e.length!==t.length&&(s[s.length-1]=t,c=G(t))}e!==0&&(c>=t&&(n.wordWrap===!1||n.trim===!1)&&(s.push(``),c=0),(c||n.trim===!1)&&(s[s.length-1]+=` `,c++));let i=G(r);if(n.hard&&i>t){let e=t-c,n=1+Math.floor((i-e-1)/t);Math.floor((i-1)/t)<n&&s.push(``),Rt(s,r,t),c=G(s.at(-1)??``);continue}if(c+i>t&&c&&i){if(n.wordWrap===!1&&c<t){Rt(s,r,t),c=G(s.at(-1)??``);continue}s.push(``),c=0}if(c+i>t&&n.wordWrap===!1){Rt(s,r,t),c=G(s.at(-1)??``);continue}s[s.length-1]+=r,c+=i}n.trim!==!1&&(s=s.map(e=>zt(e)));let l=s.join(`
1
+ import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Na as r,O as i,Xa as a,j as o}from"./src-BTZ4BQel.mjs";import{Jr as s,Kr as c,Nr as l,Pr as u,Xr as d,_r as f,ar as p,c as m,dn as h,fn as g,gn as _,ha as v,ir as y,l as b,li as x,mn as S,qr as C,u as ee,wr as te}from"./src-DFk8Tui7.mjs";import{G as ne}from"./sleep-DPcGAk1M.mjs";import{M as w,P as T}from"./fs-traced-CNJs7Awa.mjs";import{C as re,a as ie,b as ae,d as E,f as oe,i as se,l as D,m as ce,p as le,s as ue,t as de,x as fe}from"./write-project-skill-XdhLhz7G.mjs";import{i as O,n as pe,o as k,r as me,s as A,t as j}from"./colors-BsmVIwfM.mjs";import{t as he}from"./constants-bmev5FwS.mjs";import{t as M}from"./is-object-ByG7RnjH.mjs";import{t as ge}from"./preview-CpkyThwj.mjs";import{createRequire as _e}from"node:module";import{execFileSync as ve}from"node:child_process";import N,{dirname as P,isAbsolute as ye,join as F,relative as I,resolve as be,sep as xe}from"node:path";import{existsSync as L,lstatSync as Se,mkdirSync as Ce,readFileSync as R,readlinkSync as we,realpathSync as Te,statSync as Ee,writeFileSync as De}from"node:fs";import{homedir as Oe}from"node:os";import z from"node:process";import{fileURLToPath as ke}from"node:url";import*as Ae from"node:readline";import{inspect as je,stripVTControlCharacters as Me,styleText as B}from"node:util";import{AsyncLocalStorage as Ne,AsyncResource as Pe}from"node:async_hooks";const Fe=new Set([`emacs`,`vim`]);function Ie(e){return Fe.has(e)}function Le(){let e=process.env.INQUIRER_KEYBINDINGS;return e?Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(Ie))):[]}const V=(e,t=[])=>e.name===`up`||t.includes(`vim`)&&e.name===`k`||t.includes(`emacs`)&&e.ctrl&&e.name===`p`,Re=(e,t=[])=>e.name===`down`||t.includes(`vim`)&&e.name===`j`||t.includes(`emacs`)&&e.ctrl&&e.name===`n`,ze=e=>e.name===`space`,Be=e=>e.name===`backspace`,Ve=e=>`1234567890`.includes(e.name),He=e=>e.name===`enter`||e.name===`return`;var Ue=class extends Error{name=`AbortPromptError`;message=`Prompt was aborted`;constructor(e){super(),this.cause=e?.cause}},We=class extends Error{name=`CancelPromptError`;message=`Prompt was canceled`},Ge=class extends Error{name=`ExitPromptError`},Ke=class extends Error{name=`HookError`},qe=class extends Error{name=`ValidationError`};const Je=new Ne;function Ye(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function Xe(e,t){let n=Ye(e);return Je.run(n,()=>{function e(e){n.handleChange=()=>{n.index=0,e()},n.handleChange()}return t(e)})}function H(){let e=Je.getStore();if(!e)throw new Ke(`[Inquirer] Hook functions can only be called from within a prompt`);return e}function Ze(){return H().rl}function Qe(e){return Pe.bind((...t)=>{let n=H(),r=!1,i=n.handleChange;n.handleChange=()=>{r=!0};let a=e(...t);return r&&i(),n.handleChange=i,a})}function $e(e){let t=H(),{index:n}=t,r=e({get(){return t.hooks[n]},set(e){t.hooks[n]=e},initialized:n in t.hooks});return t.index++,r}function et(){H().handleChange()}const tt={queue(e){let t=H(),{index:n}=t;t.hooksEffect.push(()=>{t.hooksCleanup[n]?.();let r=e(Ze());if(r!=null&&typeof r!=`function`)throw new qe(`useEffect return value must be a cleanup function or nothing.`);t.hooksCleanup[n]=r})},run(){let e=H();Qe(()=>{e.hooksEffect.forEach(e=>{e()}),e.hooksEffect.length=0})()},clearAll(){let e=H();e.hooksCleanup.forEach(e=>{e?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function nt(e){return typeof e==`function`}function U(e){return $e(t=>{let n=Pe.bind(function(e){t.get()!==e&&(t.set(e),et())});if(t.initialized)return[t.get(),n];let r=nt(e)?e():e;return t.set(r),[r,n]})}function rt(e,t){$e(n=>{let r=n.get();(!Array.isArray(r)||t.some((e,t)=>!Object.is(e,r[t])))&&tt.queue(e),n.set(t)})}function it(){return z.platform.startsWith(`win`)?!!z.env.CI||!!z.env.WT_SESSION||!!z.env.TERMINUS_SUBLIME||z.env.ConEmuTask===`{cmd::Cmder}`||z.env.TERM_PROGRAM===`Terminus-Sublime`||z.env.TERM_PROGRAM===`vscode`||z.env.TERM===`xterm-256color`||z.env.TERM===`alacritty`||z.env.TERMINAL_EMULATOR===`JetBrains-JediTerm`:z.env.TERM!==`linux`}const at={circleQuestionMark:`(?)`,questionMarkPrefix:`(?)`,square:`█`,squareDarkShade:`▓`,squareMediumShade:`▒`,squareLightShade:`░`,squareTop:`▀`,squareBottom:`▄`,squareLeft:`▌`,squareRight:`▐`,squareCenter:`■`,bullet:`●`,dot:`․`,ellipsis:`…`,pointerSmall:`›`,triangleUp:`▲`,triangleUpSmall:`▴`,triangleDown:`▼`,triangleDownSmall:`▾`,triangleLeftSmall:`◂`,triangleRightSmall:`▸`,home:`⌂`,heart:`♥`,musicNote:`♪`,musicNoteBeamed:`♫`,arrowUp:`↑`,arrowDown:`↓`,arrowLeft:`←`,arrowRight:`→`,arrowLeftRight:`↔`,arrowUpDown:`↕`,almostEqual:`≈`,notEqual:`≠`,lessOrEqual:`≤`,greaterOrEqual:`≥`,identical:`≡`,infinity:`∞`,subscriptZero:`₀`,subscriptOne:`₁`,subscriptTwo:`₂`,subscriptThree:`₃`,subscriptFour:`₄`,subscriptFive:`₅`,subscriptSix:`₆`,subscriptSeven:`₇`,subscriptEight:`₈`,subscriptNine:`₉`,oneHalf:`½`,oneThird:`⅓`,oneQuarter:`¼`,oneFifth:`⅕`,oneSixth:`⅙`,oneEighth:`⅛`,twoThirds:`⅔`,twoFifths:`⅖`,threeQuarters:`¾`,threeFifths:`⅗`,threeEighths:`⅜`,fourFifths:`⅘`,fiveSixths:`⅚`,fiveEighths:`⅝`,sevenEighths:`⅞`,line:`─`,lineBold:`━`,lineDouble:`═`,lineDashed0:`┄`,lineDashed1:`┅`,lineDashed2:`┈`,lineDashed3:`┉`,lineDashed4:`╌`,lineDashed5:`╍`,lineDashed6:`╴`,lineDashed7:`╶`,lineDashed8:`╸`,lineDashed9:`╺`,lineDashed10:`╼`,lineDashed11:`╾`,lineDashed12:`−`,lineDashed13:`–`,lineDashed14:`‐`,lineDashed15:`⁃`,lineVertical:`│`,lineVerticalBold:`┃`,lineVerticalDouble:`║`,lineVerticalDashed0:`┆`,lineVerticalDashed1:`┇`,lineVerticalDashed2:`┊`,lineVerticalDashed3:`┋`,lineVerticalDashed4:`╎`,lineVerticalDashed5:`╏`,lineVerticalDashed6:`╵`,lineVerticalDashed7:`╷`,lineVerticalDashed8:`╹`,lineVerticalDashed9:`╻`,lineVerticalDashed10:`╽`,lineVerticalDashed11:`╿`,lineDownLeft:`┐`,lineDownLeftArc:`╮`,lineDownBoldLeftBold:`┓`,lineDownBoldLeft:`┒`,lineDownLeftBold:`┑`,lineDownDoubleLeftDouble:`╗`,lineDownDoubleLeft:`╖`,lineDownLeftDouble:`╕`,lineDownRight:`┌`,lineDownRightArc:`╭`,lineDownBoldRightBold:`┏`,lineDownBoldRight:`┎`,lineDownRightBold:`┍`,lineDownDoubleRightDouble:`╔`,lineDownDoubleRight:`╓`,lineDownRightDouble:`╒`,lineUpLeft:`┘`,lineUpLeftArc:`╯`,lineUpBoldLeftBold:`┛`,lineUpBoldLeft:`┚`,lineUpLeftBold:`┙`,lineUpDoubleLeftDouble:`╝`,lineUpDoubleLeft:`╜`,lineUpLeftDouble:`╛`,lineUpRight:`└`,lineUpRightArc:`╰`,lineUpBoldRightBold:`┗`,lineUpBoldRight:`┖`,lineUpRightBold:`┕`,lineUpDoubleRightDouble:`╚`,lineUpDoubleRight:`╙`,lineUpRightDouble:`╘`,lineUpDownLeft:`┤`,lineUpBoldDownBoldLeftBold:`┫`,lineUpBoldDownBoldLeft:`┨`,lineUpDownLeftBold:`┥`,lineUpBoldDownLeftBold:`┩`,lineUpDownBoldLeftBold:`┪`,lineUpDownBoldLeft:`┧`,lineUpBoldDownLeft:`┦`,lineUpDoubleDownDoubleLeftDouble:`╣`,lineUpDoubleDownDoubleLeft:`╢`,lineUpDownLeftDouble:`╡`,lineUpDownRight:`├`,lineUpBoldDownBoldRightBold:`┣`,lineUpBoldDownBoldRight:`┠`,lineUpDownRightBold:`┝`,lineUpBoldDownRightBold:`┡`,lineUpDownBoldRightBold:`┢`,lineUpDownBoldRight:`┟`,lineUpBoldDownRight:`┞`,lineUpDoubleDownDoubleRightDouble:`╠`,lineUpDoubleDownDoubleRight:`╟`,lineUpDownRightDouble:`╞`,lineDownLeftRight:`┬`,lineDownBoldLeftBoldRightBold:`┳`,lineDownLeftBoldRightBold:`┯`,lineDownBoldLeftRight:`┰`,lineDownBoldLeftBoldRight:`┱`,lineDownBoldLeftRightBold:`┲`,lineDownLeftRightBold:`┮`,lineDownLeftBoldRight:`┭`,lineDownDoubleLeftDoubleRightDouble:`╦`,lineDownDoubleLeftRight:`╥`,lineDownLeftDoubleRightDouble:`╤`,lineUpLeftRight:`┴`,lineUpBoldLeftBoldRightBold:`┻`,lineUpLeftBoldRightBold:`┷`,lineUpBoldLeftRight:`┸`,lineUpBoldLeftBoldRight:`┹`,lineUpBoldLeftRightBold:`┺`,lineUpLeftRightBold:`┶`,lineUpLeftBoldRight:`┵`,lineUpDoubleLeftDoubleRightDouble:`╩`,lineUpDoubleLeftRight:`╨`,lineUpLeftDoubleRightDouble:`╧`,lineUpDownLeftRight:`┼`,lineUpBoldDownBoldLeftBoldRightBold:`╋`,lineUpDownBoldLeftBoldRightBold:`╈`,lineUpBoldDownLeftBoldRightBold:`╇`,lineUpBoldDownBoldLeftRightBold:`╊`,lineUpBoldDownBoldLeftBoldRight:`╉`,lineUpBoldDownLeftRight:`╀`,lineUpDownBoldLeftRight:`╁`,lineUpDownLeftBoldRight:`┽`,lineUpDownLeftRightBold:`┾`,lineUpBoldDownBoldLeftRight:`╂`,lineUpDownLeftBoldRightBold:`┿`,lineUpBoldDownLeftBoldRight:`╃`,lineUpBoldDownLeftRightBold:`╄`,lineUpDownBoldLeftBoldRight:`╅`,lineUpDownBoldLeftRightBold:`╆`,lineUpDoubleDownDoubleLeftDoubleRightDouble:`╬`,lineUpDoubleDownDoubleLeftRight:`╫`,lineUpDownLeftDoubleRightDouble:`╪`,lineCross:`╳`,lineBackslash:`╲`,lineSlash:`╱`},ot={tick:`✔`,info:`ℹ`,warning:`⚠`,cross:`✘`,squareSmall:`◻`,squareSmallFilled:`◼`,circle:`◯`,circleFilled:`◉`,circleDotted:`◌`,circleDouble:`◎`,circleCircle:`ⓞ`,circleCross:`ⓧ`,circlePipe:`Ⓘ`,radioOn:`◉`,radioOff:`◯`,checkboxOn:`☒`,checkboxOff:`☐`,checkboxCircleOn:`ⓧ`,checkboxCircleOff:`Ⓘ`,pointer:`❯`,triangleUpOutline:`△`,triangleLeft:`◀`,triangleRight:`▶`,lozenge:`◆`,lozengeOutline:`◇`,hamburger:`☰`,smiley:`㋡`,mustache:`෴`,star:`★`,play:`▶`,nodejs:`⬢`,oneSeventh:`⅐`,oneNinth:`⅑`,oneTenth:`⅒`},st={tick:`√`,info:`i`,warning:`‼`,cross:`×`,squareSmall:`□`,squareSmallFilled:`■`,circle:`( )`,circleFilled:`(*)`,circleDotted:`( )`,circleDouble:`( )`,circleCircle:`(○)`,circleCross:`(×)`,circlePipe:`(│)`,radioOn:`(*)`,radioOff:`( )`,checkboxOn:`[×]`,checkboxOff:`[ ]`,checkboxCircleOn:`(×)`,checkboxCircleOff:`( )`,pointer:`>`,triangleUpOutline:`∆`,triangleLeft:`◄`,triangleRight:`►`,lozenge:`♦`,lozengeOutline:`◊`,hamburger:`≡`,smiley:`☺`,mustache:`┌─┐`,star:`✶`,play:`►`,nodejs:`♦`,oneSeventh:`1/7`,oneNinth:`1/9`,oneTenth:`1/10`},ct={...at,...ot},lt={...at,...st},W=it()?ct:lt;Object.entries(ot);const ut={prefix:{idle:B(`blue`,`?`),done:B(`green`,W.tick)},spinner:{interval:80,frames:[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`].map(e=>B(`yellow`,e))},keybindings:[],style:{answer:e=>B(`cyan`,e),message:e=>B(`bold`,e),error:e=>B(`red`,`> ${e}`),defaultAnswer:e=>B(`dim`,`(${e})`),help:e=>B(`dim`,e),highlight:e=>B(`cyan`,e),key:e=>B(`cyan`,B(`bold`,`<${e}>`))}};function dt(){return{...ut,keybindings:Le()}}function ft(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function pt(...e){let t={};for(let n of e)for(let[e,r]of Object.entries(n)){let n=t[e];t[e]=ft(n)&&ft(r)?pt(n,r):r}return t}function mt(...e){return pt(dt(),...e.filter(e=>e!=null))}function ht({status:e=`idle`,theme:t}){let[n,r]=U(!1),[i,a]=U(0),{prefix:o,spinner:s}=mt(t);return rt(()=>{if(e===`loading`){let e,t=-1,n=setTimeout(()=>{r(!0),e=setInterval(()=>{t+=1,a(t%s.frames.length)},s.interval)},300);return()=>{clearTimeout(n),clearInterval(e)}}else r(!1)},[e]),n?s.frames[i]:typeof o==`string`?o:o[e===`loading`?`idle`:e]??o.idle}function gt(e,t){return $e(n=>{let r=n.get();if(!r||r.dependencies.length!==t.length||r.dependencies.some((e,n)=>e!==t[n])){let r=e();return n.set({value:r,dependencies:t}),r}return r.value})}function _t(e){return U({current:e})[0]}function vt(e){let t=_t(e);t.current=e,rt(e=>{let n=!1,r=Qe((r,i)=>{n||t.current(i,e)});return e.input.on(`keypress`,r),()=>{n=!0,e.input.removeListener(`keypress`,r)}},[])}var yt=t(n(((t,n)=>{n.exports=i;function r(t){let n={defaultWidth:0,output:process.stdout,tty:e(`tty`)};return t?(Object.keys(n).forEach(function(e){t[e]||(t[e]=n[e])}),t):n}function i(e){let t=r(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let e=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(e)&&e!==0)return e}return t.defaultWidth}}))(),1);const bt=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return t=>{let n=0;for(e.lastIndex=0;e.test(t);)n+=1;return t.length-n}})(),xt=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,St=e=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141,Ct=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,wt=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Tt=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/uy,Et=/\t{1,1000}/y,Dt=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/uy,Ot=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,kt=/\p{M}+/gu,At={limit:1/0,ellipsis:``},jt=(e,t={},n={})=>{let r=t.limit??1/0,i=t.ellipsis??``,a=t?.ellipsisWidth??(i?jt(i,At,n).width:0),o=n.controlWidth??0,s=n.tabWidth??8,c=n.emojiWidth??2,l=n.regularWidth??1,u=n.wideWidth??2,d=[[Ot,l],[Ct,0],[wt,o],[Et,s],[Dt,c],[Tt,u]],f=0,p=0,m=e.length,h=0,g=!1,_=m,v=Math.max(0,r-a),y=0,b=0,x=0,S=0;outer:for(;;){if(b>y||p>=m&&p>f){let t=e.slice(y,b)||e.slice(f,p);h=0;for(let e of t.replaceAll(kt,``)){let t=e.codePointAt(0)||0;if(S=xt(t)?2:St(t)?u:l,x+S>v&&(_=Math.min(_,Math.max(y,f)+h)),x+S>r){g=!0;break outer}h+=e.length,x+=S}y=b=0}if(p>=m)break outer;for(let t=0,n=d.length;t<n;t++){let[n,i]=d[t];if(n.lastIndex=p,n.test(e)){if(h=n===Tt?bt(e.slice(p,n.lastIndex)):n===Dt?1:n.lastIndex-p,S=h*i,x+S>v&&(_=Math.min(_,p+Math.floor((v-x)/i))),x+S>r){g=!0;break outer}x+=S,y=f,b=p,p=f=n.lastIndex;continue outer}}p+=1}return{width:g?v:x,index:g?_:m,truncated:g,ellipsed:g&&r>=a}},Mt={limit:1/0,ellipsis:``,ellipsisWidth:0},G=(e,t={})=>jt(e,Mt,t).width,Nt=`]8;;`,Pt=RegExp(`(?:\\[(?<code>\\d+)m|\\${Nt}(?<uri>.*))`,`y`),Ft=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},It=e=>`[${e}m`,Lt=e=>`${Nt}${e}`,Rt=(e,t,n)=>{let r=t[Symbol.iterator](),i=!1,a=!1,o=e.at(-1),s=o===void 0?0:G(o),c=r.next(),l=r.next(),u=0;for(;!c.done;){let o=c.value,d=G(o);s+d<=n?e[e.length-1]+=o:(e.push(o),s=0),(o===`\x1B`||o===`›`)&&(i=!0,a=t.startsWith(Nt,u+1)),i?a?o===`\x07`&&(i=!1,a=!1):o===`m`&&(i=!1):(s+=d,s===n&&!l.done&&(e.push(``),s=0)),c=l,l=r.next(),u+=o.length}o=e.at(-1),!s&&o!==void 0&&o.length&&e.length>1&&(e[e.length-2]+=e.pop())},zt=e=>{let t=e.split(` `),n=t.length;for(;n&&!G(t[n-1]);)n--;return n===t.length?e:t.slice(0,n).join(` `)+t.slice(n).join(``)},Bt=(e,t,n={})=>{if(n.trim!==!1&&e.trim()===``)return``;let r=``,i,a,o=e.split(` `),s=[``],c=0;for(let e=0;e<o.length;e++){let r=o[e];if(n.trim!==!1){let e=s.at(-1)??``,t=e.trimStart();e.length!==t.length&&(s[s.length-1]=t,c=G(t))}e!==0&&(c>=t&&(n.wordWrap===!1||n.trim===!1)&&(s.push(``),c=0),(c||n.trim===!1)&&(s[s.length-1]+=` `,c++));let i=G(r);if(n.hard&&i>t){let e=t-c,n=1+Math.floor((i-e-1)/t);Math.floor((i-1)/t)<n&&s.push(``),Rt(s,r,t),c=G(s.at(-1)??``);continue}if(c+i>t&&c&&i){if(n.wordWrap===!1&&c<t){Rt(s,r,t),c=G(s.at(-1)??``);continue}s.push(``),c=0}if(c+i>t&&n.wordWrap===!1){Rt(s,r,t),c=G(s.at(-1)??``);continue}s[s.length-1]+=r,c+=i}n.trim!==!1&&(s=s.map(e=>zt(e)));let l=s.join(`
2
2
  `),u=!1;for(let e=0;e<l.length;e++){let t=l[e];if(r+=t,u)u=!1;else if(u=t>=`\ud800`&&t<=`\udbff`,u)continue;if(t===`\x1B`||t===`›`){Pt.lastIndex=e+1;let t=Pt.exec(l)?.groups;if(t?.code!==void 0){let e=Number.parseFloat(t.code);i=e===39?void 0:e}else t?.uri!==void 0&&(a=t.uri.length===0?void 0:t.uri)}if(l[e+1]===`
3
3
  `){a&&(r+=Lt(``));let e=i?Ft(i):void 0;i&&e&&(r+=It(e))}else t===`
4
4
  `&&(i&&Ft(i)&&(r+=It(i)),a&&(r+=Lt(a)))}return r},Vt=/\r?\n/;function Ht(e,t,n){return String(e).normalize().split(Vt).map(e=>Bt(e,t,n)).join(`
@@ -12,7 +12,7 @@ import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Ia as r,O as i,j a
12
12
  `).pop()??``;var gn=class{height=0;extraLinesUnderPrompt=0;cursorPos;rl;constructor(e){this.rl=e,this.cursorPos=e.getCursorPos()}write(e){this.rl.output.unmute(),this.rl.output.write(e),this.rl.output.mute()}render(e,t=``){let n=Me(hn(e)),r=n;this.rl.line.length>0&&(r=r.slice(0,-this.rl.line.length)),this.rl.setPrompt(r),this.cursorPos=this.rl.getCursorPos();let i=Wt();e=Ut(e,i),t=Ut(t,i),n.length%i===0&&(e+=`
13
13
  `);let a=e+(t?`
14
14
  `+t:``),o=Math.floor(n.length/i)-this.cursorPos.rows+(t?mn(t):0);o>0&&(a+=ln(o)),a+=dn(this.cursorPos.cols),this.write(un(this.extraLinesUnderPrompt)+pn(this.height)+a),this.extraLinesUnderPrompt=o,this.height=mn(a)}checkCursorPos(){let e=this.rl.getCursorPos();e.cols!==this.cursorPos.cols&&(this.write(dn(e.cols)),this.cursorPos=e)}done({clearContent:e}){this.rl.setPrompt(``);let t=un(this.extraLinesUnderPrompt);t+=e?pn(this.height):`
15
- `,t+=`\x1B[G`,t+=`\x1B[?25h`,this.write(t),this.rl.close()}},_n=class extends Promise{static withResolver(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}};const vn=globalThis.setImmediate;function yn(){let e=Error.prepareStackTrace,t=[];try{Error.prepareStackTrace=(e,n)=>{let r=n.slice(1);return t=r,r},Error().stack}catch{return t}return Error.prepareStackTrace=e,t}function bn(e){let t=yn();return(n,r={})=>{let{input:i=process.stdin,signal:a}=r,o=new Set,s=new qt.default;s.pipe(r.output??process.stdout);let c=Ae.createInterface({terminal:!0,input:i,output:s});s.mute();let l=new gn(c),{promise:u,resolve:d,reject:f}=_n.withResolver(),p=()=>f(new We);if(a){let e=()=>f(new Ue({cause:a.reason}));if(a.aborted)return e(),Object.assign(u,{cancel:p});a.addEventListener(`abort`,e),o.add(()=>a.removeEventListener(`abort`,e))}o.add(an((e,t)=>{f(new Ge(`User force closed the prompt with ${e} ${t}`))}));let m=()=>f(new Ge(`User force closed the prompt with SIGINT`));return c.on(`SIGINT`,m),o.add(()=>c.removeListener(`SIGINT`,m)),Xe(c,a=>{let m=Pe.bind(()=>tt.clearAll());c.on(`close`,m),o.add(()=>c.removeListener(`close`,m));let h=()=>{let r=()=>l.checkCursorPos();c.input.on(`keypress`,r),o.add(()=>c.input.removeListener(`keypress`,r));let i=null;a(()=>{let r=!1;try{let a=e(n,e=>{r?d(e):i={value:e}});if(a===void 0){let e=t[1]?.getFileName();throw e&&!e.startsWith(`file://`)&&(e=N.resolve(e)),Error(`Prompt functions must return a string.\n at ${e}`)}let[o,s]=typeof a==`string`?[a]:a;l.render(o,s),tt.run()}catch(e){f(e)}if(r=!0,i!==null){let{value:e}=i;i=null,d(e)}})};return`readableFlowing`in i?vn(h):h(),Object.assign(u.then(e=>(tt.clearAll(),e),e=>{throw tt.clearAll(),e}).finally(()=>{o.forEach(e=>e()),l.done({clearContent:!!r.clearPromptOnDone}),s.end()}).then(()=>u),{cancel:p})})}}var q=class{separator=B(`dim`,Array.from({length:15}).join(W.line));type=`separator`;constructor(e){e&&(this.separator=e)}static isSeparator(e){return!!(e&&typeof e==`object`&&`type`in e&&e.type===`separator`)}},xn=ne();const Sn=`.ok/`,J=`**/.ok/*`,Cn=`!**/${r}/`;function wn(e){let t=[`.ok/`,`.okignore`];for(let n of ue){let r=D[n];r.projectConfigPath&&t.push(In(r.projectConfigPath(e),e))}t.push(`.claude/launch.json`);let n=F(e,...i);if(L(n))try{let e=a(R(n,`utf-8`));if(e){for(let[n,r]of Object.entries(e.skills))if(n!==`open-knowledge`)for(let e of r.hosts){let r=o[e];r&&t.push(`${r}/${n}/`)}}}catch{}return Array.from(new Set(t))}function Tn(e,t){let n=jn(e,t).tracked;if(n.length>0)return{kind:`refused-tracked`,tracked:n,remediation:Mn(n)};let r=Y(e);if(r.kind!==`ok`)return r.result;let i=L(r.path)?R(r.path,`utf-8`):``,a=Fn(i),o=[],s=[];for(let e of t)Pn(a,e)?s.push(e):o.push(e);if(o.length===0)return{kind:`updated`,appended:o,alreadyPresent:s,removed:[]};let c=i.length===0||i.endsWith(`
15
+ `,t+=`\x1B[G`,t+=`\x1B[?25h`,this.write(t),this.rl.close()}},_n=class extends Promise{static withResolver(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}};const vn=globalThis.setImmediate;function yn(){let e=Error.prepareStackTrace,t=[];try{Error.prepareStackTrace=(e,n)=>{let r=n.slice(1);return t=r,r},Error().stack}catch{return t}return Error.prepareStackTrace=e,t}function bn(e){let t=yn();return(n,r={})=>{let{input:i=process.stdin,signal:a}=r,o=new Set,s=new qt.default;s.pipe(r.output??process.stdout);let c=Ae.createInterface({terminal:!0,input:i,output:s});s.mute();let l=new gn(c),{promise:u,resolve:d,reject:f}=_n.withResolver(),p=()=>f(new We);if(a){let e=()=>f(new Ue({cause:a.reason}));if(a.aborted)return e(),Object.assign(u,{cancel:p});a.addEventListener(`abort`,e),o.add(()=>a.removeEventListener(`abort`,e))}o.add(an((e,t)=>{f(new Ge(`User force closed the prompt with ${e} ${t}`))}));let m=()=>f(new Ge(`User force closed the prompt with SIGINT`));return c.on(`SIGINT`,m),o.add(()=>c.removeListener(`SIGINT`,m)),Xe(c,a=>{let m=Pe.bind(()=>tt.clearAll());c.on(`close`,m),o.add(()=>c.removeListener(`close`,m));let h=()=>{let r=()=>l.checkCursorPos();c.input.on(`keypress`,r),o.add(()=>c.input.removeListener(`keypress`,r));let i=null;a(()=>{let r=!1;try{let a=e(n,e=>{r?d(e):i={value:e}});if(a===void 0){let e=t[1]?.getFileName();throw e&&!e.startsWith(`file://`)&&(e=N.resolve(e)),Error(`Prompt functions must return a string.\n at ${e}`)}let[o,s]=typeof a==`string`?[a]:a;l.render(o,s),tt.run()}catch(e){f(e)}if(r=!0,i!==null){let{value:e}=i;i=null,d(e)}})};return`readableFlowing`in i?vn(h):h(),Object.assign(u.then(e=>(tt.clearAll(),e),e=>{throw tt.clearAll(),e}).finally(()=>{o.forEach(e=>e()),l.done({clearContent:!!r.clearPromptOnDone}),s.end()}).then(()=>u),{cancel:p})})}}var q=class{separator=B(`dim`,Array.from({length:15}).join(W.line));type=`separator`;constructor(e){e&&(this.separator=e)}static isSeparator(e){return!!(e&&typeof e==`object`&&`type`in e&&e.type===`separator`)}},xn=ne();const Sn=`.ok/`,J=`**/.ok/*`,Cn=`!**/${a}/`;function wn(e){let t=[`.ok/`,`.okignore`];for(let n of ue){let r=D[n];r.projectConfigPath&&t.push(In(r.projectConfigPath(e),e))}t.push(`.claude/launch.json`);let n=F(e,...i);if(L(n))try{let e=o(R(n,`utf-8`));if(e){for(let[n,i]of Object.entries(e.skills))if(n!==`open-knowledge`)for(let e of i.hosts){let i=r[e];i&&t.push(`${i}/${n}/`)}}}catch{}return Array.from(new Set(t))}function Tn(e,t){let n=jn(e,t).tracked;if(n.length>0)return{kind:`refused-tracked`,tracked:n,remediation:Mn(n)};let r=Y(e);if(r.kind!==`ok`)return r.result;let i=L(r.path)?R(r.path,`utf-8`):``,a=Fn(i),o=[],s=[];for(let e of t)Pn(a,e)?s.push(e):o.push(e);if(o.length===0)return{kind:`updated`,appended:o,alreadyPresent:s,removed:[]};let c=i.length===0||i.endsWith(`
16
16
  `)?``:`
17
17
  `,l=`${o.join(`
18
18
  `)}\n`;try{De(r.path,`${i}${c}${l}`,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}return{kind:`updated`,appended:o,alreadyPresent:s,removed:[]}}function En(e,t){let n=Y(e);if(n.kind!==`ok`)return n.result;if(!L(n.path))return{kind:`updated`,appended:[],alreadyPresent:[],removed:[]};let r=t.map(e=>Nn(e)),i=new Set;for(let e of r)for(let t of e)i.add(t);i.add(J),i.add(Cn);let a;try{a=R(n.path,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}let o=a.split(`
@@ -22,13 +22,13 @@ import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{Ia as r,O as i,j a
22
22
  `),c=`${s}${s.length===0||s.endsWith(`
23
23
  `)?``:`
24
24
  `}${o.join(`
25
- `)}\n`;try{De(n.path,c,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}return{kind:`updated`,appended:o,alreadyPresent:[],removed:[]}}function jn(e,t){let n=[];for(let r of t)if(L(be(e,r)))try{ve(`git`,[`ls-files`,`--error-unmatch`,`--`,r],h({cwd:e,stdio:[`ignore`,`ignore`,`ignore`]})),n.push(r)}catch{}return{tracked:n}}function Mn(e){let t=[];t.push(`Cannot switch OpenKnowledge to local-only — these OK files are tracked upstream:`),t.push(``);for(let n of e)t.push(` ${n}`);t.push(``),t.push(`.git/info/exclude only hides files that git isn't already tracking. To proceed, untrack them first:`),t.push(``);for(let n of e){let e=n.replace(/\/$/,``),r=n.endsWith(`/`)?`-r `:``;t.push(` git rm --cached ${r}${e}`)}return t.push(``),t.push("Then re-run the command. Note: `git rm --cached` removes the files from the index — your teammates will see a deletion on their next pull. If you don't want that, leave sharing mode set to 'shared'."),t.join(`
26
- `)}function Y(e){let t=x(e);switch(t.kind){case`repository`:{let e=t.repository.readCommonDir();if(e.kind===`unreadable`)return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`inaccessible`}};let n=F(e.path,`info`);return L(n)?{kind:`ok`,path:F(n,`exclude`)}:{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`no-info-dir`}}}case`absent`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`no-git`}};case`malformed-pointer`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`malformed-pointer`}};case`inaccessible`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`inaccessible`}}}}function Nn(e){let t=e.replace(/\/$/,``);return new Set([e,t,`/${e}`,`/${t}`])}function Pn(e,t){for(let n of Nn(t))if(e.has(n))return!0;return!1}function Fn(e){let t=new Set;for(let n of e.split(`
25
+ `)}\n`;try{De(n.path,c,`utf-8`)}catch{return{kind:`no-exclude`,reason:`inaccessible`}}return{kind:`updated`,appended:o,alreadyPresent:[],removed:[]}}function jn(e,t){let n=[];for(let r of t)if(L(be(e,r)))try{ve(`git`,[`ls-files`,`--error-unmatch`,`--`,r],x({cwd:e,stdio:[`ignore`,`ignore`,`ignore`]})),n.push(r)}catch{}return{tracked:n}}function Mn(e){let t=[];t.push(`Cannot switch OpenKnowledge to local-only — these OK files are tracked upstream:`),t.push(``);for(let n of e)t.push(` ${n}`);t.push(``),t.push(`.git/info/exclude only hides files that git isn't already tracking. To proceed, untrack them first:`),t.push(``);for(let n of e){let e=n.replace(/\/$/,``),r=n.endsWith(`/`)?`-r `:``;t.push(` git rm --cached ${r}${e}`)}return t.push(``),t.push("Then re-run the command. Note: `git rm --cached` removes the files from the index — your teammates will see a deletion on their next pull. If you don't want that, leave sharing mode set to 'shared'."),t.join(`
26
+ `)}function Y(e){let t=v(e);switch(t.kind){case`repository`:{let e=t.repository.readCommonDir();if(e.kind===`unreadable`)return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`inaccessible`}};let n=F(e.path,`info`);return L(n)?{kind:`ok`,path:F(n,`exclude`)}:{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`no-info-dir`}}}case`absent`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`no-git`}};case`malformed-pointer`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`malformed-pointer`}};case`inaccessible`:return{kind:`no-exclude`,result:{kind:`no-exclude`,reason:`inaccessible`}}}}function Nn(e){let t=e.replace(/\/$/,``);return new Set([e,t,`/${e}`,`/${t}`])}function Pn(e,t){for(let n of Nn(t))if(e.has(n))return!0;return!1}function Fn(e){let t=new Set;for(let n of e.split(`
27
27
  `)){let e=n.trim();e.length!==0&&t.add(e)}return t}function In(e,t){return Ln(I(t,e))}function Ln(e){return xe===`/`?e:e.split(xe).join(`/`)}function Rn(e){for(let t of e.split(`
28
28
  `)){let e=t.trimStart();if(!(e.length===0||e.length===t.length))return t.charCodeAt(0)===9?{insertSpaces:!1,tabSize:1}:{insertSpaces:!0,tabSize:t.length-e.length}}return{insertSpaces:!0,tabSize:2}}function zn(e){let t=(e.match(/\r\n/g)??[]).length;return t===0?!1:t>=(e.match(/\n/g)??[]).length-t}function Bn(e){try{return Ee(e).mode&511}catch{return}}function Vn(e,t){let n=e.charCodeAt(0)===65279,r=n?e.slice(1):e,i=r.includes(`\r
29
29
  `)?`\r
30
30
  `:`
31
- `,a=C(r,t,void 0,{formattingOptions:{...Rn(r),eol:i}});if(a.length===0)return{text:e,changed:!1};let o=`${n?``:``}${s(r,a)}`;return{text:o,changed:o!==e}}const Hn={icon:{checked:B(`green`,W.circleFilled),unchecked:W.circle,cursor:W.pointer,disabledChecked:B(`green`,W.circleDouble),disabledUnchecked:`-`},style:{disabled:e=>B(`dim`,e),renderSelectedChoices:e=>e.map(e=>e.short).join(`, `),description:e=>B(`cyan`,e),keysHelpTip:e=>e.map(([e,t])=>`${B(`bold`,e)} ${B(`dim`,t)}`).join(B(`dim`,` • `))},i18n:{disabledError:`This option is disabled and cannot be toggled.`}};function Un(e){return!q.isSeparator(e)&&!e.disabled}function Wn(e){return!q.isSeparator(e)}function Gn(e){return!q.isSeparator(e)&&e.checked}function Kn(e){return Un(e)?{...e,checked:!e.checked}:e}function qn(e){return function(t){return Un(t)?{...t,checked:e}:t}}function Jn(e){return e.map(e=>{if(q.isSeparator(e))return e;if(typeof e!=`object`||!e||!(`value`in e)){let t=String(e);return{value:e,name:t,short:t,checkedName:t,disabled:!1,checked:!1}}let t=e.name??String(e.value),n={value:e.value,name:t,short:e.short??t,checkedName:e.checkedName??t,disabled:e.disabled??!1,checked:e.checked??!1};return e.description&&(n.description=e.description),n})}var Yn=bn((e,t)=>{let{pageSize:n=7,loop:r=!0,required:i,validate:a=()=>!0}=e,o={all:`a`,invert:`i`,...e.shortcuts},s=mt(Hn,e.theme),{keybindings:c}=s,[l,u]=U(`idle`),d=ht({status:l,theme:s}),[f,p]=U(Jn(e.choices)),m=gt(()=>{let e=f.findIndex(Wn),t=f.findLastIndex(Wn);if(e===-1)throw new qe(`[checkbox prompt] No selectable choices. All choices are disabled.`);return{first:e,last:t}},[f]),[h,g]=U(m.first),[_,v]=U();vt(async e=>{if(He(e)){let e=f.filter(Gn),n=await a([...e]);i&&!e.length?v(`At least one choice must be selected`):n===!0?(u(`done`),t(e.map(e=>e.value))):v(n||`You must select a valid value`)}else if(V(e,c)||Re(e,c)){if(_&&v(void 0),r||V(e,c)&&h!==m.first||Re(e,c)&&h!==m.last){let t=V(e,c)?-1:1,n=h;do n=(n+t+f.length)%f.length;while(!Wn(f[n]));g(n)}}else if(ze(e)){let e=f[h];e&&!q.isSeparator(e)&&(e.disabled?v(s.i18n.disabledError):(v(void 0),p(f.map((e,t)=>t===h?Kn(e):e))))}else if(e.name===o.all){let e=f.some(e=>Un(e)&&!e.checked);p(f.map(qn(e)))}else if(e.name===o.invert)p(f.map(Kn));else if(Ve(e)){let t=Number(e.name)-1,n=-1,r=f.findIndex(e=>q.isSeparator(e)?!1:(n++,n===t)),i=f[r];i&&Un(i)&&(g(r),p(f.map((e,t)=>t===r?Kn(e):e)))}});let y=s.style.message(e.message,l),b,x=Kt({items:f,active:h,renderItem({item:e,isActive:t}){if(q.isSeparator(e))return` ${e.separator}`;let n=t?s.icon.cursor:` `;if(e.disabled){let t=typeof e.disabled==`string`?e.disabled:`(disabled)`,r=e.checked?s.icon.disabledChecked:s.icon.disabledUnchecked;return s.style.disabled(`${n}${r} ${e.name} ${t}`)}t&&(b=e.description);let r=e.checked?s.icon.checked:s.icon.unchecked,i=e.checked?e.checkedName:e.name;return(t?s.style.highlight:e=>e)(`${n}${r} ${i}`)},pageSize:n,loop:r});if(l===`done`){let e=f.filter(Gn);return[d,y,s.style.answer(s.style.renderSelectedChoices(e,f))].filter(Boolean).join(` `)}let S=[[`↑↓`,`navigate`],[`space`,`select`]];o.all&&S.push([o.all,`all`]),o.invert&&S.push([o.invert,`invert`]),S.push([`⏎`,`submit`]);let C=s.style.keysHelpTip(S);return`${[[d,y].filter(Boolean).join(` `),x,` `,b?s.style.description(b):``,_?s.style.error(_):``,C].filter(Boolean).join(`
31
+ `,a=s(r,t,void 0,{formattingOptions:{...Rn(r),eol:i}});if(a.length===0)return{text:e,changed:!1};let o=`${n?``:``}${c(r,a)}`;return{text:o,changed:o!==e}}const Hn={icon:{checked:B(`green`,W.circleFilled),unchecked:W.circle,cursor:W.pointer,disabledChecked:B(`green`,W.circleDouble),disabledUnchecked:`-`},style:{disabled:e=>B(`dim`,e),renderSelectedChoices:e=>e.map(e=>e.short).join(`, `),description:e=>B(`cyan`,e),keysHelpTip:e=>e.map(([e,t])=>`${B(`bold`,e)} ${B(`dim`,t)}`).join(B(`dim`,` • `))},i18n:{disabledError:`This option is disabled and cannot be toggled.`}};function Un(e){return!q.isSeparator(e)&&!e.disabled}function Wn(e){return!q.isSeparator(e)}function Gn(e){return!q.isSeparator(e)&&e.checked}function Kn(e){return Un(e)?{...e,checked:!e.checked}:e}function qn(e){return function(t){return Un(t)?{...t,checked:e}:t}}function Jn(e){return e.map(e=>{if(q.isSeparator(e))return e;if(typeof e!=`object`||!e||!(`value`in e)){let t=String(e);return{value:e,name:t,short:t,checkedName:t,disabled:!1,checked:!1}}let t=e.name??String(e.value),n={value:e.value,name:t,short:e.short??t,checkedName:e.checkedName??t,disabled:e.disabled??!1,checked:e.checked??!1};return e.description&&(n.description=e.description),n})}var Yn=bn((e,t)=>{let{pageSize:n=7,loop:r=!0,required:i,validate:a=()=>!0}=e,o={all:`a`,invert:`i`,...e.shortcuts},s=mt(Hn,e.theme),{keybindings:c}=s,[l,u]=U(`idle`),d=ht({status:l,theme:s}),[f,p]=U(Jn(e.choices)),m=gt(()=>{let e=f.findIndex(Wn),t=f.findLastIndex(Wn);if(e===-1)throw new qe(`[checkbox prompt] No selectable choices. All choices are disabled.`);return{first:e,last:t}},[f]),[h,g]=U(m.first),[_,v]=U();vt(async e=>{if(He(e)){let e=f.filter(Gn),n=await a([...e]);i&&!e.length?v(`At least one choice must be selected`):n===!0?(u(`done`),t(e.map(e=>e.value))):v(n||`You must select a valid value`)}else if(V(e,c)||Re(e,c)){if(_&&v(void 0),r||V(e,c)&&h!==m.first||Re(e,c)&&h!==m.last){let t=V(e,c)?-1:1,n=h;do n=(n+t+f.length)%f.length;while(!Wn(f[n]));g(n)}}else if(ze(e)){let e=f[h];e&&!q.isSeparator(e)&&(e.disabled?v(s.i18n.disabledError):(v(void 0),p(f.map((e,t)=>t===h?Kn(e):e))))}else if(e.name===o.all){let e=f.some(e=>Un(e)&&!e.checked);p(f.map(qn(e)))}else if(e.name===o.invert)p(f.map(Kn));else if(Ve(e)){let t=Number(e.name)-1,n=-1,r=f.findIndex(e=>q.isSeparator(e)?!1:(n++,n===t)),i=f[r];i&&Un(i)&&(g(r),p(f.map((e,t)=>t===r?Kn(e):e)))}});let y=s.style.message(e.message,l),b,x=Kt({items:f,active:h,renderItem({item:e,isActive:t}){if(q.isSeparator(e))return` ${e.separator}`;let n=t?s.icon.cursor:` `;if(e.disabled){let t=typeof e.disabled==`string`?e.disabled:`(disabled)`,r=e.checked?s.icon.disabledChecked:s.icon.disabledUnchecked;return s.style.disabled(`${n}${r} ${e.name} ${t}`)}t&&(b=e.description);let r=e.checked?s.icon.checked:s.icon.unchecked,i=e.checked?e.checkedName:e.name;return(t?s.style.highlight:e=>e)(`${n}${r} ${i}`)},pageSize:n,loop:r});if(l===`done`){let e=f.filter(Gn);return[d,y,s.style.answer(s.style.renderSelectedChoices(e,f))].filter(Boolean).join(` `)}let S=[[`↑↓`,`navigate`],[`space`,`select`]];o.all&&S.push([o.all,`all`]),o.invert&&S.push([o.invert,`invert`]),S.push([`⏎`,`submit`]);let C=s.style.keysHelpTip(S);return`${[[d,y].filter(Boolean).join(` `),x,` `,b?s.style.description(b):``,_?s.style.error(_):``,C].filter(Boolean).join(`
32
32
  `).trimEnd()}${cn}`});const Xn={icon:{cursor:W.pointer},style:{disabled:e=>B(`dim`,e),description:e=>B(`cyan`,e),keysHelpTip:e=>e.map(([e,t])=>`${B(`bold`,e)} ${B(`dim`,t)}`).join(B(`dim`,` • `))},i18n:{disabledError:`This option is disabled and cannot be selected.`},indexMode:`hidden`};function Zn(e){return!q.isSeparator(e)&&!e.disabled}function Qn(e){return!q.isSeparator(e)}function $n(e){return e.map(e=>{if(q.isSeparator(e))return e;if(typeof e!=`object`||!e||!(`value`in e)){let t=String(e);return{value:e,name:t,short:t,disabled:!1}}let t=e.name??String(e.value),n={value:e.value,name:t,short:e.short??t,disabled:e.disabled??!1};return e.description&&(n.description=e.description),n})}var er=bn((e,t)=>{let{loop:n=!0,pageSize:r=7}=e,i=mt(Xn,e.theme),{keybindings:a}=i,[o,s]=U(`idle`),c=ht({status:o,theme:i}),l=_t(),u=!a.includes(`vim`),d=gt(()=>$n(e.choices),[e.choices]),f=gt(()=>{let e=d.findIndex(Qn),t=d.findLastIndex(Qn);if(e===-1)throw new qe(`[select prompt] No selectable choices. All choices are disabled.`);return{first:e,last:t}},[d]),p=gt(()=>`default`in e?d.findIndex(t=>Zn(t)&&t.value===e.default):-1,[e.default,d]),[m,h]=U(p===-1?f.first:p),g=d[m];if(g==null||q.isSeparator(g))throw Error(`Active index does not point to a choice`);let[_,v]=U();vt((e,r)=>{if(clearTimeout(l.current),_&&v(void 0),He(e))g.disabled?v(i.i18n.disabledError):(s(`done`),t(g.value));else if(V(e,a)||Re(e,a)){if(r.clearLine(0),n||V(e,a)&&m!==f.first||Re(e,a)&&m!==f.last){let t=V(e,a)?-1:1,n=m;do n=(n+t+d.length)%d.length;while(!Qn(d[n]));h(n)}}else if(Ve(e)&&!Number.isNaN(Number(r.line))){let e=Number(r.line)-1,t=-1,n=d.findIndex(n=>q.isSeparator(n)?!1:(t++,t===e)),i=d[n];i!=null&&Zn(i)&&h(n),l.current=setTimeout(()=>{r.clearLine(0)},700)}else if(Be(e))r.clearLine(0);else if(u){let e=r.line.toLowerCase(),t=d.findIndex(t=>q.isSeparator(t)||!Zn(t)?!1:t.name.toLowerCase().startsWith(e));t!==-1&&h(t),l.current=setTimeout(()=>{r.clearLine(0)},700)}}),rt(()=>()=>{clearTimeout(l.current)},[]);let y=i.style.message(e.message,o),b=i.style.keysHelpTip([[`↑↓`,`navigate`],[`⏎`,`select`]]),x=0,S=Kt({items:d,active:m,renderItem({item:e,isActive:t,index:n}){if(q.isSeparator(e))return x++,` ${e.separator}`;let r=t?i.icon.cursor:` `,a=i.indexMode===`number`?`${n+1-x}. `:``;if(e.disabled){let n=typeof e.disabled==`string`?e.disabled:`(disabled)`,r=t?i.icon.cursor:`-`;return i.style.disabled(`${r} ${a}${e.name} ${n}`)}return(t?i.style.highlight:e=>e)(`${r} ${a}${e.name}`)},pageSize:r,loop:n});if(o===`done`)return[c,y,i.style.answer(g.short)].filter(Boolean).join(` `);let{description:C}=g;return`${[[c,y].filter(Boolean).join(` `),S,` `,C?i.style.description(C):``,_?i.style.error(_):``,b].filter(Boolean).join(`
33
33
  `).trimEnd()}${cn}`});
34
34
  /*!
@@ -621,13 +621,13 @@ export default function okBridge(pi: {
621
621
  }
622
622
  });
623
623
  }
624
- `}function Ir(e,t){let n=I(t,e);return n.length>0&&!n.startsWith(`..`)&&!ye(n)}const Lr=e=>{try{let t=ve(`git`,[`rev-parse`,`--show-toplevel`],h({cwd:e,encoding:`utf8`,stdio:[`ignore`,`pipe`,`ignore`]})).trim();return t.length>0?t:null}catch{return null}};function Rr(e,t={}){let n=t.homeDir??Oe(),r=t.gitTopLevel??Lr,i=be(e),a;try{a=Te(i)}catch{a=i}let o=a,s=0;for(;s<30&&!(o===n||o===`/`||o===``);){if(v(o))return{projectRoot:o,defaultContentDir:`.`,ancestorPromoted:o!==a,gitRootPromoted:!1};let e=P(o);if(e===o)break;o=e,s+=1}let c=r(a);return c!==null&&Ir(c,n)?c===a?{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}:{projectRoot:c,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!0}:{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}}function zr(e){let t=e&&typeof e==`object`&&`code`in e?e.code:void 0;return t===`MODULE_NOT_FOUND`||t===`ERR_MODULE_NOT_FOUND`}function Q(e,t){if(!process.env.OK_DEBUG_NATIVE)return;let n=t instanceof Error?t.message:String(t);process.stderr.write(`[ok] native-config ${e}: ${n}\n`)}const Br=[`native`,`index.js`];function Vr(e={}){let t=e.moduleUrl??import.meta.url,n=e.requireModule??_e(t);try{return n(F(P(ke(t)),...Br))}catch(e){zr(e)||Q(`bundled loader failed to load`,e)}try{return n(`@inkeep/open-knowledge-native-config`)}catch(e){return zr(e)||Q(`workspace addon failed to load`,e),null}}function Hr(){let e=Vr();return e&&typeof e.resolveSymlinkWritePath==`function`?e:null}function Ur(e){let t=e,n=new Set;for(;;){let r;try{r=Se(t).isSymbolicLink()}catch(n){return n.code===`ENOENT`?{readPath:t,writePath:t}:{readPath:null,writePath:e}}if(!r)return{readPath:t,writePath:t};if(n.has(t))return{readPath:null,writePath:e};n.add(t);let i;try{i=we(t)}catch(t){return Q(`readlinkSync threw during symlink walk`,t),{readPath:null,writePath:e}}t=ye(i)?i:F(P(t),i)}}let Wr;function Gr(){return Wr===void 0&&(Wr=Hr()),Wr}function Kr(e,t=Gr){let n=t();if(n)try{let t=n.resolveSymlinkWritePath(e);return{readPath:t.readPath??null,writePath:t.writePath}}catch(e){Q(`resolveSymlinkWritePath threw`,e)}return Ur(e)}function qr(){let e=Vr();return e&&typeof e.parseTomlToJson==`function`?e:null}function Jr(e){try{let t=e.parseTomlToJson(`probe = 1`);return typeof t==`string`&&t.includes(`probe`)}catch(e){return Q(`addon loaded but probe failed`,e),!1}}function Yr(e){if(!M(e))throw Error(`TOML root is not a table`);return e}function Xr(e){return{backend:`native`,parseToObject(t){return Yr(JSON.parse(e.parseTomlToJson(t)))},upsertEntry(t,n,r){let i=e.upsertMcpServer(t,n,JSON.stringify(r));return{text:i.text,existed:i.existed}},removeEntry(t,n){let r=e.removeMcpServer(t,n);return{text:r.text,existed:r.existed}}}}function Zr(){return{backend:`fallback`,parseToObject(e){return Yr(br(e))}}}function Qr(e=qr){let t=e();return t&&Jr(t)?Xr(t):Zr()}let $r=null;function ei(){return $r===null&&($r=Qr()),$r}const ti={allowTrailingComma:!0,disallowComments:!1};function ni(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function ri(e){let t=[],n=d(e,t,ti);return t.some(t=>!ni(t,e))||!n||n.type!==`object`?null:n}function ii(e,t){let n=0;for(let r of e.children??[]){let e=r.children?.[0];e!==void 0&&c(e)===t&&(n+=1)}return n}function ai(e,t){T(e,`${JSON.stringify(t,null,2)}\n`)}function oi(e,t){let n=Ar(t);T(e,n.endsWith(`
624
+ `}function Ir(e,t){let n=I(t,e);return n.length>0&&!n.startsWith(`..`)&&!ye(n)}const Lr=e=>{try{let t=ve(`git`,[`rev-parse`,`--show-toplevel`],x({cwd:e,encoding:`utf8`,stdio:[`ignore`,`pipe`,`ignore`]})).trim();return t.length>0?t:null}catch{return null}};function Rr(e,t={}){let n=t.homeDir??Oe(),r=t.gitTopLevel??Lr,i=be(e),a;try{a=Te(i)}catch{a=i}let o=a,s=0;for(;s<30&&!(o===n||o===`/`||o===``);){if(_(o))return{projectRoot:o,defaultContentDir:`.`,ancestorPromoted:o!==a,gitRootPromoted:!1};let e=P(o);if(e===o)break;o=e,s+=1}let c=r(a);return c!==null&&Ir(c,n)?c===a?{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}:{projectRoot:c,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!0}:{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}}function zr(e){let t=e&&typeof e==`object`&&`code`in e?e.code:void 0;return t===`MODULE_NOT_FOUND`||t===`ERR_MODULE_NOT_FOUND`}function Q(e,t){if(!process.env.OK_DEBUG_NATIVE)return;let n=t instanceof Error?t.message:String(t);process.stderr.write(`[ok] native-config ${e}: ${n}\n`)}const Br=[`native`,`index.js`];function Vr(e={}){let t=e.moduleUrl??import.meta.url,n=e.requireModule??_e(t);try{return n(F(P(ke(t)),...Br))}catch(e){zr(e)||Q(`bundled loader failed to load`,e)}try{return n(`@inkeep/open-knowledge-native-config`)}catch(e){return zr(e)||Q(`workspace addon failed to load`,e),null}}function Hr(){let e=Vr();return e&&typeof e.resolveSymlinkWritePath==`function`?e:null}function Ur(e){let t=e,n=new Set;for(;;){let r;try{r=Se(t).isSymbolicLink()}catch(n){return n.code===`ENOENT`?{readPath:t,writePath:t}:{readPath:null,writePath:e}}if(!r)return{readPath:t,writePath:t};if(n.has(t))return{readPath:null,writePath:e};n.add(t);let i;try{i=we(t)}catch(t){return Q(`readlinkSync threw during symlink walk`,t),{readPath:null,writePath:e}}t=ye(i)?i:F(P(t),i)}}let Wr;function Gr(){return Wr===void 0&&(Wr=Hr()),Wr}function Kr(e,t=Gr){let n=t();if(n)try{let t=n.resolveSymlinkWritePath(e);return{readPath:t.readPath??null,writePath:t.writePath}}catch(e){Q(`resolveSymlinkWritePath threw`,e)}return Ur(e)}function qr(){let e=Vr();return e&&typeof e.parseTomlToJson==`function`?e:null}function Jr(e){try{let t=e.parseTomlToJson(`probe = 1`);return typeof t==`string`&&t.includes(`probe`)}catch(e){return Q(`addon loaded but probe failed`,e),!1}}function Yr(e){if(!M(e))throw Error(`TOML root is not a table`);return e}function Xr(e){return{backend:`native`,parseToObject(t){return Yr(JSON.parse(e.parseTomlToJson(t)))},upsertEntry(t,n,r){let i=e.upsertMcpServer(t,n,JSON.stringify(r));return{text:i.text,existed:i.existed}},removeEntry(t,n){let r=e.removeMcpServer(t,n);return{text:r.text,existed:r.existed}}}}function Zr(){return{backend:`fallback`,parseToObject(e){return Yr(br(e))}}}function Qr(e=qr){let t=e();return t&&Jr(t)?Xr(t):Zr()}let $r=null;function ei(){return $r===null&&($r=Qr()),$r}const ti={allowTrailingComma:!0,disallowComments:!1};function ni(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function ri(e){let t=[],n=d(e,t,ti);return t.some(t=>!ni(t,e))||!n||n.type!==`object`?null:n}function ii(e,t){let n=0;for(let r of e.children??[]){let e=r.children?.[0];e!==void 0&&C(e)===t&&(n+=1)}return n}function ai(e,t){T(e,`${JSON.stringify(t,null,2)}\n`)}function oi(e,t){let n=Ar(t);T(e,n.endsWith(`
625
625
  `)?n:`${n}\n`)}function si(e,t){let n=(0,xn.stringify)(t);T(e,n.endsWith(`
626
626
  `)?n:`${n}\n`)}const ci=10*1024*1024;function li(e,t){if(e===t)return!0;if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((e,n)=>li(e,t[n]));if(M(e)&&M(t)){let n=Object.keys(e);return n.length===Object.keys(t).length?n.every(n=>Object.hasOwn(t,n)&&li(e[n],t[n])):!1}return!1}function ui(e){for(let t of e.split(`
627
- `)){let e=t.trimStart();if(!(e.length===0||e.length===t.length))return t.charCodeAt(0)===9?{insertSpaces:!1,tabSize:1}:{insertSpaces:!0,tabSize:t.length-e.length}}return{insertSpaces:!0,tabSize:2}}function di(e,t,n){return t===void 0?[e,n]:[e,t,n]}function fi(e,t,n,r){let i={[n]:r};return{[e]:t===void 0?i:{[t]:i}}}function pi(e,t,n){let r=e[t];return n===void 0?r:M(r)?r[n]:void 0}function mi(e,t,n,r,i){if(!L(e))return ai(e,fi(t,i,n,r)),{kind:`written`};let a;try{a=R(e,`utf-8`)}catch(e){return Q(`json config read failed`,e),{kind:`declined`,reason:`unparseable`}}if(a.trim()===``)return ai(e,fi(t,i,n,r)),{kind:`written`};if(Buffer.byteLength(a,`utf-8`)>ci)return{kind:`declined`,reason:`oversize`};let o=ri(a);if(!o)return{kind:`declined`,reason:`unparseable`};if(ii(o,t)>1)return{kind:`declined`,reason:`duplicate-container`};let l=pi(c(o),t,i),u=M(l)?l[n]:void 0,d=u!==void 0;if(d&&li(u,r))return{kind:`overwritten`};let f=a.charCodeAt(0)===65279,p=f?a.slice(1):a,m=p.includes(`\r
627
+ `)){let e=t.trimStart();if(!(e.length===0||e.length===t.length))return t.charCodeAt(0)===9?{insertSpaces:!1,tabSize:1}:{insertSpaces:!0,tabSize:t.length-e.length}}return{insertSpaces:!0,tabSize:2}}function di(e,t,n){return t===void 0?[e,n]:[e,t,n]}function fi(e,t,n,r){let i={[n]:r};return{[e]:t===void 0?i:{[t]:i}}}function pi(e,t,n){let r=e[t];return n===void 0?r:M(r)?r[n]:void 0}function mi(e,t,n,r,i){if(!L(e))return ai(e,fi(t,i,n,r)),{kind:`written`};let a;try{a=R(e,`utf-8`)}catch(e){return Q(`json config read failed`,e),{kind:`declined`,reason:`unparseable`}}if(a.trim()===``)return ai(e,fi(t,i,n,r)),{kind:`written`};if(Buffer.byteLength(a,`utf-8`)>ci)return{kind:`declined`,reason:`oversize`};let o=ri(a);if(!o)return{kind:`declined`,reason:`unparseable`};if(ii(o,t)>1)return{kind:`declined`,reason:`duplicate-container`};let l=pi(C(o),t,i),u=M(l)?l[n]:void 0,d=u!==void 0;if(d&&li(u,r))return{kind:`overwritten`};let f=a.charCodeAt(0)===65279,p=f?a.slice(1):a,m=p.includes(`\r
628
628
  `)?`\r
629
629
  `:`
630
- `,h=C(p,di(t,i,n),r,{formattingOptions:{...ui(p),eol:m}}),g=`${f?``:``}${s(p,h)}`;return g!==a&&T(e,g,{mode:Bn(e)}),{kind:d?`overwritten`:`written`}}function hi(e,t,n,r,i){let a=``;if(L(t))try{a=R(t,`utf-8`)}catch(e){return Q(`toml config read failed`,e),{kind:`declined`,reason:`unparseable`}}let o=a.trim()===``;if(e.backend===`fallback`)return o?(oi(t,{[n]:{[r]:i}}),{kind:`written`}):{kind:`declined`,reason:`no-native-writer`};let s=a.charCodeAt(0)===65279,c=s?a.slice(1):a,l=zn(c),u=o||c.endsWith(`
630
+ `,h=s(p,di(t,i,n),r,{formattingOptions:{...ui(p),eol:m}}),g=`${f?``:``}${c(p,h)}`;return g!==a&&T(e,g,{mode:Bn(e)}),{kind:d?`overwritten`:`written`}}function hi(e,t,n,r,i){let a=``;if(L(t))try{a=R(t,`utf-8`)}catch(e){return Q(`toml config read failed`,e),{kind:`declined`,reason:`unparseable`}}let o=a.trim()===``;if(e.backend===`fallback`)return o?(oi(t,{[n]:{[r]:i}}),{kind:`written`}):{kind:`declined`,reason:`no-native-writer`};let s=a.charCodeAt(0)===65279,c=s?a.slice(1):a,l=zn(c),u=o||c.endsWith(`
631
631
  `),d;try{d=e.upsertEntry(c,r,i)}catch(e){return Q(`upsertEntry failed`,e),{kind:`declined`,reason:`unparseable`}}let f=d.text;u?f.endsWith(`
632
632
  `)||(f=`${f}\n`):f=f.replace(/\n+$/,``),l&&(f=f.replace(/\r\n/g,`
633
633
  `).replace(/\n/g,`\r
@@ -636,8 +636,8 @@ export default function okBridge(pi: {
636
636
  `)||(u=`${u}\n`):u=u.replace(/\n+$/,``),d&&(u=u.replace(/\r\n/g,`
637
637
  `).replace(/\n/g,`\r
638
638
  `));let f=`${a?``:``}${u}`;return f!==i&&T(e,f,{mode:Bn(e)}),{kind:l?`overwritten`:`written`}}const _i=e=>e!==`project`,vi=e=>e!==`user`;async function yi(){let e=await Yn({message:`Where should the MCP server be configured?
639
- `,required:!1,theme:{icon:{checked:`[x]`,unchecked:`[ ]`}},choices:[{name:`User-level (~/.claude.json, ~/.cursor/mcp.json, …)`,value:`user`,checked:!0},{name:`Project-level (.mcp.json, .cursor/mcp.json, …)`,value:`project`,checked:!0}]});return e.includes(`user`)&&e.includes(`project`)?`both`:e.includes(`user`)?`user`:e.includes(`project`)?`project`:null}async function bi(e){return e.mcp===!1?null:e.scope?e.scope:e.isTTY??process.stdout.isTTY?(e.promptFn??yi)():`both`}async function xi(e){return er({message:`How do you want to handle OpenKnowledge config files (.ok/, .mcp.json, project skills)?`,default:e,choices:[{name:`Share with my team (commit alongside content)`,value:`shared`,description:`OK config gets committed alongside your project content.`},{name:`Local only (keep out of git via .git/info/exclude)`,value:`local-only`,description:"OK config stays on this machine only; teammates do not see it. Safe escape hatch via `ok config-sharing share`."}]})}async function Si(e){if(e.sharing!==void 0)return e.sharing;let t=Dn(e.projectRoot)===`local-only`?`local-only`:`shared`;return e.isTTY??process.stdout.isTTY?(e.promptFn??xi)(t):t}var $=class extends Error{constructor(e){super(e),this.name=`ContentDirError`}};function Ci(e){if(e===void 0||e===!0)return new Set(u);if(e===!1)return new Set;let t=e.split(`,`).map(e=>e.trim()).filter(Boolean);return new Set(u.filter(e=>t.includes(e)))}function wi(e,t,n){let r=be(n,e),i;try{i=Ee(r)}catch(e){let t=e.code;throw t===`ENOENT`?new $(`--content-dir path does not exist: ${r}`):new $(`--content-dir path is not accessible (${t??`unknown error`}): ${r}`)}if(!i.isDirectory())throw new $(`--content-dir must be a directory: ${r}`);let a=I(Ti(t),Ti(r));if(a.startsWith(`..`)||ye(a))throw new $(`--content-dir must be inside the project root (${t}); got ${r}`);return a===``?`.`:a}function Ti(e){try{return Te(e)}catch{return e}}const Ei=`open-knowledge-ui`;function Di(e,t,n){try{return L(e.detectPath?.(t,n)??P(e.configPath(t,n)))}catch{return!1}}function Oi(e,t,n,r,i){let a=e.serverName(t),o;try{o=i??e.configPath(t,r)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:``,serverName:a,error:t instanceof Error?t.message:String(t)}}let s=!n.skipAvailabilityCheck||e.offerOnlyWhenDetected===!0;if(!i&&s&&!Di(e,t,r))return{editorId:e.id,label:e.label,action:`skipped-missing`,configPath:o,serverName:a};if(i!==void 0)try{de(o,t)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),configScope:`project`}}if(e.format===`file`)return Ai(e,o,a,n,{isProjectScope:i!==void 0});let c;try{c=e.buildEntry(t,n)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}try{Ce(P(o),{recursive:!0})}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}let l={action:`written`},u;try{w(`${o}.lock`,()=>{let t=Kr(o).writePath;if(Ce(P(t),{recursive:!0}),e.format===`toml`){let n=hi(ei(),t,e.topLevelKey,a,c);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason);return}if(e.format===`yaml`){let n=gi(t,e.topLevelKey,a,c);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason);return}let n=mi(t,e.topLevelKey,a,c,e.serverMapSubKey);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason)},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){u=e instanceof Error?e:Error(String(e))}return u?{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:u.message,...i===void 0?{}:{configScope:`project`}}:l.action===`declined`?{editorId:e.id,label:e.label,action:`declined`,configPath:o,serverName:a,declineReason:l.declineReason,...i===void 0?{}:{configScope:`project`}}:{editorId:e.id,label:e.label,action:l.action,configPath:o,serverName:a,...i===void 0?{}:{configScope:`project`}}}const ki={pi:Fr};function Ai(e,t,n,r,i){let a=i.isProjectScope?{configScope:`project`}:{},o=r=>({editorId:e.id,label:e.label,action:`failed`,configPath:t,serverName:n,error:r instanceof Error?r.message:String(r),...a}),s=ki[e.id];if(!s)return o(Error(`No managed-file builder registered for editor "${e.id}" (format: 'file' targets need a MANAGED_FILE_BUILDERS entry).`));let c;try{c=s(r)}catch(e){return o(e)}try{Ce(P(t),{recursive:!0})}catch(e){return o(e)}let l={action:`written`};try{w(`${t}.lock`,()=>{let e=null;try{e=R(t,`utf-8`)}catch{e=null}if(e===c){l.action=`overwritten`;return}T(t,c,e===null?void 0:{mode:Bn(t)}),l.action=e===null?`written`:`overwritten`},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){return o(e)}return{editorId:e.id,label:e.label,action:l.action,configPath:t,serverName:n,...a}}function ji(e,t){let n=e.projectConfigPath?.(t);if(!(!n||!L(n)))return{editorId:e.id,label:e.label,path:n}}async function Mi(e){let t=ae(e.editors).filter(e=>e.scope===`global`),n={mode:`published`,skipAvailabilityCheck:!0};return t.map(t=>Oi(t,``,n,e.home))}function Ni(e,t,n,r){let i=Fi(e,t,n,r);return i.kind===`present`?i.entry:null}function Pi(e,t,n,r){let i=pi(e,t,r);if(!M(i))return{kind:`no-entry`};let a=i[n];return M(a)?{kind:`present`,entry:a}:{kind:`no-entry`}}function Fi(e,t,n,r){let i;try{i=r??e.configPath(t,n)}catch{return{kind:`absent`}}if(!L(i))return{kind:`absent`};try{if(Ee(i).size>ci)return{kind:`decline`,reason:`oversize`}}catch{return{kind:`decline`,reason:`unparseable`}}let a;try{a=R(i,`utf-8`)}catch{return{kind:`decline`,reason:`unparseable`}}if(a.trim()===``)return{kind:`absent`};if(e.format===`file`)return{kind:`present`,entry:Pr(a)};let o=e.serverName(t);if(e.format===`toml`){let t;try{t=ei().parseToObject(a)}catch{return{kind:`decline`,reason:`unparseable`}}return Pi(t,e.topLevelKey,o,e.serverMapSubKey)}if(e.format===`yaml`){let t=(0,xn.parseDocument)(a.charCodeAt(0)===65279?a.slice(1):a);return t.errors.length>0?{kind:`decline`,reason:`unparseable`}:Pi(t.toJS()??{},e.topLevelKey,o,e.serverMapSubKey)}let s=ri(a);return s?ii(s,e.topLevelKey)>1?{kind:`decline`,reason:`duplicate-container`}:Pi(c(s),e.topLevelKey,o,e.serverMapSubKey):{kind:`decline`,reason:`unparseable`}}async function Ii(e={}){let t=be(e.cwd??process.cwd()),n=Rr(t,{homeDir:e.home}),r=n.projectRoot,i=!L(F(r,`.ok`)),a=n.gitRootPromoted?I(r,t):void 0,o=e.contentDir===void 0?n.defaultContentDir:wi(e.contentDir,r,t);n.ancestorPromoted?console.log(`[ok] Opened existing project at ${r}`):n.gitRootPromoted&&i&&o===`.`&&process.stderr.write(`${A(`[ok] Content scope promoted to the git repo root: ${r}`)}\n Ran in ${a}/, but .ok/ lives at the git root (one .ok/ per git repo),\n so the whole repo is now the content scope. To narrow it, re-run with\n \`ok init --content-dir .\`, or set content.dir: ${a} in .ok/config.yml.\n`);let s={mode:e.devMcp?`dev`:`published`},c=await ee(r),d;try{d=_(r,{contentDir:o})}catch(t){let i=D.claude.configPath(r,e.home);return{projectRoot:r,contentCreated:[],contentUpdated:[],contentSkipped:[],editors:[],projectSkills:[],legacyProjectConfigs:[],didGitInit:c.didInit,rootGitignoreCreated:!1,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDirRequested:e.contentDir,contentScaffoldFailed:!0,mcpAction:`failed`,mcpPath:i,mcpError:`Content scaffolding failed: ${t instanceof Error?t.message:String(t)}`,sharing:{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:!1}}}let p=d.created.includes(he),h=!1;if(c.didInit)try{h=S(r)===`created`}catch(e){console.warn(`[ok] Skipping .gitignore seed at ${r}: ${e instanceof Error?e.message:String(e)}`)}try{g(r)}catch(e){console.warn(`[ok] Skipping project-skill .gitignore entry at ${r}: ${e instanceof Error?e.message:String(e)}`)}let v=await m(r);v.kind===`untracked`&&console.warn(`[ok] Untracked the OpenKnowledge project skill (${v.dirs.join(`, `)}) — it is now local-only. Teammates will see this as a deletion on their next pull.`);let y=await bi({scope:e.scope,mcp:e.mcp,isTTY:e.isTTY,promptFn:e.promptFn}),b=e.editors??Hi(r,e.home),x=e.editors??ue.filter(e=>D[e].projectConfigPath!==void 0||D[e].projectSkillPath!==void 0),C=ae(b),ne=ae(x),w=e.mcp===!1||y===null,T=Array.from(new Map([...C,...w?[]:ne].map(e=>[e.id,e])).values()),re=C.filter(t=>Di(t,r,e.home)),E=[],oe=[],ce=new Set;for(let t of T){if(w){let n=``;try{n=t.configPath(r,e.home)}catch{}E.push({editorId:t.id,label:t.label,action:`skipped-flag`,configPath:n,serverName:t.serverName(r)});continue}if(_i(y)&&C.includes(t)&&t.scope===`global`&&E.push(Oi(t,r,s,e.home)),vi(y)&&ne.includes(t)&&t.projectConfigPath){let n=t.projectConfigPath(r),i=Oi(t,r,s,e.home,n);E.push(i),(i.action===`written`||i.action===`overwritten`)&&ce.add(n)}}let le=new Set;for(let t of ne){let n=t.projectSkillPath?.(r);!n||le.has(n)||(le.add(n),oe.push(se(t,r,{home:e.home})))}let de=!w&&y!==null&&vi(y)?ne.filter(e=>!e.projectConfigPath&&!e.projectSkillPath).map(e=>e.label):void 0,fe=w?[]:re.map(e=>ji(e,r)).filter(e=>e!==void 0).filter(e=>!ce.has(e.path)),O=e.installUserSkill??f,pe=e.home??Oe(),k=Ci(e.skills),me=!1,j=!1,M=!1,ge=!1;for(let t of u){let n=k.has(t);if(await te(pe,l[t],n).catch(()=>{}),n){me=!0;let n=await O({home:e.home,bundleId:t,force:!0});n===`installed`?j=!0:n===`failed`?M=!0:ge=!0}else try{ie(pe,t)}catch{}}let _e=M?`failed`:j?`installed`:me&&ge?`skip-current`:`declined`,ve=w?`skipped-flag`:`skipped-missing`,N=E.find(e=>e.editorId===`claude`)??E[0]??{action:ve,configPath:D.claude.configPath(r,e.home)},P=await Li({projectRoot:r,desiredMode:await Si({sharing:e.sharing,projectRoot:r,isTTY:e.isTTY,promptFn:e.sharingPromptFn}),explicitFlag:e.sharing});return{projectRoot:r,contentCreated:d.created,contentUpdated:d.updated,contentSkipped:d.skipped,editors:E,projectSkills:oe,legacyProjectConfigs:fe,skillInstall:_e,didGitInit:c.didInit,rootGitignoreCreated:h,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDir:p?o:void 0,contentDirRequested:e.contentDir,contentScaffoldFailed:!1,mcpAction:N.action,mcpPath:N.configPath,mcpError:`error`in N?N.error:void 0,projectScopeUnsupportedLabels:de,sharing:P}}async function Li(e){let{projectRoot:t,desiredMode:n,explicitFlag:r}=e,i=Dn(t);if(i===`no-git`)return{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:r===`local-only`};let a=wn(t);if(n===`local-only`){let e=Tn(t,a);if(e.kind===`refused-tracked`){let t=e;return{kind:`refused-tracked`,tracked:t.tracked,remediation:t.remediation}}return e.kind===`no-exclude`?{kind:`no-exclude`,reason:e.reason,localOnlyRequested:r===`local-only`}:Ri(t,e,`add`)}if(i===`shared`)return{kind:`applied`,mode:`shared`,action:`noop`,appended:[],alreadyPresent:[],removed:[]};let o=En(t,a);return o.kind===`no-exclude`?{kind:`no-exclude`,reason:o.reason,localOnlyRequested:!1}:Ri(t,o,`remove`)}function Ri(e,t,n){let r=Dn(e);return n===`add`?{kind:`applied`,mode:r,action:t.appended.length>0?`added`:`noop`,appended:t.appended,alreadyPresent:t.alreadyPresent,removed:[]}:{kind:`applied`,mode:r,action:`removed`,appended:[],alreadyPresent:[],removed:t.removed}}function zi(e){switch(e){case`oversize`:return`config too large to edit safely`;case`duplicate-container`:return`duplicate server block`;case`no-native-writer`:return`no format-preserving writer available`;default:return`config not readable`}}function Bi(e,t){let n=[],r=e.editors.some(e=>e.action===`written`||e.action===`overwritten`),i=e.editors.some(e=>e.action===`failed`)||e.projectSkills.some(e=>e.action===`failed`),a=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-flag`),o=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-missing`);e.didGitInit&&n.push(`Initialized git repo at ${t}/.git/ (default branch: main)`),e.rootGitignoreCreated&&n.push(`Seeded .gitignore at ${t}/.gitignore (.DS_Store)`);let s=F(t,`.ok`);if(e.contentCreated.length>0||e.contentUpdated.length>0?(n.push(j(`Content scaffolded at ${s}/`)),e.contentCreated.length>0&&n.push(` Created: ${e.contentCreated.join(`, `)}`),e.contentUpdated.length>0&&n.push(` Updated: ${e.contentUpdated.join(`, `)}`)):n.push(j(`Content already present at ${s}/`)),e.contentSkipped.length>0&&n.push(` Skipped (already exist): ${e.contentSkipped.join(`, `)}`),n.push(``),e.mcpError&&e.editors.length===0)n.push(`Warning: ${e.mcpError}`);else if(e.editors.length===0)if(n.push(j(`MCP server configuration:`)),e.mcpAction===`skipped-flag`)n.push(` MCP config not written — use without --no-mcp to configure editors`);else if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}else n.push(` No supported editor config directories detected; skipped MCP registration`);else if(a)n.push(`MCP config not written — use without --no-mcp to configure editors`);else if(o)n.push(j(`MCP server configuration:`)),n.push(` No supported editor config directories detected; skipped MCP registration`);else{n.push(j(`MCP server configuration:`));for(let r of e.editors){let e=r.configPath.startsWith(t)?I(t,r.configPath):r.configPath.replace(/^\/Users\/[^/]+/,`~`),i=r.serverName===`open-knowledge`?``:` (${r.serverName})`,a=r.configScope===`project`?` (project)`:``,o=`${r.label}${a}`,s=` `.repeat(Math.max(1,20-o.length)),c=r.editorId===`claude-desktop`&&(r.action===`written`||r.action===`overwritten`)?` — quit and relaunch Claude Desktop to activate`:``;switch(r.action){case`written`:n.push(` ${o}${s}${e} ${k(`registered`)}${i}${c}`);break;case`overwritten`:n.push(` ${o}${s}${e} ${k(`updated`)}${i}${c}`);break;case`skipped-missing`:n.push(` ${o}${s}${e} config root missing; skipped`);break;case`failed`:n.push(` ${o}${s}${e} ${me(`FAILED`)}: ${r.error}`);break;case`declined`:n.push(` ${o}${s}${e} left unchanged (${zi(r.declineReason)})`);break;case`skipped-flag`:break;default:r.action}}if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}}if(e.projectSkills.length>0){n.push(``),n.push(j(`Project-local skills:`));for(let r of e.projectSkills){let e=`${r.label} (project)`,i=` `.repeat(Math.max(1,20-e.length)),a=r.path?I(t,r.path):``;switch(r.action){case`written`:n.push(` ${e}${i}${a} ${k(`installed`)}`);break;case`overwritten`:n.push(` ${e}${i}${a} ${k(`updated`)}`);break;case`skipped-unsupported`:n.push(` ${e}${i}no known project skill surface; skipped`);break;case`skipped-prerequisite`:n.push(` ${e}${i}OpenKnowledge MCP is not configured; skipped`);break;case`failed`:n.push(` ${e}${i}${a} ${me(`FAILED`)}: ${r.error}`);break}}}if(i&&(n.push(``),n.push(`For failed editors, add the MCP server entry or project skill manually. See:`),n.push(` https://github.com/inkeep/open-knowledge#mcp-setup`)),e.legacyProjectConfigs.length>0){n.push(``),n.push(`Project MCP configs found:`);for(let r of e.legacyProjectConfigs)n.push(` ${r.label} ${I(t,r.path)}`);n.push(` These project-local files may override the global config. Remove them if you want fully user-scoped MCP setup in this project.`)}if(e.skillInstall)switch(n.push(``),n.push(j(`User-global skill:`)),e.skillInstall){case`installed`:n.push(` open-knowledge ${k(`installed to detected agent hosts`)} via \`npx skills\``);break;case`skip-current`:n.push(` open-knowledge ${k(`already installed at current version`)}`);break;case`declined`:n.push(` open-knowledge ${pe(`skipped (opted out via --no-skills)`)}`);break;case`failed`:n.push(` ${A(`open-knowledge install failed — MCP still configured; run manually:`)}`),n.push(` ${A(` npx skills@~1.5.0 add <bundled-path> --agent '*' -g -y --copy`)}`);break}if(e.contentDirRequested!==void 0&&e.contentDir===void 0&&!e.contentScaffoldFailed?(n.push(``),n.push(A(`⚠ --content-dir ${e.contentDirRequested} ignored — .ok/config.yml already exists`)),n.push(` Edit .ok/config.yml → content.dir directly to change the content scope.`)):e.contentDir!==void 0&&e.contentDir!==`.`?(n.push(``),n.push(`Content scope set to ${e.contentDir}/ (content.dir in .ok/config.yml).`)):e.gitRootPromoted&&e.contentDir===`.`&&e.contentDirRequested===void 0&&(n.push(``),n.push(A(`⚠ Content scope promoted to the git repo root`)),n.push(` .ok/ was initialized at ${t} because it contains a .git folder (one .ok/ per git repo),`),n.push(` not the sub-folder you ran \`ok init\` in${e.promotedFromDir?` (${e.promotedFromDir})`:``}. The whole repo is now the content scope.`),e.promotedFromDir&&(n.push(" To scope to just that sub-folder, re-run `ok init --content-dir .` from there, or set"),n.push(` content.dir: ${e.promotedFromDir} in .ok/config.yml.`))),e.preview?(n.push(``),n.push(ge(e.preview,t))):e.previewWarning&&(n.push(``),n.push(`Content preview unavailable: ${e.previewWarning}`)),n.push(``),n.push(...Gi(e.sharing,t)),r){let t=new Set,r=e.editors.filter(e=>e.action===`written`||e.action===`overwritten`).filter(e=>!t.has(e.editorId)&&t.add(e.editorId)).map(e=>e.label);n.push(``),n.push(`${k(`✓`)} ${j(`Next steps:`)}`),n.push(` 1. Open your editor (${O(r.join(` / `))})`),n.push(` 2. Approve the MCP server when prompted`),n.push(` 3. (Optional) scaffold the starter knowledge-base structure:`),n.push(` - ${O(`ok seed`)} — empty repo, Karpathy 3-layer`),n.push(` - ${O(`mcp__open-knowledge__discover`)} — existing repo, extract conventions`),n.push(` 4. Use the MCP workflow tools as you build the wiki:`),n.push(` - ${O(`mcp__open-knowledge__ingest`)} — capture an external source`),n.push(` - ${O(`mcp__open-knowledge__research`)} — gather sources and write findings`),n.push(` - ${O(`mcp__open-knowledge__consolidate`)} — promote research to canonical articles`)}return n.join(`
639
+ `,required:!1,theme:{icon:{checked:`[x]`,unchecked:`[ ]`}},choices:[{name:`User-level (~/.claude.json, ~/.cursor/mcp.json, …)`,value:`user`,checked:!0},{name:`Project-level (.mcp.json, .cursor/mcp.json, …)`,value:`project`,checked:!0}]});return e.includes(`user`)&&e.includes(`project`)?`both`:e.includes(`user`)?`user`:e.includes(`project`)?`project`:null}async function bi(e){return e.mcp===!1?null:e.scope?e.scope:e.isTTY??process.stdout.isTTY?(e.promptFn??yi)():`both`}async function xi(e){return er({message:`How do you want to handle OpenKnowledge config files (.ok/, .mcp.json, project skills)?`,default:e,choices:[{name:`Share with my team (commit alongside content)`,value:`shared`,description:`OK config gets committed alongside your project content.`},{name:`Local only (keep out of git via .git/info/exclude)`,value:`local-only`,description:"OK config stays on this machine only; teammates do not see it. Safe escape hatch via `ok config-sharing share`."}]})}async function Si(e){if(e.sharing!==void 0)return e.sharing;let t=Dn(e.projectRoot)===`local-only`?`local-only`:`shared`;return e.isTTY??process.stdout.isTTY?(e.promptFn??xi)(t):t}var $=class extends Error{constructor(e){super(e),this.name=`ContentDirError`}};function Ci(e){if(e===void 0||e===!0)return new Set(u);if(e===!1)return new Set;let t=e.split(`,`).map(e=>e.trim()).filter(Boolean);return new Set(u.filter(e=>t.includes(e)))}function wi(e,t,n){let r=be(n,e),i;try{i=Ee(r)}catch(e){let t=e.code;throw t===`ENOENT`?new $(`--content-dir path does not exist: ${r}`):new $(`--content-dir path is not accessible (${t??`unknown error`}): ${r}`)}if(!i.isDirectory())throw new $(`--content-dir must be a directory: ${r}`);let a=I(Ti(t),Ti(r));if(a.startsWith(`..`)||ye(a))throw new $(`--content-dir must be inside the project root (${t}); got ${r}`);return a===``?`.`:a}function Ti(e){try{return Te(e)}catch{return e}}const Ei=`open-knowledge-ui`;function Di(e,t,n){try{return L(e.detectPath?.(t,n)??P(e.configPath(t,n)))}catch{return!1}}function Oi(e,t,n,r,i){let a=e.serverName(t),o;try{o=i??e.configPath(t,r)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:``,serverName:a,error:t instanceof Error?t.message:String(t)}}let s=!n.skipAvailabilityCheck||e.offerOnlyWhenDetected===!0;if(!i&&s&&!Di(e,t,r))return{editorId:e.id,label:e.label,action:`skipped-missing`,configPath:o,serverName:a};if(i!==void 0)try{de(o,t)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),configScope:`project`}}if(e.format===`file`)return Ai(e,o,a,n,{isProjectScope:i!==void 0});let c;try{c=e.buildEntry(t,n)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}try{Ce(P(o),{recursive:!0})}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}let l={action:`written`},u;try{w(`${o}.lock`,()=>{let t=Kr(o).writePath;if(Ce(P(t),{recursive:!0}),e.format===`toml`){let n=hi(ei(),t,e.topLevelKey,a,c);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason);return}if(e.format===`yaml`){let n=gi(t,e.topLevelKey,a,c);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason);return}let n=mi(t,e.topLevelKey,a,c,e.serverMapSubKey);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason)},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){u=e instanceof Error?e:Error(String(e))}return u?{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:u.message,...i===void 0?{}:{configScope:`project`}}:l.action===`declined`?{editorId:e.id,label:e.label,action:`declined`,configPath:o,serverName:a,declineReason:l.declineReason,...i===void 0?{}:{configScope:`project`}}:{editorId:e.id,label:e.label,action:l.action,configPath:o,serverName:a,...i===void 0?{}:{configScope:`project`}}}const ki={pi:Fr};function Ai(e,t,n,r,i){let a=i.isProjectScope?{configScope:`project`}:{},o=r=>({editorId:e.id,label:e.label,action:`failed`,configPath:t,serverName:n,error:r instanceof Error?r.message:String(r),...a}),s=ki[e.id];if(!s)return o(Error(`No managed-file builder registered for editor "${e.id}" (format: 'file' targets need a MANAGED_FILE_BUILDERS entry).`));let c;try{c=s(r)}catch(e){return o(e)}try{Ce(P(t),{recursive:!0})}catch(e){return o(e)}let l={action:`written`};try{w(`${t}.lock`,()=>{let e=null;try{e=R(t,`utf-8`)}catch{e=null}if(e===c){l.action=`overwritten`;return}T(t,c,e===null?void 0:{mode:Bn(t)}),l.action=e===null?`written`:`overwritten`},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){return o(e)}return{editorId:e.id,label:e.label,action:l.action,configPath:t,serverName:n,...a}}function ji(e,t){let n=e.projectConfigPath?.(t);if(!(!n||!L(n)))return{editorId:e.id,label:e.label,path:n}}async function Mi(e){let t=ae(e.editors).filter(e=>e.scope===`global`),n={mode:`published`,skipAvailabilityCheck:!0};return t.map(t=>Oi(t,``,n,e.home))}function Ni(e,t,n,r){let i=Fi(e,t,n,r);return i.kind===`present`?i.entry:null}function Pi(e,t,n,r){let i=pi(e,t,r);if(!M(i))return{kind:`no-entry`};let a=i[n];return M(a)?{kind:`present`,entry:a}:{kind:`no-entry`}}function Fi(e,t,n,r){let i;try{i=r??e.configPath(t,n)}catch{return{kind:`absent`}}if(!L(i))return{kind:`absent`};try{if(Ee(i).size>ci)return{kind:`decline`,reason:`oversize`}}catch{return{kind:`decline`,reason:`unparseable`}}let a;try{a=R(i,`utf-8`)}catch{return{kind:`decline`,reason:`unparseable`}}if(a.trim()===``)return{kind:`absent`};if(e.format===`file`)return{kind:`present`,entry:Pr(a)};let o=e.serverName(t);if(e.format===`toml`){let t;try{t=ei().parseToObject(a)}catch{return{kind:`decline`,reason:`unparseable`}}return Pi(t,e.topLevelKey,o,e.serverMapSubKey)}if(e.format===`yaml`){let t=(0,xn.parseDocument)(a.charCodeAt(0)===65279?a.slice(1):a);return t.errors.length>0?{kind:`decline`,reason:`unparseable`}:Pi(t.toJS()??{},e.topLevelKey,o,e.serverMapSubKey)}let s=ri(a);return s?ii(s,e.topLevelKey)>1?{kind:`decline`,reason:`duplicate-container`}:Pi(C(s),e.topLevelKey,o,e.serverMapSubKey):{kind:`decline`,reason:`unparseable`}}async function Ii(e={}){let t=be(e.cwd??process.cwd()),n=Rr(t,{homeDir:e.home}),r=n.projectRoot,i=!L(F(r,`.ok`)),a=n.gitRootPromoted?I(r,t):void 0,o=e.contentDir===void 0?n.defaultContentDir:wi(e.contentDir,r,t);n.ancestorPromoted?console.log(`[ok] Opened existing project at ${r}`):n.gitRootPromoted&&i&&o===`.`&&process.stderr.write(`${A(`[ok] Content scope promoted to the git repo root: ${r}`)}\n Ran in ${a}/, but .ok/ lives at the git root (one .ok/ per git repo),\n so the whole repo is now the content scope. To narrow it, re-run with\n \`ok init --content-dir .\`, or set content.dir: ${a} in .ok/config.yml.\n`);let s={mode:e.devMcp?`dev`:`published`},c=await ee(r),d;try{d=g(r,{contentDir:o})}catch(t){let i=D.claude.configPath(r,e.home);return{projectRoot:r,contentCreated:[],contentUpdated:[],contentSkipped:[],editors:[],projectSkills:[],legacyProjectConfigs:[],didGitInit:c.didInit,rootGitignoreCreated:!1,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDirRequested:e.contentDir,contentScaffoldFailed:!0,mcpAction:`failed`,mcpPath:i,mcpError:`Content scaffolding failed: ${t instanceof Error?t.message:String(t)}`,sharing:{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:!1}}}let p=d.created.includes(he),_=!1;if(c.didInit)try{_=S(r)===`created`}catch(e){console.warn(`[ok] Skipping .gitignore seed at ${r}: ${e instanceof Error?e.message:String(e)}`)}try{h(r)}catch(e){console.warn(`[ok] Skipping project-skill .gitignore entry at ${r}: ${e instanceof Error?e.message:String(e)}`)}let v=await m(r);v.kind===`untracked`&&console.warn(`[ok] Untracked the OpenKnowledge project skill (${v.dirs.join(`, `)}) — it is now local-only. Teammates will see this as a deletion on their next pull.`);let y=await bi({scope:e.scope,mcp:e.mcp,isTTY:e.isTTY,promptFn:e.promptFn}),b=e.editors??Hi(r,e.home),x=e.editors??ue.filter(e=>D[e].projectConfigPath!==void 0||D[e].projectSkillPath!==void 0),C=ae(b),ne=ae(x),w=e.mcp===!1||y===null,T=Array.from(new Map([...C,...w?[]:ne].map(e=>[e.id,e])).values()),re=C.filter(t=>Di(t,r,e.home)),E=[],oe=[],ce=new Set;for(let t of T){if(w){let n=``;try{n=t.configPath(r,e.home)}catch{}E.push({editorId:t.id,label:t.label,action:`skipped-flag`,configPath:n,serverName:t.serverName(r)});continue}if(_i(y)&&C.includes(t)&&t.scope===`global`&&E.push(Oi(t,r,s,e.home)),vi(y)&&ne.includes(t)&&t.projectConfigPath){let n=t.projectConfigPath(r),i=Oi(t,r,s,e.home,n);E.push(i),(i.action===`written`||i.action===`overwritten`)&&ce.add(n)}}let le=new Set;for(let t of ne){let n=t.projectSkillPath?.(r);!n||le.has(n)||(le.add(n),oe.push(se(t,r,{home:e.home})))}let de=!w&&y!==null&&vi(y)?ne.filter(e=>!e.projectConfigPath&&!e.projectSkillPath).map(e=>e.label):void 0,fe=w?[]:re.map(e=>ji(e,r)).filter(e=>e!==void 0).filter(e=>!ce.has(e.path)),O=e.installUserSkill??f,pe=e.home??Oe(),k=Ci(e.skills),me=!1,j=!1,M=!1,ge=!1;for(let t of u){let n=k.has(t);if(await te(pe,l[t],n).catch(()=>{}),n){me=!0;let n=await O({home:e.home,bundleId:t,force:!0});n===`installed`?j=!0:n===`failed`?M=!0:ge=!0}else try{ie(pe,t)}catch{}}let _e=M?`failed`:j?`installed`:me&&ge?`skip-current`:`declined`,ve=w?`skipped-flag`:`skipped-missing`,N=E.find(e=>e.editorId===`claude`)??E[0]??{action:ve,configPath:D.claude.configPath(r,e.home)},P=await Li({projectRoot:r,desiredMode:await Si({sharing:e.sharing,projectRoot:r,isTTY:e.isTTY,promptFn:e.sharingPromptFn}),explicitFlag:e.sharing});return{projectRoot:r,contentCreated:d.created,contentUpdated:d.updated,contentSkipped:d.skipped,editors:E,projectSkills:oe,legacyProjectConfigs:fe,skillInstall:_e,didGitInit:c.didInit,rootGitignoreCreated:_,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDir:p?o:void 0,contentDirRequested:e.contentDir,contentScaffoldFailed:!1,mcpAction:N.action,mcpPath:N.configPath,mcpError:`error`in N?N.error:void 0,projectScopeUnsupportedLabels:de,sharing:P}}async function Li(e){let{projectRoot:t,desiredMode:n,explicitFlag:r}=e,i=Dn(t);if(i===`no-git`)return{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:r===`local-only`};let a=wn(t);if(n===`local-only`){let e=Tn(t,a);if(e.kind===`refused-tracked`){let t=e;return{kind:`refused-tracked`,tracked:t.tracked,remediation:t.remediation}}return e.kind===`no-exclude`?{kind:`no-exclude`,reason:e.reason,localOnlyRequested:r===`local-only`}:Ri(t,e,`add`)}if(i===`shared`)return{kind:`applied`,mode:`shared`,action:`noop`,appended:[],alreadyPresent:[],removed:[]};let o=En(t,a);return o.kind===`no-exclude`?{kind:`no-exclude`,reason:o.reason,localOnlyRequested:!1}:Ri(t,o,`remove`)}function Ri(e,t,n){let r=Dn(e);return n===`add`?{kind:`applied`,mode:r,action:t.appended.length>0?`added`:`noop`,appended:t.appended,alreadyPresent:t.alreadyPresent,removed:[]}:{kind:`applied`,mode:r,action:`removed`,appended:[],alreadyPresent:[],removed:t.removed}}function zi(e){switch(e){case`oversize`:return`config too large to edit safely`;case`duplicate-container`:return`duplicate server block`;case`no-native-writer`:return`no format-preserving writer available`;default:return`config not readable`}}function Bi(e,t){let n=[],r=e.editors.some(e=>e.action===`written`||e.action===`overwritten`),i=e.editors.some(e=>e.action===`failed`)||e.projectSkills.some(e=>e.action===`failed`),a=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-flag`),o=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-missing`);e.didGitInit&&n.push(`Initialized git repo at ${t}/.git/ (default branch: main)`),e.rootGitignoreCreated&&n.push(`Seeded .gitignore at ${t}/.gitignore (.DS_Store)`);let s=F(t,`.ok`);if(e.contentCreated.length>0||e.contentUpdated.length>0?(n.push(j(`Content scaffolded at ${s}/`)),e.contentCreated.length>0&&n.push(` Created: ${e.contentCreated.join(`, `)}`),e.contentUpdated.length>0&&n.push(` Updated: ${e.contentUpdated.join(`, `)}`)):n.push(j(`Content already present at ${s}/`)),e.contentSkipped.length>0&&n.push(` Skipped (already exist): ${e.contentSkipped.join(`, `)}`),n.push(``),e.mcpError&&e.editors.length===0)n.push(`Warning: ${e.mcpError}`);else if(e.editors.length===0)if(n.push(j(`MCP server configuration:`)),e.mcpAction===`skipped-flag`)n.push(` MCP config not written — use without --no-mcp to configure editors`);else if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}else n.push(` No supported editor config directories detected; skipped MCP registration`);else if(a)n.push(`MCP config not written — use without --no-mcp to configure editors`);else if(o)n.push(j(`MCP server configuration:`)),n.push(` No supported editor config directories detected; skipped MCP registration`);else{n.push(j(`MCP server configuration:`));for(let r of e.editors){let e=r.configPath.startsWith(t)?I(t,r.configPath):r.configPath.replace(/^\/Users\/[^/]+/,`~`),i=r.serverName===`open-knowledge`?``:` (${r.serverName})`,a=r.configScope===`project`?` (project)`:``,o=`${r.label}${a}`,s=` `.repeat(Math.max(1,20-o.length)),c=r.editorId===`claude-desktop`&&(r.action===`written`||r.action===`overwritten`)?` — quit and relaunch Claude Desktop to activate`:``;switch(r.action){case`written`:n.push(` ${o}${s}${e} ${k(`registered`)}${i}${c}`);break;case`overwritten`:n.push(` ${o}${s}${e} ${k(`updated`)}${i}${c}`);break;case`skipped-missing`:n.push(` ${o}${s}${e} config root missing; skipped`);break;case`failed`:n.push(` ${o}${s}${e} ${me(`FAILED`)}: ${r.error}`);break;case`declined`:n.push(` ${o}${s}${e} left unchanged (${zi(r.declineReason)})`);break;case`skipped-flag`:break;default:r.action}}if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}}if(e.projectSkills.length>0){n.push(``),n.push(j(`Project-local skills:`));for(let r of e.projectSkills){let e=`${r.label} (project)`,i=` `.repeat(Math.max(1,20-e.length)),a=r.path?I(t,r.path):``;switch(r.action){case`written`:n.push(` ${e}${i}${a} ${k(`installed`)}`);break;case`overwritten`:n.push(` ${e}${i}${a} ${k(`updated`)}`);break;case`skipped-unsupported`:n.push(` ${e}${i}no known project skill surface; skipped`);break;case`skipped-prerequisite`:n.push(` ${e}${i}OpenKnowledge MCP is not configured; skipped`);break;case`failed`:n.push(` ${e}${i}${a} ${me(`FAILED`)}: ${r.error}`);break}}}if(i&&(n.push(``),n.push(`For failed editors, add the MCP server entry or project skill manually. See:`),n.push(` https://github.com/inkeep/open-knowledge#mcp-setup`)),e.legacyProjectConfigs.length>0){n.push(``),n.push(`Project MCP configs found:`);for(let r of e.legacyProjectConfigs)n.push(` ${r.label} ${I(t,r.path)}`);n.push(` These project-local files may override the global config. Remove them if you want fully user-scoped MCP setup in this project.`)}if(e.skillInstall)switch(n.push(``),n.push(j(`User-global skill:`)),e.skillInstall){case`installed`:n.push(` open-knowledge ${k(`installed to detected agent hosts`)} via \`npx skills\``);break;case`skip-current`:n.push(` open-knowledge ${k(`already installed at current version`)}`);break;case`declined`:n.push(` open-knowledge ${pe(`skipped (opted out via --no-skills)`)}`);break;case`failed`:n.push(` ${A(`open-knowledge install failed — MCP still configured; run manually:`)}`),n.push(` ${A(` npx skills@~1.5.0 add <bundled-path> --agent '*' -g -y --copy`)}`);break}if(e.contentDirRequested!==void 0&&e.contentDir===void 0&&!e.contentScaffoldFailed?(n.push(``),n.push(A(`⚠ --content-dir ${e.contentDirRequested} ignored — .ok/config.yml already exists`)),n.push(` Edit .ok/config.yml → content.dir directly to change the content scope.`)):e.contentDir!==void 0&&e.contentDir!==`.`?(n.push(``),n.push(`Content scope set to ${e.contentDir}/ (content.dir in .ok/config.yml).`)):e.gitRootPromoted&&e.contentDir===`.`&&e.contentDirRequested===void 0&&(n.push(``),n.push(A(`⚠ Content scope promoted to the git repo root`)),n.push(` .ok/ was initialized at ${t} because it contains a .git folder (one .ok/ per git repo),`),n.push(` not the sub-folder you ran \`ok init\` in${e.promotedFromDir?` (${e.promotedFromDir})`:``}. The whole repo is now the content scope.`),e.promotedFromDir&&(n.push(" To scope to just that sub-folder, re-run `ok init --content-dir .` from there, or set"),n.push(` content.dir: ${e.promotedFromDir} in .ok/config.yml.`))),e.preview?(n.push(``),n.push(ge(e.preview,t))):e.previewWarning&&(n.push(``),n.push(`Content preview unavailable: ${e.previewWarning}`)),n.push(``),n.push(...Gi(e.sharing,t)),r){let t=new Set,r=e.editors.filter(e=>e.action===`written`||e.action===`overwritten`).filter(e=>!t.has(e.editorId)&&t.add(e.editorId)).map(e=>e.label);n.push(``),n.push(`${k(`✓`)} ${j(`Next steps:`)}`),n.push(` 1. Open your editor (${O(r.join(` / `))})`),n.push(` 2. Approve the MCP server when prompted`),n.push(` 3. (Optional) scaffold the starter knowledge-base structure:`),n.push(` - ${O(`ok seed`)} — empty repo, Karpathy 3-layer`),n.push(` - ${O(`mcp__open-knowledge__discover`)} — existing repo, extract conventions`),n.push(` 4. Use the MCP workflow tools as you build the wiki:`),n.push(` - ${O(`mcp__open-knowledge__ingest`)} — capture an external source`),n.push(` - ${O(`mcp__open-knowledge__research`)} — gather sources and write findings`),n.push(` - ${O(`mcp__open-knowledge__consolidate`)} — promote research to canonical articles`)}return n.join(`
640
640
  `)}function Vi(e,t){return{projectRoot:e.projectRoot,gitRootPromoted:e.gitRootPromoted,promotedFromDir:e.promotedFromDir??null,contentDir:t.contentDir,contentDirRequested:e.contentDirRequested??null,contentDirApplied:e.contentDir!==void 0,contentFileCount:t.contentFileCount,previewError:e.previewWarning??null,didGitInit:e.didGitInit,mcpAction:e.mcpAction,editors:e.editors.map(e=>({editorId:e.editorId,label:e.label,action:e.action,configPath:e.configPath,scope:e.configScope===`project`?`project`:`user`}))}}function Hi(e,t){let n=[];for(let r of ue)Di(D[r],e,t)&&n.push(r);return n}function Ui(){let e={log:console.log,info:console.info,debug:console.debug},t=(...e)=>{process.stderr.write(`${e.map(e=>typeof e==`string`?e:je(e)).join(` `)}\n`)};return console.log=t,console.info=t,console.debug=t,()=>{console.log=e.log,console.info=e.info,console.debug=e.debug}}function Wi(){return new fe(`init`).description(`Scaffold .ok/ in the current directory and register the MCP server for your editor(s)`).option(`--mcp`,`Register the MCP server for selected editors (default: true)`,!0).option(`--no-mcp`,`Scaffold the .ok/ directory but do not touch MCP config`).option(`--dev-mcp`,`Register a local dev MCP entry using node + packages/cli/dist/cli.mjs with debug logging`).option(`--content-dir <dir>`,`Limit content to <dir> instead of the whole project. <dir> is interpreted relative to your current directory (e.g. "." = the folder you run the command in), then saved to .ok/config.yml as content.dir.`).option(`--json`,`Emit a structured JSON summary to stdout (diagnostics stay on stderr)`).option(`--skills <ids>`,`Install only the named user-global skill bundles (comma list: discovery,write-skill)`).option(`--no-skills`,`Do not install any user-global skill bundles`).addOption(new re(`--scope <scope>`,`Write MCP config at user level, project level, or both`).choices([`user`,`project`,`both`])).addOption(new re(`--shared`,`Commit OK config alongside content (the default for fresh repos)`).conflicts(`localOnly`)).addOption(new re(`--local-only`,`Keep OK config out of git via .git/info/exclude (per-clone, not committed)`).conflicts(`shared`)).action(async e=>{let t=process.cwd(),n=e.shared?`shared`:e.localOnly?`local-only`:void 0,r=e.json?Ui():null;try{let r;try{r=await Ii({cwd:t,mcp:e.mcp,devMcp:e.devMcp,scope:e.scope,sharing:n,contentDir:e.contentDir,skills:e.skills})}catch(e){if(e instanceof $){process.stderr.write(`${e.message}\n`),process.exitCode=64;return}if(e instanceof y||e instanceof p){process.stderr.write(`${e.message}\n`),process.exitCode=78;return}if(e instanceof b){process.stderr.write(`open-knowledge could not initialize a git repo for this project. Re-run, or run 'git init' yourself in the project folder.
641
- `),e.stderr&&process.stderr.write(`${e.stderr.trim()}\n`),process.exitCode=1;return}throw e}let i=r.contentDir??`.`,a=null,{loadConfig:o}=await import(`./loader-3kHXROAa.mjs`),{resolveContentDir:s}=await import(`./src-CgblAAT9.mjs`),c;try{c=o(r.projectRoot).config,i=c.content.dir}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}if(c)try{let{previewContent:e}=await import(`./preview-rVAd6E5r.mjs`),t=s(c,r.projectRoot);r.preview=e({projectDir:r.projectRoot,contentDir:t}),a=r.preview.totalCount}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}e.json?process.stdout.write(`${JSON.stringify(Vi(r,{contentDir:i,contentFileCount:a}),null,2)}\n`):process.stdout.write(`${Bi(r,r.projectRoot)}\n`),(r.editors.some(e=>e.action===`failed`)||r.mcpAction===`failed`)&&(process.exitCode=1)}finally{r?.()}})}function Gi(e,t){let n=[];switch(e.kind){case`applied`:return n.push(j(`Sharing mode:`)),e.mode===`local-only`?e.action===`added`?n.push(` ${k(`local-only`)} — appended ${e.appended.length} path(s) to ${j(`${t}/.git/info/exclude`)} (per-clone, not committed).`):e.action===`noop`&&e.alreadyPresent.length>0?n.push(` ${k(`local-only`)} — already excluded; nothing to do.`):n.push(` ${k(`local-only`)}`):e.action===`removed`?n.push(` ${k(`shared`)} — removed OK paths from ${j(`${t}/.git/info/exclude`)}; commit the files to share with teammates.`):n.push(` ${k(`shared`)} — OK config will be committed alongside content.`),n;case`refused-tracked`:n.push(A(`Sharing mode: switch to local-only deferred`));for(let t of e.remediation.split(`
641
+ `),e.stderr&&process.stderr.write(`${e.stderr.trim()}\n`),process.exitCode=1;return}throw e}let i=r.contentDir??`.`,a=null,{loadConfig:o}=await import(`./loader-DdZabgzf.mjs`),{resolveContentDir:s}=await import(`./src-DyjLVrS0.mjs`),c;try{c=o(r.projectRoot).config,i=c.content.dir}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}if(c)try{let{previewContent:e}=await import(`./preview-C3pbNWkQ.mjs`),t=s(c,r.projectRoot);r.preview=e({projectDir:r.projectRoot,contentDir:t}),a=r.preview.totalCount}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}e.json?process.stdout.write(`${JSON.stringify(Vi(r,{contentDir:i,contentFileCount:a}),null,2)}\n`):process.stdout.write(`${Bi(r,r.projectRoot)}\n`),(r.editors.some(e=>e.action===`failed`)||r.mcpAction===`failed`)&&(process.exitCode=1)}finally{r?.()}})}function Gi(e,t){let n=[];switch(e.kind){case`applied`:return n.push(j(`Sharing mode:`)),e.mode===`local-only`?e.action===`added`?n.push(` ${k(`local-only`)} — appended ${e.appended.length} path(s) to ${j(`${t}/.git/info/exclude`)} (per-clone, not committed).`):e.action===`noop`&&e.alreadyPresent.length>0?n.push(` ${k(`local-only`)} — already excluded; nothing to do.`):n.push(` ${k(`local-only`)}`):e.action===`removed`?n.push(` ${k(`shared`)} — removed OK paths from ${j(`${t}/.git/info/exclude`)}; commit the files to share with teammates.`):n.push(` ${k(`shared`)} — OK config will be committed alongside content.`),n;case`refused-tracked`:n.push(A(`Sharing mode: switch to local-only deferred`));for(let t of e.remediation.split(`
642
642
  `))n.push(t.length>0?` ${t}`:``);return n.push(` Re-run ${O(`ok config-sharing unshare`)} after resolving to complete the switch.`),n;case`no-exclude`:if(e.localOnlyRequested)n.push(A(`Sharing mode: --local-only requested but no git repo found — option ignored`)),n.push(` Run ${O(`git init`)} (or open this folder via OK Desktop, which can scaffold a repo) and then ${O(`ok config-sharing unshare`)}.`);else if(e.reason===`no-git`)return[];else n.push(A(`Sharing mode unavailable: ${e.reason}.`));return n}}export{On as A,ht as B,er as C,Vn as D,zn as E,En as F,U as H,An as I,bn as L,jn as M,Dn as N,Tn as O,kn as P,cn as R,Nr as S,Bn as T,He as U,mt as V,di as _,Vi as a,ei as b,Bi as c,Ni as d,Ci as f,Ii as g,Si as h,Li as i,wn as j,Mn as k,Gi as l,wi as m,Ei as n,Fi as o,bi as p,ki as r,Hi as s,$ as t,Wi as u,Oi as v,Yn as w,Rr as x,Mi as y,vt as z};
643
- //# sourceMappingURL=init-CRqHukN0.mjs.map
643
+ //# sourceMappingURL=init-JMQ-3ZKg.mjs.map
@@ -1,2 +1,2 @@
1
- import{Kr as e,Yr as t}from"./src-7LOBasfG.mjs";import{P as n}from"./fs-traced-PoaSX4-V.mjs";import{D as r,T as i}from"./init-CRqHukN0.mjs";import{t as a}from"./is-object-ByG7RnjH.mjs";import{join as o}from"node:path";import{existsSync as s,readFileSync as c,rmSync as l}from"node:fs";const u={allowTrailingComma:!0,disallowComments:!1};function d(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function f(f){let p=o(f,`.claude`,`launch.json`);if(!s(p))return{kind:`not-present`};let m;try{m=c(p,`utf-8`)}catch{return{kind:`declined`}}let h=[],g=t(m,h,u)??void 0;if(h.some(e=>!d(e,m))||!g||g.type!==`object`)return{kind:`declined`};let _=e(g).configurations;if(!Array.isArray(_))return{kind:`not-present`};let v=_.findIndex(e=>a(e)&&e.name===`open-knowledge-ui`);if(v===-1)return{kind:`not-present`};if(_.length===1)return l(p,{force:!0}),{kind:`removed-file`};let{text:y,changed:b}=r(m,[`configurations`,v]);return b?(n(p,y,{mode:i(p)}),{kind:`removed`}):{kind:`not-present`}}export{f as t};
2
- //# sourceMappingURL=launch-json-removal-D2RKDIfa.mjs.map
1
+ import{Xr as e,qr as t}from"./src-DFk8Tui7.mjs";import{P as n}from"./fs-traced-CNJs7Awa.mjs";import{D as r,T as i}from"./init-JMQ-3ZKg.mjs";import{t as a}from"./is-object-ByG7RnjH.mjs";import{join as o}from"node:path";import{existsSync as s,readFileSync as c,rmSync as l}from"node:fs";const u={allowTrailingComma:!0,disallowComments:!1};function d(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function f(f){let p=o(f,`.claude`,`launch.json`);if(!s(p))return{kind:`not-present`};let m;try{m=c(p,`utf-8`)}catch{return{kind:`declined`}}let h=[],g=e(m,h,u)??void 0;if(h.some(e=>!d(e,m))||!g||g.type!==`object`)return{kind:`declined`};let _=t(g).configurations;if(!Array.isArray(_))return{kind:`not-present`};let v=_.findIndex(e=>a(e)&&e.name===`open-knowledge-ui`);if(v===-1)return{kind:`not-present`};if(_.length===1)return l(p,{force:!0}),{kind:`removed-file`};let{text:y,changed:b}=r(m,[`configurations`,v]);return b?(n(p,y,{mode:i(p)}),{kind:`removed`}):{kind:`not-present`}}export{f as t};
2
+ //# sourceMappingURL=launch-json-removal-xORplwHY.mjs.map
@@ -0,0 +1 @@
1
+ import{n as e}from"./loader-G247xVVO.mjs";export{e as loadConfig};
@@ -1,4 +1,4 @@
1
- import"./src-IQdx1yfl.mjs";import{_ as e}from"./src-7LOBasfG.mjs";import{G as t,l as n,o as r,s as i}from"./sleep-CnRgOMGV.mjs";import{D as a,O as o}from"./fs-traced-PoaSX4-V.mjs";import{t as s}from"./constants-BJzJKgN0.mjs";import{t as c}from"./is-object-ByG7RnjH.mjs";import{resolve as l}from"node:path";import{existsSync as u,readFileSync as d}from"node:fs";import{realpath as f}from"node:fs/promises";var p=t();async function m(e){let t=l(e);try{return await f(t)}catch(e){if(e.code!==`ENOENT`){let n=e instanceof Error?e.message:String(e);console.warn(`[normalize-cwd] realpath failed for ${t}: ${n}`)}return t}}function h(e,t){let n={...e};for(let r of Object.keys(t)){let i=e[r],a=t[r];c(a)&&c(i)?n[r]=h(i,a):a!==void 0&&(n[r]=a)}return n}function g(e){if(!u(e))return{value:null,path:e,source:null,doc:null};let t;try{t=d(e,`utf-8`)}catch(t){return console.warn(`[config] Failed to read ${e}: ${t instanceof Error?t.message:t}`),{value:null,path:e,source:null,doc:null}}let n=(0,p.parseDocument)(t);if(n.errors.length>0)return console.warn(`[config] Failed to parse ${e}: ${n.errors.map(e=>e.message).join(`; `)}`),{value:null,path:e,source:t,doc:null};let r=n.toJSON();return c(r)?{value:r,path:e,source:t,doc:n}:{value:null,path:e,source:t,doc:n}}function _(e,t){return e.map(e=>{let n=e.path.map(e=>typeof e==`symbol`?String(e):e),r={path:n,message:e.message,issueCode:e.code};if(t.doc!==null&&t.source!==null){let e=i({file:t.path,source:t.source,doc:t.doc,path:n});if(e!==void 0)return{...r,source:e}}return r})}function v(t){let i=t??process.cwd(),c=[],u=o(`user`,i),d=a({absPath:u}),f={};d.valid&&d.source!==void 0?(f=h(f,d.value),c.push(u)):d.valid;let p=l(i,`.ok`,s),m=g(p);if(m.value!==null){let e=r({value:m.value,file:m.path,source:m.source,doc:m.doc});if(e.length>0)throw Error(e.map(n).join(`
1
+ import"./src-BTZ4BQel.mjs";import{_ as e}from"./src-DFk8Tui7.mjs";import{G as t,l as n,o as r,s as i}from"./sleep-DPcGAk1M.mjs";import{D as a,O as o}from"./fs-traced-CNJs7Awa.mjs";import{t as s}from"./constants-bmev5FwS.mjs";import{t as c}from"./is-object-ByG7RnjH.mjs";import{resolve as l}from"node:path";import{existsSync as u,readFileSync as d}from"node:fs";import{realpath as f}from"node:fs/promises";var p=t();async function m(e){let t=l(e);try{return await f(t)}catch(e){if(e.code!==`ENOENT`){let n=e instanceof Error?e.message:String(e);console.warn(`[normalize-cwd] realpath failed for ${t}: ${n}`)}return t}}function h(e,t){let n={...e};for(let r of Object.keys(t)){let i=e[r],a=t[r];c(a)&&c(i)?n[r]=h(i,a):a!==void 0&&(n[r]=a)}return n}function g(e){if(!u(e))return{value:null,path:e,source:null,doc:null};let t;try{t=d(e,`utf-8`)}catch(t){return console.warn(`[config] Failed to read ${e}: ${t instanceof Error?t.message:t}`),{value:null,path:e,source:null,doc:null}}let n=(0,p.parseDocument)(t);if(n.errors.length>0)return console.warn(`[config] Failed to parse ${e}: ${n.errors.map(e=>e.message).join(`; `)}`),{value:null,path:e,source:t,doc:null};let r=n.toJSON();return c(r)?{value:r,path:e,source:t,doc:n}:{value:null,path:e,source:t,doc:n}}function _(e,t){return e.map(e=>{let n=e.path.map(e=>typeof e==`symbol`?String(e):e),r={path:n,message:e.message,issueCode:e.code};if(t.doc!==null&&t.source!==null){let e=i({file:t.path,source:t.source,doc:t.doc,path:n});if(e!==void 0)return{...r,source:e}}return r})}function v(t){let i=t??process.cwd(),c=[],u=o(`user`,i),d=a({absPath:u}),f={};d.valid&&d.source!==void 0?(f=h(f,d.value),c.push(u)):d.valid;let p=l(i,`.ok`,s),m=g(p);if(m.value!==null){let e=r({value:m.value,file:m.path,source:m.source,doc:m.doc});if(e.length>0)throw Error(e.map(n).join(`
2
2
 
3
3
  `));f=h(f,m.value),c.push(p)}let v=e.safeParse(f);if(!v.success){let e={code:`SCHEMA_INVALID`,issues:_(v.error.issues,m)};throw Error(n(e))}return{config:v.data,sources:c}}function y(e){let t=e.cacheMs??1e3,n=e.loadConfigFn??v,r=new Map,i=new Map,a=m(e.startupCwd);return async o=>{let s=await m(o??e.startupCwd),c=Date.now(),l=r.get(s);if(l&&l.expiresAt>c)return l.config;let u=i.get(s);if(u)return await u;let d=(async()=>{if(s===await a)return r.set(s,{config:e.startupConfig,expiresAt:Date.now()+t}),e.startupConfig;let i=n(s).config;return r.set(s,{config:i,expiresAt:Date.now()+t}),i})();i.set(s,d);try{return await d}finally{i.delete(s)}}}export{v as n,y as t};
4
- //# sourceMappingURL=loader-B2FwNLO-.mjs.map
4
+ //# sourceMappingURL=loader-G247xVVO.mjs.map
@@ -0,0 +1,2 @@
1
+ import{ha as e,ji as t,ua as n}from"./src-BTZ4BQel.mjs";const r=new t({extensions:n,deriveStructuralFreshness:!0}),i=e(n);export{i as n,r as t};
2
+ //# sourceMappingURL=md-manager-BxIIRrx9.mjs.map
@@ -1,2 +1,2 @@
1
- import{ci as e}from"./src-7LOBasfG.mjs";import{execFile as t}from"node:child_process";const n=new Set([`http:`,`https:`]),r=/[\u0000-\u0020\u007F-\u009F"'`\\&|<>^()$;{}[\]*?!~]/;function i(e,t){console.warn(`Could not auto-open browser (${t}); visit ${e} manually`)}function a(a){let o;try{o=new URL(a)}catch{i(a,`invalid URL`);return}if(!n.has(o.protocol)){i(a,`unsupported scheme '${o.protocol}'`);return}if(r.test(a)){i(a,`URL contains unsafe characters`);return}t(process.platform===`darwin`?`open`:process.platform===`win32`?`cmd`:`xdg-open`,process.platform===`win32`?[`/c`,`start`,``,a]:[a],e({}),e=>{e&&console.warn(`Could not auto-open browser (${e.message}); visit ${a} manually`)})}export{a as openBrowser};
2
- //# sourceMappingURL=open-browser-B_gopYWU.mjs.map
1
+ import{li as e}from"./src-DFk8Tui7.mjs";import{execFile as t}from"node:child_process";const n=new Set([`http:`,`https:`]),r=/[\u0000-\u0020\u007F-\u009F"'`\\&|<>^()$;{}[\]*?!~]/;function i(e,t){console.warn(`Could not auto-open browser (${t}); visit ${e} manually`)}function a(a){let o;try{o=new URL(a)}catch{i(a,`invalid URL`);return}if(!n.has(o.protocol)){i(a,`unsupported scheme '${o.protocol}'`);return}if(r.test(a)){i(a,`URL contains unsafe characters`);return}t(process.platform===`darwin`?`open`:process.platform===`win32`?`cmd`:`xdg-open`,process.platform===`win32`?[`/c`,`start`,``,a]:[a],e({}),e=>{e&&console.warn(`Could not auto-open browser (${e.message}); visit ${a} manually`)})}export{a as openBrowser};
2
+ //# sourceMappingURL=open-browser-BxTeTvF1.mjs.map
@@ -1,2 +1,2 @@
1
- import{t as e}from"./md-manager-BFa4uLFA.mjs";import{parentPort as t}from"node:worker_threads";function n(t){try{let n,r;if(t.embedTable!==void 0&&t.sourcePath!==void 0){let e=t.embedTable;r={sourcePath:t.sourcePath,resolveEmbed:t=>e[t]?.path??null,...t.wantSizes?{resolveSize:t=>e[t]?.size??null}:{}}}else if(t.recordEmbeds&&t.sourcePath!==void 0){let e=new Set;n=e,r={sourcePath:t.sourcePath,resolveEmbed:t=>(e.add(t),null),...t.wantSizes?{resolveSize:t=>(e.add(t),null)}:{}}}let i=e.parseWithFallback(t.body,r);return n!==void 0&&n.size>0?{id:t.id,ok:!0,parsedJson:i,requestedTargets:[...n]}:{id:t.id,ok:!0,parsedJson:i}}catch(e){return{id:t.id,ok:!1,message:e instanceof Error?e.message.slice(0,500):String(e).slice(0,500)}}}t?.on(`message`,e=>{t?.postMessage(n(e))});export{};
1
+ import{t as e}from"./md-manager-BxIIRrx9.mjs";import{parentPort as t}from"node:worker_threads";function n(t){try{let n,r;if(t.embedTable!==void 0&&t.sourcePath!==void 0){let e=t.embedTable;r={sourcePath:t.sourcePath,resolveEmbed:t=>e[t]?.path??null,...t.wantSizes?{resolveSize:t=>e[t]?.size??null}:{}}}else if(t.recordEmbeds&&t.sourcePath!==void 0){let e=new Set;n=e,r={sourcePath:t.sourcePath,resolveEmbed:t=>(e.add(t),null),...t.wantSizes?{resolveSize:t=>(e.add(t),null)}:{}}}let i=e.parseWithFallback(t.body,r);return n!==void 0&&n.size>0?{id:t.id,ok:!0,parsedJson:i,requestedTargets:[...n]}:{id:t.id,ok:!0,parsedJson:i}}catch(e){return{id:t.id,ok:!1,message:e instanceof Error?e.message.slice(0,500):String(e).slice(0,500)}}}t?.on(`message`,e=>{t?.postMessage(n(e))});export{};
2
2
  //# sourceMappingURL=parse-worker.mjs.map
@@ -0,0 +1 @@
1
+ import{n as e,t}from"./preview-CpkyThwj.mjs";export{t as formatPreviewBlock,e as previewContent};
@@ -1,3 +1,3 @@
1
- import{Xr as e}from"./src-7LOBasfG.mjs";import"./constants-BJzJKgN0.mjs";import{join as t,relative as n}from"node:path";import{existsSync as r,lstatSync as i,readdirSync as a,realpathSync as o,statSync as s}from"node:fs";function c(r){let{projectDir:c,contentDir:l,sampleCap:u=5}=r,d=[],f=[];try{i(l)}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[`cannot access content directory ${l}: ${e instanceof Error?e.message:String(e)}`]}}let p;try{p=e({projectDir:c,contentDir:l})}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[e instanceof Error?e.message:String(e)]}}function m(e){let r;try{r=a(e,{withFileTypes:!0})}catch(t){let r=t instanceof Error?t.message:String(t);d.push(`could not read directory ${n(l,e)||`.`}: ${r}`);return}for(let i of r){let r=t(e,i.name);if(i.isSymbolicLink()){let e;try{e=o(r)}catch(e){let t=e.code;t===`ENOENT`||t===`ELOOP`?d.push(`broken or cyclic symlink: ${n(l,r)}`):d.push(`cannot resolve symlink ${n(l,r)}: ${t??`unknown error`}`);continue}let t;try{t=s(e)}catch{continue}if(t.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(t.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}else if(i.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(i.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}}return m(l),{totalCount:f.length,sample:f.slice(0,u),contentDir:l,warnings:d}}function l(e,i){let a=[],o=n(i,e.contentDir),s=o===``?`./`:`./${o}`;if(a.push(`Content:`),a.push(` Found ${e.totalCount} markdown files in ${s}`),e.sample.length>0){let t=e.sample.join(`, `),n=e.totalCount>e.sample.length?`, …`:``;a.push(` Sample: ${t}${n}`)}if(e.warnings.length>0)for(let t of e.warnings)a.push(` Warning: ${t}`);return a.push(``),r(t(i,`.ok`,`config.yml`))?(a.push(` To adjust scope, add patterns to .okignore at the project root.`),a.push(` To change the content root, edit .ok/config.yml → content.dir.`)):a.push(" Run `open-knowledge init` to scaffold config + .okignore."),a.push(``),a.push(` Re-check anytime: open-knowledge preview`),a.join(`
1
+ import{Zr as e}from"./src-DFk8Tui7.mjs";import"./constants-bmev5FwS.mjs";import{join as t,relative as n}from"node:path";import{existsSync as r,lstatSync as i,readdirSync as a,realpathSync as o,statSync as s}from"node:fs";function c(r){let{projectDir:c,contentDir:l,sampleCap:u=5}=r,d=[],f=[];try{i(l)}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[`cannot access content directory ${l}: ${e instanceof Error?e.message:String(e)}`]}}let p;try{p=e({projectDir:c,contentDir:l})}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[e instanceof Error?e.message:String(e)]}}function m(e){let r;try{r=a(e,{withFileTypes:!0})}catch(t){let r=t instanceof Error?t.message:String(t);d.push(`could not read directory ${n(l,e)||`.`}: ${r}`);return}for(let i of r){let r=t(e,i.name);if(i.isSymbolicLink()){let e;try{e=o(r)}catch(e){let t=e.code;t===`ENOENT`||t===`ELOOP`?d.push(`broken or cyclic symlink: ${n(l,r)}`):d.push(`cannot resolve symlink ${n(l,r)}: ${t??`unknown error`}`);continue}let t;try{t=s(e)}catch{continue}if(t.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(t.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}else if(i.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(i.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}}return m(l),{totalCount:f.length,sample:f.slice(0,u),contentDir:l,warnings:d}}function l(e,i){let a=[],o=n(i,e.contentDir),s=o===``?`./`:`./${o}`;if(a.push(`Content:`),a.push(` Found ${e.totalCount} markdown files in ${s}`),e.sample.length>0){let t=e.sample.join(`, `),n=e.totalCount>e.sample.length?`, …`:``;a.push(` Sample: ${t}${n}`)}if(e.warnings.length>0)for(let t of e.warnings)a.push(` Warning: ${t}`);return a.push(``),r(t(i,`.ok`,`config.yml`))?(a.push(` To adjust scope, add patterns to .okignore at the project root.`),a.push(` To change the content root, edit .ok/config.yml → content.dir.`)):a.push(" Run `open-knowledge init` to scaffold config + .okignore."),a.push(``),a.push(` Re-check anytime: open-knowledge preview`),a.join(`
2
2
  `)}export{c as n,l as t};
3
- //# sourceMappingURL=preview-2zt9BjS6.mjs.map
3
+ //# sourceMappingURL=preview-CpkyThwj.mjs.map
@@ -1 +1 @@
1
- import{i as e}from"./chunk-DseTPa7n.js";import{t}from"./jsx-runtime-DyiINK0N.js";import{n,r}from"./DocumentContext-BcbJIejF.js";import{t as i}from"./react-JNybMug3.js";import{n as a,r as o}from"./dist-DBENJeML.js";import{t as s}from"./compiler-runtime-dQcBxOhn.js";import{t as c}from"./button-DHE6Sx02.js";import{i as l,n as u,t as d}from"./tooltip-BCGL5jDF.js";import{a as f,c as p,i as m,o as h,s as g,t as _}from"./dialog-BLaUGJCd.js";import{vt as v}from"./CodeMirrorPropInput-C9WmN90w.js";import{n as y}from"./CopyButton-Ja2824Ao.js";import{i as b}from"./prop-types-X3nIYAt7.js";import{t as x}from"./loader-circle-K7Xwpjny.js";import{i as S,t as C}from"./timeline-diff-store-dt1fl2gd.js";import{n as w}from"./dist-DwCd6eR-.js";import{t as T}from"./dist-BD3698ve.js";import{s as E}from"./navigation-targets-CPuDxLos.js";import{a as D,i as O,n as k,o as A,t as j}from"./agent-diff-store-_LaXNJgH.js";import{n as M}from"./use-activity-panel-DEqogtJb.js";var N=s(),P=e(i(),1),F=t();function I(e,t){let n=Math.max(0,t-e);if(n<6e4){let e=Math.round(n/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(n<36e5){let e=Math.round(n/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}return new Date(e).toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function ee(e){let t=(0,N.c)(86),{burst:n,docName:r,editCount:i,sessionAlive:s,inFlight:v,onOpenDiff:y,onRestore:b}=e,{_:C}=o(),[w,T]=(0,P.useState)(te),E,O;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{let e=setInterval(()=>T(Date.now()),3e4);return()=>clearInterval(e)},O=[],t[0]=E,t[1]=O):(E=t[0],O=t[1]),(0,P.useEffect)(E,O);let[k,A]=(0,P.useState)(!1),j=D(),M=n.stackIndex+1,ee=j?.docName===r&&j.keptCount===M,L=i-M,ne=!s||v||L<=0,re;t[2]!==L||t[3]!==b?(re=function(){A(!1),b(L)},t[2]=L,t[3]=b,t[4]=re):re=t[4];let ie=re,R;t[5]!==n||t[6]!==y?(R=()=>y(n),t[5]=n,t[6]=y,t[7]=R):R=t[7];let z;t[8]!==C||t[9]!==M||t[10]!==r?(z=C({id:`Z79bnE`,values:{burstNumber:M,docName:r}}),t[8]=C,t[9]=M,t[10]=r,t[11]=z):z=t[11];let ae=ee?`bg-muted`:`hover:bg-muted/40`,oe;t[12]===ae?oe=t[13]:(oe=[`flex min-w-0 flex-1 items-center gap-2 px-4 py-1.5 text-xs text-muted-foreground transition-colors`,ae],t[12]=ae,t[13]=oe);let se=oe.join(` `),B;t[14]!==n.ts||t[15]!==w?(B=I(n.ts,w),t[14]=n.ts,t[15]=w,t[16]=B):B=t[16];let V;t[17]===B?V=t[18]:(V=(0,F.jsx)(`span`,{className:`font-mono`,children:B}),t[17]=B,t[18]=V);let H;t[19]===n.additions?H=t[20]:(H=(0,F.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n.additions]}),t[19]=n.additions,t[20]=H);let U;t[21]===n.deletions?U=t[22]:(U=(0,F.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,n.deletions]}),t[21]=n.deletions,t[22]=U);let W;t[23]!==H||t[24]!==U?(W=(0,F.jsxs)(`span`,{className:`ml-auto font-mono`,children:[H,` `,U]}),t[23]=H,t[24]=U,t[25]=W):W=t[25];let G;t[26]!==ee||t[27]!==V||t[28]!==W||t[29]!==R||t[30]!==z||t[31]!==se?(G=(0,F.jsxs)(`button`,{type:`button`,onClick:R,"aria-pressed":ee,"aria-label":z,"data-testid":`activity-panel-burst-open`,className:se,children:[V,W]}),t[26]=ee,t[27]=V,t[28]=W,t[29]=R,t[30]=z,t[31]=se,t[32]=G):G=t[32];let ce;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,F.jsx)(`span`,{"aria-hidden":`true`,className:`mx-1.5 h-3 w-px shrink-0 bg-border`}),t[33]=ce):ce=t[33];let K;t[34]!==C||t[35]!==M||t[36]!==r?(K=C({id:`Zhe80e`,values:{burstNumber:M,docName:r}}),t[34]=C,t[35]=M,t[36]=r,t[37]=K):K=t[37];let le;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>A(!0),t[38]=le):le=t[38];let q;t[39]===v?q=t[40]:(q=v?(0,F.jsx)(x,{className:`size-3 animate-spin`,"aria-hidden":`true`}):(0,F.jsx)(S,{className:`size-3`,"aria-hidden":`true`}),t[39]=v,t[40]=q);let J;t[41]!==ne||t[42]!==K||t[43]!==q?(J=(0,F.jsx)(l,{asChild:!0,children:(0,F.jsx)(c,{type:`button`,variant:`ghost`,size:`icon`,className:`size-6 shrink-0 text-muted-foreground hover:text-destructive`,"data-testid":`activity-panel-burst-restore`,"aria-label":K,disabled:ne,onClick:le,children:q})}),t[41]=ne,t[42]=K,t[43]=q,t[44]=J):J=t[44];let Y;t[45]!==C||t[46]!==L||t[47]!==s?(Y=C(s?L>0?{id:`SOPwPh`}:{id:`62bOuM`}:{id:`NzFvyK`}),t[45]=C,t[46]=L,t[47]=s,t[48]=Y):Y=t[48];let X;t[49]===Y?X=t[50]:(X=(0,F.jsx)(u,{side:`left`,children:Y}),t[49]=Y,t[50]=X);let Z;t[51]!==J||t[52]!==X?(Z=(0,F.jsxs)(d,{children:[J,X]}),t[51]=J,t[52]=X,t[53]=Z):Z=t[53];let Q;t[54]!==G||t[55]!==Z?(Q=(0,F.jsxs)(`div`,{className:`flex items-center border-t border-border/50 pr-3`,children:[G,ce,Z]}),t[54]=G,t[55]=Z,t[56]=Q):Q=t[56];let $;t[57]===v?$=t[58]:($=e=>{!e&&!v?A(!1):e&&A(!0)},t[57]=v,t[58]=$);let ue;t[59]===C?ue=t[60]:(ue=C({id:`a4FRQv`}),t[59]=C,t[60]=ue);let de;t[61]===ue?de=t[62]:(de=(0,F.jsx)(p,{children:ue}),t[61]=ue,t[62]=de);let fe;t[63]===L?fe=t[64]:(fe=(0,F.jsx)(f,{children:(0,F.jsx)(a,{id:`LKIPzv`,values:{laterEdits:L}})}),t[63]=L,t[64]=fe);let pe;t[65]!==de||t[66]!==fe?(pe=(0,F.jsxs)(g,{children:[de,fe]}),t[65]=de,t[66]=fe,t[67]=pe):pe=t[67];let me;t[68]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,F.jsx)(c,{variant:`outline`,"data-testid":`activity-panel-burst-restore-cancel`,onClick:()=>A(!1),children:(0,F.jsx)(a,{id:`dEgA5A`})}),t[68]=me):me=t[68];let he;t[69]===v?he=t[70]:(he=v?(0,F.jsx)(x,{className:`mr-2 size-4 animate-spin`,"aria-hidden":`true`}):null,t[69]=v,t[70]=he);let ge;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,F.jsx)(a,{id:`9uI_rE`}),t[71]=ge):ge=t[71];let _e;t[72]!==ie||t[73]!==v||t[74]!==he?(_e=(0,F.jsxs)(h,{children:[me,(0,F.jsxs)(c,{variant:`destructive`,"data-testid":`activity-panel-burst-restore-confirm`,disabled:v,onClick:ie,children:[he,ge]})]}),t[72]=ie,t[73]=v,t[74]=he,t[75]=_e):_e=t[75];let ve;t[76]!==pe||t[77]!==_e?(ve=(0,F.jsxs)(m,{children:[pe,_e]}),t[76]=pe,t[77]=_e,t[78]=ve):ve=t[78];let ye;t[79]!==k||t[80]!==$||t[81]!==ve?(ye=(0,F.jsx)(_,{open:k,onOpenChange:$,children:ve}),t[79]=k,t[80]=$,t[81]=ve,t[82]=ye):ye=t[82];let be;return t[83]!==Q||t[84]!==ye?(be=(0,F.jsxs)(F.Fragment,{children:[Q,ye]}),t[83]=Q,t[84]=ye,t[85]=be):be=t[85],be}function te(){return Date.now()}function L(e,t){let n=Math.max(0,t-e);if(n<6e4){let e=Math.round(n/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(n<36e5){let e=Math.round(n/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}let r=Math.round(n/36e5);return T._({id:`nYeBmY`,values:{hours:r}})}function ne(e){let t=(0,N.c)(56),{file:n,sessionAlive:r,isWriting:i,onNavigate:s,onUndoDrop:c,onSetVersion:l}=e,{_:u}=o(),{docName:d}=n,[f,p]=(0,P.useState)(!1),[m,h]=(0,P.useState)(re),g,_;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{let e=setInterval(()=>h(Date.now()),3e4);return()=>clearInterval(e)},_=[],t[0]=g,t[1]=_):(g=t[0],_=t[1]),(0,P.useEffect)(g,_);let v=n.bursts.length,y;t[2]!==n.docName||t[3]!==c||t[4]!==r||t[5]!==f?(y=e=>{e<=0||!r||f||(p(!0),Promise.resolve(c(n.docName,e)).finally(()=>{p(!1),j()}))},t[2]=n.docName,t[3]=c,t[4]=r,t[5]=f,t[6]=y):y=t[6];let b=y;if(n.bursts.length===0)return null;let x;t[7]!==n.docName||t[8]!==s?(x=()=>s(n.docName),t[7]=n.docName,t[8]=s,t[9]=x):x=t[9];let S;t[10]!==u||t[11]!==d?(S=u({id:`QcpeeE`,values:{docName:d}}),t[10]=u,t[11]=d,t[12]=S):S=t[12];let C;t[13]!==n.docName||t[14]!==x||t[15]!==S?(C=(0,F.jsx)(`button`,{type:`button`,onClick:x,className:`min-w-0 flex-1 truncate text-left text-foreground hover:underline focus-visible:outline-ring`,"aria-label":S,"data-testid":`activity-panel-file-row-filename`,title:n.docName,children:n.docName}),t[13]=n.docName,t[14]=x,t[15]=S,t[16]=C):C=t[16];let w;t[17]===n.additionsTotal?w=t[18]:(w=(0,F.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n.additionsTotal]}),t[17]=n.additionsTotal,t[18]=w);let T;t[19]===n.deletionsTotal?T=t[20]:(T=(0,F.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,n.deletionsTotal]}),t[19]=n.deletionsTotal,t[20]=T);let E;t[21]!==w||t[22]!==T?(E=(0,F.jsxs)(`span`,{className:`shrink-0 font-mono text-xs`,children:[w,` `,T]}),t[21]=w,t[22]=T,t[23]=E):E=t[23];let D;t[24]!==n.lastTs||t[25]!==m?(D=L(n.lastTs,m),t[24]=n.lastTs,t[25]=m,t[26]=D):D=t[26];let O;t[27]===D?O=t[28]:(O=(0,F.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:D}),t[27]=D,t[28]=O);let k;t[29]===i?k=t[30]:(k=i?(0,F.jsx)(`span`,{className:`shrink-0 text-[11px] text-primary animate-pulse`,role:`status`,children:(0,F.jsx)(a,{id:`6q0rnH`})}):null,t[29]=i,t[30]=k);let A;t[31]!==O||t[32]!==k||t[33]!==C||t[34]!==E?(A=(0,F.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-sm`,children:[C,E,O,k]}),t[31]=O,t[32]=k,t[33]=C,t[34]=E,t[35]=A):A=t[35];let M;if(t[36]!==b||t[37]!==v||t[38]!==n.bursts||t[39]!==n.docName||t[40]!==l||t[41]!==r||t[42]!==f){let e;t[44]!==b||t[45]!==v||t[46]!==n.docName||t[47]!==l||t[48]!==r||t[49]!==f?(e=e=>(0,F.jsx)(ee,{burst:e,docName:n.docName,editCount:v,sessionAlive:r,inFlight:f,onOpenDiff:e=>l(e.stackIndex+1),onRestore:b},`${n.docName}:${e.stackIndex}`),t[44]=b,t[45]=v,t[46]=n.docName,t[47]=l,t[48]=r,t[49]=f,t[50]=e):e=t[50],M=n.bursts.map(e),t[36]=b,t[37]=v,t[38]=n.bursts,t[39]=n.docName,t[40]=l,t[41]=r,t[42]=f,t[43]=M}else M=t[43];let I;t[51]===M?I=t[52]:(I=(0,F.jsx)(`div`,{children:M}),t[51]=M,t[52]=I);let te;return t[53]!==A||t[54]!==I?(te=(0,F.jsxs)(`div`,{className:`border-b border-border`,"data-testid":`activity-panel-file-row`,children:[A,I]}),t[53]=A,t[54]=I,t[55]=te):te=t[55],te}function re(){return Date.now()}async function ie(e){let t=await fetch(`/api/agent-undo`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...e,agentId:e.connectionId})});if(!t.ok)throw Error(`agent-undo failed: HTTP ${t.status}`)}function R(e){return`#/${e.split(`/`).map(e=>encodeURIComponent(e)).join(`/`)}`}function z(e){typeof window>`u`||(window.location.hash=R(e))}function ae(){let e=(0,N.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,F.jsx)(x,{className:`mr-2 size-4 animate-spin`,"aria-hidden":`true`}),e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,F.jsxs)(`div`,{className:`flex h-full items-center justify-center p-6 text-muted-foreground`,role:`status`,"aria-busy":`true`,children:[t,(0,F.jsx)(`span`,{className:`text-sm`,children:(0,F.jsx)(a,{id:`ONPvOb`})})]}),e[1]=n):n=e[1],n}function oe(e){let t=(0,N.c)(10),{error:n,onRetry:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,F.jsx)(y,{className:`size-6 text-destructive`,"aria-hidden":`true`}),t[0]=i):i=t[0];let o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,F.jsx)(`p`,{className:`text-sm font-medium`,children:(0,F.jsx)(a,{id:`DhLHEb`})}),t[1]=o):o=t[1];let s;t[2]===n?s=t[3]:(s=(0,F.jsxs)(`div`,{className:`space-y-1`,children:[o,(0,F.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})]}),t[2]=n,t[3]=s);let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(a,{id:`6gRgw8`}),t[4]=l):l=t[4];let u;t[5]===r?u=t[6]:(u=(0,F.jsx)(c,{type:`button`,variant:`outline`,size:`sm`,onClick:r,children:l}),t[5]=r,t[6]=u);let d;return t[7]!==s||t[8]!==u?(d=(0,F.jsxs)(`div`,{className:`flex flex-col items-center gap-3 p-6 text-center`,role:`alert`,"data-testid":`activity-panel-error`,children:[i,s,u]}),t[7]=s,t[8]=u,t[9]=d):d=t[9],d}function se(){let e=(0,N.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,F.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-muted-foreground`,"data-testid":`activity-panel-empty`,children:(0,F.jsx)(`p`,{className:`text-sm italic`,children:(0,F.jsx)(a,{id:`iuTKci`})})}),e[0]=t):t=e[0],t}function B(e){let t=(0,N.c)(12),{onExit:n,showBackButton:r}=e,{_:i}=o(),s;t[0]===i?s=t[1]:(s=i({id:`kYL1lH`}),t[0]=i,t[1]=s);let c;t[2]!==n||t[3]!==r?(c=r?(0,F.jsx)(V,{onClick:n}):null,t[2]=n,t[3]=r,t[4]=c):c=t[4];let l;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:(0,F.jsx)(a,{id:`kYL1lH`})}),t[5]=l):l=t[5];let u;t[6]===c?u=t[7]:(u=(0,F.jsxs)(`div`,{className:`flex shrink-0 flex-row items-center gap-2 border-b border-border px-3 py-2`,children:[c,l]}),t[6]=c,t[7]=u);let d;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,F.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-6 text-muted-foreground`,children:(0,F.jsx)(`p`,{className:`text-center text-sm italic`,children:(0,F.jsx)(a,{id:`D_WKe_`})})}),t[8]=d):d=t[8];let f;return t[9]!==s||t[10]!==u?(f=(0,F.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col`,"data-testid":`activity-panel-no-agent`,"aria-label":s,children:[u,d]}),t[9]=s,t[10]=u,t[11]=f):f=t[11],f}function V(e){let t=(0,N.c)(9),{onClick:n}=e,{_:r}=o(),i;t[0]===r?i=t[1]:(i=r({id:`ogAuyr`}),t[0]=r,t[1]=i);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,F.jsx)(v,{}),t[2]=s):s=t[2];let f;t[3]!==n||t[4]!==i?(f=(0,F.jsx)(l,{asChild:!0,children:(0,F.jsx)(c,{type:`button`,variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:n,"aria-label":i,"data-testid":`docpanel-exit-agent-mode`,children:s})}),t[3]=n,t[4]=i,t[5]=f):f=t[5];let p;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,F.jsx)(u,{side:`bottom`,children:(0,F.jsx)(a,{id:`ogAuyr`})}),t[6]=p):p=t[6];let m;return t[7]===f?m=t[8]:(m=(0,F.jsxs)(d,{children:[f,p]}),t[7]=f,t[8]=m),m}function H(e){let t=(0,N.c)(9),{lastTs:n}=e,[r]=(0,P.useState)(U),i;t[0]!==n||t[1]!==r?(i=n?W(r-n):null,t[0]=n,t[1]=r,t[2]=i):i=t[2];let o=i,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,F.jsx)(`span`,{className:`font-medium`,children:(0,F.jsx)(a,{id:`LCUy_N`})}),t[3]=s):s=t[3];let c;t[4]===o?c=t[5]:(c=o?(0,F.jsxs)(`span`,{children:[` · `,o]}):null,t[4]=o,t[5]=c);let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(`div`,{className:`mt-1 opacity-80`,children:(0,F.jsx)(a,{id:`GK-IRZ`})}),t[6]=l):l=t[6];let u;return t[7]===c?u=t[8]:(u=(0,F.jsxs)(`div`,{className:`border-b border-border bg-muted/40 px-4 py-3 text-xs text-muted-foreground`,"data-testid":`activity-panel-session-ended`,children:[s,c,l]}),t[7]=c,t[8]=u),u}function U(){return Date.now()}function W(e){let t=Math.max(0,e);if(t<6e4){let e=Math.round(t/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(t<36e5){let e=Math.round(t/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}let n=Math.round(t/36e5);return T._({id:`nYeBmY`,values:{hours:n}})}function G(e){let t=(0,N.c)(10),{agent:n,size:r}=e,i=r===void 0?28:r,a;t[0]!==n.color||t[1]!==i?(a={backgroundColor:n.color,width:i,height:i},t[0]=n.color,t[1]=i,t[2]=a):a=t[2];let o=i*.57,s=i*.57,c;t[3]!==n.icon||t[4]!==o||t[5]!==s?(c=(0,F.jsx)(A,{icon:n.icon,width:o,height:s}),t[3]=n.icon,t[4]=o,t[5]=s,t[6]=c):c=t[6];let l;return t[7]!==a||t[8]!==c?(l=(0,F.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-center rounded-full text-white ring-2 ring-background`,style:a,"aria-hidden":`true`,children:c}),t[7]=a,t[8]=c,t[9]=l):l=t[9],l}function ce(e){let t=(0,N.c)(25),{data:n,status:r,error:i,reload:s,onExit:c,onNavigate:l,onUndoDrop:u,onSetVersion:d,showBackButton:f}=e,{_:p}=o(),m=n?.files?.[0]?.lastTs??null,h=n?.files?.length??0,g;t[0]===p?g=t[1]:(g=p({id:`kYL1lH`}),t[0]=p,t[1]=g);let _;t[2]!==c||t[3]!==f?(_=f?(0,F.jsx)(V,{onClick:c}):null,t[2]=c,t[3]=f,t[4]=_):_=t[4];let v;t[5]!==n||t[6]!==h||t[7]!==m?(v=n?.agent?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)(G,{agent:n.agent}),(0,F.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:n.agent.displayName}),(0,F.jsxs)(`p`,{className:`truncate text-xs text-muted-foreground`,children:[n.sessionAlive?(0,F.jsx)(a,{id:`F6pfE9`}):m===null?(0,F.jsx)(a,{id:`PMyJ9C`}):(0,F.jsx)(a,{id:`237hSL`}),n.files.length>0?(0,F.jsxs)(F.Fragment,{children:[` · `,(0,F.jsx)(a,{id:`u3BOHd`,values:{fileCount:h}})]}):null]})]})]}):(0,F.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:(0,F.jsx)(a,{id:`kYL1lH`})})}),t[5]=n,t[6]=h,t[7]=m,t[8]=v):v=t[8];let y;t[9]!==_||t[10]!==v?(y=(0,F.jsxs)(`div`,{className:`flex flex-row items-center gap-2 border-b border-border px-3 py-2 shrink-0`,children:[_,v]}),t[9]=_,t[10]=v,t[11]=y):y=t[11];let b;t[12]!==n||t[13]!==i||t[14]!==m||t[15]!==l||t[16]!==d||t[17]!==u||t[18]!==s||t[19]!==r?(b=(0,F.jsx)(`div`,{className:`flex-1 overflow-y-auto`,"data-testid":`activity-panel-body`,children:r===`loading`&&n===null?(0,F.jsx)(ae,{}):r===`error`&&i?(0,F.jsx)(oe,{error:i,onRetry:s}):n===null?(0,F.jsx)(se,{}):(0,F.jsxs)(F.Fragment,{children:[!n.sessionAlive&&m!==null?(0,F.jsx)(H,{lastTs:m}):null,n.files.length===0?(0,F.jsx)(se,{}):n.files.map(e=>(0,F.jsx)(ne,{file:e,sessionAlive:n.sessionAlive,isWriting:n.writingDocs.has(e.docName),onNavigate:l,onUndoDrop:u,onSetVersion:t=>d(e,t)},e.docName))]})}),t[12]=n,t[13]=i,t[14]=m,t[15]=l,t[16]=d,t[17]=u,t[18]=s,t[19]=r,t[20]=b):b=t[20];let x;return t[21]!==g||t[22]!==y||t[23]!==b?(x=(0,F.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col`,"data-testid":`activity-panel`,"aria-label":g,children:[y,b]}),t[21]=g,t[22]=y,t[23]=b,t[24]=x):x=t[24],x}function K(e){let t=(0,N.c)(30),i;t[0]===e?i=t[1]:(i=e===void 0?{}:e,t[0]=e,t[1]=i);let{showBackButton:a}=i,s=a===void 0?!0:a,{_:c}=o(),{docPanelAgentId:l,closeActivityPanel:u}=n(),{openTargetTransition:d}=r(),{pageMeta:f}=b(),{data:p,status:m,error:h,reload:g}=M(l),_,v;if(t[2]!==p||t[3]!==l?(_=()=>{if(!(!p||l===null))for(let e of p.files)O(l,e.docName,e.bursts.length)},v=[p,l],t[2]=p,t[3]=l,t[4]=_,t[5]=v):(_=t[4],v=t[5]),(0,P.useEffect)(_,v),l===null){let e;return t[6]!==u||t[7]!==s?(e=(0,F.jsx)(B,{onExit:u,showBackButton:s}),t[6]=u,t[7]=s,t[8]=e):e=t[8],e}let y;t[9]!==d||t[10]!==f?(y=e=>{d(E({kind:`doc`,target:e,docName:e},f)),z(e)},t[9]=d,t[10]=f,t[11]=y):y=t[11];let x=y,S;t[12]!==p||t[13]!==l?(S=(e,t)=>{if(!p?.agent||l===null)return;C();let n=e.bursts.length;k({agentId:l,agentName:p.agent.displayName,agentColor:p.agent.color,agentIcon:p.agent.icon,docName:e.docName,keptCount:Math.max(0,Math.min(t,n)),maxVersions:n})},t[12]=p,t[13]=l,t[14]=S):S=t[14];let T=S,D;t[15]!==c||t[16]!==p||t[17]!==l||t[18]!==g?(D=async(e,t)=>{if(!(t<=0))try{await ie({connectionId:l,docName:e,scope:`count`,count:t,agentName:p?.agent?.displayName}),w.success(c(t===1?{id:`-dNlfM`,values:{docName:e}}:{id:`ApeA0n`,values:{dropCount:t,docName:e}})),g()}catch(e){let t=e,n=t instanceof Error?t.message:String(t);w.error(c({id:`EqrC_R`,values:{message:n}})),g()}},t[15]=c,t[16]=p,t[17]=l,t[18]=g,t[19]=D):D=t[19];let A=D,j;return t[20]!==u||t[21]!==p||t[22]!==h||t[23]!==x||t[24]!==T||t[25]!==A||t[26]!==g||t[27]!==s||t[28]!==m?(j=(0,F.jsx)(ce,{data:p,status:m,error:h,reload:g,onExit:u,onNavigate:x,onUndoDrop:A,onSetVersion:T,showBackButton:s}),t[20]=u,t[21]=p,t[22]=h,t[23]=x,t[24]=T,t[25]=A,t[26]=g,t[27]=s,t[28]=m,t[29]=j):j=t[29],j}export{K as ActivityModeContent};
1
+ import{o as e}from"./chunk-zsgVPwQN.js";import{t}from"./jsx-runtime-Dda6ZcOg.js";import{n,r}from"./DocumentContext-DOrUYOMA.js";import{t as i}from"./react-BN2QHhcO.js";import{n as a,r as o}from"./dist-De9aiAJx.js";import{t as s}from"./compiler-runtime-YPpVnfQ-.js";import{t as c}from"./button-B5JstM7q.js";import{i as l,n as u,t as d}from"./tooltip-BI4ZrlGO.js";import{a as f,c as p,i as m,o as h,s as g,t as _}from"./dialog-BvA78Pbg.js";import{dt as v}from"./CodeMirrorPropInput-DtBXfCv4.js";import{n as y}from"./CopyButton-tIb30IiS.js";import{i as b}from"./prop-types-deRNMwVG.js";import{t as x}from"./loader-circle-DquHdXOY.js";import{i as S,t as C}from"./timeline-diff-store-C_Gy5mJi.js";import{n as w}from"./dist-t90i8nhW.js";import{t as T}from"./dist-BsjuWfqE.js";import{s as E}from"./navigation-targets-BkPd72gM.js";import{a as D,i as O,n as k,o as A,t as j}from"./agent-diff-store-CCCbFYpb.js";import{n as M}from"./use-activity-panel-moy0VULL.js";var N=s(),P=e(i(),1),F=t();function I(e,t){let n=Math.max(0,t-e);if(n<6e4){let e=Math.round(n/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(n<36e5){let e=Math.round(n/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}return new Date(e).toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function ee(e){let t=(0,N.c)(86),{burst:n,docName:r,editCount:i,sessionAlive:s,inFlight:v,onOpenDiff:y,onRestore:b}=e,{_:C}=o(),[w,T]=(0,P.useState)(te),E,O;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{let e=setInterval(()=>T(Date.now()),3e4);return()=>clearInterval(e)},O=[],t[0]=E,t[1]=O):(E=t[0],O=t[1]),(0,P.useEffect)(E,O);let[k,A]=(0,P.useState)(!1),j=D(),M=n.stackIndex+1,ee=j?.docName===r&&j.keptCount===M,L=i-M,ne=!s||v||L<=0,re;t[2]!==L||t[3]!==b?(re=function(){A(!1),b(L)},t[2]=L,t[3]=b,t[4]=re):re=t[4];let ie=re,R;t[5]!==n||t[6]!==y?(R=()=>y(n),t[5]=n,t[6]=y,t[7]=R):R=t[7];let z;t[8]!==C||t[9]!==M||t[10]!==r?(z=C({id:`Z79bnE`,values:{burstNumber:M,docName:r}}),t[8]=C,t[9]=M,t[10]=r,t[11]=z):z=t[11];let ae=ee?`bg-muted`:`hover:bg-muted/40`,oe;t[12]===ae?oe=t[13]:(oe=[`flex min-w-0 flex-1 items-center gap-2 px-4 py-1.5 text-xs text-muted-foreground transition-colors`,ae],t[12]=ae,t[13]=oe);let se=oe.join(` `),B;t[14]!==n.ts||t[15]!==w?(B=I(n.ts,w),t[14]=n.ts,t[15]=w,t[16]=B):B=t[16];let V;t[17]===B?V=t[18]:(V=(0,F.jsx)(`span`,{className:`font-mono`,children:B}),t[17]=B,t[18]=V);let H;t[19]===n.additions?H=t[20]:(H=(0,F.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n.additions]}),t[19]=n.additions,t[20]=H);let U;t[21]===n.deletions?U=t[22]:(U=(0,F.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,n.deletions]}),t[21]=n.deletions,t[22]=U);let W;t[23]!==H||t[24]!==U?(W=(0,F.jsxs)(`span`,{className:`ml-auto font-mono`,children:[H,` `,U]}),t[23]=H,t[24]=U,t[25]=W):W=t[25];let G;t[26]!==ee||t[27]!==V||t[28]!==W||t[29]!==R||t[30]!==z||t[31]!==se?(G=(0,F.jsxs)(`button`,{type:`button`,onClick:R,"aria-pressed":ee,"aria-label":z,"data-testid":`activity-panel-burst-open`,className:se,children:[V,W]}),t[26]=ee,t[27]=V,t[28]=W,t[29]=R,t[30]=z,t[31]=se,t[32]=G):G=t[32];let ce;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,F.jsx)(`span`,{"aria-hidden":`true`,className:`mx-1.5 h-3 w-px shrink-0 bg-border`}),t[33]=ce):ce=t[33];let K;t[34]!==C||t[35]!==M||t[36]!==r?(K=C({id:`Zhe80e`,values:{burstNumber:M,docName:r}}),t[34]=C,t[35]=M,t[36]=r,t[37]=K):K=t[37];let le;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>A(!0),t[38]=le):le=t[38];let q;t[39]===v?q=t[40]:(q=v?(0,F.jsx)(x,{className:`size-3 animate-spin`,"aria-hidden":`true`}):(0,F.jsx)(S,{className:`size-3`,"aria-hidden":`true`}),t[39]=v,t[40]=q);let J;t[41]!==ne||t[42]!==K||t[43]!==q?(J=(0,F.jsx)(l,{asChild:!0,children:(0,F.jsx)(c,{type:`button`,variant:`ghost`,size:`icon`,className:`size-6 shrink-0 text-muted-foreground hover:text-destructive`,"data-testid":`activity-panel-burst-restore`,"aria-label":K,disabled:ne,onClick:le,children:q})}),t[41]=ne,t[42]=K,t[43]=q,t[44]=J):J=t[44];let Y;t[45]!==C||t[46]!==L||t[47]!==s?(Y=C(s?L>0?{id:`SOPwPh`}:{id:`62bOuM`}:{id:`NzFvyK`}),t[45]=C,t[46]=L,t[47]=s,t[48]=Y):Y=t[48];let X;t[49]===Y?X=t[50]:(X=(0,F.jsx)(u,{side:`left`,children:Y}),t[49]=Y,t[50]=X);let Z;t[51]!==J||t[52]!==X?(Z=(0,F.jsxs)(d,{children:[J,X]}),t[51]=J,t[52]=X,t[53]=Z):Z=t[53];let Q;t[54]!==G||t[55]!==Z?(Q=(0,F.jsxs)(`div`,{className:`flex items-center border-t border-border/50 pr-3`,children:[G,ce,Z]}),t[54]=G,t[55]=Z,t[56]=Q):Q=t[56];let $;t[57]===v?$=t[58]:($=e=>{!e&&!v?A(!1):e&&A(!0)},t[57]=v,t[58]=$);let ue;t[59]===C?ue=t[60]:(ue=C({id:`a4FRQv`}),t[59]=C,t[60]=ue);let de;t[61]===ue?de=t[62]:(de=(0,F.jsx)(p,{children:ue}),t[61]=ue,t[62]=de);let fe;t[63]===L?fe=t[64]:(fe=(0,F.jsx)(f,{children:(0,F.jsx)(a,{id:`LKIPzv`,values:{laterEdits:L}})}),t[63]=L,t[64]=fe);let pe;t[65]!==de||t[66]!==fe?(pe=(0,F.jsxs)(g,{children:[de,fe]}),t[65]=de,t[66]=fe,t[67]=pe):pe=t[67];let me;t[68]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,F.jsx)(c,{variant:`outline`,"data-testid":`activity-panel-burst-restore-cancel`,onClick:()=>A(!1),children:(0,F.jsx)(a,{id:`dEgA5A`})}),t[68]=me):me=t[68];let he;t[69]===v?he=t[70]:(he=v?(0,F.jsx)(x,{className:`mr-2 size-4 animate-spin`,"aria-hidden":`true`}):null,t[69]=v,t[70]=he);let ge;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,F.jsx)(a,{id:`9uI_rE`}),t[71]=ge):ge=t[71];let _e;t[72]!==ie||t[73]!==v||t[74]!==he?(_e=(0,F.jsxs)(h,{children:[me,(0,F.jsxs)(c,{variant:`destructive`,"data-testid":`activity-panel-burst-restore-confirm`,disabled:v,onClick:ie,children:[he,ge]})]}),t[72]=ie,t[73]=v,t[74]=he,t[75]=_e):_e=t[75];let ve;t[76]!==pe||t[77]!==_e?(ve=(0,F.jsxs)(m,{children:[pe,_e]}),t[76]=pe,t[77]=_e,t[78]=ve):ve=t[78];let ye;t[79]!==k||t[80]!==$||t[81]!==ve?(ye=(0,F.jsx)(_,{open:k,onOpenChange:$,children:ve}),t[79]=k,t[80]=$,t[81]=ve,t[82]=ye):ye=t[82];let be;return t[83]!==Q||t[84]!==ye?(be=(0,F.jsxs)(F.Fragment,{children:[Q,ye]}),t[83]=Q,t[84]=ye,t[85]=be):be=t[85],be}function te(){return Date.now()}function L(e,t){let n=Math.max(0,t-e);if(n<6e4){let e=Math.round(n/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(n<36e5){let e=Math.round(n/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}let r=Math.round(n/36e5);return T._({id:`nYeBmY`,values:{hours:r}})}function ne(e){let t=(0,N.c)(56),{file:n,sessionAlive:r,isWriting:i,onNavigate:s,onUndoDrop:c,onSetVersion:l}=e,{_:u}=o(),{docName:d}=n,[f,p]=(0,P.useState)(!1),[m,h]=(0,P.useState)(re),g,_;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{let e=setInterval(()=>h(Date.now()),3e4);return()=>clearInterval(e)},_=[],t[0]=g,t[1]=_):(g=t[0],_=t[1]),(0,P.useEffect)(g,_);let v=n.bursts.length,y;t[2]!==n.docName||t[3]!==c||t[4]!==r||t[5]!==f?(y=e=>{e<=0||!r||f||(p(!0),Promise.resolve(c(n.docName,e)).finally(()=>{p(!1),j()}))},t[2]=n.docName,t[3]=c,t[4]=r,t[5]=f,t[6]=y):y=t[6];let b=y;if(n.bursts.length===0)return null;let x;t[7]!==n.docName||t[8]!==s?(x=()=>s(n.docName),t[7]=n.docName,t[8]=s,t[9]=x):x=t[9];let S;t[10]!==u||t[11]!==d?(S=u({id:`QcpeeE`,values:{docName:d}}),t[10]=u,t[11]=d,t[12]=S):S=t[12];let C;t[13]!==n.docName||t[14]!==x||t[15]!==S?(C=(0,F.jsx)(`button`,{type:`button`,onClick:x,className:`min-w-0 flex-1 truncate text-left text-foreground hover:underline focus-visible:outline-ring`,"aria-label":S,"data-testid":`activity-panel-file-row-filename`,title:n.docName,children:n.docName}),t[13]=n.docName,t[14]=x,t[15]=S,t[16]=C):C=t[16];let w;t[17]===n.additionsTotal?w=t[18]:(w=(0,F.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n.additionsTotal]}),t[17]=n.additionsTotal,t[18]=w);let T;t[19]===n.deletionsTotal?T=t[20]:(T=(0,F.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,n.deletionsTotal]}),t[19]=n.deletionsTotal,t[20]=T);let E;t[21]!==w||t[22]!==T?(E=(0,F.jsxs)(`span`,{className:`shrink-0 font-mono text-xs`,children:[w,` `,T]}),t[21]=w,t[22]=T,t[23]=E):E=t[23];let D;t[24]!==n.lastTs||t[25]!==m?(D=L(n.lastTs,m),t[24]=n.lastTs,t[25]=m,t[26]=D):D=t[26];let O;t[27]===D?O=t[28]:(O=(0,F.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:D}),t[27]=D,t[28]=O);let k;t[29]===i?k=t[30]:(k=i?(0,F.jsx)(`span`,{className:`shrink-0 text-[11px] text-primary animate-pulse`,role:`status`,children:(0,F.jsx)(a,{id:`6q0rnH`})}):null,t[29]=i,t[30]=k);let A;t[31]!==O||t[32]!==k||t[33]!==C||t[34]!==E?(A=(0,F.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-sm`,children:[C,E,O,k]}),t[31]=O,t[32]=k,t[33]=C,t[34]=E,t[35]=A):A=t[35];let M;if(t[36]!==b||t[37]!==v||t[38]!==n.bursts||t[39]!==n.docName||t[40]!==l||t[41]!==r||t[42]!==f){let e;t[44]!==b||t[45]!==v||t[46]!==n.docName||t[47]!==l||t[48]!==r||t[49]!==f?(e=e=>(0,F.jsx)(ee,{burst:e,docName:n.docName,editCount:v,sessionAlive:r,inFlight:f,onOpenDiff:e=>l(e.stackIndex+1),onRestore:b},`${n.docName}:${e.stackIndex}`),t[44]=b,t[45]=v,t[46]=n.docName,t[47]=l,t[48]=r,t[49]=f,t[50]=e):e=t[50],M=n.bursts.map(e),t[36]=b,t[37]=v,t[38]=n.bursts,t[39]=n.docName,t[40]=l,t[41]=r,t[42]=f,t[43]=M}else M=t[43];let I;t[51]===M?I=t[52]:(I=(0,F.jsx)(`div`,{children:M}),t[51]=M,t[52]=I);let te;return t[53]!==A||t[54]!==I?(te=(0,F.jsxs)(`div`,{className:`border-b border-border`,"data-testid":`activity-panel-file-row`,children:[A,I]}),t[53]=A,t[54]=I,t[55]=te):te=t[55],te}function re(){return Date.now()}async function ie(e){let t=await fetch(`/api/agent-undo`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...e,agentId:e.connectionId})});if(!t.ok)throw Error(`agent-undo failed: HTTP ${t.status}`)}function R(e){return`#/${e.split(`/`).map(e=>encodeURIComponent(e)).join(`/`)}`}function z(e){typeof window>`u`||(window.location.hash=R(e))}function ae(){let e=(0,N.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,F.jsx)(x,{className:`mr-2 size-4 animate-spin`,"aria-hidden":`true`}),e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,F.jsxs)(`div`,{className:`flex h-full items-center justify-center p-6 text-muted-foreground`,role:`status`,"aria-busy":`true`,children:[t,(0,F.jsx)(`span`,{className:`text-sm`,children:(0,F.jsx)(a,{id:`ONPvOb`})})]}),e[1]=n):n=e[1],n}function oe(e){let t=(0,N.c)(10),{error:n,onRetry:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,F.jsx)(y,{className:`size-6 text-destructive`,"aria-hidden":`true`}),t[0]=i):i=t[0];let o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,F.jsx)(`p`,{className:`text-sm font-medium`,children:(0,F.jsx)(a,{id:`DhLHEb`})}),t[1]=o):o=t[1];let s;t[2]===n?s=t[3]:(s=(0,F.jsxs)(`div`,{className:`space-y-1`,children:[o,(0,F.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})]}),t[2]=n,t[3]=s);let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(a,{id:`6gRgw8`}),t[4]=l):l=t[4];let u;t[5]===r?u=t[6]:(u=(0,F.jsx)(c,{type:`button`,variant:`outline`,size:`sm`,onClick:r,children:l}),t[5]=r,t[6]=u);let d;return t[7]!==s||t[8]!==u?(d=(0,F.jsxs)(`div`,{className:`flex flex-col items-center gap-3 p-6 text-center`,role:`alert`,"data-testid":`activity-panel-error`,children:[i,s,u]}),t[7]=s,t[8]=u,t[9]=d):d=t[9],d}function se(){let e=(0,N.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,F.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-muted-foreground`,"data-testid":`activity-panel-empty`,children:(0,F.jsx)(`p`,{className:`text-sm italic`,children:(0,F.jsx)(a,{id:`iuTKci`})})}),e[0]=t):t=e[0],t}function B(e){let t=(0,N.c)(12),{onExit:n,showBackButton:r}=e,{_:i}=o(),s;t[0]===i?s=t[1]:(s=i({id:`kYL1lH`}),t[0]=i,t[1]=s);let c;t[2]!==n||t[3]!==r?(c=r?(0,F.jsx)(V,{onClick:n}):null,t[2]=n,t[3]=r,t[4]=c):c=t[4];let l;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:(0,F.jsx)(a,{id:`kYL1lH`})}),t[5]=l):l=t[5];let u;t[6]===c?u=t[7]:(u=(0,F.jsxs)(`div`,{className:`flex shrink-0 flex-row items-center gap-2 border-b border-border px-3 py-2`,children:[c,l]}),t[6]=c,t[7]=u);let d;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,F.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-6 text-muted-foreground`,children:(0,F.jsx)(`p`,{className:`text-center text-sm italic`,children:(0,F.jsx)(a,{id:`D_WKe_`})})}),t[8]=d):d=t[8];let f;return t[9]!==s||t[10]!==u?(f=(0,F.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col`,"data-testid":`activity-panel-no-agent`,"aria-label":s,children:[u,d]}),t[9]=s,t[10]=u,t[11]=f):f=t[11],f}function V(e){let t=(0,N.c)(9),{onClick:n}=e,{_:r}=o(),i;t[0]===r?i=t[1]:(i=r({id:`ogAuyr`}),t[0]=r,t[1]=i);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,F.jsx)(v,{}),t[2]=s):s=t[2];let f;t[3]!==n||t[4]!==i?(f=(0,F.jsx)(l,{asChild:!0,children:(0,F.jsx)(c,{type:`button`,variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:n,"aria-label":i,"data-testid":`docpanel-exit-agent-mode`,children:s})}),t[3]=n,t[4]=i,t[5]=f):f=t[5];let p;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,F.jsx)(u,{side:`bottom`,children:(0,F.jsx)(a,{id:`ogAuyr`})}),t[6]=p):p=t[6];let m;return t[7]===f?m=t[8]:(m=(0,F.jsxs)(d,{children:[f,p]}),t[7]=f,t[8]=m),m}function H(e){let t=(0,N.c)(9),{lastTs:n}=e,[r]=(0,P.useState)(U),i;t[0]!==n||t[1]!==r?(i=n?W(r-n):null,t[0]=n,t[1]=r,t[2]=i):i=t[2];let o=i,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,F.jsx)(`span`,{className:`font-medium`,children:(0,F.jsx)(a,{id:`LCUy_N`})}),t[3]=s):s=t[3];let c;t[4]===o?c=t[5]:(c=o?(0,F.jsxs)(`span`,{children:[` · `,o]}):null,t[4]=o,t[5]=c);let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,F.jsx)(`div`,{className:`mt-1 opacity-80`,children:(0,F.jsx)(a,{id:`GK-IRZ`})}),t[6]=l):l=t[6];let u;return t[7]===c?u=t[8]:(u=(0,F.jsxs)(`div`,{className:`border-b border-border bg-muted/40 px-4 py-3 text-xs text-muted-foreground`,"data-testid":`activity-panel-session-ended`,children:[s,c,l]}),t[7]=c,t[8]=u),u}function U(){return Date.now()}function W(e){let t=Math.max(0,e);if(t<6e4){let e=Math.round(t/1e3);return T._({id:`pbwTg6`,values:{seconds:e}})}if(t<36e5){let e=Math.round(t/6e4);return T._({id:`_rP3HI`,values:{minutes:e}})}let n=Math.round(t/36e5);return T._({id:`nYeBmY`,values:{hours:n}})}function G(e){let t=(0,N.c)(10),{agent:n,size:r}=e,i=r===void 0?28:r,a;t[0]!==n.color||t[1]!==i?(a={backgroundColor:n.color,width:i,height:i},t[0]=n.color,t[1]=i,t[2]=a):a=t[2];let o=i*.57,s=i*.57,c;t[3]!==n.icon||t[4]!==o||t[5]!==s?(c=(0,F.jsx)(A,{icon:n.icon,width:o,height:s}),t[3]=n.icon,t[4]=o,t[5]=s,t[6]=c):c=t[6];let l;return t[7]!==a||t[8]!==c?(l=(0,F.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-center rounded-full text-white ring-2 ring-background`,style:a,"aria-hidden":`true`,children:c}),t[7]=a,t[8]=c,t[9]=l):l=t[9],l}function ce(e){let t=(0,N.c)(25),{data:n,status:r,error:i,reload:s,onExit:c,onNavigate:l,onUndoDrop:u,onSetVersion:d,showBackButton:f}=e,{_:p}=o(),m=n?.files?.[0]?.lastTs??null,h=n?.files?.length??0,g;t[0]===p?g=t[1]:(g=p({id:`kYL1lH`}),t[0]=p,t[1]=g);let _;t[2]!==c||t[3]!==f?(_=f?(0,F.jsx)(V,{onClick:c}):null,t[2]=c,t[3]=f,t[4]=_):_=t[4];let v;t[5]!==n||t[6]!==h||t[7]!==m?(v=n?.agent?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)(G,{agent:n.agent}),(0,F.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:n.agent.displayName}),(0,F.jsxs)(`p`,{className:`truncate text-xs text-muted-foreground`,children:[n.sessionAlive?(0,F.jsx)(a,{id:`F6pfE9`}):m===null?(0,F.jsx)(a,{id:`PMyJ9C`}):(0,F.jsx)(a,{id:`237hSL`}),n.files.length>0?(0,F.jsxs)(F.Fragment,{children:[` · `,(0,F.jsx)(a,{id:`u3BOHd`,values:{fileCount:h}})]}):null]})]})]}):(0,F.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,F.jsx)(`h2`,{className:`truncate text-sm font-medium`,children:(0,F.jsx)(a,{id:`kYL1lH`})})}),t[5]=n,t[6]=h,t[7]=m,t[8]=v):v=t[8];let y;t[9]!==_||t[10]!==v?(y=(0,F.jsxs)(`div`,{className:`flex flex-row items-center gap-2 border-b border-border px-3 py-2 shrink-0`,children:[_,v]}),t[9]=_,t[10]=v,t[11]=y):y=t[11];let b;t[12]!==n||t[13]!==i||t[14]!==m||t[15]!==l||t[16]!==d||t[17]!==u||t[18]!==s||t[19]!==r?(b=(0,F.jsx)(`div`,{className:`flex-1 overflow-y-auto`,"data-testid":`activity-panel-body`,children:r===`loading`&&n===null?(0,F.jsx)(ae,{}):r===`error`&&i?(0,F.jsx)(oe,{error:i,onRetry:s}):n===null?(0,F.jsx)(se,{}):(0,F.jsxs)(F.Fragment,{children:[!n.sessionAlive&&m!==null?(0,F.jsx)(H,{lastTs:m}):null,n.files.length===0?(0,F.jsx)(se,{}):n.files.map(e=>(0,F.jsx)(ne,{file:e,sessionAlive:n.sessionAlive,isWriting:n.writingDocs.has(e.docName),onNavigate:l,onUndoDrop:u,onSetVersion:t=>d(e,t)},e.docName))]})}),t[12]=n,t[13]=i,t[14]=m,t[15]=l,t[16]=d,t[17]=u,t[18]=s,t[19]=r,t[20]=b):b=t[20];let x;return t[21]!==g||t[22]!==y||t[23]!==b?(x=(0,F.jsxs)(`section`,{className:`flex h-full min-h-0 flex-col`,"data-testid":`activity-panel`,"aria-label":g,children:[y,b]}),t[21]=g,t[22]=y,t[23]=b,t[24]=x):x=t[24],x}function K(e){let t=(0,N.c)(30),i;t[0]===e?i=t[1]:(i=e===void 0?{}:e,t[0]=e,t[1]=i);let{showBackButton:a}=i,s=a===void 0?!0:a,{_:c}=o(),{docPanelAgentId:l,closeActivityPanel:u}=n(),{openTargetTransition:d}=r(),{pageMeta:f}=b(),{data:p,status:m,error:h,reload:g}=M(l),_,v;if(t[2]!==p||t[3]!==l?(_=()=>{if(!(!p||l===null))for(let e of p.files)O(l,e.docName,e.bursts.length)},v=[p,l],t[2]=p,t[3]=l,t[4]=_,t[5]=v):(_=t[4],v=t[5]),(0,P.useEffect)(_,v),l===null){let e;return t[6]!==u||t[7]!==s?(e=(0,F.jsx)(B,{onExit:u,showBackButton:s}),t[6]=u,t[7]=s,t[8]=e):e=t[8],e}let y;t[9]!==d||t[10]!==f?(y=e=>{d(E({kind:`doc`,target:e,docName:e},f)),z(e)},t[9]=d,t[10]=f,t[11]=y):y=t[11];let x=y,S;t[12]!==p||t[13]!==l?(S=(e,t)=>{if(!p?.agent||l===null)return;C();let n=e.bursts.length;k({agentId:l,agentName:p.agent.displayName,agentColor:p.agent.color,agentIcon:p.agent.icon,docName:e.docName,keptCount:Math.max(0,Math.min(t,n)),maxVersions:n})},t[12]=p,t[13]=l,t[14]=S):S=t[14];let T=S,D;t[15]!==c||t[16]!==p||t[17]!==l||t[18]!==g?(D=async(e,t)=>{if(!(t<=0))try{await ie({connectionId:l,docName:e,scope:`count`,count:t,agentName:p?.agent?.displayName}),w.success(c(t===1?{id:`-dNlfM`,values:{docName:e}}:{id:`ApeA0n`,values:{dropCount:t,docName:e}})),g()}catch(e){let t=e,n=t instanceof Error?t.message:String(t);w.error(c({id:`EqrC_R`,values:{message:n}})),g()}},t[15]=c,t[16]=p,t[17]=l,t[18]=g,t[19]=D):D=t[19];let A=D,j;return t[20]!==u||t[21]!==p||t[22]!==h||t[23]!==x||t[24]!==T||t[25]!==A||t[26]!==g||t[27]!==s||t[28]!==m?(j=(0,F.jsx)(ce,{data:p,status:m,error:h,reload:g,onExit:u,onNavigate:x,onUndoDrop:A,onSetVersion:T,showBackButton:s}),t[20]=u,t[21]=p,t[22]=h,t[23]=x,t[24]=T,t[25]=A,t[26]=g,t[27]=s,t[28]=m,t[29]=j):j=t[29],j}export{K as ActivityModeContent};
@@ -1,4 +1,4 @@
1
- import{i as e}from"./chunk-DseTPa7n.js";import{t}from"./jsx-runtime-DyiINK0N.js";import{t as n}from"./react-JNybMug3.js";import{n as r}from"./dist-DBENJeML.js";import{t as i}from"./compiler-runtime-dQcBxOhn.js";var a=i(),o=t(),s=e(n());function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?c(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t,n){return(t=function(e){var t=function(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}(e,`string`);return typeof t==`symbol`?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e,t){if(e==null)return{};var n,r,i=function(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function f(e,t){return m(e)||function(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}(e,t)||g(e,t)||v()}function p(e){return function(e){if(Array.isArray(e))return _(e)}(e)||h(e)||g(e)||function(){throw TypeError(`Invalid attempt to spread non-iterable instance.
1
+ import{o as e}from"./chunk-zsgVPwQN.js";import{t}from"./jsx-runtime-Dda6ZcOg.js";import{t as n}from"./react-BN2QHhcO.js";import{n as r}from"./dist-De9aiAJx.js";import{t as i}from"./compiler-runtime-YPpVnfQ-.js";var a=i(),o=t(),s=e(n());function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?c(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t,n){return(t=function(e){var t=function(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}(e,`string`);return typeof t==`symbol`?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e,t){if(e==null)return{};var n,r,i=function(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function f(e,t){return m(e)||function(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}(e,t)||g(e,t)||v()}function p(e){return function(e){if(Array.isArray(e))return _(e)}(e)||h(e)||g(e)||function(){throw TypeError(`Invalid attempt to spread non-iterable instance.
2
2
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function m(e){if(Array.isArray(e))return e}function h(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function g(e,t){if(e){if(typeof e==`string`)return _(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(e,t):void 0}}function _(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function v(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
3
3
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function y(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=g(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
4
4
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(s)throw a}}}}var b=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function x(e,t){return e(t={exports:{}},t.exports),t.exports}var S=x((function(e){(function(){var t={}.hasOwnProperty;function n(){for(var e=[],r=0;r<arguments.length;r++){var i=arguments[r];if(i){var a=typeof i;if(a===`string`||a===`number`)e.push(i);else if(Array.isArray(i)){if(i.length){var o=n.apply(null,i);o&&e.push(o)}}else if(a===`object`){if(i.toString!==Object.prototype.toString&&!i.toString.toString().includes(`[native code]`)){e.push(i.toString());continue}for(var s in i)t.call(i,s)&&i[s]&&e.push(s)}}}return e.join(` `)}e.exports?(n.default=n,e.exports=n):window.classNames=n})()})),C={hunkClassName:``,lineClassName:``,gutterClassName:``,codeClassName:``,monotonous:!1,gutterType:`default`,viewType:`split`,widgets:{},hideGutter:!1,selectedChanges:[],generateAnchorID:function(){},generateLineClassName:function(){},renderGutter:function(e){var t=e.renderDefault;return(0,e.wrapInAnchor)(t())},codeEvents:{},gutterEvents:{}},w=(0,s.createContext)(C),T=w.Provider,E=function(){return(0,s.useContext)(w)},D=x((function(e,t){(function(t){function n(e){var t=e.slice(11),n=null,r=null;switch(t.indexOf(`"`)){case-1:n=(o=t.split(` `))[0].slice(2),r=o[1].slice(2);break;case 0:var i=t.indexOf(`"`,2);n=t.slice(3,i);var a=t.indexOf(`"`,i+1);r=a<0?t.slice(i+4):t.slice(a+3,-1);break;default:var o;n=(o=t.split(` `))[0].slice(2),r=o[1].slice(3,-1)}return{oldPath:n,newPath:r}}e.exports={parse:function(e){for(var t,r,i,a,o,s=[],c=2,l=e.split(`
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ActivityPanelDiffView-Ca-9q7Zb.js","./chunk-DseTPa7n.js","./dist-DBENJeML.js","./jsx-runtime-DyiINK0N.js","./react-JNybMug3.js","./compiler-runtime-dQcBxOhn.js","./ActivityPanelDiffView-legcy4jI.css"])))=>i.map(i=>d[i]);
2
- import{i as e}from"./chunk-DseTPa7n.js";import{t}from"./preload-helper-2ej06EnG.js";import{t as n}from"./jsx-runtime-DyiINK0N.js";import{t as r}from"./react-JNybMug3.js";import{n as i,r as a}from"./dist-DBENJeML.js";import{t as o}from"./compiler-runtime-dQcBxOhn.js";import{t as ee}from"./button-DHE6Sx02.js";import{i as te,n as ne,t as re}from"./tooltip-BCGL5jDF.js";import{n as s,t as c}from"./toggle-group-CxrQL99E.js";import{t as l}from"./loader-circle-K7Xwpjny.js";import{n as u,t as d}from"./panel-right-open-CBweAP43.js";import{t as ie}from"./x-6ATUQvcC.js";import{o as ae,r as oe,t as se}from"./agent-diff-store-_LaXNJgH.js";import{t as f}from"./lru-string-cache-D19dwCKJ.js";import{t as ce}from"./use-activity-panel-DEqogtJb.js";import{a as le,o as ue,r as de,t as fe}from"./use-timeline-entry-diff-CaKIZSP2.js";var pe=o(),p=e(r(),1),m=n(),me=(0,p.lazy)(async()=>({default:(await t(()=>import(`./ActivityPanelDiffView-Ca-9q7Zb.js`),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)).ActivityPanelDiffView})),h=64;function g(e){let t=(0,pe.c)(115),{view:n,isPanelCollapsed:r,onTogglePanel:o}=e,{_:f}=a(),{agentId:h,agentName:g,agentColor:_,agentIcon:v,docName:y,keptCount:b}=n,[x]=(0,p.useState)(ge),_e=(0,p.useRef)(null),[S,ve]=(0,p.useState)(`rendered`),ye;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(ye={status:`loading`,diff:``,before:``,after:``},t[0]=ye):ye=t[0];let[C,be]=(0,p.useState)(ye),xe,Se;t[1]!==h||t[2]!==x||t[3]!==y||t[4]!==b?(xe=()=>{let e=!1;be({status:`loading`,diff:``,before:``,after:``});let t=`${y}\0${b}`,n=x.get(t);if(n!==void 0){be({status:`ready`,...JSON.parse(n)});return}return ce(h,y,b).then(n=>{e||(x.set(t,JSON.stringify(n)),be({status:`ready`,...n}))}).catch(t=>{e||(console.error(`[agent-diff] failed to load burst diff`,{agentId:h,docName:y,keptCount:b,err:t}),be({status:`error`,diff:``,before:``,after:``}))}),()=>{e=!0}},Se=[h,y,b,x],t[1]=h,t[2]=x,t[3]=y,t[4]=b,t[5]=xe,t[6]=Se):(xe=t[5],Se=t[6]),(0,p.useEffect)(xe,Se);let Ce;t[7]!==C.after||t[8]!==C.before||t[9]!==C.status?(Ce=C.status===`ready`?ue(C.before,C.after):null,t[7]=C.after,t[8]=C.before,t[9]=C.status,t[10]=Ce):Ce=t[10];let w=Ce,T=C.status===`ready`&&C.diff!==``?`${S}:${C.diff}`:``,E,D;t[11]===T?(E=t[12],D=t[13]):(E=()=>{let e=_e.current;if(T===``||!e)return;let t=!1,n=null,r,i,a=()=>{if(t)return;let r=e.querySelector(`.ok-diff-ins, .ok-diff-ins-block, [data-diff-deleted]`)??de(e)[0];if(!r)return;t=!0,n?.disconnect();let i=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;r.scrollIntoView({block:`center`,behavior:i?`auto`:`smooth`})},o=()=>{t||(r!==void 0&&clearTimeout(r),r=setTimeout(()=>{i!==void 0&&cancelAnimationFrame(i),i=requestAnimationFrame(()=>{i=requestAnimationFrame(a)})},120))};n=new MutationObserver(o),n.observe(e,{childList:!0,subtree:!0}),o();let ee=setTimeout(()=>n?.disconnect(),5e3);return()=>{n?.disconnect(),r!==void 0&&clearTimeout(r),i!==void 0&&cancelAnimationFrame(i),clearTimeout(ee)}},D=[T],t[11]=T,t[12]=E,t[13]=D),(0,p.useEffect)(E,D);let O,k;t[14]===b?(O=t[15],k=t[16]):(O=()=>{let e=e=>{let t=e.target;t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`)||(e.key===`Escape`?se():e.key===`j`||e.key===`ArrowRight`?(e.preventDefault(),oe(b+1)):(e.key===`k`||e.key===`ArrowLeft`)&&(e.preventDefault(),oe(b-1)))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},k=[b],t[14]=b,t[15]=O,t[16]=k),(0,p.useEffect)(O,k);let A,j,M,N,P,F,I,L;if(t[17]!==f||t[18]!==_||t[19]!==v||t[20]!==g||t[21]!==y||t[22]!==C.diff||t[23]!==C.status){let e=C.status===`ready`?fe(C.diff):{additions:0,deletions:0},n=e.additions>0||e.deletions>0;F=`absolute inset-0 z-20 flex flex-col bg-background`,I=`agent-diff-pane`,j=`flex flex-wrap items-center gap-x-2 gap-y-1.5 border-b border-border px-3 py-2`;let r;t[32]===f?r=t[33]:(r=f({id:`b18t0_`}),t[32]=f,t[33]=r);let i;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,m.jsx)(ie,{className:`size-4`}),t[34]=i):i=t[34];let a;t[35]===r?a=t[36]:(a=(0,m.jsx)(te,{asChild:!0,children:(0,m.jsx)(ee,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,"data-testid":`agent-diff-close`,"aria-label":r,onClick:he,children:i})}),t[35]=r,t[36]=a);let o;t[37]===f?o=t[38]:(o=f({id:`b18t0_`}),t[37]=f,t[38]=o);let s;t[39]===o?s=t[40]:(s=(0,m.jsx)(ne,{side:`bottom`,children:o}),t[39]=o,t[40]=s),t[41]!==a||t[42]!==s?(M=(0,m.jsxs)(re,{children:[a,s]}),t[41]=a,t[42]=s,t[43]=M):M=t[43];let c;t[44]===_?c=t[45]:(c={backgroundColor:_},t[44]=_,t[45]=c);let l;t[46]===v?l=t[47]:(l=(0,m.jsx)(ae,{icon:v,width:13,height:13}),t[46]=v,t[47]=l),t[48]!==c||t[49]!==l?(N=(0,m.jsx)(`span`,{className:`flex size-6 shrink-0 items-center justify-center rounded-full text-white`,style:c,children:l}),t[48]=c,t[49]=l,t[50]=N):N=t[50];let u;t[51]===y?u=t[52]:(u=(0,m.jsx)(`div`,{className:`truncate text-sm font-medium text-foreground`,children:y}),t[51]=y,t[52]=u);let d;t[53]===g?d=t[54]:(d=(0,m.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:g}),t[53]=g,t[54]=d),t[55]!==u||t[56]!==d?(P=(0,m.jsxs)(`div`,{className:`min-w-0 max-w-[14rem] shrink`,children:[u,d]}),t[55]=u,t[56]=d,t[57]=P):P=t[57],L=`ml-auto flex flex-wrap items-center justify-end gap-2`,A=n&&(0,m.jsxs)(`span`,{role:`img`,className:`shrink-0 text-xs tabular-nums`,"data-testid":`agent-diff-stat`,"aria-label":f({id:`8lwQlE`,values:{0:e.additions,1:e.deletions}}),children:[(0,m.jsxs)(`span`,{"aria-hidden":`true`,className:`text-emerald-600 dark:text-emerald-500`,children:[`+`,e.additions]}),` `,(0,m.jsxs)(`span`,{"aria-hidden":`true`,className:`text-red-600 dark:text-red-500`,children:[`−`,e.deletions]})]}),t[17]=f,t[18]=_,t[19]=v,t[20]=g,t[21]=y,t[22]=C.diff,t[23]=C.status,t[24]=A,t[25]=j,t[26]=M,t[27]=N,t[28]=P,t[29]=F,t[30]=I,t[31]=L}else A=t[24],j=t[25],M=t[26],N=t[27],P=t[28],F=t[29],I=t[30],L=t[31];let R;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(R=e=>{(e===`rendered`||e===`source`)&&ve(e)},t[58]=R):R=t[58];let z;t[59]===f?z=t[60]:(z=f({id:`ZW3mlR`}),t[59]=f,t[60]=z);let B;t[61]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,m.jsx)(s,{value:`rendered`,className:`h-6 px-2 text-xs`,"data-testid":`agent-diff-render-rendered`,children:(0,m.jsx)(i,{id:`4z_1j2`})}),t[61]=B):B=t[61];let we;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,m.jsx)(s,{value:`source`,className:`h-6 px-2 text-xs`,"data-testid":`agent-diff-render-source`,children:(0,m.jsx)(i,{id:`wdxz7K`})}),t[62]=we):we=t[62];let V;t[63]!==S||t[64]!==z?(V=(0,m.jsxs)(c,{type:`single`,value:S,onValueChange:R,"aria-label":z,variant:`segmented`,size:`sm`,spacing:1,className:`shrink-0 rounded-md bg-muted p-0.5 dark:bg-background`,children:[B,we]}),t[63]=S,t[64]=z,t[65]=V):V=t[65];let H;t[66]!==f||t[67]!==r?(H=f(r?{id:`6iDEWA`}:{id:`170Js2`}),t[66]=f,t[67]=r,t[68]=H):H=t[68];let Te=!r,U;t[69]===r?U=t[70]:(U=r?(0,m.jsx)(d,{className:`size-4`}):(0,m.jsx)(u,{className:`size-4`}),t[69]=r,t[70]=U);let W;t[71]!==o||t[72]!==H||t[73]!==Te||t[74]!==U?(W=(0,m.jsx)(te,{asChild:!0,children:(0,m.jsx)(ee,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,"data-testid":`agent-diff-toggle-panel`,"aria-label":H,"aria-expanded":Te,onClick:o,children:U})}),t[71]=o,t[72]=H,t[73]=Te,t[74]=U,t[75]=W):W=t[75];let G;t[76]!==f||t[77]!==r?(G=f(r?{id:`6iDEWA`}:{id:`170Js2`}),t[76]=f,t[77]=r,t[78]=G):G=t[78];let K;t[79]===G?K=t[80]:(K=(0,m.jsx)(ne,{side:`bottom`,children:G}),t[79]=G,t[80]=K);let q;t[81]!==W||t[82]!==K?(q=(0,m.jsxs)(re,{children:[W,K]}),t[81]=W,t[82]=K,t[83]=q):q=t[83];let J;t[84]!==A||t[85]!==V||t[86]!==q||t[87]!==L?(J=(0,m.jsxs)(`div`,{className:L,children:[A,V,q]}),t[84]=A,t[85]=V,t[86]=q,t[87]=L,t[88]=J):J=t[88];let Y;t[89]!==j||t[90]!==M||t[91]!==N||t[92]!==P||t[93]!==J?(Y=(0,m.jsxs)(`div`,{className:j,children:[M,N,P,J]}),t[89]=j,t[90]=M,t[91]=N,t[92]=P,t[93]=J,t[94]=Y):Y=t[94];let X;t[95]===C.status?X=t[96]:(X=C.status===`loading`&&(0,m.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 text-xs text-muted-foreground`,children:[(0,m.jsx)(l,{className:`size-3 animate-spin`}),(0,m.jsx)(i,{id:`38foVZ`})]}),t[95]=C.status,t[96]=X);let Z;t[97]===C.status?Z=t[98]:(Z=C.status===`error`&&(0,m.jsx)(`p`,{className:`px-4 py-3 text-xs text-destructive`,children:(0,m.jsx)(i,{id:`vvWZnu`})}),t[97]=C.status,t[98]=Z);let Q;t[99]!==b||t[100]!==S||t[101]!==w||t[102]!==C.after||t[103]!==C.diff||t[104]!==C.status?(Q=C.status===`ready`&&(S===`rendered`&&w?.ok?(0,m.jsx)(le,{diff:w}):C.diff===``?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`p`,{className:`border-b border-border px-4 py-2 text-xs text-muted-foreground italic`,children:b===0?(0,m.jsx)(i,{id:`klPS-L`}):(0,m.jsx)(i,{id:`k7Hoig`})}),(0,m.jsx)(`pre`,{className:`whitespace-pre-wrap px-4 py-3 font-mono text-xs text-foreground/90`,children:C.after})]}):(0,m.jsx)(p.Suspense,{fallback:(0,m.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 text-xs text-muted-foreground`,children:[(0,m.jsx)(l,{className:`size-3 animate-spin`}),(0,m.jsx)(i,{id:`EDm3wJ`})]}),children:(0,m.jsx)(me,{diff:C.diff,viewType:`unified`})})),t[99]=b,t[100]=S,t[101]=w,t[102]=C.after,t[103]=C.diff,t[104]=C.status,t[105]=Q):Q=t[105];let $;t[106]!==X||t[107]!==Z||t[108]!==Q?($=(0,m.jsxs)(`div`,{ref:_e,className:`min-h-0 flex-1 overflow-auto subtle-scrollbar`,children:[X,Z,Q]}),t[106]=X,t[107]=Z,t[108]=Q,t[109]=$):$=t[109];let Ee;return t[110]!==F||t[111]!==I||t[112]!==Y||t[113]!==$?(Ee=(0,m.jsxs)(`div`,{className:F,"data-testid":I,children:[Y,$]}),t[110]=F,t[111]=I,t[112]=Y,t[113]=$,t[114]=Ee):Ee=t[114],Ee}function he(){return se()}function ge(){return new f(h)}export{g as AgentDiffPane};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ActivityPanelDiffView-BlsCddlr.js","./chunk-zsgVPwQN.js","./dist-De9aiAJx.js","./jsx-runtime-Dda6ZcOg.js","./react-BN2QHhcO.js","./compiler-runtime-YPpVnfQ-.js","./ActivityPanelDiffView-legcy4jI.css"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./chunk-zsgVPwQN.js";import{t}from"./preload-helper-2ej06EnG.js";import{t as n}from"./jsx-runtime-Dda6ZcOg.js";import{t as r}from"./react-BN2QHhcO.js";import{n as i,r as a}from"./dist-De9aiAJx.js";import{t as o}from"./compiler-runtime-YPpVnfQ-.js";import{t as ee}from"./button-B5JstM7q.js";import{i as te,n as ne,t as re}from"./tooltip-BI4ZrlGO.js";import{n as s,t as c}from"./toggle-group-D6QJybW6.js";import{t as l}from"./loader-circle-DquHdXOY.js";import{n as u,t as d}from"./panel-right-open-DXZ0AA7N.js";import{t as ie}from"./x-CxAa17gB.js";import{o as ae,r as oe,t as se}from"./agent-diff-store-CCCbFYpb.js";import{t as f}from"./lru-string-cache-mZvIfIzw.js";import{t as ce}from"./use-activity-panel-moy0VULL.js";import{a as le,o as ue,r as de,t as fe}from"./use-timeline-entry-diff-BbF516OI.js";var pe=o(),p=e(r(),1),m=n(),me=(0,p.lazy)(async()=>({default:(await t(()=>import(`./ActivityPanelDiffView-BlsCddlr.js`),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)).ActivityPanelDiffView})),h=64;function g(e){let t=(0,pe.c)(115),{view:n,isPanelCollapsed:r,onTogglePanel:o}=e,{_:f}=a(),{agentId:h,agentName:g,agentColor:_,agentIcon:v,docName:y,keptCount:b}=n,[x]=(0,p.useState)(ge),_e=(0,p.useRef)(null),[S,ve]=(0,p.useState)(`rendered`),ye;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(ye={status:`loading`,diff:``,before:``,after:``},t[0]=ye):ye=t[0];let[C,be]=(0,p.useState)(ye),xe,Se;t[1]!==h||t[2]!==x||t[3]!==y||t[4]!==b?(xe=()=>{let e=!1;be({status:`loading`,diff:``,before:``,after:``});let t=`${y}\0${b}`,n=x.get(t);if(n!==void 0){be({status:`ready`,...JSON.parse(n)});return}return ce(h,y,b).then(n=>{e||(x.set(t,JSON.stringify(n)),be({status:`ready`,...n}))}).catch(t=>{e||(console.error(`[agent-diff] failed to load burst diff`,{agentId:h,docName:y,keptCount:b,err:t}),be({status:`error`,diff:``,before:``,after:``}))}),()=>{e=!0}},Se=[h,y,b,x],t[1]=h,t[2]=x,t[3]=y,t[4]=b,t[5]=xe,t[6]=Se):(xe=t[5],Se=t[6]),(0,p.useEffect)(xe,Se);let Ce;t[7]!==C.after||t[8]!==C.before||t[9]!==C.status?(Ce=C.status===`ready`?ue(C.before,C.after):null,t[7]=C.after,t[8]=C.before,t[9]=C.status,t[10]=Ce):Ce=t[10];let w=Ce,T=C.status===`ready`&&C.diff!==``?`${S}:${C.diff}`:``,E,D;t[11]===T?(E=t[12],D=t[13]):(E=()=>{let e=_e.current;if(T===``||!e)return;let t=!1,n=null,r,i,a=()=>{if(t)return;let r=e.querySelector(`.ok-diff-ins, .ok-diff-ins-block, [data-diff-deleted]`)??de(e)[0];if(!r)return;t=!0,n?.disconnect();let i=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;r.scrollIntoView({block:`center`,behavior:i?`auto`:`smooth`})},o=()=>{t||(r!==void 0&&clearTimeout(r),r=setTimeout(()=>{i!==void 0&&cancelAnimationFrame(i),i=requestAnimationFrame(()=>{i=requestAnimationFrame(a)})},120))};n=new MutationObserver(o),n.observe(e,{childList:!0,subtree:!0}),o();let ee=setTimeout(()=>n?.disconnect(),5e3);return()=>{n?.disconnect(),r!==void 0&&clearTimeout(r),i!==void 0&&cancelAnimationFrame(i),clearTimeout(ee)}},D=[T],t[11]=T,t[12]=E,t[13]=D),(0,p.useEffect)(E,D);let O,k;t[14]===b?(O=t[15],k=t[16]):(O=()=>{let e=e=>{let t=e.target;t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`)||(e.key===`Escape`?se():e.key===`j`||e.key===`ArrowRight`?(e.preventDefault(),oe(b+1)):(e.key===`k`||e.key===`ArrowLeft`)&&(e.preventDefault(),oe(b-1)))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},k=[b],t[14]=b,t[15]=O,t[16]=k),(0,p.useEffect)(O,k);let A,j,M,N,P,F,I,L;if(t[17]!==f||t[18]!==_||t[19]!==v||t[20]!==g||t[21]!==y||t[22]!==C.diff||t[23]!==C.status){let e=C.status===`ready`?fe(C.diff):{additions:0,deletions:0},n=e.additions>0||e.deletions>0;F=`absolute inset-0 z-20 flex flex-col bg-background`,I=`agent-diff-pane`,j=`flex flex-wrap items-center gap-x-2 gap-y-1.5 border-b border-border px-3 py-2`;let r;t[32]===f?r=t[33]:(r=f({id:`b18t0_`}),t[32]=f,t[33]=r);let i;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,m.jsx)(ie,{className:`size-4`}),t[34]=i):i=t[34];let a;t[35]===r?a=t[36]:(a=(0,m.jsx)(te,{asChild:!0,children:(0,m.jsx)(ee,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,"data-testid":`agent-diff-close`,"aria-label":r,onClick:he,children:i})}),t[35]=r,t[36]=a);let o;t[37]===f?o=t[38]:(o=f({id:`b18t0_`}),t[37]=f,t[38]=o);let s;t[39]===o?s=t[40]:(s=(0,m.jsx)(ne,{side:`bottom`,children:o}),t[39]=o,t[40]=s),t[41]!==a||t[42]!==s?(M=(0,m.jsxs)(re,{children:[a,s]}),t[41]=a,t[42]=s,t[43]=M):M=t[43];let c;t[44]===_?c=t[45]:(c={backgroundColor:_},t[44]=_,t[45]=c);let l;t[46]===v?l=t[47]:(l=(0,m.jsx)(ae,{icon:v,width:13,height:13}),t[46]=v,t[47]=l),t[48]!==c||t[49]!==l?(N=(0,m.jsx)(`span`,{className:`flex size-6 shrink-0 items-center justify-center rounded-full text-white`,style:c,children:l}),t[48]=c,t[49]=l,t[50]=N):N=t[50];let u;t[51]===y?u=t[52]:(u=(0,m.jsx)(`div`,{className:`truncate text-sm font-medium text-foreground`,children:y}),t[51]=y,t[52]=u);let d;t[53]===g?d=t[54]:(d=(0,m.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:g}),t[53]=g,t[54]=d),t[55]!==u||t[56]!==d?(P=(0,m.jsxs)(`div`,{className:`min-w-0 max-w-[14rem] shrink`,children:[u,d]}),t[55]=u,t[56]=d,t[57]=P):P=t[57],L=`ml-auto flex flex-wrap items-center justify-end gap-2`,A=n&&(0,m.jsxs)(`span`,{role:`img`,className:`shrink-0 text-xs tabular-nums`,"data-testid":`agent-diff-stat`,"aria-label":f({id:`8lwQlE`,values:{0:e.additions,1:e.deletions}}),children:[(0,m.jsxs)(`span`,{"aria-hidden":`true`,className:`text-emerald-600 dark:text-emerald-500`,children:[`+`,e.additions]}),` `,(0,m.jsxs)(`span`,{"aria-hidden":`true`,className:`text-red-600 dark:text-red-500`,children:[`−`,e.deletions]})]}),t[17]=f,t[18]=_,t[19]=v,t[20]=g,t[21]=y,t[22]=C.diff,t[23]=C.status,t[24]=A,t[25]=j,t[26]=M,t[27]=N,t[28]=P,t[29]=F,t[30]=I,t[31]=L}else A=t[24],j=t[25],M=t[26],N=t[27],P=t[28],F=t[29],I=t[30],L=t[31];let R;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(R=e=>{(e===`rendered`||e===`source`)&&ve(e)},t[58]=R):R=t[58];let z;t[59]===f?z=t[60]:(z=f({id:`ZW3mlR`}),t[59]=f,t[60]=z);let B;t[61]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,m.jsx)(s,{value:`rendered`,className:`h-6 px-2 text-xs`,"data-testid":`agent-diff-render-rendered`,children:(0,m.jsx)(i,{id:`4z_1j2`})}),t[61]=B):B=t[61];let we;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,m.jsx)(s,{value:`source`,className:`h-6 px-2 text-xs`,"data-testid":`agent-diff-render-source`,children:(0,m.jsx)(i,{id:`wdxz7K`})}),t[62]=we):we=t[62];let V;t[63]!==S||t[64]!==z?(V=(0,m.jsxs)(c,{type:`single`,value:S,onValueChange:R,"aria-label":z,variant:`segmented`,size:`sm`,spacing:1,className:`shrink-0 rounded-md bg-muted p-0.5 dark:bg-background`,children:[B,we]}),t[63]=S,t[64]=z,t[65]=V):V=t[65];let H;t[66]!==f||t[67]!==r?(H=f(r?{id:`6iDEWA`}:{id:`170Js2`}),t[66]=f,t[67]=r,t[68]=H):H=t[68];let Te=!r,U;t[69]===r?U=t[70]:(U=r?(0,m.jsx)(d,{className:`size-4`}):(0,m.jsx)(u,{className:`size-4`}),t[69]=r,t[70]=U);let W;t[71]!==o||t[72]!==H||t[73]!==Te||t[74]!==U?(W=(0,m.jsx)(te,{asChild:!0,children:(0,m.jsx)(ee,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,"data-testid":`agent-diff-toggle-panel`,"aria-label":H,"aria-expanded":Te,onClick:o,children:U})}),t[71]=o,t[72]=H,t[73]=Te,t[74]=U,t[75]=W):W=t[75];let G;t[76]!==f||t[77]!==r?(G=f(r?{id:`6iDEWA`}:{id:`170Js2`}),t[76]=f,t[77]=r,t[78]=G):G=t[78];let K;t[79]===G?K=t[80]:(K=(0,m.jsx)(ne,{side:`bottom`,children:G}),t[79]=G,t[80]=K);let q;t[81]!==W||t[82]!==K?(q=(0,m.jsxs)(re,{children:[W,K]}),t[81]=W,t[82]=K,t[83]=q):q=t[83];let J;t[84]!==A||t[85]!==V||t[86]!==q||t[87]!==L?(J=(0,m.jsxs)(`div`,{className:L,children:[A,V,q]}),t[84]=A,t[85]=V,t[86]=q,t[87]=L,t[88]=J):J=t[88];let Y;t[89]!==j||t[90]!==M||t[91]!==N||t[92]!==P||t[93]!==J?(Y=(0,m.jsxs)(`div`,{className:j,children:[M,N,P,J]}),t[89]=j,t[90]=M,t[91]=N,t[92]=P,t[93]=J,t[94]=Y):Y=t[94];let X;t[95]===C.status?X=t[96]:(X=C.status===`loading`&&(0,m.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 text-xs text-muted-foreground`,children:[(0,m.jsx)(l,{className:`size-3 animate-spin`}),(0,m.jsx)(i,{id:`38foVZ`})]}),t[95]=C.status,t[96]=X);let Z;t[97]===C.status?Z=t[98]:(Z=C.status===`error`&&(0,m.jsx)(`p`,{className:`px-4 py-3 text-xs text-destructive`,children:(0,m.jsx)(i,{id:`vvWZnu`})}),t[97]=C.status,t[98]=Z);let Q;t[99]!==b||t[100]!==S||t[101]!==w||t[102]!==C.after||t[103]!==C.diff||t[104]!==C.status?(Q=C.status===`ready`&&(S===`rendered`&&w?.ok?(0,m.jsx)(le,{diff:w}):C.diff===``?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`p`,{className:`border-b border-border px-4 py-2 text-xs text-muted-foreground italic`,children:b===0?(0,m.jsx)(i,{id:`klPS-L`}):(0,m.jsx)(i,{id:`k7Hoig`})}),(0,m.jsx)(`pre`,{className:`whitespace-pre-wrap px-4 py-3 font-mono text-xs text-foreground/90`,children:C.after})]}):(0,m.jsx)(p.Suspense,{fallback:(0,m.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 text-xs text-muted-foreground`,children:[(0,m.jsx)(l,{className:`size-3 animate-spin`}),(0,m.jsx)(i,{id:`EDm3wJ`})]}),children:(0,m.jsx)(me,{diff:C.diff,viewType:`unified`})})),t[99]=b,t[100]=S,t[101]=w,t[102]=C.after,t[103]=C.diff,t[104]=C.status,t[105]=Q):Q=t[105];let $;t[106]!==X||t[107]!==Z||t[108]!==Q?($=(0,m.jsxs)(`div`,{ref:_e,className:`min-h-0 flex-1 overflow-auto subtle-scrollbar`,children:[X,Z,Q]}),t[106]=X,t[107]=Z,t[108]=Q,t[109]=$):$=t[109];let Ee;return t[110]!==F||t[111]!==I||t[112]!==Y||t[113]!==$?(Ee=(0,m.jsxs)(`div`,{className:F,"data-testid":I,children:[Y,$]}),t[110]=F,t[111]=I,t[112]=Y,t[113]=$,t[114]=Ee):Ee=t[114],Ee}function he(){return se()}function ge(){return new f(h)}export{g as AgentDiffPane};