@goondocks/myco 0.19.6 → 0.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/dist/{agent-run-WK5NKBYA.js → agent-run-PQXC246Y.js} +8 -8
  2. package/dist/{agent-tasks-2E73GG3A.js → agent-tasks-323BZEBX.js} +8 -8
  3. package/dist/{chunk-VLGBWOBY.js → chunk-22JALAXN.js} +6 -6
  4. package/dist/chunk-22JALAXN.js.map +1 -0
  5. package/dist/{chunk-DURKJTVO.js → chunk-3WOS4TAR.js} +9 -1
  6. package/dist/chunk-3WOS4TAR.js.map +1 -0
  7. package/dist/{chunk-QH5HS54N.js → chunk-3WWJOTYG.js} +3 -3
  8. package/dist/{chunk-Q4QD6LJT.js → chunk-4M7EWPIA.js} +3 -3
  9. package/dist/{chunk-FGKCE5AE.js → chunk-4YFKBL3F.js} +2 -2
  10. package/dist/{chunk-KYH4V4ML.js → chunk-57O67XVF.js} +3 -3
  11. package/dist/{chunk-7ONVLO43.js → chunk-5XIVBO25.js} +2 -2
  12. package/dist/{chunk-W3JUH5S3.js → chunk-63ZGP4Q2.js} +4 -4
  13. package/dist/{chunk-ST2D3SGM.js → chunk-AIYFHQRX.js} +2 -2
  14. package/dist/{chunk-6ZDJXSEO.js → chunk-BPRIYNLE.js} +3 -3
  15. package/dist/chunk-CUDIZJY7.js +36 -0
  16. package/dist/chunk-CUDIZJY7.js.map +1 -0
  17. package/dist/{chunk-WKNAKQKA.js → chunk-DCSGJ7W4.js} +13 -19
  18. package/dist/chunk-DCSGJ7W4.js.map +1 -0
  19. package/dist/{chunk-Q6OEZM3S.js → chunk-EVDQKYCG.js} +237 -10
  20. package/dist/chunk-EVDQKYCG.js.map +1 -0
  21. package/dist/{chunk-P5VNHGVZ.js → chunk-FGY7J6EZ.js} +67 -16
  22. package/dist/chunk-FGY7J6EZ.js.map +1 -0
  23. package/dist/{chunk-I54KLC6H.js → chunk-FLLBJLHM.js} +3 -1
  24. package/dist/{chunk-I54KLC6H.js.map → chunk-FLLBJLHM.js.map} +1 -1
  25. package/dist/{chunk-PMT2LSTQ.js → chunk-FMRZ26U5.js} +2 -2
  26. package/dist/{chunk-3J6TUJSV.js → chunk-KHT24OWC.js} +3 -3
  27. package/dist/{chunk-TMNFCUAD.js → chunk-LZP4IJB3.js} +51 -23
  28. package/dist/chunk-LZP4IJB3.js.map +1 -0
  29. package/dist/{chunk-6DDRJQ4X.js → chunk-MYOZLMB2.js} +2 -2
  30. package/dist/{chunk-UVKQ62II.js → chunk-NGROSFOH.js} +24 -2
  31. package/dist/chunk-NGROSFOH.js.map +1 -0
  32. package/dist/{chunk-FKBPXCH3.js → chunk-QS5TWZBL.js} +4 -4
  33. package/dist/{chunk-NKQZ73LL.js → chunk-SRXTSI25.js} +109 -3
  34. package/dist/chunk-SRXTSI25.js.map +1 -0
  35. package/dist/{chunk-NCBLB2C6.js → chunk-UEWMSIL3.js} +7 -4
  36. package/dist/chunk-UEWMSIL3.js.map +1 -0
  37. package/dist/{chunk-GFR542SM.js → chunk-US4LNCAT.js} +5 -11
  38. package/dist/chunk-US4LNCAT.js.map +1 -0
  39. package/dist/{chunk-44PZCAYS.js → chunk-XL75KZGI.js} +23 -13
  40. package/dist/chunk-XL75KZGI.js.map +1 -0
  41. package/dist/chunk-ZXZPJJN3.js +54 -0
  42. package/dist/chunk-ZXZPJJN3.js.map +1 -0
  43. package/dist/{cli-LCTXK7N6.js → cli-UWBAOHLL.js} +43 -43
  44. package/dist/{client-S47ENM76.js → client-SLDDMSKN.js} +4 -4
  45. package/dist/{config-IO5WALOD.js → config-XPV5GDE4.js} +8 -16
  46. package/dist/config-XPV5GDE4.js.map +1 -0
  47. package/dist/{detect-BEOIHGBC.js → detect-PXNM6TA7.js} +2 -2
  48. package/dist/{detect-providers-2EY55EHK.js → detect-providers-5KOPZ7J2.js} +4 -4
  49. package/dist/{doctor-EE6GAC54.js → doctor-UUUOVDZS.js} +14 -14
  50. package/dist/doctor-UUUOVDZS.js.map +1 -0
  51. package/dist/{executor-NXNSUEMQ.js → executor-J4IBXSBY.js} +21 -22
  52. package/dist/executor-J4IBXSBY.js.map +1 -0
  53. package/dist/{init-IPL3XV6F.js → init-UDH3ZBDD.js} +17 -21
  54. package/dist/init-UDH3ZBDD.js.map +1 -0
  55. package/dist/{installer-WMTB4NCX.js → installer-I6KRGJOO.js} +4 -4
  56. package/dist/{llm-SWDDQQWY.js → llm-TH4NLIRM.js} +4 -4
  57. package/dist/{loader-V774GZU4.js → loader-H7OFASVC.js} +15 -3
  58. package/dist/{loader-AAZ6VUIA.js → loader-TSB5M7FD.js} +3 -3
  59. package/dist/{logs-KNKPQE5A.js → logs-7YVGGBIS.js} +2 -2
  60. package/dist/{main-RPJSS7PT.js → main-E7HU4QYR.js} +842 -249
  61. package/dist/main-E7HU4QYR.js.map +1 -0
  62. package/dist/{open-OYBKVBYX.js → open-4UGDPBKN.js} +8 -8
  63. package/dist/{post-compact-E2OVMNGQ.js → post-compact-BFU3WZSV.js} +9 -8
  64. package/dist/{post-compact-E2OVMNGQ.js.map → post-compact-BFU3WZSV.js.map} +1 -1
  65. package/dist/{post-tool-use-FGQE26GJ.js → post-tool-use-RYHXLCTC.js} +8 -7
  66. package/dist/{post-tool-use-FGQE26GJ.js.map → post-tool-use-RYHXLCTC.js.map} +1 -1
  67. package/dist/{post-tool-use-failure-3CITJYQK.js → post-tool-use-failure-DCVHK2P3.js} +9 -8
  68. package/dist/{post-tool-use-failure-3CITJYQK.js.map → post-tool-use-failure-DCVHK2P3.js.map} +1 -1
  69. package/dist/{pre-compact-GYMHCXII.js → pre-compact-EZZCJ6AG.js} +9 -8
  70. package/dist/{pre-compact-GYMHCXII.js.map → pre-compact-EZZCJ6AG.js.map} +1 -1
  71. package/dist/{provider-check-WCM3SDTM.js → provider-check-43LAMSMH.js} +4 -4
  72. package/dist/{registry-OCM4WAPJ.js → registry-MGJSJBAS.js} +4 -4
  73. package/dist/{remove-72ER3TG5.js → remove-GBBQG3SJ.js} +10 -10
  74. package/dist/{restart-EQHEJCGT.js → restart-RMIGKMA6.js} +9 -9
  75. package/dist/{search-JOBYIW43.js → search-2A5AJVNG.js} +9 -9
  76. package/dist/{server-PZCWYWZL.js → server-TSYZMFFK.js} +40 -27
  77. package/dist/{server-PZCWYWZL.js.map → server-TSYZMFFK.js.map} +1 -1
  78. package/dist/{session-APO4A2C7.js → session-NKREOTEO.js} +9 -10
  79. package/dist/{session-APO4A2C7.js.map → session-NKREOTEO.js.map} +1 -1
  80. package/dist/{session-end-4V4VHAOQ.js → session-end-DQELLTGJ.js} +8 -7
  81. package/dist/{session-end-4V4VHAOQ.js.map → session-end-DQELLTGJ.js.map} +1 -1
  82. package/dist/{session-start-K6ESRZU7.js → session-start-5SUTR5GP.js} +17 -17
  83. package/dist/session-start-5SUTR5GP.js.map +1 -0
  84. package/dist/{setup-llm-QUWOSB7A.js → setup-llm-SLX5764H.js} +10 -9
  85. package/dist/{setup-llm-QUWOSB7A.js.map → setup-llm-SLX5764H.js.map} +1 -1
  86. package/dist/src/cli.js +1 -1
  87. package/dist/src/daemon/main.js +1 -1
  88. package/dist/src/hooks/post-tool-use.js +1 -1
  89. package/dist/src/hooks/session-end.js +1 -1
  90. package/dist/src/hooks/session-start.js +1 -1
  91. package/dist/src/hooks/stop.js +1 -1
  92. package/dist/src/hooks/user-prompt-submit.js +1 -1
  93. package/dist/src/mcp/server.js +1 -1
  94. package/dist/src/symbionts/manifests/codex.yaml +28 -0
  95. package/dist/{stats-TYOZAOP2.js → stats-ARBLNEE3.js} +9 -9
  96. package/dist/{stop-2COOWEYG.js → stop-5AJXBKEE.js} +8 -7
  97. package/dist/{stop-2COOWEYG.js.map → stop-5AJXBKEE.js.map} +1 -1
  98. package/dist/{stop-failure-UQ33GZLE.js → stop-failure-XGKTZPLR.js} +9 -8
  99. package/dist/{stop-failure-UQ33GZLE.js.map → stop-failure-XGKTZPLR.js.map} +1 -1
  100. package/dist/{subagent-start-YENEY6VF.js → subagent-start-2JLIPGJN.js} +9 -8
  101. package/dist/{subagent-start-YENEY6VF.js.map → subagent-start-2JLIPGJN.js.map} +1 -1
  102. package/dist/{subagent-stop-W2757YDB.js → subagent-stop-FV4EOKWZ.js} +9 -8
  103. package/dist/{subagent-stop-W2757YDB.js.map → subagent-stop-FV4EOKWZ.js.map} +1 -1
  104. package/dist/{task-completed-KU6GWMWV.js → task-completed-XJKT366I.js} +9 -8
  105. package/dist/{task-completed-KU6GWMWV.js.map → task-completed-XJKT366I.js.map} +1 -1
  106. package/dist/{team-SNLC6FZM.js → team-3JKF7VAD.js} +5 -5
  107. package/dist/ui/assets/index-C2JuNtRB.css +1 -0
  108. package/dist/ui/assets/index-JLVaQKV2.js +832 -0
  109. package/dist/ui/favicon-dusk.svg +11 -0
  110. package/dist/ui/favicon-moss.svg +11 -0
  111. package/dist/ui/favicon-plum.svg +11 -0
  112. package/dist/ui/favicon-sage.svg +11 -0
  113. package/dist/ui/favicon-slate.svg +11 -0
  114. package/dist/ui/favicon-terracotta.svg +11 -0
  115. package/dist/ui/index.html +3 -3
  116. package/dist/{update-5VYNQZJ4.js → update-XVSAMN4O.js} +10 -10
  117. package/dist/{user-prompt-submit-KATLHAKA.js → user-prompt-submit-TTBTHBBH.js} +9 -8
  118. package/dist/{user-prompt-submit-KATLHAKA.js.map → user-prompt-submit-TTBTHBBH.js.map} +1 -1
  119. package/dist/{verify-BGJVB3K2.js → verify-LMHNEYIP.js} +7 -7
  120. package/dist/verify-LMHNEYIP.js.map +1 -0
  121. package/dist/{version-MKNN5GYM.js → version-HRVSEMUR.js} +2 -2
  122. package/package.json +1 -1
  123. package/skills/myco/SKILL.md +78 -43
  124. package/skills/myco/references/vault-status.md +1 -1
  125. package/dist/chunk-44PZCAYS.js.map +0 -1
  126. package/dist/chunk-5ZT2Q6P5.js +0 -25
  127. package/dist/chunk-5ZT2Q6P5.js.map +0 -1
  128. package/dist/chunk-AULBWINA.js +0 -227
  129. package/dist/chunk-AULBWINA.js.map +0 -1
  130. package/dist/chunk-DURKJTVO.js.map +0 -1
  131. package/dist/chunk-GFR542SM.js.map +0 -1
  132. package/dist/chunk-NCBLB2C6.js.map +0 -1
  133. package/dist/chunk-NKQZ73LL.js.map +0 -1
  134. package/dist/chunk-P5VNHGVZ.js.map +0 -1
  135. package/dist/chunk-Q6OEZM3S.js.map +0 -1
  136. package/dist/chunk-TMNFCUAD.js.map +0 -1
  137. package/dist/chunk-UVKQ62II.js.map +0 -1
  138. package/dist/chunk-VLGBWOBY.js.map +0 -1
  139. package/dist/chunk-VQF5E4ZX.js +0 -91
  140. package/dist/chunk-VQF5E4ZX.js.map +0 -1
  141. package/dist/chunk-WKNAKQKA.js.map +0 -1
  142. package/dist/config-IO5WALOD.js.map +0 -1
  143. package/dist/doctor-EE6GAC54.js.map +0 -1
  144. package/dist/executor-NXNSUEMQ.js.map +0 -1
  145. package/dist/init-IPL3XV6F.js.map +0 -1
  146. package/dist/main-RPJSS7PT.js.map +0 -1
  147. package/dist/resolution-events-PYLSI6QT.js +0 -15
  148. package/dist/session-start-K6ESRZU7.js.map +0 -1
  149. package/dist/ui/assets/index-816yFmz_.js +0 -842
  150. package/dist/ui/assets/index-Dj6vQpFd.css +0 -1
  151. package/dist/verify-BGJVB3K2.js.map +0 -1
  152. package/dist/version-MKNN5GYM.js.map +0 -1
  153. /package/dist/{agent-run-WK5NKBYA.js.map → agent-run-PQXC246Y.js.map} +0 -0
  154. /package/dist/{agent-tasks-2E73GG3A.js.map → agent-tasks-323BZEBX.js.map} +0 -0
  155. /package/dist/{chunk-QH5HS54N.js.map → chunk-3WWJOTYG.js.map} +0 -0
  156. /package/dist/{chunk-Q4QD6LJT.js.map → chunk-4M7EWPIA.js.map} +0 -0
  157. /package/dist/{chunk-FGKCE5AE.js.map → chunk-4YFKBL3F.js.map} +0 -0
  158. /package/dist/{chunk-KYH4V4ML.js.map → chunk-57O67XVF.js.map} +0 -0
  159. /package/dist/{chunk-7ONVLO43.js.map → chunk-5XIVBO25.js.map} +0 -0
  160. /package/dist/{chunk-W3JUH5S3.js.map → chunk-63ZGP4Q2.js.map} +0 -0
  161. /package/dist/{chunk-ST2D3SGM.js.map → chunk-AIYFHQRX.js.map} +0 -0
  162. /package/dist/{chunk-6ZDJXSEO.js.map → chunk-BPRIYNLE.js.map} +0 -0
  163. /package/dist/{chunk-PMT2LSTQ.js.map → chunk-FMRZ26U5.js.map} +0 -0
  164. /package/dist/{chunk-3J6TUJSV.js.map → chunk-KHT24OWC.js.map} +0 -0
  165. /package/dist/{chunk-6DDRJQ4X.js.map → chunk-MYOZLMB2.js.map} +0 -0
  166. /package/dist/{chunk-FKBPXCH3.js.map → chunk-QS5TWZBL.js.map} +0 -0
  167. /package/dist/{cli-LCTXK7N6.js.map → cli-UWBAOHLL.js.map} +0 -0
  168. /package/dist/{client-S47ENM76.js.map → client-SLDDMSKN.js.map} +0 -0
  169. /package/dist/{detect-BEOIHGBC.js.map → detect-PXNM6TA7.js.map} +0 -0
  170. /package/dist/{detect-providers-2EY55EHK.js.map → detect-providers-5KOPZ7J2.js.map} +0 -0
  171. /package/dist/{installer-WMTB4NCX.js.map → installer-I6KRGJOO.js.map} +0 -0
  172. /package/dist/{llm-SWDDQQWY.js.map → llm-TH4NLIRM.js.map} +0 -0
  173. /package/dist/{loader-AAZ6VUIA.js.map → loader-H7OFASVC.js.map} +0 -0
  174. /package/dist/{loader-V774GZU4.js.map → loader-TSB5M7FD.js.map} +0 -0
  175. /package/dist/{logs-KNKPQE5A.js.map → logs-7YVGGBIS.js.map} +0 -0
  176. /package/dist/{open-OYBKVBYX.js.map → open-4UGDPBKN.js.map} +0 -0
  177. /package/dist/{provider-check-WCM3SDTM.js.map → provider-check-43LAMSMH.js.map} +0 -0
  178. /package/dist/{registry-OCM4WAPJ.js.map → registry-MGJSJBAS.js.map} +0 -0
  179. /package/dist/{remove-72ER3TG5.js.map → remove-GBBQG3SJ.js.map} +0 -0
  180. /package/dist/{restart-EQHEJCGT.js.map → restart-RMIGKMA6.js.map} +0 -0
  181. /package/dist/{search-JOBYIW43.js.map → search-2A5AJVNG.js.map} +0 -0
  182. /package/dist/{stats-TYOZAOP2.js.map → stats-ARBLNEE3.js.map} +0 -0
  183. /package/dist/{resolution-events-PYLSI6QT.js.map → team-3JKF7VAD.js.map} +0 -0
  184. /package/dist/{update-5VYNQZJ4.js.map → update-XVSAMN4O.js.map} +0 -0
  185. /package/dist/{team-SNLC6FZM.js.map → version-HRVSEMUR.js.map} +0 -0
@@ -2,19 +2,19 @@
2
2
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
3
3
  import {
4
4
  loadEnv
5
- } from "./chunk-NCBLB2C6.js";
5
+ } from "./chunk-UEWMSIL3.js";
6
6
  import "./chunk-SAKJMNSR.js";
7
- import "./chunk-TMNFCUAD.js";
8
- import "./chunk-PMT2LSTQ.js";
9
- import "./chunk-NKQZ73LL.js";
7
+ import "./chunk-LZP4IJB3.js";
8
+ import "./chunk-FMRZ26U5.js";
9
+ import "./chunk-SRXTSI25.js";
10
10
  import "./chunk-MYX5NCRH.js";
11
11
  import {
12
12
  resolveVaultDir
13
- } from "./chunk-5ZT2Q6P5.js";
14
- import "./chunk-QH5HS54N.js";
15
- import "./chunk-ST2D3SGM.js";
13
+ } from "./chunk-CUDIZJY7.js";
14
+ import "./chunk-3WWJOTYG.js";
15
+ import "./chunk-AIYFHQRX.js";
16
16
  import "./chunk-LPUQPDC2.js";
17
- import "./chunk-I54KLC6H.js";
17
+ import "./chunk-FLLBJLHM.js";
18
18
  import "./chunk-UUHLLQXO.js";
19
19
  import "./chunk-6LQIMRTC.js";
20
20
  import "./chunk-ODXLRR4U.js";
@@ -59,29 +59,29 @@ async function main() {
59
59
  process.stdout.write(USAGE);
60
60
  return;
61
61
  }
62
- if (cmd === "init") return (await import("./init-IPL3XV6F.js")).run(args);
63
- if (cmd === "detect-providers") return (await import("./detect-providers-2EY55EHK.js")).run(args);
62
+ if (cmd === "init") return (await import("./init-UDH3ZBDD.js")).run(args);
63
+ if (cmd === "detect-providers") return (await import("./detect-providers-5KOPZ7J2.js")).run(args);
64
64
  if (cmd === "version" || cmd === "--version" || cmd === "-v") {
65
- const { getPluginVersion } = await import("./version-MKNN5GYM.js");
65
+ const { getPluginVersion } = await import("./version-HRVSEMUR.js");
66
66
  console.log(getPluginVersion());
67
67
  return;
68
68
  }
69
- if (cmd === "mcp") return (await import("./server-PZCWYWZL.js")).main();
69
+ if (cmd === "mcp") return (await import("./server-TSYZMFFK.js")).main();
70
70
  if (cmd === "hook") {
71
71
  const hookName = args[0];
72
72
  const HOOK_DISPATCH = {
73
- "session-start": () => import("./session-start-K6ESRZU7.js"),
74
- "session-end": () => import("./session-end-4V4VHAOQ.js"),
75
- "stop": () => import("./stop-2COOWEYG.js"),
76
- "user-prompt-submit": () => import("./user-prompt-submit-KATLHAKA.js"),
77
- "post-tool-use": () => import("./post-tool-use-FGQE26GJ.js"),
78
- "post-tool-use-failure": () => import("./post-tool-use-failure-3CITJYQK.js"),
79
- "subagent-start": () => import("./subagent-start-YENEY6VF.js"),
80
- "subagent-stop": () => import("./subagent-stop-W2757YDB.js"),
81
- "stop-failure": () => import("./stop-failure-UQ33GZLE.js"),
82
- "task-completed": () => import("./task-completed-KU6GWMWV.js"),
83
- "pre-compact": () => import("./pre-compact-GYMHCXII.js"),
84
- "post-compact": () => import("./post-compact-E2OVMNGQ.js")
73
+ "session-start": () => import("./session-start-5SUTR5GP.js"),
74
+ "session-end": () => import("./session-end-DQELLTGJ.js"),
75
+ "stop": () => import("./stop-5AJXBKEE.js"),
76
+ "user-prompt-submit": () => import("./user-prompt-submit-TTBTHBBH.js"),
77
+ "post-tool-use": () => import("./post-tool-use-RYHXLCTC.js"),
78
+ "post-tool-use-failure": () => import("./post-tool-use-failure-DCVHK2P3.js"),
79
+ "subagent-start": () => import("./subagent-start-2JLIPGJN.js"),
80
+ "subagent-stop": () => import("./subagent-stop-FV4EOKWZ.js"),
81
+ "stop-failure": () => import("./stop-failure-XGKTZPLR.js"),
82
+ "task-completed": () => import("./task-completed-XJKT366I.js"),
83
+ "pre-compact": () => import("./pre-compact-EZZCJ6AG.js"),
84
+ "post-compact": () => import("./post-compact-BFU3WZSV.js")
85
85
  };
86
86
  const loader = HOOK_DISPATCH[hookName];
87
87
  if (!loader) {
@@ -90,13 +90,13 @@ async function main() {
90
90
  }
91
91
  return (await loader()).main();
92
92
  }
93
- if (cmd === "daemon") return (await import("./main-RPJSS7PT.js")).main();
93
+ if (cmd === "daemon") return (await import("./main-E7HU4QYR.js")).main();
94
94
  if (cmd === "doctor") {
95
95
  const vaultDir2 = resolveVaultDir();
96
- return (await import("./doctor-EE6GAC54.js")).run(args, vaultDir2);
96
+ return (await import("./doctor-UUUOVDZS.js")).run(args, vaultDir2);
97
97
  }
98
- if (cmd === "update") return (await import("./update-5VYNQZJ4.js")).run(args);
99
- if (cmd === "remove") return (await import("./remove-72ER3TG5.js")).run(args);
98
+ if (cmd === "update") return (await import("./update-XVSAMN4O.js")).run(args);
99
+ if (cmd === "remove") return (await import("./remove-GBBQG3SJ.js")).run(args);
100
100
  const vaultDir = resolveVaultDir();
101
101
  if (!fs.existsSync(path.join(vaultDir, "myco.yaml"))) {
102
102
  console.error(`No myco.yaml found in ${vaultDir}. Run 'myco init' first.`);
@@ -104,39 +104,39 @@ async function main() {
104
104
  }
105
105
  switch (cmd) {
106
106
  case "config":
107
- return (await import("./config-IO5WALOD.js")).run(args, vaultDir);
107
+ return (await import("./config-XPV5GDE4.js")).run(args, vaultDir);
108
108
  case "verify":
109
- return (await import("./verify-BGJVB3K2.js")).run(args, vaultDir);
109
+ return (await import("./verify-LMHNEYIP.js")).run(args, vaultDir);
110
110
  case "stats":
111
- return (await import("./stats-TYOZAOP2.js")).run(args, vaultDir);
111
+ return (await import("./stats-ARBLNEE3.js")).run(args, vaultDir);
112
112
  case "search":
113
- return (await import("./search-JOBYIW43.js")).run(args, vaultDir);
113
+ return (await import("./search-2A5AJVNG.js")).run(args, vaultDir);
114
114
  case "vectors":
115
- return (await import("./search-JOBYIW43.js")).runVectors(args, vaultDir);
115
+ return (await import("./search-2A5AJVNG.js")).runVectors(args, vaultDir);
116
116
  case "session":
117
- return (await import("./session-APO4A2C7.js")).run(args, vaultDir);
117
+ return (await import("./session-NKREOTEO.js")).run(args, vaultDir);
118
118
  case "setup-llm":
119
- return (await import("./setup-llm-QUWOSB7A.js")).run(args, vaultDir);
119
+ return (await import("./setup-llm-SLX5764H.js")).run(args, vaultDir);
120
120
  case "setup-digest":
121
121
  return (await import("./setup-digest-4KDSXAIV.js")).run(args, vaultDir);
122
122
  case "agent":
123
- return (await import("./agent-run-WK5NKBYA.js")).run(args, vaultDir);
123
+ return (await import("./agent-run-PQXC246Y.js")).run(args, vaultDir);
124
124
  case "task":
125
- return (await import("./agent-tasks-2E73GG3A.js")).run(args, vaultDir);
125
+ return (await import("./agent-tasks-323BZEBX.js")).run(args, vaultDir);
126
126
  case "team": {
127
127
  const sub = args[0];
128
- if (sub === "init") return (await import("./team-SNLC6FZM.js")).teamInit(vaultDir);
129
- if (sub === "upgrade") return (await import("./team-SNLC6FZM.js")).teamUpgrade(vaultDir);
128
+ if (sub === "init") return (await import("./team-3JKF7VAD.js")).teamInit(vaultDir);
129
+ if (sub === "upgrade") return (await import("./team-3JKF7VAD.js")).teamUpgrade(vaultDir);
130
130
  console.error("Usage: myco team <init|upgrade>");
131
131
  process.exit(1);
132
132
  break;
133
133
  }
134
134
  case "open":
135
- return (await import("./open-OYBKVBYX.js")).run(args, vaultDir);
135
+ return (await import("./open-4UGDPBKN.js")).run(args, vaultDir);
136
136
  case "restart":
137
- return (await import("./restart-EQHEJCGT.js")).run(args, vaultDir);
137
+ return (await import("./restart-RMIGKMA6.js")).run(args, vaultDir);
138
138
  case "logs":
139
- return (await import("./logs-KNKPQE5A.js")).run(args, vaultDir);
139
+ return (await import("./logs-7YVGGBIS.js")).run(args, vaultDir);
140
140
  default:
141
141
  console.error(`Unknown command: ${cmd}`);
142
142
  process.stdout.write(USAGE);
@@ -147,4 +147,4 @@ main().catch((err) => {
147
147
  console.error(`myco: ${err.message}`);
148
148
  process.exit(1);
149
149
  });
150
- //# sourceMappingURL=cli-LCTXK7N6.js.map
150
+ //# sourceMappingURL=cli-UWBAOHLL.js.map
@@ -2,14 +2,14 @@ import { createRequire as __cr } from 'node:module'; const require = __cr(import
2
2
  import {
3
3
  DaemonClient,
4
4
  resolveCliEntryPath
5
- } from "./chunk-QH5HS54N.js";
6
- import "./chunk-ST2D3SGM.js";
5
+ } from "./chunk-3WWJOTYG.js";
6
+ import "./chunk-AIYFHQRX.js";
7
7
  import "./chunk-LPUQPDC2.js";
8
- import "./chunk-I54KLC6H.js";
8
+ import "./chunk-FLLBJLHM.js";
9
9
  import "./chunk-UUHLLQXO.js";
10
10
  import "./chunk-PZUWP5VK.js";
11
11
  export {
12
12
  DaemonClient,
13
13
  resolveCliEntryPath
14
14
  };
15
- //# sourceMappingURL=client-S47ENM76.js.map
15
+ //# sourceMappingURL=client-SLDDMSKN.js.map
@@ -1,12 +1,15 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  withValue
4
- } from "./chunk-GFR542SM.js";
4
+ } from "./chunk-US4LNCAT.js";
5
5
  import {
6
6
  loadConfig,
7
7
  updateConfig
8
- } from "./chunk-NKQZ73LL.js";
9
- import "./chunk-I54KLC6H.js";
8
+ } from "./chunk-SRXTSI25.js";
9
+ import {
10
+ getAtPath
11
+ } from "./chunk-ZXZPJJN3.js";
12
+ import "./chunk-FLLBJLHM.js";
10
13
  import "./chunk-UUHLLQXO.js";
11
14
  import "./chunk-6LQIMRTC.js";
12
15
  import "./chunk-ODXLRR4U.js";
@@ -39,7 +42,7 @@ async function run(args, vaultDir) {
39
42
  }
40
43
  function configGet(dotPath, vaultDir) {
41
44
  const config = loadConfig(vaultDir);
42
- const value = walkPath(config, dotPath);
45
+ const value = getAtPath(config, dotPath);
43
46
  if (value === void 0) {
44
47
  console.error(`Key not found: ${dotPath}`);
45
48
  process.exit(1);
@@ -66,17 +69,6 @@ function configSet(dotPath, rawValue, vaultDir) {
66
69
  console.log("Note: restart the daemon for changes to take effect (myco restart)");
67
70
  }
68
71
  }
69
- function walkPath(obj, dotPath) {
70
- const segments = dotPath.split(".");
71
- let current = obj;
72
- for (const segment of segments) {
73
- if (current === null || current === void 0 || typeof current !== "object") {
74
- return void 0;
75
- }
76
- current = current[segment];
77
- }
78
- return current;
79
- }
80
72
  function parseValue(raw) {
81
73
  try {
82
74
  return JSON.parse(raw);
@@ -87,4 +79,4 @@ function parseValue(raw) {
87
79
  export {
88
80
  run
89
81
  };
90
- //# sourceMappingURL=config-IO5WALOD.js.map
82
+ //# sourceMappingURL=config-XPV5GDE4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/config.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport { loadConfig, updateConfig } from '../config/loader.js';\nimport { withValue } from '../config/updates.js';\nimport { getAtPath } from '../utils/dot-path.js';\n\nconst DAEMON_STATE_FILENAME = 'daemon.json';\n\nexport async function run(args: string[], vaultDir: string): Promise<void> {\n const [subcommand, key, ...rest] = args;\n\n if (subcommand === 'get') {\n if (!key) {\n console.error('Usage: myco config get <dot.path.key>');\n process.exit(1);\n }\n return configGet(key, vaultDir);\n }\n\n if (subcommand === 'set') {\n const value = rest[0];\n if (!key || value === undefined) {\n console.error('Usage: myco config set <dot.path.key> <value>');\n process.exit(1);\n }\n return configSet(key, value, vaultDir);\n }\n\n console.error('Usage: myco config <get|set> <dot.path.key> [value]');\n process.exit(1);\n}\n\nfunction configGet(dotPath: string, vaultDir: string): void {\n const config = loadConfig(vaultDir);\n const value = getAtPath(config as Record<string, unknown>, dotPath);\n if (value === undefined) {\n console.error(`Key not found: ${dotPath}`);\n process.exit(1);\n }\n console.log(typeof value === 'object' ? JSON.stringify(value, null, 2) : String(value));\n}\n\nfunction configSet(dotPath: string, rawValue: string, vaultDir: string): void {\n const value = parseValue(rawValue);\n\n try {\n updateConfig(vaultDir, (config) => withValue(config, dotPath, value));\n } catch (err) {\n if (err instanceof Error && 'issues' in err) {\n const issues = (err as { issues: Array<{ path: (string | number)[]; message: string }> }).issues;\n console.error('Validation error:');\n for (const issue of issues) {\n console.error(` ${issue.path.join('.')}: ${issue.message}`);\n }\n process.exit(1);\n }\n throw err;\n }\n\n console.log(`Set ${dotPath} = ${JSON.stringify(value)}`);\n\n if (fs.existsSync(path.join(vaultDir, DAEMON_STATE_FILENAME))) {\n console.log('Note: restart the daemon for changes to take effect (myco restart)');\n }\n}\n\n/** Parse a string value as JSON (number, boolean, array, object), falling back to raw string. */\nfunction parseValue(raw: string): unknown {\n try {\n return JSON.parse(raw);\n } catch {\n return raw;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ;AACf,OAAO,UAAU;AAKjB,IAAM,wBAAwB;AAE9B,eAAsB,IAAI,MAAgB,UAAiC;AACzE,QAAM,CAAC,YAAY,KAAK,GAAG,IAAI,IAAI;AAEnC,MAAI,eAAe,OAAO;AACxB,QAAI,CAAC,KAAK;AACR,cAAQ,MAAM,uCAAuC;AACrD,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,WAAO,UAAU,KAAK,QAAQ;AAAA,EAChC;AAEA,MAAI,eAAe,OAAO;AACxB,UAAM,QAAQ,KAAK,CAAC;AACpB,QAAI,CAAC,OAAO,UAAU,QAAW;AAC/B,cAAQ,MAAM,+CAA+C;AAC7D,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,WAAO,UAAU,KAAK,OAAO,QAAQ;AAAA,EACvC;AAEA,UAAQ,MAAM,qDAAqD;AACnE,UAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,UAAU,SAAiB,UAAwB;AAC1D,QAAM,SAAS,WAAW,QAAQ;AAClC,QAAM,QAAQ,UAAU,QAAmC,OAAO;AAClE,MAAI,UAAU,QAAW;AACvB,YAAQ,MAAM,kBAAkB,OAAO,EAAE;AACzC,YAAQ,KAAK,CAAC;AAAA,EAChB;AACA,UAAQ,IAAI,OAAO,UAAU,WAAW,KAAK,UAAU,OAAO,MAAM,CAAC,IAAI,OAAO,KAAK,CAAC;AACxF;AAEA,SAAS,UAAU,SAAiB,UAAkB,UAAwB;AAC5E,QAAM,QAAQ,WAAW,QAAQ;AAEjC,MAAI;AACF,iBAAa,UAAU,CAAC,WAAW,UAAU,QAAQ,SAAS,KAAK,CAAC;AAAA,EACtE,SAAS,KAAK;AACZ,QAAI,eAAe,SAAS,YAAY,KAAK;AAC3C,YAAM,SAAU,IAA0E;AAC1F,cAAQ,MAAM,mBAAmB;AACjC,iBAAW,SAAS,QAAQ;AAC1B,gBAAQ,MAAM,KAAK,MAAM,KAAK,KAAK,GAAG,CAAC,KAAK,MAAM,OAAO,EAAE;AAAA,MAC7D;AACA,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,UAAM;AAAA,EACR;AAEA,UAAQ,IAAI,OAAO,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,EAAE;AAEvD,MAAI,GAAG,WAAW,KAAK,KAAK,UAAU,qBAAqB,CAAC,GAAG;AAC7D,YAAQ,IAAI,oEAAoE;AAAA,EAClF;AACF;AAGA,SAAS,WAAW,KAAsB;AACxC,MAAI;AACF,WAAO,KAAK,MAAM,GAAG;AAAA,EACvB,QAAQ;AACN,WAAO;AAAA,EACT;AACF;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  detectSymbionts,
4
4
  loadManifests,
5
5
  resolvePackageRoot
6
- } from "./chunk-UVKQ62II.js";
6
+ } from "./chunk-NGROSFOH.js";
7
7
  import "./chunk-LPUQPDC2.js";
8
8
  import "./chunk-6LQIMRTC.js";
9
9
  import "./chunk-ODXLRR4U.js";
@@ -14,4 +14,4 @@ export {
14
14
  loadManifests,
15
15
  resolvePackageRoot
16
16
  };
17
- //# sourceMappingURL=detect-BEOIHGBC.js.map
17
+ //# sourceMappingURL=detect-PXNM6TA7.js.map
@@ -1,9 +1,9 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  checkLocalProvider
4
- } from "./chunk-6ZDJXSEO.js";
5
- import "./chunk-PMT2LSTQ.js";
6
- import "./chunk-I54KLC6H.js";
4
+ } from "./chunk-BPRIYNLE.js";
5
+ import "./chunk-FMRZ26U5.js";
6
+ import "./chunk-FLLBJLHM.js";
7
7
  import "./chunk-UUHLLQXO.js";
8
8
  import "./chunk-PZUWP5VK.js";
9
9
 
@@ -23,4 +23,4 @@ async function run(_args) {
23
23
  export {
24
24
  run
25
25
  };
26
- //# sourceMappingURL=detect-providers-2EY55EHK.js.map
26
+ //# sourceMappingURL=detect-providers-5KOPZ7J2.js.map
@@ -1,18 +1,18 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  isProcessAlive
4
- } from "./chunk-NCBLB2C6.js";
4
+ } from "./chunk-UEWMSIL3.js";
5
5
  import "./chunk-SAKJMNSR.js";
6
6
  import {
7
7
  MYCO_MCP_SERVER_NAME
8
- } from "./chunk-TMNFCUAD.js";
9
- import "./chunk-PMT2LSTQ.js";
10
- import "./chunk-NKQZ73LL.js";
8
+ } from "./chunk-LZP4IJB3.js";
9
+ import "./chunk-FMRZ26U5.js";
10
+ import "./chunk-SRXTSI25.js";
11
11
  import "./chunk-MYX5NCRH.js";
12
- import "./chunk-QH5HS54N.js";
13
- import "./chunk-ST2D3SGM.js";
12
+ import "./chunk-3WWJOTYG.js";
13
+ import "./chunk-AIYFHQRX.js";
14
14
  import "./chunk-LPUQPDC2.js";
15
- import "./chunk-I54KLC6H.js";
15
+ import "./chunk-FLLBJLHM.js";
16
16
  import "./chunk-UUHLLQXO.js";
17
17
  import "./chunk-6LQIMRTC.js";
18
18
  import "./chunk-ODXLRR4U.js";
@@ -33,8 +33,8 @@ async function checkVault(vaultDir) {
33
33
  return { check: { name: "Vault", status: "fail", detail: `${CONFIG_FILENAME} not found in ${vaultDir}`, fixable: false }, config: null };
34
34
  }
35
35
  try {
36
- const { loadConfig } = await import("./loader-V774GZU4.js");
37
- const config = loadConfig(vaultDir);
36
+ const { loadMergedConfig } = await import("./loader-H7OFASVC.js");
37
+ const config = loadMergedConfig(vaultDir);
38
38
  return { check: { name: "Vault", status: "ok", detail: `.myco/ (v${config.version})`, fixable: false }, config };
39
39
  } catch (err) {
40
40
  return { check: { name: "Vault", status: "fail", detail: `${CONFIG_FILENAME} parse error: ${err.message}`, fixable: false }, config: null };
@@ -72,7 +72,7 @@ async function checkIntelligence(config) {
72
72
  return { name: "Intelligence", status: "ok", detail: `${label} (SDK handles auth)`, fixable: false };
73
73
  }
74
74
  if (provider.type === "ollama" || provider.type === "lmstudio") {
75
- const { checkLocalProvider } = await import("./provider-check-WCM3SDTM.js");
75
+ const { checkLocalProvider } = await import("./provider-check-43LAMSMH.js");
76
76
  const status = await checkLocalProvider(provider.type, provider.base_url);
77
77
  if (!status.available) {
78
78
  return { name: "Intelligence", status: "warn", detail: `${label} (not reachable)`, fixable: false };
@@ -86,7 +86,7 @@ async function checkIntelligence(config) {
86
86
  }
87
87
  async function checkEmbeddings(config) {
88
88
  try {
89
- const { createEmbeddingProvider } = await import("./llm-SWDDQQWY.js");
89
+ const { createEmbeddingProvider } = await import("./llm-TH4NLIRM.js");
90
90
  const provider = createEmbeddingProvider(config.embedding);
91
91
  const available = await provider.isAvailable();
92
92
  const label = `${config.embedding.provider} / ${config.embedding.model}`;
@@ -100,8 +100,8 @@ async function checkEmbeddings(config) {
100
100
  }
101
101
  async function checkAgents(vaultDir, config) {
102
102
  try {
103
- const { detectSymbionts } = await import("./detect-BEOIHGBC.js");
104
- const { getEnabledSymbiontNames } = await import("./loader-V774GZU4.js");
103
+ const { detectSymbionts } = await import("./detect-PXNM6TA7.js");
104
+ const { getEnabledSymbiontNames } = await import("./loader-H7OFASVC.js");
105
105
  const projectRoot = path.dirname(vaultDir);
106
106
  const detected = detectSymbionts(projectRoot);
107
107
  const enabledNames = config ? getEnabledSymbiontNames(config) : null;
@@ -275,4 +275,4 @@ export {
275
275
  run,
276
276
  runChecks
277
277
  };
278
- //# sourceMappingURL=doctor-EE6GAC54.js.map
278
+ //# sourceMappingURL=doctor-UUUOVDZS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/doctor.ts"],"sourcesContent":["/**\n * CLI: myco doctor — check vault health and auto-repair fixable issues.\n *\n * Runs a series of health checks against the vault directory and reports\n * status. With --fix, attempts to repair issues it can handle automatically.\n */\n\nimport fs from 'node:fs';\nimport path from 'node:path';\nimport { isProcessAlive } from './shared.js';\nimport { MYCO_MCP_SERVER_NAME } from '../symbionts/installer.js';\n\n// --- Named constants (no magic literals) ---\n\n\n/** Filename of the vault config file. */\nconst CONFIG_FILENAME = 'myco.yaml';\n\n/** Filename of the daemon state file. */\nconst DAEMON_STATE_FILENAME = 'daemon.json';\n\n/** Filename of the SQLite database. */\nconst DB_FILENAME = 'myco.db';\n\n/** Column width for the check name in output. */\nconst NAME_COL_WIDTH = 17;\n\n/** Prefix for indented continuation lines (e.g. multi-line agent output). */\nconst CONTINUATION_INDENT = ' '.repeat(NAME_COL_WIDTH);\n\n// --- Types ---\n\nexport interface DoctorCheck {\n name: string;\n status: 'ok' | 'fail' | 'warn';\n detail: string;\n fixable: boolean;\n}\n\n// --- Checks ---\n\n/** Check that myco.yaml exists and parses. Returns the parsed config on success. */\nasync function checkVault(vaultDir: string): Promise<{ check: DoctorCheck; config: import('../config/schema.js').MycoConfig | null }> {\n const configPath = path.join(vaultDir, CONFIG_FILENAME);\n if (!fs.existsSync(configPath)) {\n return { check: { name: 'Vault', status: 'fail', detail: `${CONFIG_FILENAME} not found in ${vaultDir}`, fixable: false }, config: null };\n }\n try {\n const { loadMergedConfig } = await import('../config/loader.js');\n const config = loadMergedConfig(vaultDir);\n return { check: { name: 'Vault', status: 'ok', detail: `.myco/ (v${config.version})`, fixable: false }, config };\n } catch (err) {\n return { check: { name: 'Vault', status: 'fail', detail: `${CONFIG_FILENAME} parse error: ${(err as Error).message}`, fixable: false }, config: null };\n }\n}\n\n/** Check that the SQLite database exists and can be queried. */\nasync function checkDatabase(vaultDir: string): Promise<DoctorCheck> {\n const dbPath = path.join(vaultDir, DB_FILENAME);\n if (!fs.existsSync(dbPath)) {\n return { name: 'Database', status: 'fail', detail: `${DB_FILENAME} not found — run \\`myco init\\``, fixable: false };\n }\n try {\n const { initDatabase, closeDatabase, vaultDbPath } = await import('../db/client.js');\n const db = initDatabase(vaultDbPath(vaultDir));\n const row = db.prepare('SELECT count(*) AS cnt FROM sessions').get() as { cnt: number } | undefined;\n const count = row?.cnt ?? 0;\n closeDatabase();\n return { name: 'Database', status: 'ok', detail: `${DB_FILENAME} (${count.toLocaleString()} sessions)`, fixable: false };\n } catch (err) {\n // Ensure DB is closed even on error\n try { const { closeDatabase } = await import('../db/client.js'); closeDatabase(); } catch { /* ignore */ }\n return { name: 'Database', status: 'fail', detail: `Database error: ${(err as Error).message}`, fixable: false };\n }\n}\n\n/** Check that the intelligence (agent) provider is configured. */\nasync function checkIntelligence(config: import('../config/schema.js').MycoConfig): Promise<DoctorCheck> {\n try {\n const provider = config.agent.provider;\n\n if (!provider) {\n return { name: 'Intelligence', status: 'warn', detail: 'No agent provider configured — run `myco init` to set up', fixable: false };\n }\n\n const label = `${provider.type}${provider.model ? ` / ${provider.model}` : ''}`;\n\n if (provider.type === 'anthropic') {\n return { name: 'Intelligence', status: 'ok', detail: `${label} (SDK handles auth)`, fixable: false };\n }\n\n // Local provider — check reachability\n if (provider.type === 'ollama' || provider.type === 'lmstudio') {\n const { checkLocalProvider } = await import('../intelligence/provider-check.js');\n const status = await checkLocalProvider(provider.type, provider.base_url);\n if (!status.available) {\n return { name: 'Intelligence', status: 'warn', detail: `${label} (not reachable)`, fixable: false };\n }\n return { name: 'Intelligence', status: 'ok', detail: label, fixable: false };\n }\n\n return { name: 'Intelligence', status: 'ok', detail: label, fixable: false };\n } catch (err) {\n return { name: 'Intelligence', status: 'fail', detail: `Intelligence check failed: ${(err as Error).message}`, fixable: false };\n }\n}\n\n/** Check that the embedding provider is configured and reachable. */\nasync function checkEmbeddings(config: import('../config/schema.js').MycoConfig): Promise<DoctorCheck> {\n try {\n const { createEmbeddingProvider } = await import('../intelligence/llm.js');\n const provider = createEmbeddingProvider(config.embedding);\n const available = await provider.isAvailable();\n const label = `${config.embedding.provider} / ${config.embedding.model}`;\n if (available) {\n return { name: 'Embeddings', status: 'ok', detail: label, fixable: false };\n }\n return { name: 'Embeddings', status: 'warn', detail: `${label} (not reachable)`, fixable: false };\n } catch (err) {\n return { name: 'Embeddings', status: 'fail', detail: `Embedding check failed: ${(err as Error).message}`, fixable: false };\n }\n}\n\n/** Check symbiont detection and registration status. */\nasync function checkAgents(vaultDir: string, config: import('../config/schema.js').MycoConfig | null): Promise<DoctorCheck[]> {\n try {\n const { detectSymbionts } = await import('../symbionts/detect.js');\n const { getEnabledSymbiontNames } = await import('../config/loader.js');\n const projectRoot = path.dirname(vaultDir);\n const detected = detectSymbionts(projectRoot);\n\n const enabledNames = config ? getEnabledSymbiontNames(config) : null;\n\n if (detected.length === 0 && !enabledNames) {\n return [{ name: 'Agents', status: 'warn', detail: 'No symbionts detected', fixable: false }];\n }\n\n const checks: DoctorCheck[] = [];\n for (const d of detected) {\n const registered = isSymbiontRegistered(d, projectRoot);\n const enabled = enabledNames ? enabledNames.has(d.manifest.name) : registered;\n\n if (enabled && registered) {\n checks.push({\n name: checks.length === 0 ? 'Agents' : '',\n status: 'ok',\n detail: `${d.manifest.displayName} (enabled, registered)`,\n fixable: false,\n });\n } else if (enabled && !registered) {\n checks.push({\n name: checks.length === 0 ? 'Agents' : '',\n status: 'warn',\n detail: `${d.manifest.displayName} (enabled but not registered — run \\`myco update\\`)`,\n fixable: false,\n });\n } else if (!enabled && registered) {\n checks.push({\n name: checks.length === 0 ? 'Agents' : '',\n status: 'warn',\n detail: `${d.manifest.displayName} (registered but not enabled — run \\`myco remove --symbiont ${d.manifest.name}\\`)`,\n fixable: false,\n });\n } else {\n // Detected but neither enabled nor registered\n checks.push({\n name: checks.length === 0 ? 'Agents' : '',\n status: 'ok',\n detail: `${d.manifest.displayName} (detected, not enabled)`,\n fixable: false,\n });\n }\n }\n\n if (checks.length === 0) {\n return [{ name: 'Agents', status: 'warn', detail: 'No symbionts detected or enabled', fixable: false }];\n }\n\n return checks;\n } catch (err) {\n return [{ name: 'Agents', status: 'fail', detail: `Agent check failed: ${(err as Error).message}`, fixable: false }];\n }\n}\n\n/** Check if a symbiont has the Myco MCP server registered. */\nfunction isSymbiontRegistered(\n d: import('../symbionts/detect.js').DetectedSymbiont,\n projectRoot: string,\n): boolean {\n try {\n const mcpTarget = d.manifest.registration?.mcpTarget;\n if (!mcpTarget) return false;\n\n const mcpFile = path.join(projectRoot, mcpTarget);\n const raw = fs.readFileSync(mcpFile, 'utf-8');\n\n // TOML: check for section header\n if (mcpTarget.endsWith('.toml')) {\n return raw.includes(`[mcp_servers.${MYCO_MCP_SERVER_NAME}]`);\n }\n\n // JSON: check for server entry under the configured key (defaults to 'mcpServers').\n // opencode uses 'mcp' — without the manifest lookup, doctor reports opencode as\n // unregistered even after a successful install.\n const config = JSON.parse(raw) as Record<string, unknown>;\n const serversKey = d.manifest.registration?.mcpServersKey ?? 'mcpServers';\n const servers = config[serversKey] as Record<string, unknown> | undefined;\n return !!servers?.[MYCO_MCP_SERVER_NAME];\n } catch { /* config missing or malformed */ }\n return false;\n}\n\n/** Check the daemon state file and process liveness. */\nasync function checkDaemon(vaultDir: string): Promise<DoctorCheck> {\n const daemonFile = path.join(vaultDir, DAEMON_STATE_FILENAME);\n if (!fs.existsSync(daemonFile)) {\n return { name: 'Daemon', status: 'warn', detail: 'Not running (no daemon.json)', fixable: false };\n }\n try {\n const state = JSON.parse(fs.readFileSync(daemonFile, 'utf-8')) as { pid?: number; port?: number };\n if (!state.pid) {\n return { name: 'Daemon', status: 'warn', detail: 'daemon.json exists but no PID', fixable: true };\n }\n if (isProcessAlive(state.pid)) {\n return { name: 'Daemon', status: 'ok', detail: `PID ${state.pid}, port ${state.port ?? 'unknown'}`, fixable: false };\n }\n return { name: 'Daemon', status: 'warn', detail: `Stale daemon.json (PID ${state.pid} not running)`, fixable: true };\n } catch (err) {\n return { name: 'Daemon', status: 'fail', detail: `daemon.json parse error: ${(err as Error).message}`, fixable: true };\n }\n}\n\n\n// --- Public API ---\n\n/** Run all health checks against a vault directory. */\nexport async function runChecks(vaultDir: string): Promise<DoctorCheck[]> {\n const { check: vaultCheck, config } = await checkVault(vaultDir);\n const checks: DoctorCheck[] = [vaultCheck];\n\n if (!config) {\n checks.push(\n { name: 'Database', status: 'fail', detail: 'Skipped (vault check failed)', fixable: false },\n { name: 'Intelligence', status: 'fail', detail: 'Skipped (vault check failed)', fixable: false },\n { name: 'Embeddings', status: 'fail', detail: 'Skipped (vault check failed)', fixable: false },\n { name: 'Agents', status: 'fail', detail: 'Skipped (vault check failed)', fixable: false },\n await checkDaemon(vaultDir),\n );\n return checks;\n }\n\n checks.push(await checkDatabase(vaultDir));\n checks.push(await checkIntelligence(config));\n checks.push(await checkEmbeddings(config));\n checks.push(...await checkAgents(vaultDir, config));\n checks.push(await checkDaemon(vaultDir));\n\n return checks;\n}\n\n/** Auto-repair fixable issues. Returns descriptions of actions taken. */\nexport async function fix(vaultDir: string, checks: DoctorCheck[]): Promise<string[]> {\n const actions: string[] = [];\n\n for (const check of checks) {\n if (!check.fixable || check.status === 'ok') continue;\n\n // Fix stale daemon.json\n if (check.name === 'Daemon' && check.detail.includes('Stale')) {\n const daemonFile = path.join(vaultDir, DAEMON_STATE_FILENAME);\n fs.unlinkSync(daemonFile);\n actions.push('Removed stale daemon.json');\n }\n\n // Fix malformed daemon.json\n if (check.name === 'Daemon' && check.detail.includes('parse error')) {\n const daemonFile = path.join(vaultDir, DAEMON_STATE_FILENAME);\n fs.unlinkSync(daemonFile);\n actions.push('Removed malformed daemon.json');\n }\n\n // Advise on database issues\n if (check.name === 'Database' && check.status === 'fail') {\n actions.push('Run `myco init` to initialize the database');\n }\n }\n\n return actions;\n}\n\n// --- Output formatting ---\n\n/** Status label width (visible characters). */\nconst STATUS_COL_WIDTH = 6;\n\nconst STATUS_LABELS: Record<DoctorCheck['status'], { text: string; color: string }> = {\n ok: { text: 'ok', color: '\\x1b[32m' },\n fail: { text: 'FAIL', color: '\\x1b[31m' },\n warn: { text: '!!', color: '\\x1b[33m' },\n};\n\nfunction formatCheck(check: DoctorCheck): string {\n const name = check.name ? check.name.padEnd(NAME_COL_WIDTH) : CONTINUATION_INDENT;\n const { text, color } = STATUS_LABELS[check.status];\n const paddedText = text.padEnd(STATUS_COL_WIDTH);\n return ` ${name}${color}${paddedText}\\x1b[0m${check.detail}`;\n}\n\n// --- CLI entry point ---\n\nexport async function run(args: string[], vaultDir: string): Promise<void> {\n const shouldFix = args.includes('--fix');\n\n console.log('\\nmyco doctor\\n');\n\n const checks = await runChecks(vaultDir);\n\n for (const check of checks) {\n console.log(formatCheck(check));\n }\n\n const issues = checks.filter(c => c.status !== 'ok');\n const fixable = issues.filter(c => c.fixable);\n\n console.log('');\n\n if (issues.length === 0) {\n console.log(' All checks passed.\\n');\n return;\n }\n\n console.log(` ${issues.length} issue(s) found.`);\n\n if (shouldFix) {\n const actions = await fix(vaultDir, checks);\n if (actions.length > 0) {\n console.log('');\n for (const action of actions) {\n console.log(` Fixed: ${action}`);\n }\n console.log('');\n } else {\n console.log(' No auto-fixable issues.\\n');\n }\n } else if (fixable.length > 0) {\n console.log(` Run \\`myco doctor --fix\\` to repair ${fixable.length} fixable issue(s).\\n`);\n } else {\n console.log('');\n }\n}\n"],"mappings":"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","names":[]}
@@ -23,6 +23,7 @@ import {
23
23
  insertGraphEdge,
24
24
  insertLineage,
25
25
  insertReport,
26
+ insertResolutionEvent,
26
27
  insertRun,
27
28
  insertSkillRecord,
28
29
  listCandidates,
@@ -40,23 +41,20 @@ import {
40
41
  updateSkillRecord,
41
42
  upsertDigestExtract,
42
43
  validateSkillContent
43
- } from "./chunk-P5VNHGVZ.js";
44
+ } from "./chunk-FGY7J6EZ.js";
44
45
  import {
45
46
  fullTextSearch,
46
47
  hydrateSearchResults
47
- } from "./chunk-7ONVLO43.js";
48
- import "./chunk-KYH4V4ML.js";
48
+ } from "./chunk-5XIVBO25.js";
49
+ import "./chunk-57O67XVF.js";
49
50
  import {
50
51
  getDefaultTask,
51
52
  loadSystemPrompt
52
- } from "./chunk-Q4QD6LJT.js";
53
+ } from "./chunk-4M7EWPIA.js";
53
54
  import {
54
55
  insertTurn,
55
56
  updateTurn
56
57
  } from "./chunk-6RFZWV4R.js";
57
- import {
58
- insertResolutionEvent
59
- } from "./chunk-VQF5E4ZX.js";
60
58
  import {
61
59
  cleanupStagedSkill,
62
60
  readStagedManifest,
@@ -71,19 +69,18 @@ import {
71
69
  insertSpore,
72
70
  listSpores,
73
71
  updateSporeStatus
74
- } from "./chunk-FGKCE5AE.js";
72
+ } from "./chunk-4YFKBL3F.js";
75
73
  import {
76
74
  getActiveSessionIds,
77
75
  listSessions,
78
76
  updateSession
79
- } from "./chunk-Q6OEZM3S.js";
80
- import "./chunk-AULBWINA.js";
77
+ } from "./chunk-EVDQKYCG.js";
81
78
  import {
82
79
  AGENT_SETTABLE_STATUSES,
83
80
  CANDIDATE_STATUS,
84
81
  createSchema
85
- } from "./chunk-6DDRJQ4X.js";
86
- import "./chunk-NKQZ73LL.js";
82
+ } from "./chunk-MYOZLMB2.js";
83
+ import "./chunk-SRXTSI25.js";
87
84
  import {
88
85
  getDatabase,
89
86
  initDatabase,
@@ -91,7 +88,7 @@ import {
91
88
  } from "./chunk-MYX5NCRH.js";
92
89
  import {
93
90
  getPluginVersion
94
- } from "./chunk-ST2D3SGM.js";
91
+ } from "./chunk-AIYFHQRX.js";
95
92
  import {
96
93
  findPackageRoot
97
94
  } from "./chunk-LPUQPDC2.js";
@@ -103,7 +100,7 @@ import {
103
100
  SEARCH_SIMILARITY_THRESHOLD,
104
101
  TEAM_SOURCE_PREFIX,
105
102
  epochSeconds
106
- } from "./chunk-I54KLC6H.js";
103
+ } from "./chunk-FLLBJLHM.js";
107
104
  import "./chunk-UUHLLQXO.js";
108
105
  import "./chunk-6LQIMRTC.js";
109
106
  import "./chunk-ODXLRR4U.js";
@@ -750,7 +747,7 @@ function createSkillTools(deps) {
750
747
  );
751
748
  }
752
749
  try {
753
- const { syncSkillSymlinks } = await import("./installer-WMTB4NCX.js");
750
+ const { syncSkillSymlinks } = await import("./installer-I6KRGJOO.js");
754
751
  syncSkillSymlinks(root, params.name, { remove: true });
755
752
  } catch (rollbackErr) {
756
753
  console.warn(
@@ -768,7 +765,7 @@ function createSkillTools(deps) {
768
765
  };
769
766
  }
770
767
  try {
771
- const { syncSkillSymlinks } = await import("./installer-WMTB4NCX.js");
768
+ const { syncSkillSymlinks } = await import("./installer-I6KRGJOO.js");
772
769
  syncSkillSymlinks(root, params.name);
773
770
  } catch (err) {
774
771
  console.warn(
@@ -1035,7 +1032,7 @@ function createSkillTools(deps) {
1035
1032
  console.warn("[vault_skill_records] Failed to remove skill directory:", err instanceof Error ? err.message : err);
1036
1033
  }
1037
1034
  try {
1038
- const { syncSkillSymlinks } = await import("./installer-WMTB4NCX.js");
1035
+ const { syncSkillSymlinks } = await import("./installer-I6KRGJOO.js");
1039
1036
  syncSkillSymlinks(root, result.name, { remove: true });
1040
1037
  } catch (err) {
1041
1038
  console.warn("[vault_skill_records] Failed to remove symlinks:", err instanceof Error ? err.message : err);
@@ -1153,7 +1150,7 @@ function createSkillTools(deps) {
1153
1150
  return textResult({ error: `Failed to write skill file: ${err instanceof Error ? err.message : String(err)}` });
1154
1151
  }
1155
1152
  try {
1156
- const { syncSkillSymlinks } = await import("./installer-WMTB4NCX.js");
1153
+ const { syncSkillSymlinks } = await import("./installer-I6KRGJOO.js");
1157
1154
  syncSkillSymlinks(root, args.name);
1158
1155
  } catch (err) {
1159
1156
  console.warn("[vault_write_skill] syncSkillSymlinks failed:", err instanceof Error ? err.message : err);
@@ -1983,15 +1980,17 @@ var MCP_SERVER_NAME = "myco-vault";
1983
1980
  var PERSIST_SESSION = true;
1984
1981
  var PROMPT_SECTION_PRIOR_PHASES = "## Prior Phase Results";
1985
1982
  var PROMPT_SECTION_CURRENT_PHASE = "## Current Phase: ";
1986
- var DEBUG_TOOL_CALLS = process.env.MYCO_AGENT_DEBUG === "1";
1987
1983
  var TOOL_DEBUG_PREVIEW_CHARS = 240;
1984
+ function debugToolCallsEnabled() {
1985
+ return process.env.MYCO_AGENT_DEBUG === "1";
1986
+ }
1988
1987
  function previewPayload(value) {
1989
1988
  const str = typeof value === "string" ? value : JSON.stringify(value);
1990
1989
  if (str === void 0) return "";
1991
1990
  return str.length > TOOL_DEBUG_PREVIEW_CHARS ? `${str.slice(0, TOOL_DEBUG_PREVIEW_CHARS)}\u2026(${str.length - TOOL_DEBUG_PREVIEW_CHARS} more chars)` : str;
1992
1991
  }
1993
1992
  function logToolUseBlocks(phaseName, message) {
1994
- if (!DEBUG_TOOL_CALLS) return;
1993
+ if (!debugToolCallsEnabled()) return;
1995
1994
  const blocks = message.message?.content;
1996
1995
  if (!Array.isArray(blocks)) return;
1997
1996
  for (const block of blocks) {
@@ -2003,7 +2002,7 @@ function logToolUseBlocks(phaseName, message) {
2003
2002
  }
2004
2003
  }
2005
2004
  function logToolResultBlocks(phaseName, message) {
2006
- if (!DEBUG_TOOL_CALLS) return;
2005
+ if (!debugToolCallsEnabled()) return;
2007
2006
  const blocks = message.message?.content;
2008
2007
  if (!Array.isArray(blocks)) return;
2009
2008
  for (const block of blocks) {
@@ -2470,4 +2469,4 @@ export {
2470
2469
  computeWaves,
2471
2470
  runAgent
2472
2471
  };
2473
- //# sourceMappingURL=executor-NXNSUEMQ.js.map
2472
+ //# sourceMappingURL=executor-J4IBXSBY.js.map