@goondocks/myco 0.18.1 → 0.19.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 (175) hide show
  1. package/README.md +17 -130
  2. package/dist/{agent-run-I4O2K2CK.js → agent-run-BV3ATBWB.js} +6 -6
  3. package/dist/{agent-tasks-UOW5BQIB.js → agent-tasks-I5SMLWVL.js} +6 -6
  4. package/dist/{chunk-TCSVDQF5.js → chunk-3J6TUJSV.js} +58 -58
  5. package/dist/chunk-3J6TUJSV.js.map +1 -0
  6. package/dist/{chunk-W7WENJ6F.js → chunk-46AQ7D23.js} +2 -2
  7. package/dist/{chunk-2V7HR7HB.js → chunk-4NIMDUYW.js} +5 -7
  8. package/dist/{chunk-2V7HR7HB.js.map → chunk-4NIMDUYW.js.map} +1 -1
  9. package/dist/{chunk-CURS2TNP.js → chunk-6DDRJQ4X.js} +2 -2
  10. package/dist/{chunk-D7TYRPRM.js → chunk-6LQIMRTC.js} +145 -145
  11. package/dist/chunk-6LQIMRTC.js.map +1 -0
  12. package/dist/{chunk-75AZFBFW.js → chunk-6ZDJXSEO.js} +3 -3
  13. package/dist/{chunk-TLK46KKD.js → chunk-AOCBCPAP.js} +5 -5
  14. package/dist/chunk-AOCBCPAP.js.map +1 -0
  15. package/dist/{chunk-O3TRN3RC.js → chunk-AULBWINA.js} +2 -2
  16. package/dist/chunk-CDM6ZLMZ.js +598 -0
  17. package/dist/chunk-CDM6ZLMZ.js.map +1 -0
  18. package/dist/{chunk-TOER6RNC.js → chunk-GVBVHYOT.js} +2 -2
  19. package/dist/{chunk-RIDSOQDR.js → chunk-HQLPB346.js} +2 -2
  20. package/dist/{chunk-CKJAWZQE.js → chunk-I54KLC6H.js} +13 -3
  21. package/dist/chunk-I54KLC6H.js.map +1 -0
  22. package/dist/{chunk-XWOQL4XN.js → chunk-NU74DHV3.js} +3 -3
  23. package/dist/{chunk-E4VLWIJC.js → chunk-ODXLRR4U.js} +1 -1
  24. package/dist/{chunk-RAV5YMRU.js → chunk-OR4XUYBJ.js} +4 -4
  25. package/dist/{chunk-CML4MCYF.js → chunk-PMT2LSTQ.js} +2 -2
  26. package/dist/{chunk-IB76KGBY.js → chunk-POEPHBQK.js} +1 -1
  27. package/dist/{chunk-TZAXQKO6.js → chunk-PZEAO35P.js} +2 -2
  28. package/dist/{chunk-GDY63YAW.js → chunk-U6PF3YII.js} +79 -79
  29. package/dist/chunk-U6PF3YII.js.map +1 -0
  30. package/dist/{chunk-C3EGL5JX.js → chunk-ULH667GT.js} +8 -8
  31. package/dist/{chunk-DPSLJ242.js → chunk-UVKQ62II.js} +3 -3
  32. package/dist/{chunk-N75GMQGA.js → chunk-VNL7KN4V.js} +3 -3
  33. package/dist/{chunk-U3J2DDSR.js → chunk-VQF5E4ZX.js} +2 -2
  34. package/dist/{chunk-LSP5HYOO.js → chunk-WGIQOJKJ.js} +4 -4
  35. package/dist/{chunk-YZPI2Y3E.js → chunk-WKNAKQKA.js} +3 -3
  36. package/dist/{chunk-NI23QCHB.js → chunk-YDU3AHSW.js} +5 -5
  37. package/dist/{cli-D3TJYJ2U.js → cli-2BW2PZMP.js} +39 -39
  38. package/dist/{client-4LLEXLVK.js → client-HMGTCKRW.js} +4 -4
  39. package/dist/{config-DA4IUVFL.js → config-LVXDVUYY.js} +6 -6
  40. package/dist/{detect-SZ2KDUF4.js → detect-BEOIHGBC.js} +5 -5
  41. package/dist/{detect-providers-PSVKXTWE.js → detect-providers-CDG6BKHU.js} +4 -4
  42. package/dist/{doctor-KCTXPX5D.js → doctor-AK3W5FMN.js} +11 -11
  43. package/dist/{executor-UYIZC3L5.js → executor-YLC7DHBY.js} +17 -17
  44. package/dist/{init-QFNBKKDC.js → init-4FV7ODOK.js} +15 -15
  45. package/dist/{llm-SMA5ZEAW.js → llm-INLSGEXY.js} +4 -4
  46. package/dist/{loader-Q3P3R4UP.js → loader-2ULW2FZS.js} +6 -6
  47. package/dist/{loader-SKKUMT5C.js → loader-HEGKUTGI.js} +6 -6
  48. package/dist/{main-5THODR77.js → main-IV64U72E.js} +348 -86
  49. package/dist/main-IV64U72E.js.map +1 -0
  50. package/dist/{open-7737CSPN.js → open-YSB36HP7.js} +6 -6
  51. package/dist/{post-compact-2TJ5FPZH.js → post-compact-5OB4LRLA.js} +10 -10
  52. package/dist/{post-tool-use-FRTSICC3.js → post-tool-use-2UOTDXXS.js} +9 -9
  53. package/dist/{post-tool-use-failure-KYO2NCNB.js → post-tool-use-failure-ZJQGHBMW.js} +10 -10
  54. package/dist/{pre-compact-J6GCJEJR.js → pre-compact-WD3FYUZ4.js} +10 -10
  55. package/dist/{provider-check-AE3L5Z6R.js → provider-check-V3NSOLZQ.js} +4 -4
  56. package/dist/{registry-O2NZLO3V.js → registry-XGRKLHEK.js} +7 -7
  57. package/dist/{remove-3WZZC7AX.js → remove-L6T4LMFP.js} +11 -11
  58. package/dist/{resolution-events-XWYLLDRK.js → resolution-events-PZFKMZHM.js} +4 -4
  59. package/dist/{restart-HUHEFOXU.js → restart-4UGLWER2.js} +7 -7
  60. package/dist/{search-ZGN3LDXG.js → search-MJGMQZ5N.js} +7 -7
  61. package/dist/{server-PTXLVVEE.js → server-MVBNGXLQ.js} +258 -173
  62. package/dist/server-MVBNGXLQ.js.map +1 -0
  63. package/dist/{session-7VV3IQMO.js → session-GLKHGGPJ.js} +8 -8
  64. package/dist/{session-end-SMU55UCM.js → session-end-ISPUQH3X.js} +9 -9
  65. package/dist/{session-start-NIMWEOIZ.js → session-start-VF26JMWW.js} +14 -14
  66. package/dist/{setup-llm-7S3VPAPN.js → setup-llm-7RCROQLP.js} +10 -10
  67. package/dist/src/cli.js +1 -1
  68. package/dist/src/daemon/main.js +1 -1
  69. package/dist/src/hooks/post-tool-use.js +1 -1
  70. package/dist/src/hooks/session-end.js +1 -1
  71. package/dist/src/hooks/session-start.js +1 -1
  72. package/dist/src/hooks/stop.js +1 -1
  73. package/dist/src/hooks/user-prompt-submit.js +1 -1
  74. package/dist/src/mcp/server.js +1 -1
  75. package/dist/{stats-GEOQ2DFF.js → stats-N7FYQSAY.js} +11 -11
  76. package/dist/{stop-7AKYBJJ2.js → stop-LVRFMSGO.js} +9 -9
  77. package/dist/{stop-failure-NLE2EURG.js → stop-failure-AXU5LOBN.js} +10 -10
  78. package/dist/{subagent-start-LBNZF2TG.js → subagent-start-KDJIQXQC.js} +10 -10
  79. package/dist/{subagent-stop-B2Z5GYAB.js → subagent-stop-2T2H2TYE.js} +10 -10
  80. package/dist/{task-completed-PO5TETJ7.js → task-completed-XHQ3XMYJ.js} +10 -10
  81. package/dist/team-GM2VZOVM.js +22 -0
  82. package/dist/ui/assets/{index-CiI1fwas.js → index-JtMb9fMt.js} +48 -48
  83. package/dist/ui/index.html +1 -1
  84. package/dist/{update-WBWB5URU.js → update-R6VHTRQA.js} +11 -11
  85. package/dist/{user-prompt-submit-IZJC3NV7.js → user-prompt-submit-EK2MDBLQ.js} +9 -9
  86. package/dist/{verify-FNSP62I3.js → verify-NK46D4II.js} +8 -8
  87. package/dist/{version-QEVU66NT.js → version-LTTJPC4F.js} +2 -2
  88. package/dist/version-LTTJPC4F.js.map +1 -0
  89. package/package.json +19 -2
  90. package/CONTRIBUTING.md +0 -132
  91. package/dist/chunk-CKJAWZQE.js.map +0 -1
  92. package/dist/chunk-D7TYRPRM.js.map +0 -1
  93. package/dist/chunk-GDY63YAW.js.map +0 -1
  94. package/dist/chunk-RJMXDUMA.js +0 -40
  95. package/dist/chunk-RJMXDUMA.js.map +0 -1
  96. package/dist/chunk-TCSVDQF5.js.map +0 -1
  97. package/dist/chunk-TLK46KKD.js.map +0 -1
  98. package/dist/main-5THODR77.js.map +0 -1
  99. package/dist/server-PTXLVVEE.js.map +0 -1
  100. package/dist/src/worker/package-lock.json +0 -4338
  101. package/dist/src/worker/package.json +0 -22
  102. package/dist/src/worker/src/auth.ts +0 -31
  103. package/dist/src/worker/src/index.ts +0 -476
  104. package/dist/src/worker/src/mcp/auth.ts +0 -65
  105. package/dist/src/worker/src/mcp/server.ts +0 -53
  106. package/dist/src/worker/src/mcp/tools/context.ts +0 -13
  107. package/dist/src/worker/src/mcp/tools/get.ts +0 -15
  108. package/dist/src/worker/src/mcp/tools/graph.ts +0 -35
  109. package/dist/src/worker/src/mcp/tools/search.ts +0 -32
  110. package/dist/src/worker/src/mcp/tools/sessions.ts +0 -24
  111. package/dist/src/worker/src/mcp/tools/skills.ts +0 -16
  112. package/dist/src/worker/src/mcp/tools/team.ts +0 -9
  113. package/dist/src/worker/src/schema.ts +0 -326
  114. package/dist/src/worker/src/search-helpers.ts +0 -70
  115. package/dist/src/worker/tsconfig.json +0 -16
  116. package/dist/src/worker/wrangler.toml +0 -30
  117. package/dist/team-DPNP2RN7.js +0 -368
  118. package/dist/team-DPNP2RN7.js.map +0 -1
  119. /package/dist/{agent-run-I4O2K2CK.js.map → agent-run-BV3ATBWB.js.map} +0 -0
  120. /package/dist/{agent-tasks-UOW5BQIB.js.map → agent-tasks-I5SMLWVL.js.map} +0 -0
  121. /package/dist/{chunk-W7WENJ6F.js.map → chunk-46AQ7D23.js.map} +0 -0
  122. /package/dist/{chunk-CURS2TNP.js.map → chunk-6DDRJQ4X.js.map} +0 -0
  123. /package/dist/{chunk-75AZFBFW.js.map → chunk-6ZDJXSEO.js.map} +0 -0
  124. /package/dist/{chunk-O3TRN3RC.js.map → chunk-AULBWINA.js.map} +0 -0
  125. /package/dist/{chunk-TOER6RNC.js.map → chunk-GVBVHYOT.js.map} +0 -0
  126. /package/dist/{chunk-RIDSOQDR.js.map → chunk-HQLPB346.js.map} +0 -0
  127. /package/dist/{chunk-XWOQL4XN.js.map → chunk-NU74DHV3.js.map} +0 -0
  128. /package/dist/{chunk-E4VLWIJC.js.map → chunk-ODXLRR4U.js.map} +0 -0
  129. /package/dist/{chunk-RAV5YMRU.js.map → chunk-OR4XUYBJ.js.map} +0 -0
  130. /package/dist/{chunk-CML4MCYF.js.map → chunk-PMT2LSTQ.js.map} +0 -0
  131. /package/dist/{chunk-IB76KGBY.js.map → chunk-POEPHBQK.js.map} +0 -0
  132. /package/dist/{chunk-TZAXQKO6.js.map → chunk-PZEAO35P.js.map} +0 -0
  133. /package/dist/{chunk-C3EGL5JX.js.map → chunk-ULH667GT.js.map} +0 -0
  134. /package/dist/{chunk-DPSLJ242.js.map → chunk-UVKQ62II.js.map} +0 -0
  135. /package/dist/{chunk-N75GMQGA.js.map → chunk-VNL7KN4V.js.map} +0 -0
  136. /package/dist/{chunk-U3J2DDSR.js.map → chunk-VQF5E4ZX.js.map} +0 -0
  137. /package/dist/{chunk-LSP5HYOO.js.map → chunk-WGIQOJKJ.js.map} +0 -0
  138. /package/dist/{chunk-YZPI2Y3E.js.map → chunk-WKNAKQKA.js.map} +0 -0
  139. /package/dist/{chunk-NI23QCHB.js.map → chunk-YDU3AHSW.js.map} +0 -0
  140. /package/dist/{cli-D3TJYJ2U.js.map → cli-2BW2PZMP.js.map} +0 -0
  141. /package/dist/{client-4LLEXLVK.js.map → client-HMGTCKRW.js.map} +0 -0
  142. /package/dist/{config-DA4IUVFL.js.map → config-LVXDVUYY.js.map} +0 -0
  143. /package/dist/{detect-SZ2KDUF4.js.map → detect-BEOIHGBC.js.map} +0 -0
  144. /package/dist/{detect-providers-PSVKXTWE.js.map → detect-providers-CDG6BKHU.js.map} +0 -0
  145. /package/dist/{doctor-KCTXPX5D.js.map → doctor-AK3W5FMN.js.map} +0 -0
  146. /package/dist/{executor-UYIZC3L5.js.map → executor-YLC7DHBY.js.map} +0 -0
  147. /package/dist/{init-QFNBKKDC.js.map → init-4FV7ODOK.js.map} +0 -0
  148. /package/dist/{llm-SMA5ZEAW.js.map → llm-INLSGEXY.js.map} +0 -0
  149. /package/dist/{loader-Q3P3R4UP.js.map → loader-2ULW2FZS.js.map} +0 -0
  150. /package/dist/{loader-SKKUMT5C.js.map → loader-HEGKUTGI.js.map} +0 -0
  151. /package/dist/{open-7737CSPN.js.map → open-YSB36HP7.js.map} +0 -0
  152. /package/dist/{post-compact-2TJ5FPZH.js.map → post-compact-5OB4LRLA.js.map} +0 -0
  153. /package/dist/{post-tool-use-FRTSICC3.js.map → post-tool-use-2UOTDXXS.js.map} +0 -0
  154. /package/dist/{post-tool-use-failure-KYO2NCNB.js.map → post-tool-use-failure-ZJQGHBMW.js.map} +0 -0
  155. /package/dist/{pre-compact-J6GCJEJR.js.map → pre-compact-WD3FYUZ4.js.map} +0 -0
  156. /package/dist/{provider-check-AE3L5Z6R.js.map → provider-check-V3NSOLZQ.js.map} +0 -0
  157. /package/dist/{registry-O2NZLO3V.js.map → registry-XGRKLHEK.js.map} +0 -0
  158. /package/dist/{remove-3WZZC7AX.js.map → remove-L6T4LMFP.js.map} +0 -0
  159. /package/dist/{resolution-events-XWYLLDRK.js.map → resolution-events-PZFKMZHM.js.map} +0 -0
  160. /package/dist/{restart-HUHEFOXU.js.map → restart-4UGLWER2.js.map} +0 -0
  161. /package/dist/{search-ZGN3LDXG.js.map → search-MJGMQZ5N.js.map} +0 -0
  162. /package/dist/{session-7VV3IQMO.js.map → session-GLKHGGPJ.js.map} +0 -0
  163. /package/dist/{session-end-SMU55UCM.js.map → session-end-ISPUQH3X.js.map} +0 -0
  164. /package/dist/{session-start-NIMWEOIZ.js.map → session-start-VF26JMWW.js.map} +0 -0
  165. /package/dist/{setup-llm-7S3VPAPN.js.map → setup-llm-7RCROQLP.js.map} +0 -0
  166. /package/dist/{stats-GEOQ2DFF.js.map → stats-N7FYQSAY.js.map} +0 -0
  167. /package/dist/{stop-7AKYBJJ2.js.map → stop-LVRFMSGO.js.map} +0 -0
  168. /package/dist/{stop-failure-NLE2EURG.js.map → stop-failure-AXU5LOBN.js.map} +0 -0
  169. /package/dist/{subagent-start-LBNZF2TG.js.map → subagent-start-KDJIQXQC.js.map} +0 -0
  170. /package/dist/{subagent-stop-B2Z5GYAB.js.map → subagent-stop-2T2H2TYE.js.map} +0 -0
  171. /package/dist/{task-completed-PO5TETJ7.js.map → task-completed-XHQ3XMYJ.js.map} +0 -0
  172. /package/dist/{version-QEVU66NT.js.map → team-GM2VZOVM.js.map} +0 -0
  173. /package/dist/{update-WBWB5URU.js.map → update-R6VHTRQA.js.map} +0 -0
  174. /package/dist/{user-prompt-submit-IZJC3NV7.js.map → user-prompt-submit-EK2MDBLQ.js.map} +0 -0
  175. /package/dist/{verify-FNSP62I3.js.map → verify-NK46D4II.js.map} +0 -0
package/README.md CHANGED
@@ -1,150 +1,37 @@
1
- <p align="center">
2
- <img src="assets/hero-wide.svg" alt="Myco" width="100%">
3
- </p>
1
+ # @goondocks/myco
4
2
 
5
- <p align="center">
6
- <strong>The intelligence layer for your projects and team</strong>
7
- </p>
3
+ `@goondocks/myco` is the main Myco package.
8
4
 
9
- <p align="center">
10
- <a href="https://github.com/goondocks-co/myco/actions/workflows/ci.yml"><img src="https://github.com/goondocks-co/myco/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
11
- <a href="https://github.com/goondocks-co/myco/actions/workflows/publish.yml"><img src="https://github.com/goondocks-co/myco/actions/workflows/publish.yml/badge.svg" alt="Release"></a>
12
- <a href="https://www.npmjs.com/package/@goondocks/myco"><img src="https://img.shields.io/npm/v/@goondocks/myco?label=npm&color=22c55e" alt="npm"></a>
13
- <a href="https://github.com/goondocks-co/myco/blob/main/LICENSE"><img src="https://img.shields.io/github/license/goondocks-co/myco?color=22c55e" alt="License"></a>
14
- <img src="https://img.shields.io/badge/node-%3E%3D22-22c55e" alt="Node 22+">
15
- <img src="https://img.shields.io/badge/agents-Claude%20Code%20%7C%20Cursor%20%7C%20Codex%20%7C%20VS%20Code%20%7C%20Gemini%20%7C%20Windsurf%20%7C%20OpenCode-22c55e" alt="Claude Code | Cursor | Codex | VS Code | Gemini | Windsurf | OpenCode">
16
- </p>
5
+ Install it to add Myco to a project, run the local dashboard and daemon, connect supported coding agents, and use the built-in team sync workflow.
17
6
 
18
7
  ```bash
19
8
  curl -fsSL https://myco.sh/install.sh | sh
20
- ```
21
-
22
- Then initialize in your project:
23
- ```bash
24
9
  cd your-project
25
10
  myco init
26
11
  ```
27
12
 
28
- `myco init` detects your coding agents, installs hooks, starts the daemon, and opens the dashboard. Pick the agent and embedding providers from the Settings page when you're ready — data capture starts immediately, intelligence is opt-in. Works with Claude Code, Cursor, Codex, VS Code Copilot, Gemini CLI, Windsurf, and OpenCode.
29
-
30
- ## What is Myco?
31
-
32
- Myco is the intelligence layer beneath your projects. Named after [mycorrhizal networks](https://en.wikipedia.org/wiki/Mycorrhizal_network) — the underground fungal systems that connect trees in a forest — Myco captures what happens across your coding sessions and connects it into a living knowledge graph, sharing intelligence between agents and team members beneath the surface.
33
-
34
- Every coding session produces knowledge: decisions made, gotchas discovered, trade-offs weighed, bugs fixed. Without Myco, that knowledge dies when the session ends. With Myco, it's captured as **spores** — discrete observations that persist, connect, and compound over time.
35
-
36
- **For agents** — [MCP tools and skills](docs/agent-tools.md) let any agent search, recall, and build on accumulated knowledge. A digest extract is injected at session start and relevant spores surface after each prompt — agents get context without being told to search.
37
-
38
- **For humans** — a local [dashboard](#dashboard) provides configuration, operational triggers, and monitoring. Manage providers, run intelligence cycles, and view live logs.
39
-
40
- **For teams** — [team sync](docs/team-sync.md) shares accumulated knowledge across machines through a Cloudflare Worker. Every teammate's agent gets access to the team's collective intelligence — spores, session context, and the knowledge graph — through the same search tools they already use.
41
-
42
- ## How it works
43
-
44
- ### Capture
45
-
46
- Myco hooks into your agent's lifecycle — session starts, prompts, tool calls, stops — and records activity in the vault's SQLite database. A background daemon parses the agent's conversation transcript to capture the full dialogue, including AI responses and any screenshots shared during the session.
47
-
48
- ### Intelligence
49
-
50
- Myco runs an intelligence pipeline in the background that reads captured sessions and turns them into durable knowledge. It extracts **spores** (observations like decisions, gotchas, discoveries, trade-offs, bug fixes), generates session titles and summaries, links entities into a knowledge graph, and refreshes digest extracts — all automatically.
51
-
52
- When the agent finds 3+ semantically similar spores, it synthesizes them into a **wisdom** spore — a higher-order observation that captures the pattern across sessions. Individual observations become institutional knowledge.
53
-
54
- Every task can use a different LLM provider. Run title generation on a fast local model via Ollama, extraction on Claude, consolidation on a larger local model via LM Studio. Configure globally or per-task in `myco.yaml`, or use the [dashboard](#dashboard) to manage assignments visually.
55
-
56
- See the [Intelligence Pipeline docs](docs/agent-harness.md) for the task catalog, provider configuration, and scheduling.
57
-
58
- ### Digest
59
-
60
- The digest synthesizes accumulated knowledge into tiered **extracts** — pre-computed context at different depths:
61
-
62
- | Tier | Purpose |
63
- |------|---------|
64
- | **1,500 tokens** | Executive briefing — what this project is, what's active, what to avoid |
65
- | **5,000 tokens** | Deep onboarding — trade-offs, patterns, team dynamics |
66
- | **10,000 tokens** | Institutional knowledge — full thread history and design tensions |
67
-
68
- Extracts refresh in the background as new knowledge arrives. When the project goes quiet, refresh slows; new sessions wake it back up.
69
-
70
- ### Search
71
-
72
- Every record is indexed for both keyword search and semantic similarity. Use [Ollama](https://ollama.com) locally for embeddings, or [OpenRouter](https://openrouter.ai) / [OpenAI](https://platform.openai.com) in the cloud. The index is fully rebuildable from the database.
73
-
74
- ### Context injection
75
-
76
- Two automatic injection points ensure agents always have relevant intelligence:
77
-
78
- - **Session start** — the digest extract gives the agent pre-computed project understanding before it asks a single question.
79
- - **Per-prompt** — after each user prompt, relevant spores are retrieved via semantic search, providing targeted context for the task at hand.
80
-
81
- Agents don't need to search explicitly — Myco surfaces what's relevant.
82
-
83
- ### Dashboard
84
-
85
- A local web dashboard provides configuration and operations management. Manage intelligence providers and per-task model assignments, trigger agent and digest cycles, monitor daemon health, and view live logs.
86
-
87
- <p align="center">
88
- <img src="assets/myco-dashboard.png" alt="Myco Dashboard" width="100%">
89
- </p>
90
-
91
- ### Symbionts
92
-
93
- Myco integrates with coding agents through **symbionts** — named for the mycorrhizal symbiotic relationship between fungi and their host trees. `myco init` detects available agents and lets you choose which to configure. Registration is project-local — hooks, MCP servers, skills, and auto-approve settings are written directly to each agent's config files.
94
-
95
- | Agent | Hooks | MCP | Skills | Auto-Approve | Plans |
96
- |-------|-------|-----|--------|-------------|-------|
97
- | [Claude Code](https://claude.ai/code) | `.claude/settings.json` | `.mcp.json` | `.claude/skills/` | `permissions.allow` | `.claude/plans/` |
98
- | [Cursor](https://cursor.com) | — | `.cursor/mcp.json` | `.cursor/skills/` | `autoApprove` | `.cursor/plans/` |
99
- | [Codex](https://github.com/openai/codex) | `.codex/hooks.json` | `.codex/config.toml` | `.agents/skills/` | — | — |
100
- | [VS Code Copilot](https://code.visualstudio.com/docs/copilot) | `.github/hooks/` | `.vscode/mcp.json` | `.agents/skills/` | `autoApprove` | — |
101
- | [Gemini CLI](https://geminicli.com) | `.gemini/settings.json` | `.gemini/settings.json` | `.agents/skills/` | `coreTools` | `.gemini/plans/` |
102
- | [Windsurf](https://windsurf.com) | `.windsurf/hooks.json` | — | `.agents/skills/` | `cascadeCommandsAllowList` | `~/.windsurf/plans/` |
103
- | [OpenCode](https://opencode.ai) | `.opencode/plugins/myco.ts` (plugin) | `opencode.json` (`mcp` key) | `.agents/skills/` | `permission.bash` | `.opencode/plans/` |
104
-
105
- Skills are installed once to `.agents/skills/` (the emerging cross-agent standard) and symlinked to each agent's native skills directory. Adding a new agent requires only a YAML manifest and templates — no code changes for JSON-hook agents, and a small manifest extension for plugin-based agents like OpenCode.
106
-
107
- See the [Symbiont docs](docs/symbionts.md) for detailed setup information per agent.
108
-
109
- ### Team sync
110
-
111
- Share knowledge across machines and team members with one command:
112
-
113
- ```bash
114
- myco team init # Provisions Cloudflare D1 + Vectorize + KV + Worker
115
- ```
116
-
117
- Share the output URL and API key with teammates — they connect from the Team page in the dashboard. Once connected, knowledge syncs automatically: new spores, session summaries, plans, and graph edges push to the team store in the background. Search queries fan out to both local and cloud databases, merging results by relevance score.
118
-
119
- Local databases remain the source of truth. The cloud store is a queryable mirror — no data is pulled back down. Each record carries a machine identity for attribution.
120
-
121
- Runs on the Cloudflare free tier. See the [Team Sync docs](docs/team-sync.md) for the full guide.
122
-
123
- ### Cloud MCP Server
124
-
125
- Team sync also deploys a read-only **Cloud MCP server** on the same Worker — a Streamable HTTP endpoint that exposes your project's intelligence to cloud agents like Anthropic Managed Agents, OpenAI Workflows, and N8N. Connect any tool that speaks MCP and it gets the same project context your local agents already have. See the [Cloud MCP docs](docs/cloud-mcp.md) for the tool reference and setup.
126
-
127
- ### Skills — automated curation, not just memory
128
-
129
- Memory is table stakes. Myco goes further: it turns everything your team learns into **repeatable workflows** that every agent follows. The intelligence pipeline identifies procedural patterns across sessions — debugging the build, adding API routes, configuring providers, resolving common gotchas — and surfaces them as candidates. You approve what becomes canon, and Myco generates validated SKILL.md files under `.agents/skills/`, symlinked into every agent's native skills directory.
130
-
131
- Skills evolve as your code does. When a pattern is abandoned, a new gotcha is discovered, or a workflow shifts, the evolve task rewrites affected skills — preserving what's still accurate, incorporating what's new, and splitting skills that have grown too broad. See the [Skills docs](docs/skills.md) for the full lifecycle.
132
-
133
- ### Backup & restore
13
+ ## What you can do
134
14
 
135
- Local SQL dump backups run automatically during daemon idle periods. Configure a custom backup directory (network share, git repo) from the Operations page. Restore with content-hash deduplication — never overwrites existing records.
15
+ - Capture coding sessions into a local Myco vault
16
+ - Run the local dashboard, daemon, and MCP server
17
+ - Search sessions, spores, plans, and artifacts
18
+ - Share project intelligence with Team Sync
19
+ - Connect multiple team workers to a Myco Collective
136
20
 
137
- ## Health check
21
+ ## Upgrade
138
22
 
139
23
  ```bash
140
- myco doctor
24
+ npm update -g @goondocks/myco
141
25
  ```
142
26
 
143
- Verifies vault config, database, intelligence provider, embedding provider, symbiont registration, and daemon status. Use `--fix` to auto-repair fixable issues.
27
+ The Operations page can also detect and apply updates for installed Myco packages on the same machine.
144
28
 
145
- ## Contributing
29
+ ## Learn more
146
30
 
147
- Contributions welcome. See the [Contributing Guide](CONTRIBUTING.md) for development setup, and the [Lifecycle docs](docs/lifecycle.md) for architecture details. Please open an issue to discuss before submitting a PR.
31
+ - Project homepage: <https://github.com/goondocks-co/myco>
32
+ - Quickstart: <https://github.com/goondocks-co/myco/blob/main/docs/quickstart.md>
33
+ - Team Sync: <https://github.com/goondocks-co/myco/blob/main/docs/team-sync.md>
34
+ - Collective: <https://github.com/goondocks-co/myco/blob/main/docs/collective.md>
148
35
 
149
36
  ## License
150
37
 
@@ -1,15 +1,15 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  connectToDaemon
4
- } from "./chunk-TLK46KKD.js";
4
+ } from "./chunk-AOCBCPAP.js";
5
5
  import "./chunk-SAKJMNSR.js";
6
6
  import "./chunk-WYOE4IAX.js";
7
- import "./chunk-CML4MCYF.js";
7
+ import "./chunk-PMT2LSTQ.js";
8
8
  import "./chunk-MYX5NCRH.js";
9
- import "./chunk-XWOQL4XN.js";
10
- import "./chunk-W7WENJ6F.js";
9
+ import "./chunk-NU74DHV3.js";
10
+ import "./chunk-46AQ7D23.js";
11
11
  import "./chunk-LPUQPDC2.js";
12
- import "./chunk-CKJAWZQE.js";
12
+ import "./chunk-I54KLC6H.js";
13
13
  import "./chunk-E7NUADTQ.js";
14
14
  import "./chunk-PZUWP5VK.js";
15
15
 
@@ -32,4 +32,4 @@ async function run(args, vaultDir) {
32
32
  export {
33
33
  run
34
34
  };
35
- //# sourceMappingURL=agent-run-I4O2K2CK.js.map
35
+ //# sourceMappingURL=agent-run-BV3ATBWB.js.map
@@ -1,15 +1,15 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
2
  import {
3
3
  connectToDaemon
4
- } from "./chunk-TLK46KKD.js";
4
+ } from "./chunk-AOCBCPAP.js";
5
5
  import "./chunk-SAKJMNSR.js";
6
6
  import "./chunk-WYOE4IAX.js";
7
- import "./chunk-CML4MCYF.js";
7
+ import "./chunk-PMT2LSTQ.js";
8
8
  import "./chunk-MYX5NCRH.js";
9
- import "./chunk-XWOQL4XN.js";
10
- import "./chunk-W7WENJ6F.js";
9
+ import "./chunk-NU74DHV3.js";
10
+ import "./chunk-46AQ7D23.js";
11
11
  import "./chunk-LPUQPDC2.js";
12
- import "./chunk-CKJAWZQE.js";
12
+ import "./chunk-I54KLC6H.js";
13
13
  import "./chunk-E7NUADTQ.js";
14
14
  import "./chunk-PZUWP5VK.js";
15
15
 
@@ -178,4 +178,4 @@ async function run(args, vaultDir) {
178
178
  export {
179
179
  run
180
180
  };
181
- //# sourceMappingURL=agent-tasks-UOW5BQIB.js.map
181
+ //# sourceMappingURL=agent-tasks-I5SMLWVL.js.map