@goondocks/myco 0.6.0 → 0.6.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 (112) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +10 -11
  4. package/dist/{chunk-2YBUL3IL.js → chunk-25DJSF2K.js} +3 -3
  5. package/dist/{chunk-24DOZEUJ.js → chunk-ALBVNGCF.js} +591 -27
  6. package/dist/chunk-ALBVNGCF.js.map +1 -0
  7. package/dist/{chunk-E7OBRBCQ.js → chunk-CK24O5YQ.js} +12 -2
  8. package/dist/chunk-CK24O5YQ.js.map +1 -0
  9. package/dist/{chunk-2GSX3BK2.js → chunk-CPVXNRGW.js} +4 -4
  10. package/dist/{chunk-L25U7PIG.js → chunk-CQ4RKK67.js} +2 -2
  11. package/dist/{chunk-ZMYNRTTD.js → chunk-HRGHDMYI.js} +4 -3
  12. package/dist/chunk-HRGHDMYI.js.map +1 -0
  13. package/dist/{chunk-5FNZ7AMX.js → chunk-IWBWZQK6.js} +2 -2
  14. package/dist/{chunk-MQSYSQ6T.js → chunk-JSK7L46L.js} +11 -6
  15. package/dist/{chunk-MQSYSQ6T.js.map → chunk-JSK7L46L.js.map} +1 -1
  16. package/dist/{chunk-KUMVJIJW.js → chunk-LDKXXKF6.js} +6 -10
  17. package/dist/{chunk-KUMVJIJW.js.map → chunk-LDKXXKF6.js.map} +1 -1
  18. package/dist/{chunk-QGJ2ZIUZ.js → chunk-MWW62YZP.js} +37 -5
  19. package/dist/chunk-MWW62YZP.js.map +1 -0
  20. package/dist/{chunk-2ZBB3MQT.js → chunk-PQWQC3RF.js} +444 -21
  21. package/dist/chunk-PQWQC3RF.js.map +1 -0
  22. package/dist/{chunk-5QWZT4AB.js → chunk-RNWALAFP.js} +2 -2
  23. package/dist/{chunk-3EM23DMD.js → chunk-RXJHB7W4.js} +2 -2
  24. package/dist/{chunk-GNR3QAER.js → chunk-RY76WEN3.js} +2 -2
  25. package/dist/{chunk-GDYYJTTT.js → chunk-V5R6O6RP.js} +3 -3
  26. package/dist/{chunk-6BSDCZ5Q.js → chunk-WBLTISAK.js} +8 -3
  27. package/dist/chunk-WBLTISAK.js.map +1 -0
  28. package/dist/{chunk-YTANWAGE.js → chunk-XNAM6Z4O.js} +2 -2
  29. package/dist/{chunk-P3WO3N3I.js → chunk-YG6MLLGL.js} +19 -3
  30. package/dist/{chunk-P3WO3N3I.js.map → chunk-YG6MLLGL.js.map} +1 -1
  31. package/dist/{cli-K7SUTP7A.js → cli-LMBBPV2D.js} +20 -20
  32. package/dist/{client-YJMNTITQ.js → client-FDKJ4BY7.js} +5 -5
  33. package/dist/{config-G5GGT5A6.js → config-HDUFDOQN.js} +3 -3
  34. package/dist/{curate-6T5NKVXK.js → curate-DYE4VCBJ.js} +10 -11
  35. package/dist/{curate-6T5NKVXK.js.map → curate-DYE4VCBJ.js.map} +1 -1
  36. package/dist/{detect-providers-S3M5TAMW.js → detect-providers-I2QQFDJW.js} +3 -3
  37. package/dist/{digest-O35VHYFP.js → digest-PNHFM7JJ.js} +11 -13
  38. package/dist/{digest-O35VHYFP.js.map → digest-PNHFM7JJ.js.map} +1 -1
  39. package/dist/{init-TFLSATB3.js → init-7N7F6W6U.js} +8 -8
  40. package/dist/{main-JEUQS3BY.js → main-3JZDUJLU.js} +177 -40
  41. package/dist/main-3JZDUJLU.js.map +1 -0
  42. package/dist/{rebuild-7SH5GSNX.js → rebuild-WXKQ5HZO.js} +10 -11
  43. package/dist/{rebuild-7SH5GSNX.js.map → rebuild-WXKQ5HZO.js.map} +1 -1
  44. package/dist/reprocess-PKRDV67L.js +79 -0
  45. package/dist/reprocess-PKRDV67L.js.map +1 -0
  46. package/dist/{restart-NLJLB52D.js → restart-WSJRHRHI.js} +6 -6
  47. package/dist/{search-2BVRF54H.js → search-SWMJ4MZ3.js} +6 -6
  48. package/dist/{server-4AMZNP4F.js → server-NTRVB5ZM.js} +14 -18
  49. package/dist/{server-4AMZNP4F.js.map → server-NTRVB5ZM.js.map} +1 -1
  50. package/dist/{session-start-AZAF3DTE.js → session-start-KQ4KCQMZ.js} +9 -9
  51. package/dist/setup-digest-BOYOSM4B.js +15 -0
  52. package/dist/setup-llm-PCZ64ALK.js +15 -0
  53. package/dist/src/cli.js +4 -4
  54. package/dist/src/daemon/main.js +4 -4
  55. package/dist/src/hooks/post-tool-use.js +5 -5
  56. package/dist/src/hooks/session-end.js +5 -5
  57. package/dist/src/hooks/session-start.js +4 -4
  58. package/dist/src/hooks/stop.js +7 -7
  59. package/dist/src/hooks/user-prompt-submit.js +5 -5
  60. package/dist/src/mcp/server.js +4 -4
  61. package/dist/src/prompts/consolidation.md +2 -0
  62. package/dist/src/prompts/digest-7500.md +68 -0
  63. package/dist/{stats-MKDIZFIQ.js → stats-2OUQSEZO.js} +6 -6
  64. package/dist/ui/assets/index-Bk4X_8-Z.css +1 -0
  65. package/dist/ui/assets/index-D3SY7ZHY.js +299 -0
  66. package/dist/ui/index.html +2 -2
  67. package/dist/{verify-7DW7LAND.js → verify-MG5O7SBU.js} +6 -6
  68. package/dist/{version-RQLD7VBP.js → version-NKOECSVH.js} +4 -4
  69. package/package.json +3 -3
  70. package/dist/chunk-24DOZEUJ.js.map +0 -1
  71. package/dist/chunk-2ZBB3MQT.js.map +0 -1
  72. package/dist/chunk-3JCXYLHD.js +0 -33
  73. package/dist/chunk-3JCXYLHD.js.map +0 -1
  74. package/dist/chunk-6BSDCZ5Q.js.map +0 -1
  75. package/dist/chunk-B5UZSHQV.js +0 -250
  76. package/dist/chunk-B5UZSHQV.js.map +0 -1
  77. package/dist/chunk-E7OBRBCQ.js.map +0 -1
  78. package/dist/chunk-KC7ENQTN.js +0 -436
  79. package/dist/chunk-KC7ENQTN.js.map +0 -1
  80. package/dist/chunk-QGJ2ZIUZ.js.map +0 -1
  81. package/dist/chunk-UVGAVYWZ.js +0 -157
  82. package/dist/chunk-UVGAVYWZ.js.map +0 -1
  83. package/dist/chunk-ZMYNRTTD.js.map +0 -1
  84. package/dist/main-JEUQS3BY.js.map +0 -1
  85. package/dist/reprocess-Q4YH2ZBK.js +0 -268
  86. package/dist/reprocess-Q4YH2ZBK.js.map +0 -1
  87. package/dist/setup-digest-YLZZGSSR.js +0 -15
  88. package/dist/setup-llm-JOXBSLXC.js +0 -15
  89. package/dist/ui/assets/index-D37IoDXS.css +0 -1
  90. package/dist/ui/assets/index-DA61Ial2.js +0 -289
  91. /package/dist/{chunk-2YBUL3IL.js.map → chunk-25DJSF2K.js.map} +0 -0
  92. /package/dist/{chunk-2GSX3BK2.js.map → chunk-CPVXNRGW.js.map} +0 -0
  93. /package/dist/{chunk-L25U7PIG.js.map → chunk-CQ4RKK67.js.map} +0 -0
  94. /package/dist/{chunk-5FNZ7AMX.js.map → chunk-IWBWZQK6.js.map} +0 -0
  95. /package/dist/{chunk-5QWZT4AB.js.map → chunk-RNWALAFP.js.map} +0 -0
  96. /package/dist/{chunk-3EM23DMD.js.map → chunk-RXJHB7W4.js.map} +0 -0
  97. /package/dist/{chunk-GNR3QAER.js.map → chunk-RY76WEN3.js.map} +0 -0
  98. /package/dist/{chunk-GDYYJTTT.js.map → chunk-V5R6O6RP.js.map} +0 -0
  99. /package/dist/{chunk-YTANWAGE.js.map → chunk-XNAM6Z4O.js.map} +0 -0
  100. /package/dist/{cli-K7SUTP7A.js.map → cli-LMBBPV2D.js.map} +0 -0
  101. /package/dist/{client-YJMNTITQ.js.map → client-FDKJ4BY7.js.map} +0 -0
  102. /package/dist/{config-G5GGT5A6.js.map → config-HDUFDOQN.js.map} +0 -0
  103. /package/dist/{detect-providers-S3M5TAMW.js.map → detect-providers-I2QQFDJW.js.map} +0 -0
  104. /package/dist/{init-TFLSATB3.js.map → init-7N7F6W6U.js.map} +0 -0
  105. /package/dist/{restart-NLJLB52D.js.map → restart-WSJRHRHI.js.map} +0 -0
  106. /package/dist/{search-2BVRF54H.js.map → search-SWMJ4MZ3.js.map} +0 -0
  107. /package/dist/{session-start-AZAF3DTE.js.map → session-start-KQ4KCQMZ.js.map} +0 -0
  108. /package/dist/{setup-digest-YLZZGSSR.js.map → setup-digest-BOYOSM4B.js.map} +0 -0
  109. /package/dist/{setup-llm-JOXBSLXC.js.map → setup-llm-PCZ64ALK.js.map} +0 -0
  110. /package/dist/{stats-MKDIZFIQ.js.map → stats-2OUQSEZO.js.map} +0 -0
  111. /package/dist/{verify-7DW7LAND.js.map → verify-MG5O7SBU.js.map} +0 -0
  112. /package/dist/{version-RQLD7VBP.js.map → version-NKOECSVH.js.map} +0 -0
@@ -2,31 +2,31 @@ import { createRequire as __cr } from 'node:module'; const require = __cr(import
2
2
  import {
3
3
  planFm,
4
4
  sporeFm
5
- } from "./chunk-GNR3QAER.js";
5
+ } from "./chunk-RY76WEN3.js";
6
6
  import {
7
7
  MycoIndex
8
8
  } from "./chunk-TWSTAVLO.js";
9
9
  import {
10
10
  loadConfig
11
- } from "./chunk-P3WO3N3I.js";
12
- import "./chunk-MQSYSQ6T.js";
11
+ } from "./chunk-YG6MLLGL.js";
12
+ import "./chunk-JSK7L46L.js";
13
13
  import {
14
14
  readStdin
15
- } from "./chunk-L25U7PIG.js";
15
+ } from "./chunk-CQ4RKK67.js";
16
16
  import {
17
17
  DaemonClient
18
- } from "./chunk-2GSX3BK2.js";
19
- import "./chunk-E7OBRBCQ.js";
18
+ } from "./chunk-CPVXNRGW.js";
19
+ import "./chunk-CK24O5YQ.js";
20
20
  import {
21
21
  resolveVaultDir
22
22
  } from "./chunk-N33KUCFP.js";
23
- import "./chunk-5QWZT4AB.js";
23
+ import "./chunk-RNWALAFP.js";
24
24
  import {
25
25
  CONTEXT_PLAN_PREVIEW_CHARS,
26
26
  CONTEXT_SESSION_PREVIEW_CHARS,
27
27
  CONTEXT_SPORE_PREVIEW_CHARS,
28
28
  estimateTokens
29
- } from "./chunk-6BSDCZ5Q.js";
29
+ } from "./chunk-WBLTISAK.js";
30
30
  import "./chunk-PZUWP5VK.js";
31
31
 
32
32
  // src/context/relevance.ts
@@ -189,4 +189,4 @@ async function main() {
189
189
  }
190
190
  }
191
191
  main();
192
- //# sourceMappingURL=session-start-AZAF3DTE.js.map
192
+ //# sourceMappingURL=session-start-KQ4KCQMZ.js.map
@@ -0,0 +1,15 @@
1
+ import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
+ import {
3
+ run
4
+ } from "./chunk-XNAM6Z4O.js";
5
+ import "./chunk-25DJSF2K.js";
6
+ import "./chunk-SAKJMNSR.js";
7
+ import "./chunk-MWW62YZP.js";
8
+ import "./chunk-JSK7L46L.js";
9
+ import "./chunk-RNWALAFP.js";
10
+ import "./chunk-WBLTISAK.js";
11
+ import "./chunk-PZUWP5VK.js";
12
+ export {
13
+ run
14
+ };
15
+ //# sourceMappingURL=setup-digest-BOYOSM4B.js.map
@@ -0,0 +1,15 @@
1
+ import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
+ import {
3
+ run
4
+ } from "./chunk-IWBWZQK6.js";
5
+ import "./chunk-25DJSF2K.js";
6
+ import "./chunk-SAKJMNSR.js";
7
+ import "./chunk-MWW62YZP.js";
8
+ import "./chunk-JSK7L46L.js";
9
+ import "./chunk-RNWALAFP.js";
10
+ import "./chunk-WBLTISAK.js";
11
+ import "./chunk-PZUWP5VK.js";
12
+ export {
13
+ run
14
+ };
15
+ //# sourceMappingURL=setup-llm-PCZ64ALK.js.map
package/dist/src/cli.js CHANGED
@@ -2,12 +2,12 @@
2
2
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
3
3
  import {
4
4
  ensureNativeDeps
5
- } from "../chunk-3EM23DMD.js";
6
- import "../chunk-5QWZT4AB.js";
7
- import "../chunk-6BSDCZ5Q.js";
5
+ } from "../chunk-RXJHB7W4.js";
6
+ import "../chunk-RNWALAFP.js";
7
+ import "../chunk-WBLTISAK.js";
8
8
  import "../chunk-PZUWP5VK.js";
9
9
 
10
10
  // src/entries/cli.ts
11
11
  ensureNativeDeps();
12
- await import("../cli-K7SUTP7A.js");
12
+ await import("../cli-LMBBPV2D.js");
13
13
  //# sourceMappingURL=cli.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
  ensureNativeDeps
4
- } from "../../chunk-3EM23DMD.js";
5
- import "../../chunk-5QWZT4AB.js";
6
- import "../../chunk-6BSDCZ5Q.js";
4
+ } from "../../chunk-RXJHB7W4.js";
5
+ import "../../chunk-RNWALAFP.js";
6
+ import "../../chunk-WBLTISAK.js";
7
7
  import "../../chunk-PZUWP5VK.js";
8
8
 
9
9
  // src/entries/daemon.ts
10
10
  ensureNativeDeps();
11
- var { main } = await import("../../main-JEUQS3BY.js");
11
+ var { main } = await import("../../main-3JZDUJLU.js");
12
12
  await main();
13
13
  //# sourceMappingURL=main.js.map
@@ -4,18 +4,18 @@ import {
4
4
  } from "../../chunk-HIN3UVOG.js";
5
5
  import {
6
6
  readStdin
7
- } from "../../chunk-L25U7PIG.js";
7
+ } from "../../chunk-CQ4RKK67.js";
8
8
  import {
9
9
  DaemonClient
10
- } from "../../chunk-2GSX3BK2.js";
11
- import "../../chunk-E7OBRBCQ.js";
10
+ } from "../../chunk-CPVXNRGW.js";
11
+ import "../../chunk-CK24O5YQ.js";
12
12
  import {
13
13
  resolveVaultDir
14
14
  } from "../../chunk-N33KUCFP.js";
15
- import "../../chunk-5QWZT4AB.js";
15
+ import "../../chunk-RNWALAFP.js";
16
16
  import {
17
17
  TOOL_OUTPUT_PREVIEW_CHARS
18
- } from "../../chunk-6BSDCZ5Q.js";
18
+ } from "../../chunk-WBLTISAK.js";
19
19
  import "../../chunk-PZUWP5VK.js";
20
20
 
21
21
  // src/hooks/post-tool-use.ts
@@ -1,16 +1,16 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  readStdin
4
- } from "../../chunk-L25U7PIG.js";
4
+ } from "../../chunk-CQ4RKK67.js";
5
5
  import {
6
6
  DaemonClient
7
- } from "../../chunk-2GSX3BK2.js";
8
- import "../../chunk-E7OBRBCQ.js";
7
+ } from "../../chunk-CPVXNRGW.js";
8
+ import "../../chunk-CK24O5YQ.js";
9
9
  import {
10
10
  resolveVaultDir
11
11
  } from "../../chunk-N33KUCFP.js";
12
- import "../../chunk-5QWZT4AB.js";
13
- import "../../chunk-6BSDCZ5Q.js";
12
+ import "../../chunk-RNWALAFP.js";
13
+ import "../../chunk-WBLTISAK.js";
14
14
  import "../../chunk-PZUWP5VK.js";
15
15
 
16
16
  // src/hooks/session-end.ts
@@ -1,12 +1,12 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  ensureNativeDeps
4
- } from "../../chunk-3EM23DMD.js";
5
- import "../../chunk-5QWZT4AB.js";
6
- import "../../chunk-6BSDCZ5Q.js";
4
+ } from "../../chunk-RXJHB7W4.js";
5
+ import "../../chunk-RNWALAFP.js";
6
+ import "../../chunk-WBLTISAK.js";
7
7
  import "../../chunk-PZUWP5VK.js";
8
8
 
9
9
  // src/entries/session-start.ts
10
10
  ensureNativeDeps();
11
- await import("../../session-start-AZAF3DTE.js");
11
+ await import("../../session-start-KQ4KCQMZ.js");
12
12
  //# sourceMappingURL=session-start.js.map
@@ -1,20 +1,20 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  loadConfig
4
- } from "../../chunk-P3WO3N3I.js";
5
- import "../../chunk-MQSYSQ6T.js";
4
+ } from "../../chunk-YG6MLLGL.js";
5
+ import "../../chunk-JSK7L46L.js";
6
6
  import {
7
7
  readStdin
8
- } from "../../chunk-L25U7PIG.js";
8
+ } from "../../chunk-CQ4RKK67.js";
9
9
  import {
10
10
  DaemonClient
11
- } from "../../chunk-2GSX3BK2.js";
12
- import "../../chunk-E7OBRBCQ.js";
11
+ } from "../../chunk-CPVXNRGW.js";
12
+ import "../../chunk-CK24O5YQ.js";
13
13
  import {
14
14
  resolveVaultDir
15
15
  } from "../../chunk-N33KUCFP.js";
16
- import "../../chunk-5QWZT4AB.js";
17
- import "../../chunk-6BSDCZ5Q.js";
16
+ import "../../chunk-RNWALAFP.js";
17
+ import "../../chunk-WBLTISAK.js";
18
18
  import "../../chunk-PZUWP5VK.js";
19
19
 
20
20
  // src/hooks/stop.ts
@@ -4,16 +4,16 @@ import {
4
4
  } from "../../chunk-HIN3UVOG.js";
5
5
  import {
6
6
  readStdin
7
- } from "../../chunk-L25U7PIG.js";
7
+ } from "../../chunk-CQ4RKK67.js";
8
8
  import {
9
9
  DaemonClient
10
- } from "../../chunk-2GSX3BK2.js";
11
- import "../../chunk-E7OBRBCQ.js";
10
+ } from "../../chunk-CPVXNRGW.js";
11
+ import "../../chunk-CK24O5YQ.js";
12
12
  import {
13
13
  resolveVaultDir
14
14
  } from "../../chunk-N33KUCFP.js";
15
- import "../../chunk-5QWZT4AB.js";
16
- import "../../chunk-6BSDCZ5Q.js";
15
+ import "../../chunk-RNWALAFP.js";
16
+ import "../../chunk-WBLTISAK.js";
17
17
  import "../../chunk-PZUWP5VK.js";
18
18
 
19
19
  // src/hooks/user-prompt-submit.ts
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  ensureNativeDeps
4
- } from "../../chunk-3EM23DMD.js";
5
- import "../../chunk-5QWZT4AB.js";
6
- import "../../chunk-6BSDCZ5Q.js";
4
+ } from "../../chunk-RXJHB7W4.js";
5
+ import "../../chunk-RNWALAFP.js";
6
+ import "../../chunk-WBLTISAK.js";
7
7
  import "../../chunk-PZUWP5VK.js";
8
8
 
9
9
  // src/entries/mcp-server.ts
10
10
  ensureNativeDeps();
11
- var { main } = await import("../../server-4AMZNP4F.js");
11
+ var { main } = await import("../../server-NTRVB5ZM.js");
12
12
  await main();
13
13
  //# sourceMappingURL=server.js.map
@@ -1,4 +1,5 @@
1
1
  You are consolidating related observations from a knowledge vault into a single comprehensive note.
2
+ You have a budget of ~{{maxTokens}} tokens for your response.
2
3
 
3
4
  These {{count}} observations are all of type "{{observation_type}}" and were found to be semantically similar.
4
5
 
@@ -30,6 +31,7 @@ The key test: would a reader looking up one of these topics benefit from seeing
30
31
  - Include ALL relevant source IDs in source_ids — no hallucinated IDs, no omissions
31
32
  - source_ids must be a subset of the IDs shown below
32
33
  - If only some observations belong together, consolidate the related subset and exclude the unrelated ones
34
+ - Wisdom notes should be COMPREHENSIVE but not redundant — include all distinct insights, specifics, and actionable details from the sources, but don't repeat the same point in different words
33
35
 
34
36
  ## Observations
35
37
 
@@ -0,0 +1,68 @@
1
+ Budget: ~7,500 tokens. Use the FULL budget — this is the institutional knowledge tier.
2
+
3
+ This is the complete project context — an agent reading this should have the equivalent of months of project history and team knowledge. It should be able to make architectural decisions, understand why any part of the system exists, and anticipate risks that aren't obvious from the current code.
4
+
5
+ This tier exists for complex work: major refactors, architectural reviews, onboarding new team members, or debugging systemic issues where understanding history matters.
6
+
7
+ ## Required Sections
8
+
9
+ ### Project Identity & Vision (~400 tokens)
10
+ What is this project? What problem does it solve? Who uses it and how? What's the long-term vision? Ground the agent in purpose so it can evaluate whether proposed changes serve the project's goals.
11
+
12
+ ### Architecture Deep Dive (~800 tokens)
13
+ How the system fits together — subsystems, data flows, integration points, deployment model. Include the conceptual architecture (not just file paths) and explain WHY it's structured this way. What are the boundaries? What are the invariants?
14
+
15
+ ### Active Work & Recent History (~1,000 tokens)
16
+ Detailed narrative of the last 5-10 sessions. What was built, what problems were solved, what changed and why. Include the story arc — how did the project get from where it was to where it is now?
17
+
18
+ For each major piece of recent work: what triggered it, what was the approach, what was the outcome, and what's still pending.
19
+
20
+ ### Decision Archive (~1,200 tokens)
21
+ The decisions that shaped the project. Each decision should include:
22
+ - What was decided
23
+ - What alternatives were considered and rejected
24
+ - The rationale — why THIS choice over the alternatives
25
+ - Whether the decision is still active or has been superseded
26
+
27
+ Recent decisions (last 2-4 weeks) get full treatment. Older decisions that are still load-bearing get compressed but preserved.
28
+
29
+ ### Accumulated Wisdom & Patterns (~900 tokens)
30
+ Everything the team has learned that isn't obvious from reading the code. Organize by domain:
31
+
32
+ - **Architecture & Design**: Patterns that emerged, abstractions that work, boundaries that matter
33
+ - **Operational**: Deployment gotchas, configuration pitfalls, monitoring insights
34
+ - **Development**: Testing strategies, debugging approaches, tooling quirks
35
+ - **Agent Behavior**: How AI agents interact with this codebase — what they get wrong, what helps them succeed
36
+
37
+ Each item should be specific and actionable, not generic advice.
38
+
39
+ ### Trade-offs & Design Tensions (~600 tokens)
40
+ The active tensions in the system where there isn't a clean answer. For each:
41
+ - What's the tension
42
+ - What's the current balance point
43
+ - What would shift it
44
+
45
+ These help the agent make judgment calls that align with the team's values and constraints.
46
+
47
+ ### Team Knowledge (~500 tokens)
48
+ Who has been working on what? What are their areas of expertise? What's the collaboration model? Include working patterns that affect how the agent should behave.
49
+
50
+ ### Thread History (~900 tokens)
51
+ The evolution of major features and initiatives. Not just "what shipped" but "how it evolved" — what was the original idea, how did it change during implementation, what surprised the team?
52
+
53
+ When the vault is small, cover all threads in detail. As it grows, older threads compress into lessons learned and only active threads get full treatment.
54
+
55
+ ### Risks & Open Questions (~400 tokens)
56
+ What could go wrong? What's unresolved? What assumptions might break? What technical debt is accumulating?
57
+
58
+ ### Glossary & Reference (~400 tokens)
59
+ Project-specific terminology and concepts. Include terms that have specific meanings in this project that differ from general usage. Key file paths and components that are frequently referenced.
60
+
61
+ ## Priority Rules
62
+ - USE THE FULL 7,500 TOKENS — this tier should be DENSE with useful information
63
+ - This is the one tier where historical depth matters — don't compress away the story
64
+ - Recent activity (last 5-10 sessions) gets narrative detail with context
65
+ - Older activity becomes patterns, lessons, and compressed summaries — but key moments are preserved
66
+ - Trade-offs, wisdom, and thread history should be the RICHEST sections — they grow over time
67
+ - When the vault is small and you can't fill 7,500: go DEEP on what exists — explain reasoning, include examples, explore implications
68
+ - When the vault is large and 7,500 feels tight: ruthlessly prioritize by relevance to current work, but preserve foundational decisions and hard-won lessons
@@ -1,16 +1,16 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  gatherStats
4
- } from "./chunk-ZMYNRTTD.js";
4
+ } from "./chunk-HRGHDMYI.js";
5
5
  import "./chunk-4RMSHZE4.js";
6
6
  import {
7
7
  MycoIndex
8
8
  } from "./chunk-TWSTAVLO.js";
9
- import "./chunk-2YBUL3IL.js";
9
+ import "./chunk-25DJSF2K.js";
10
10
  import "./chunk-SAKJMNSR.js";
11
- import "./chunk-QGJ2ZIUZ.js";
12
- import "./chunk-5QWZT4AB.js";
13
- import "./chunk-6BSDCZ5Q.js";
11
+ import "./chunk-MWW62YZP.js";
12
+ import "./chunk-RNWALAFP.js";
13
+ import "./chunk-WBLTISAK.js";
14
14
  import "./chunk-PZUWP5VK.js";
15
15
 
16
16
  // src/cli/stats.ts
@@ -55,4 +55,4 @@ function run(_args, vaultDir) {
55
55
  export {
56
56
  run
57
57
  };
58
- //# sourceMappingURL=stats-MKDIZFIQ.js.map
58
+ //# sourceMappingURL=stats-2OUQSEZO.js.map
@@ -0,0 +1 @@
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-ui, ui-monospace, monospace);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-ui, ui-monospace, monospace);font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 140 20% 6%;--card: 0 0% 98%;--card-foreground: 140 20% 6%;--primary: 142 71% 45%;--primary-foreground: 0 0% 100%;--secondary: 142 20% 94%;--secondary-foreground: 142 40% 15%;--muted: 140 10% 96%;--muted-foreground: 140 5% 40%;--accent: 142 50% 90%;--accent-foreground: 142 40% 15%;--destructive: 0 84% 60%;--border: 140 10% 90%;--input: 140 10% 90%;--ring: 142 71% 45%;--radius: .5rem}.dark{--background: 145 30% 4%;--foreground: 215 20% 90%;--card: 145 25% 7%;--card-foreground: 215 20% 90%;--primary: 142 71% 45%;--primary-foreground: 0 0% 100%;--secondary: 145 20% 12%;--secondary-foreground: 142 50% 75%;--muted: 145 15% 10%;--muted-foreground: 215 10% 60%;--accent: 145 25% 15%;--accent-foreground: 142 50% 75%;--destructive: 0 63% 50%;--border: 145 15% 15%;--input: 145 15% 15%;--ring: 142 71% 45%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--font-ui, "Geist Mono", "SF Mono", "Fira Code", monospace)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-4{bottom:1rem}.left-1\/2,.left-\[50\%\]{left:50%}.right-2{right:.5rem}.right-4{right:1rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-50{z-index:50}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:24rem}.max-h-\[400px\]{max-height:400px}.w-11{width:2.75rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[120px\]{width:120px}.w-\[54px\]{width:54px}.w-\[68px\]{width:68px}.w-full{width:100%}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[120px\]{max-width:120px}.max-w-lg{max-width:32rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-border{border-color:hsl(var(--border))}.border-border\/40{border-color:hsl(var(--border) / .4)}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-transparent{border-color:transparent}.border-yellow-500\/50{border-color:#eab30880}.bg-amber-500\/15{background-color:#f59e0b26}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-emerald-500\/15{background-color:#10b98126}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground\/40{background-color:hsl(var(--muted-foreground) / .4)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-red-500\/15{background-color:#ef444426}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.bg-yellow-500\/10{background-color:#eab3081a}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-3{padding-bottom:.75rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.text-center{text-align:center}.align-top{vertical-align:top}.font-mono{font-family:var(--font-ui, ui-monospace, monospace)}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/60{color:hsl(var(--muted-foreground) / .6)}.text-muted-foreground\/70{color:hsl(var(--muted-foreground) / .7)}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/30:hover{background-color:hsl(var(--accent) / .3)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-yellow-500\/10:hover{background-color:#eab3081a}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.dark\:text-amber-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}