@goondocks/myco 0.21.1 → 0.21.2

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 (111) hide show
  1. package/dist/{agent-eval-YK2VP2S4.js → agent-eval-2MQKTXX3.js} +4 -4
  2. package/dist/{agent-run-GEJBD2YD.js → agent-run-XJBTSVJR.js} +4 -4
  3. package/dist/{agent-tasks-5XSRGTRX.js → agent-tasks-7MWBZOC7.js} +4 -4
  4. package/dist/{chunk-VRI56337.js → chunk-4D22KTXY.js} +2 -2
  5. package/dist/{chunk-KTTSXYEK.js → chunk-6FBLL7MD.js} +8 -2
  6. package/dist/chunk-6FBLL7MD.js.map +1 -0
  7. package/dist/{chunk-N7Z3LUEZ.js → chunk-DBBO6FHE.js} +2 -10
  8. package/dist/{chunk-N7Z3LUEZ.js.map → chunk-DBBO6FHE.js.map} +1 -1
  9. package/dist/{chunk-EEOJWLMP.js → chunk-DMPCC7V6.js} +15 -3
  10. package/dist/chunk-DMPCC7V6.js.map +1 -0
  11. package/dist/{chunk-XL75KZGI.js → chunk-EKZG2MCD.js} +7 -3
  12. package/dist/chunk-EKZG2MCD.js.map +1 -0
  13. package/dist/{chunk-X2IRGXGF.js → chunk-HCT7RMM2.js} +154 -24
  14. package/dist/chunk-HCT7RMM2.js.map +1 -0
  15. package/dist/{chunk-NFO7BRCO.js → chunk-IMW5TJ3O.js} +5 -4
  16. package/dist/chunk-IMW5TJ3O.js.map +1 -0
  17. package/dist/{chunk-OZ3FBAK5.js → chunk-TFRUDNLI.js} +2 -2
  18. package/dist/{chunk-6ALVMIB4.js → chunk-TMAXWERS.js} +85 -2
  19. package/dist/chunk-TMAXWERS.js.map +1 -0
  20. package/dist/{chunk-QDLVIW2O.js → chunk-W5L5IHP5.js} +2 -2
  21. package/dist/{chunk-ENZR5NG7.js → chunk-Z55WGA2J.js} +2 -2
  22. package/dist/{cli-HSLIG7EX.js → cli-DDHTHU2J.js} +35 -35
  23. package/dist/{client-Z43DNLJH.js → client-PQU53UQU.js} +5 -3
  24. package/dist/{doctor-HJCWHAU4.js → doctor-QK6KFY6H.js} +4 -4
  25. package/dist/{executor-DO6QFC6G.js → executor-FJCMNSXM.js} +5 -5
  26. package/dist/{init-4KVK7W2E.js → init-GQPD6HHX.js} +5 -5
  27. package/dist/{main-4J4QZZTZ.js → main-4HKTZFIM.js} +365 -142
  28. package/dist/main-4HKTZFIM.js.map +1 -0
  29. package/dist/{open-7TXJQM3H.js → open-3P3DDAOA.js} +4 -4
  30. package/dist/{post-compact-7AEFVCZS.js → post-compact-QA5LME2J.js} +4 -4
  31. package/dist/{post-tool-use-TZINWWDH.js → post-tool-use-QRZMPNYL.js} +3 -3
  32. package/dist/{post-tool-use-failure-TCFEU2GI.js → post-tool-use-failure-XNHIKBZG.js} +4 -4
  33. package/dist/{pre-compact-LO2VZCGR.js → pre-compact-HDV6X5QM.js} +4 -4
  34. package/dist/{remove-F77AAALE.js → remove-USQDLGTJ.js} +4 -4
  35. package/dist/{restart-UEFDPMLT.js → restart-FQLZE2TW.js} +5 -5
  36. package/dist/{search-NHNVUAQQ.js → search-5COKV6TD.js} +4 -4
  37. package/dist/{server-AZJSTQEK.js → server-KRMBRW4T.js} +22 -6
  38. package/dist/{server-AZJSTQEK.js.map → server-KRMBRW4T.js.map} +1 -1
  39. package/dist/{session-3HLC5KOD.js → session-NJCUW3OX.js} +4 -4
  40. package/dist/{session-end-FS46UARX.js → session-end-XD27GRYF.js} +3 -3
  41. package/dist/{session-start-46KPFV2H.js → session-start-RDTXUSYL.js} +7 -7
  42. package/dist/{setup-llm-JMWSNQ2C.js → setup-llm-FYPPJI6W.js} +4 -4
  43. package/dist/src/agent/definitions/tasks/skill-evolve.yaml +4 -4
  44. package/dist/src/cli.js +1 -1
  45. package/dist/src/daemon/main.js +1 -1
  46. package/dist/src/hooks/post-tool-use.js +1 -1
  47. package/dist/src/hooks/session-end.js +1 -1
  48. package/dist/src/hooks/session-start.js +1 -1
  49. package/dist/src/hooks/stop.js +1 -1
  50. package/dist/src/hooks/user-prompt-submit.js +1 -1
  51. package/dist/src/mcp/server.js +1 -1
  52. package/dist/src/symbionts/templates/opencode/plugin.ts +41 -1
  53. package/dist/src/symbionts/templates/pi/plugin.ts +12 -1
  54. package/dist/{stats-MKMETHMA.js → stats-JCLZLA5G.js} +5 -5
  55. package/dist/{stop-OUEX6KA4.js → stop-B7XCXEM5.js} +3 -3
  56. package/dist/{stop-failure-2BWVNZEG.js → stop-failure-R6QZCUOZ.js} +4 -4
  57. package/dist/{subagent-start-J4VV6DEE.js → subagent-start-N7A622F3.js} +4 -4
  58. package/dist/{subagent-stop-JMLVEPIA.js → subagent-stop-SVOG5MZJ.js} +4 -4
  59. package/dist/{task-completed-65CHMMKA.js → task-completed-3DL5LJXF.js} +4 -4
  60. package/dist/{team-U2LDKIS4.js → team-VJ3M263F.js} +2 -2
  61. package/dist/ui/assets/{index-BUGor9dk.js → index-O1kNWlWM.js} +119 -119
  62. package/dist/ui/assets/index-z2Jm8i4A.css +1 -0
  63. package/dist/ui/index.html +2 -2
  64. package/dist/{update-ZSHVXWSQ.js → update-TVXAUJMZ.js} +42 -8
  65. package/dist/update-TVXAUJMZ.js.map +1 -0
  66. package/dist/{user-prompt-submit-APMO6FVU.js → user-prompt-submit-KYO2VGLB.js} +7 -6
  67. package/dist/user-prompt-submit-KYO2VGLB.js.map +1 -0
  68. package/dist/{version-TXPPS3L5.js → version-LDFEALUJ.js} +2 -2
  69. package/package.json +1 -1
  70. package/dist/chunk-6ALVMIB4.js.map +0 -1
  71. package/dist/chunk-EEOJWLMP.js.map +0 -1
  72. package/dist/chunk-KTTSXYEK.js.map +0 -1
  73. package/dist/chunk-NFO7BRCO.js.map +0 -1
  74. package/dist/chunk-X2IRGXGF.js.map +0 -1
  75. package/dist/chunk-XL75KZGI.js.map +0 -1
  76. package/dist/main-4J4QZZTZ.js.map +0 -1
  77. package/dist/ui/assets/index-_OP4ifzH.css +0 -1
  78. package/dist/update-ZSHVXWSQ.js.map +0 -1
  79. package/dist/user-prompt-submit-APMO6FVU.js.map +0 -1
  80. /package/dist/{agent-eval-YK2VP2S4.js.map → agent-eval-2MQKTXX3.js.map} +0 -0
  81. /package/dist/{agent-run-GEJBD2YD.js.map → agent-run-XJBTSVJR.js.map} +0 -0
  82. /package/dist/{agent-tasks-5XSRGTRX.js.map → agent-tasks-7MWBZOC7.js.map} +0 -0
  83. /package/dist/{chunk-VRI56337.js.map → chunk-4D22KTXY.js.map} +0 -0
  84. /package/dist/{chunk-OZ3FBAK5.js.map → chunk-TFRUDNLI.js.map} +0 -0
  85. /package/dist/{chunk-QDLVIW2O.js.map → chunk-W5L5IHP5.js.map} +0 -0
  86. /package/dist/{chunk-ENZR5NG7.js.map → chunk-Z55WGA2J.js.map} +0 -0
  87. /package/dist/{cli-HSLIG7EX.js.map → cli-DDHTHU2J.js.map} +0 -0
  88. /package/dist/{client-Z43DNLJH.js.map → client-PQU53UQU.js.map} +0 -0
  89. /package/dist/{doctor-HJCWHAU4.js.map → doctor-QK6KFY6H.js.map} +0 -0
  90. /package/dist/{executor-DO6QFC6G.js.map → executor-FJCMNSXM.js.map} +0 -0
  91. /package/dist/{init-4KVK7W2E.js.map → init-GQPD6HHX.js.map} +0 -0
  92. /package/dist/{open-7TXJQM3H.js.map → open-3P3DDAOA.js.map} +0 -0
  93. /package/dist/{post-compact-7AEFVCZS.js.map → post-compact-QA5LME2J.js.map} +0 -0
  94. /package/dist/{post-tool-use-TZINWWDH.js.map → post-tool-use-QRZMPNYL.js.map} +0 -0
  95. /package/dist/{post-tool-use-failure-TCFEU2GI.js.map → post-tool-use-failure-XNHIKBZG.js.map} +0 -0
  96. /package/dist/{pre-compact-LO2VZCGR.js.map → pre-compact-HDV6X5QM.js.map} +0 -0
  97. /package/dist/{remove-F77AAALE.js.map → remove-USQDLGTJ.js.map} +0 -0
  98. /package/dist/{restart-UEFDPMLT.js.map → restart-FQLZE2TW.js.map} +0 -0
  99. /package/dist/{search-NHNVUAQQ.js.map → search-5COKV6TD.js.map} +0 -0
  100. /package/dist/{session-3HLC5KOD.js.map → session-NJCUW3OX.js.map} +0 -0
  101. /package/dist/{session-end-FS46UARX.js.map → session-end-XD27GRYF.js.map} +0 -0
  102. /package/dist/{session-start-46KPFV2H.js.map → session-start-RDTXUSYL.js.map} +0 -0
  103. /package/dist/{setup-llm-JMWSNQ2C.js.map → setup-llm-FYPPJI6W.js.map} +0 -0
  104. /package/dist/{stats-MKMETHMA.js.map → stats-JCLZLA5G.js.map} +0 -0
  105. /package/dist/{stop-OUEX6KA4.js.map → stop-B7XCXEM5.js.map} +0 -0
  106. /package/dist/{stop-failure-2BWVNZEG.js.map → stop-failure-R6QZCUOZ.js.map} +0 -0
  107. /package/dist/{subagent-start-J4VV6DEE.js.map → subagent-start-N7A622F3.js.map} +0 -0
  108. /package/dist/{subagent-stop-JMLVEPIA.js.map → subagent-stop-SVOG5MZJ.js.map} +0 -0
  109. /package/dist/{task-completed-65CHMMKA.js.map → task-completed-3DL5LJXF.js.map} +0 -0
  110. /package/dist/{team-U2LDKIS4.js.map → team-VJ3M263F.js.map} +0 -0
  111. /package/dist/{version-TXPPS3L5.js.map → version-LDFEALUJ.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  initVaultDb
4
- } from "./chunk-QDLVIW2O.js";
4
+ } from "./chunk-W5L5IHP5.js";
5
5
  import "./chunk-SAKJMNSR.js";
6
6
  import "./chunk-OTQH5KZW.js";
7
7
  import "./chunk-X3IGT5RV.js";
@@ -13,8 +13,8 @@ import "./chunk-53RPGOEN.js";
13
13
  import "./chunk-OUJSQSKE.js";
14
14
  import "./chunk-POEPHBQK.js";
15
15
  import "./chunk-MYX5NCRH.js";
16
- import "./chunk-KTTSXYEK.js";
17
- import "./chunk-ENZR5NG7.js";
16
+ import "./chunk-6FBLL7MD.js";
17
+ import "./chunk-Z55WGA2J.js";
18
18
  import "./chunk-LPUQPDC2.js";
19
19
  import "./chunk-6C6QZ4PM.js";
20
20
  import "./chunk-UUHLLQXO.js";
@@ -72,4 +72,4 @@ ${target.summary}`);
72
72
  export {
73
73
  run
74
74
  };
75
- //# sourceMappingURL=session-3HLC5KOD.js.map
75
+ //# sourceMappingURL=session-NJCUW3OX.js.map
@@ -9,8 +9,8 @@ import {
9
9
  } from "./chunk-TSM6VESW.js";
10
10
  import {
11
11
  DaemonClient
12
- } from "./chunk-KTTSXYEK.js";
13
- import "./chunk-ENZR5NG7.js";
12
+ } from "./chunk-6FBLL7MD.js";
13
+ import "./chunk-Z55WGA2J.js";
14
14
  import "./chunk-Z66IT5KL.js";
15
15
  import "./chunk-LPUQPDC2.js";
16
16
  import "./chunk-6C6QZ4PM.js";
@@ -41,4 +41,4 @@ async function main() {
41
41
  export {
42
42
  main
43
43
  };
44
- //# sourceMappingURL=session-end-FS46UARX.js.map
44
+ //# sourceMappingURL=session-end-XD27GRYF.js.map
@@ -2,17 +2,17 @@ import { createRequire as __cr } from 'node:module'; const require = __cr(import
2
2
  import {
3
3
  composeSessionStartContext,
4
4
  shouldInjectSessionStartDigest
5
- } from "./chunk-OZ3FBAK5.js";
5
+ } from "./chunk-TFRUDNLI.js";
6
6
  import {
7
7
  getCortexInstructions,
8
8
  shouldInjectCortex
9
- } from "./chunk-N7Z3LUEZ.js";
9
+ } from "./chunk-DBBO6FHE.js";
10
10
  import "./chunk-RQSJLWP4.js";
11
11
  import {
12
12
  evaluateSessionCaptureRules,
13
13
  readTranscriptMeta
14
- } from "./chunk-XL75KZGI.js";
15
- import "./chunk-EEOJWLMP.js";
14
+ } from "./chunk-EKZG2MCD.js";
15
+ import "./chunk-DMPCC7V6.js";
16
16
  import {
17
17
  createSchema
18
18
  } from "./chunk-DTWUHHFI.js";
@@ -35,8 +35,8 @@ import {
35
35
  } from "./chunk-TSM6VESW.js";
36
36
  import {
37
37
  DaemonClient
38
- } from "./chunk-KTTSXYEK.js";
39
- import "./chunk-ENZR5NG7.js";
38
+ } from "./chunk-6FBLL7MD.js";
39
+ import "./chunk-Z55WGA2J.js";
40
40
  import {
41
41
  loadManifests
42
42
  } from "./chunk-Z66IT5KL.js";
@@ -131,4 +131,4 @@ async function main() {
131
131
  export {
132
132
  main
133
133
  };
134
- //# sourceMappingURL=session-start-46KPFV2H.js.map
134
+ //# sourceMappingURL=session-start-RDTXUSYL.js.map
@@ -2,7 +2,7 @@ import { createRequire as __cr } from 'node:module'; const require = __cr(import
2
2
  import {
3
3
  withEmbedding
4
4
  } from "./chunk-IPPMYQ2Y.js";
5
- import "./chunk-QDLVIW2O.js";
5
+ import "./chunk-W5L5IHP5.js";
6
6
  import {
7
7
  parseStringFlag
8
8
  } from "./chunk-SAKJMNSR.js";
@@ -16,8 +16,8 @@ import "./chunk-OUJSQSKE.js";
16
16
  import "./chunk-POEPHBQK.js";
17
17
  import "./chunk-MYX5NCRH.js";
18
18
  import "./chunk-ZXZPJJN3.js";
19
- import "./chunk-KTTSXYEK.js";
20
- import "./chunk-ENZR5NG7.js";
19
+ import "./chunk-6FBLL7MD.js";
20
+ import "./chunk-Z55WGA2J.js";
21
21
  import "./chunk-LPUQPDC2.js";
22
22
  import "./chunk-6C6QZ4PM.js";
23
23
  import "./chunk-UUHLLQXO.js";
@@ -82,4 +82,4 @@ async function run(args, vaultDir) {
82
82
  export {
83
83
  run
84
84
  };
85
- //# sourceMappingURL=setup-llm-JMWSNQ2C.js.map
85
+ //# sourceMappingURL=setup-llm-FYPPJI6W.js.map
@@ -25,7 +25,7 @@ schedule:
25
25
  preCondition: has-active-skills
26
26
  params:
27
27
  assess_interval_hours: 24
28
- max_skills_per_run: 8
28
+ max_skills_per_run: 3
29
29
  phases:
30
30
  - name: inventory
31
31
  reasoningLevel: low
@@ -96,15 +96,15 @@ phases:
96
96
  ## Selection
97
97
 
98
98
  List active skills via vault_skill_records (action: list,
99
- status: active). Prioritize up to 3 skills with the OLDEST
99
+ status: active). Prioritize up to 2 skills with the OLDEST
100
100
  `last_verified_at` in properties (missing/zero counts as oldest,
101
- so never-verified skills sort to the front). If fewer than 3
101
+ so never-verified skills sort to the front). If fewer than 2
102
102
  active skills exist, verify them all. This watermark is
103
103
  independent of `last_assessed_at` — it rotates verify coverage
104
104
  even when assess never touches the skill, which is the whole
105
105
  point: skills that never get new spores still need to be
106
106
  fact-checked for silent refactor drift. Full rotation time
107
- scales with the active skill count divided by 3, so a larger
107
+ scales with the active skill count divided by 2, so a larger
108
108
  skill inventory naturally stretches the verify cadence.
109
109
 
110
110
  Skills flagged by the inventory phase (merge_candidates or
package/dist/src/cli.js CHANGED
@@ -2,5 +2,5 @@
2
2
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
3
3
 
4
4
  // src/entries/cli.ts
5
- await import("../cli-HSLIG7EX.js");
5
+ await import("../cli-DDHTHU2J.js");
6
6
  //# sourceMappingURL=cli.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/daemon.ts
4
- var { main } = await import("../../main-4J4QZZTZ.js");
4
+ var { main } = await import("../../main-4HKTZFIM.js");
5
5
  await main();
6
6
  //# sourceMappingURL=main.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/post-tool-use.ts
4
- var { main } = await import("../../post-tool-use-TZINWWDH.js");
4
+ var { main } = await import("../../post-tool-use-QRZMPNYL.js");
5
5
  await main();
6
6
  //# sourceMappingURL=post-tool-use.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/session-end.ts
4
- var { main } = await import("../../session-end-FS46UARX.js");
4
+ var { main } = await import("../../session-end-XD27GRYF.js");
5
5
  await main();
6
6
  //# sourceMappingURL=session-end.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/session-start.ts
4
- var { main } = await import("../../session-start-46KPFV2H.js");
4
+ var { main } = await import("../../session-start-RDTXUSYL.js");
5
5
  await main();
6
6
  //# sourceMappingURL=session-start.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/stop.ts
4
- var { main } = await import("../../stop-OUEX6KA4.js");
4
+ var { main } = await import("../../stop-B7XCXEM5.js");
5
5
  await main();
6
6
  //# sourceMappingURL=stop.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/user-prompt-submit.ts
4
- var { main } = await import("../../user-prompt-submit-APMO6FVU.js");
4
+ var { main } = await import("../../user-prompt-submit-KYO2VGLB.js");
5
5
  await main();
6
6
  //# sourceMappingURL=user-prompt-submit.js.map
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
 
3
3
  // src/entries/mcp-server.ts
4
- var { main } = await import("../../server-AZJSTQEK.js");
4
+ var { main } = await import("../../server-KRMBRW4T.js");
5
5
  await main();
6
6
  //# sourceMappingURL=server.js.map
@@ -282,6 +282,16 @@ function bufferEvent(
282
282
  * POST a capture event to the daemon with buffer fallback on failure.
283
283
  * Used for user_prompt and tool_use events — both are replayed from the
284
284
  * buffer by reconcileBufferBatches when the daemon restarts.
285
+ *
286
+ * Two failure modes route to the buffer:
287
+ * 1. Transport failure — HTTP non-200, timeout, network error. `result.ok`
288
+ * is false and we buffer exactly as you'd expect.
289
+ * 2. Server-side drop — HTTP 200 with body `{ ok: true, ignored: reason }`.
290
+ * The daemon chose not to persist the event (capture rules, phantom
291
+ * detection, etc.), but we've seen rule bugs silently discard entire
292
+ * live sessions this way. Treat "ignored" as a drop and buffer it so
293
+ * `reconcileBufferBatches` can recover on the next restart once the
294
+ * underlying cause is fixed.
285
295
  */
286
296
  async function postEventWithBuffer(
287
297
  directory: string,
@@ -289,11 +299,18 @@ async function postEventWithBuffer(
289
299
  event: Record<string, unknown>,
290
300
  ): Promise<void> {
291
301
  const result = await postJson(directory, "/events", event);
292
- if (!result.ok) {
302
+ if (!result.ok || isIgnoredResponse(result.data)) {
293
303
  bufferEvent(directory, sessionId, event);
294
304
  }
295
305
  }
296
306
 
307
+ /** True when the daemon returned 200 but signalled it dropped the event. */
308
+ function isIgnoredResponse(data: unknown): boolean {
309
+ if (!isRecord(data)) return false;
310
+ const ignored = data.ignored;
311
+ return typeof ignored === "string" && ignored.length > 0;
312
+ }
313
+
297
314
  /** Register an opencode session with the daemon. */
298
315
  async function mycoRegisterSession(
299
316
  directory: string,
@@ -523,6 +540,29 @@ export const MycoPlugin = async ({ client, directory, worktree }: { client: any;
523
540
  activeOpencodeSessions.add(sessionId);
524
541
 
525
542
  const parentSessionId = info.parentID || undefined;
543
+
544
+ // Diagnostic: log the full session.created payload when a parent is
545
+ // present so we can tell sub-agent spawns apart from user-initiated
546
+ // forks. Sub-agents pollute the session list as phantom user sessions;
547
+ // filtering them needs a structural signal we don't have yet. Capture
548
+ // live payloads from both paths (skill invocation vs. TUI fork) and
549
+ // compare. Drop this block once the signal is known.
550
+ if (parentSessionId) {
551
+ try {
552
+ await client.app.log({
553
+ service: "myco",
554
+ level: "info",
555
+ message: "session.created with parentID",
556
+ extra: {
557
+ session_id: sessionId,
558
+ parent_session_id: parentSessionId,
559
+ info: JSON.stringify(info),
560
+ },
561
+ });
562
+ } catch {
563
+ // Diagnostic only — never block registration.
564
+ }
565
+ }
526
566
  const contextPromise = parentSessionId
527
567
  ? (resumeInjectedSessions.has(sessionId)
528
568
  ? Promise.resolve(null)
@@ -501,12 +501,23 @@ export default function (pi: ExtensionAPI) {
501
501
  ],
502
502
  parameters: Type.Object({
503
503
  query: Type.String({ description: "Search query — topic, pattern, or question" }),
504
+ type: Type.Optional(Type.String({ description: "Optional note type filter: session, plan, spore, or all" })),
505
+ observation_type: Type.Optional(Type.String({ description: "Optional spore observation type filter" })),
506
+ status: Type.Optional(Type.String({ description: "Optional semantic status filter" })),
507
+ since: Type.Optional(Type.Number({ description: "Optional created_at lower bound in epoch seconds" })),
508
+ until: Type.Optional(Type.Number({ description: "Optional created_at upper bound in epoch seconds" })),
504
509
  }),
505
510
  async execute(_toolCallId, params) {
506
511
  if (!currentSessionId) {
507
512
  return { content: [{ type: "text" as const, text: "No active session" }], details: {} };
508
513
  }
509
- const result = await getJson(currentCwd, `/api/search?q=${encodeURIComponent(params.query)}`);
514
+ const query = new URLSearchParams({ q: params.query });
515
+ if (params.type) query.set("type", params.type);
516
+ if (params.observation_type) query.set("observation_type", params.observation_type);
517
+ if (params.status) query.set("status", params.status);
518
+ if (params.since !== undefined) query.set("since", String(params.since));
519
+ if (params.until !== undefined) query.set("until", String(params.until));
520
+ const result = await getJson(currentCwd, `/api/search?${query.toString()}`);
510
521
  if (!result.ok || !result.data) {
511
522
  return { content: [{ type: "text" as const, text: "Search unavailable — Myco daemon may not be running." }], details: {} };
512
523
  }
@@ -1,10 +1,10 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  gatherStats
4
- } from "./chunk-VRI56337.js";
4
+ } from "./chunk-4D22KTXY.js";
5
5
  import {
6
6
  initVaultDb
7
- } from "./chunk-QDLVIW2O.js";
7
+ } from "./chunk-W5L5IHP5.js";
8
8
  import "./chunk-SAKJMNSR.js";
9
9
  import "./chunk-OTQH5KZW.js";
10
10
  import "./chunk-X3IGT5RV.js";
@@ -12,8 +12,8 @@ import "./chunk-53RPGOEN.js";
12
12
  import "./chunk-OUJSQSKE.js";
13
13
  import "./chunk-POEPHBQK.js";
14
14
  import "./chunk-MYX5NCRH.js";
15
- import "./chunk-KTTSXYEK.js";
16
- import "./chunk-ENZR5NG7.js";
15
+ import "./chunk-6FBLL7MD.js";
16
+ import "./chunk-Z55WGA2J.js";
17
17
  import "./chunk-LPUQPDC2.js";
18
18
  import "./chunk-6C6QZ4PM.js";
19
19
  import "./chunk-UUHLLQXO.js";
@@ -94,4 +94,4 @@ function formatUptime(seconds) {
94
94
  export {
95
95
  run
96
96
  };
97
- //# sourceMappingURL=stats-MKMETHMA.js.map
97
+ //# sourceMappingURL=stats-JCLZLA5G.js.map
@@ -9,8 +9,8 @@ import {
9
9
  } from "./chunk-TSM6VESW.js";
10
10
  import {
11
11
  DaemonClient
12
- } from "./chunk-KTTSXYEK.js";
13
- import "./chunk-ENZR5NG7.js";
12
+ } from "./chunk-6FBLL7MD.js";
13
+ import "./chunk-Z55WGA2J.js";
14
14
  import "./chunk-Z66IT5KL.js";
15
15
  import "./chunk-LPUQPDC2.js";
16
16
  import "./chunk-6C6QZ4PM.js";
@@ -46,4 +46,4 @@ async function main() {
46
46
  export {
47
47
  main
48
48
  };
49
- //# sourceMappingURL=stop-OUEX6KA4.js.map
49
+ //# sourceMappingURL=stop-B7XCXEM5.js.map
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  sendEvent
4
- } from "./chunk-NFO7BRCO.js";
4
+ } from "./chunk-IMW5TJ3O.js";
5
5
  import "./chunk-V7XG6V6C.js";
6
6
  import "./chunk-N2DGFACQ.js";
7
7
  import "./chunk-ZXZPJJN3.js";
8
8
  import "./chunk-TSM6VESW.js";
9
- import "./chunk-KTTSXYEK.js";
10
- import "./chunk-ENZR5NG7.js";
9
+ import "./chunk-6FBLL7MD.js";
10
+ import "./chunk-Z55WGA2J.js";
11
11
  import "./chunk-Z66IT5KL.js";
12
12
  import "./chunk-LPUQPDC2.js";
13
13
  import "./chunk-6C6QZ4PM.js";
@@ -28,4 +28,4 @@ async function main() {
28
28
  export {
29
29
  main
30
30
  };
31
- //# sourceMappingURL=stop-failure-2BWVNZEG.js.map
31
+ //# sourceMappingURL=stop-failure-R6QZCUOZ.js.map
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  sendEvent
4
- } from "./chunk-NFO7BRCO.js";
4
+ } from "./chunk-IMW5TJ3O.js";
5
5
  import "./chunk-V7XG6V6C.js";
6
6
  import "./chunk-N2DGFACQ.js";
7
7
  import "./chunk-ZXZPJJN3.js";
8
8
  import "./chunk-TSM6VESW.js";
9
- import "./chunk-KTTSXYEK.js";
10
- import "./chunk-ENZR5NG7.js";
9
+ import "./chunk-6FBLL7MD.js";
10
+ import "./chunk-Z55WGA2J.js";
11
11
  import "./chunk-Z66IT5KL.js";
12
12
  import "./chunk-LPUQPDC2.js";
13
13
  import "./chunk-6C6QZ4PM.js";
@@ -28,4 +28,4 @@ async function main() {
28
28
  export {
29
29
  main
30
30
  };
31
- //# sourceMappingURL=subagent-start-J4VV6DEE.js.map
31
+ //# sourceMappingURL=subagent-start-N7A622F3.js.map
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  sendEvent
4
- } from "./chunk-NFO7BRCO.js";
4
+ } from "./chunk-IMW5TJ3O.js";
5
5
  import "./chunk-V7XG6V6C.js";
6
6
  import "./chunk-N2DGFACQ.js";
7
7
  import "./chunk-ZXZPJJN3.js";
8
8
  import "./chunk-TSM6VESW.js";
9
- import "./chunk-KTTSXYEK.js";
10
- import "./chunk-ENZR5NG7.js";
9
+ import "./chunk-6FBLL7MD.js";
10
+ import "./chunk-Z55WGA2J.js";
11
11
  import "./chunk-Z66IT5KL.js";
12
12
  import "./chunk-LPUQPDC2.js";
13
13
  import "./chunk-6C6QZ4PM.js";
@@ -30,4 +30,4 @@ async function main() {
30
30
  export {
31
31
  main
32
32
  };
33
- //# sourceMappingURL=subagent-stop-JMLVEPIA.js.map
33
+ //# sourceMappingURL=subagent-stop-SVOG5MZJ.js.map
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  sendEvent
4
- } from "./chunk-NFO7BRCO.js";
4
+ } from "./chunk-IMW5TJ3O.js";
5
5
  import "./chunk-V7XG6V6C.js";
6
6
  import "./chunk-N2DGFACQ.js";
7
7
  import "./chunk-ZXZPJJN3.js";
8
8
  import "./chunk-TSM6VESW.js";
9
- import "./chunk-KTTSXYEK.js";
10
- import "./chunk-ENZR5NG7.js";
9
+ import "./chunk-6FBLL7MD.js";
10
+ import "./chunk-Z55WGA2J.js";
11
11
  import "./chunk-Z66IT5KL.js";
12
12
  import "./chunk-LPUQPDC2.js";
13
13
  import "./chunk-6C6QZ4PM.js";
@@ -29,4 +29,4 @@ async function main() {
29
29
  export {
30
30
  main
31
31
  };
32
- //# sourceMappingURL=task-completed-65CHMMKA.js.map
32
+ //# sourceMappingURL=task-completed-3DL5LJXF.js.map
@@ -4,7 +4,7 @@ import {
4
4
  teamInit,
5
5
  teamUpgrade,
6
6
  upgradeWorker
7
- } from "./chunk-6ALVMIB4.js";
7
+ } from "./chunk-TMAXWERS.js";
8
8
  import "./chunk-DTWUHHFI.js";
9
9
  import "./chunk-53RPGOEN.js";
10
10
  import "./chunk-OUJSQSKE.js";
@@ -21,4 +21,4 @@ export {
21
21
  teamUpgrade,
22
22
  upgradeWorker
23
23
  };
24
- //# sourceMappingURL=team-U2LDKIS4.js.map
24
+ //# sourceMappingURL=team-VJ3M263F.js.map