Agent-First symbiotic cognitive substrate. 20 fungal-named verbs (19 agent + 1 human `brief`), 46-dimension immune across 7 subsystems, substrate-local plugins, editable-by-default install, universal MCP stdio + streamable-http server.
Project description
Myco
Devour everything. Evolve forever. You just talk.
Claude Code /plugin install myco@myco · Claude Desktop myco-install host cowork · Any MCP host pip install 'myco[mcp]'
What it is · How it lives · Quick start · Verbs · Self-validation
LangChain. LangGraph. CrewAI. DSPy. Claude Code skills. OpenHands. OpenClaw. Every few months the next framework drops and you migrate again.
Your notes rot too. The API you read three weeks back has changed. The doc you wrote last year is wrong now. Your AI does not even remember last week's decisions. Every new conversation starts from zero.
Now imagine one living substrate. It ingests the frameworks, the papers, the APIs, the codebases, the datasets, the decisions, the frictions. It keeps them connected in a graph the agent actually reads. It catches its own drift. It reshapes itself when your work outgrows its old form. For six months. For six years. No migration.
This is Myco.
What it is
Myco is a living cognitive substrate for your AI agent.
Everything the agent reads or writes, every piece of code and every paper and every decision and every friction, lives on your filesystem as plain markdown + YAML. Files cross-reference each other by name, forming a graph the agent actually reads. The agent eats raw material, digests it into integrated knowledge, immune-checks its own work against drift, propagates learning across your projects, and when the shape of the substrate no longer fits the shape of the work, reshapes the substrate itself. The kernel that runs all of this is itself a substrate, editable by default, maintained by the same agent that uses it.
Not a framework. Not a vector database. Not a managed service. A living filesystem for an agent you talk to.
The idea is older than the implementation. What changed is the agent. Today's models are finally capable of keeping their own tooling alive. Every earlier attempt at a self-maintaining knowledge system died in the same place, where the human in the loop could no longer keep up. Myco puts the loop inside the agent. Every surface, every verb, every rule assumes the maintainer is an agent, so the human in the loop is no longer load-bearing.
How it lives
You speak. The agent listens. Between your turns, Myco runs a metabolism.
- Ingestion.
hungerasks what is missing.eatabsorbs whatever you point at, whether a path, a URL, or a paragraph.senseandforagescan what is already here.excretesafely removes a raw note captured by mistake, moving it to an audit tombstone instead of silently deleting.intake(v0.6.0) bulk-ingests a whole directory, composing forage + eat with strict-mode failure visibility. - Digestion.
assimilatecooks raw notes into integrated knowledge.digestpromotes a single note.sporulateconcentrates integrated notes into a dispersible proposal. - Circulation.
traversewalks the graph and reports on its connectedness.propagatepublishes learning to a downstream substrate. - Homeostasis.
immuneruns a 25-dimension lint against the seven hard rules.senescewinds down each session cleanly. - Evolution. When the substrate's shape no longer fits the work, whether a canon field is missing, a new lint dimension is needed, or a verb must change,
fruitdrafts a three-round craft proposal,winnowgates its shape, andmoltships the contract bump.
Twenty verbs, one manifest, two faces: a CLI for you to observe, an MCP server for the agent to drive. You memorize nothing. The agent drives.
Five principles
- Only for the agent. Every surface, every message, every verb shape is primary material for the agent. Not documentation for a human reader.
- Devour everything. No filter on intake. Missing a signal costs more than eating one too many.
- Self-evolving shape. Canon, lint dimensions, verbs, the contract itself, all of it mutable, all of it changed through a single governed craft loop.
- Nothing is final.
integratedis a state, not an endpoint. Today's conclusion is tomorrow's raw material. - Mycelium network. Every node links to every other node by traversal. Orphans are dead tissue.
The kernel IS a substrate
Myco's own source tree is a substrate. _canon.yaml at the root. MYCO.md as the agent entry page. docs/primordia/ holding the three-round craft document that justifies every contract bump. The Python code under src/myco/ is the innermost ring of its own ecosystem. Not a read-only artifact someone else wrote.
So the normal install clones the source and runs pip install -e on it. The agent that uses Myco is the same agent that maintains Myco. When it needs a new lint dimension, it scaffolds one with myco ramify, writes the case with myco fruit, gates the shape with myco winnow, and ships the bump with myco molt. No fork. No waiting PR. No long-lived feature branch. 永恒进化.
PyPI exists for bootstrap and for library embedding. It is not the normal install path.
Quick start
pipx run --spec 'myco[mcp]' myco-install fresh ~/myco
This clones the repository to ~/myco, runs pip install -e on it, and leaves you with a writable kernel. Then germinate a substrate inside any project:
cd your-project
myco germinate . --substrate-id your-project
Hook Myco into your agent host in one command:
- Claude Code. Run
/plugin marketplace add Battam1111/Myco, then/plugin install myco@myco. - Claude Desktop / Cowork. Run
myco-install host coworkto write the MCP entry, then downloadmyco-<ver>.pluginand drag it into Claude Desktop → Settings → Plugins → Upload. Claude Desktop uploads it to your private Cowork marketplace and every subsequent session auto-installs themyco-substrateonboarding skill. - Any other MCP host. Run
myco-install host <cursor | windsurf | zed | vscode | openclaw | claude-desktop | gemini-cli | codex-cli | goose>, or pass--all-hoststo auto-detect every host on this machine. - Via the official MCP Registry. Use the namespace
io.github.Battam1111/mycofor clients that auto-resolve it.
Per-host snippets for the nine hosts with divergent schemas, Python-framework adapters (LangChain, CrewAI, DSPy, Smolagents, Agno, PraisonAI, MS Agent Framework, Claude Agent SDK), and library-embedding examples all live in INSTALL.md.
The twenty verbs
Six subsystems. Every name is a fungal-biology term whose meaning tracks its action.
- Germination.
germinatestarts a fresh substrate. - Ingestion.
hunger(what is missing?),eat(absorb raw material),sense(keyword search),forage(scan ingestible paths),excrete(safely delete a raw note with an audit tombstone),intake(bulk-ingest a directory; v0.6.0). - Digestion.
assimilate(raw to integrated, in bulk),digest(promote a single note),sporulate(integrated to dispersible proposal). - Circulation.
traverse(walk the graph),propagate(publish to a downstream substrate). - Homeostasis.
immune(25-dimension lint;--fixrepairs mechanically where it can). - Cycle.
senesce(session dormancy),fruit(three-round craft),winnow(gate the craft's shape),molt(ship the contract bump),ramify(scaffold a new dimension, verb, or adapter),graft(manage substrate-local plugins),brief(human-facing state rollup).
Every verb lives in src/myco/surface/manifest.yaml. The CLI (myco VERB) and the MCP tool surface both derive from that manifest mechanically. One source of truth for both faces. A downstream substrate can ramify its own dimensions or verbs into .myco/plugins/ without ever forking Myco.
Self-validation
Myco does not trust its agent to remember the contract. It enforces it.
- 25 lint dimensions across four categories: mechanical (canon invariants, write-surface, LLM-boundary), shipped (package and canon version parity), metabolic (raw backlog, stale integrated notes), semantic (graph connectedness, orphan detection).
myco immune --fixrepairs mechanically where it can. - Seven hard rules (R1 through R7) govern every session: boot ritual, session-end, sense-before-assert, eat-on-friction, cross-reference-on-creation, write-surface discipline, top-down layering. Full contract at
L1_CONTRACT/protocol.md. - Pulse sidecar. Every MCP tool response carries a
substrate_pulseechoing the current contract version and a rule hint that escalates (R1, then R3, then on through the session) as the session progresses. A server-side push. The agent cannot accidentally forget. - Write-surface enforcement. Any write outside
_canon.yaml::system.write_surface.allowedis refused withWriteSurfaceViolation. Discipline as a mechanism, not as a request.
Zero host-side configuration. R1 through R7 ride inside the MCP server itself, so every client (Claude Code, Cursor, Windsurf, Zed, Codex, Gemini, Continue, Claude Desktop, OpenClaw, OpenHands) gets the same contract on boot.
Integrations
- Claude Code. Official plugin wires MCP, hooks, and slash skills in one command. Or drop
.claude/in by hand. - Cowork (Claude Desktop local-agent-mode). Two steps: (1)
myco-install host coworkwrites the MCP server entry; (2) drag the.pluginbundle from GitHub releases into Claude Desktop's plugin upload. Claude Desktop uploads it to your private Cowork marketplace, and every session auto-installs themyco-substrateonboarding skill so the agent follows R1 through R7 the moment it sees_canon.yaml. Cowork does not expose hooks and does not read local plugin dirs, so drag-and-drop is the only persistent path. SeeINSTALL.mdfor the full rationale. - Any MCP host. Ten are automated via
myco-install. Another nine have per-host snippets inINSTALL.md. Any other client can still runmcp-server-mycoover stdio directly. - Python agent frameworks. LangChain, CrewAI, DSPy, Smolagents, Agno, PraisonAI, MS Agent Framework, and Claude Agent SDK all consume Myco via
StdioServerParameters(command="mcp-server-myco"). - Downstream substrates.
myco propagatepublishes. Adapters live inmyco.boundary.host_integration(v0.6.0; wasmyco.symbiontspre-v0.6.0).
Learn more
L0_VISION.md · L1_CONTRACT/ · L2_DOCTRINE/ · INSTALL.md · CONTRIBUTING.md · Issues
Architectural changes land as dated craft documents under docs/primordia/. Every release is governed by a three-round debate, then a molt, then an auto-published fan-out to PyPI, the MCP Registry, and the GitHub release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file myco-0.6.0.post1.tar.gz.
File metadata
- Download URL: myco-0.6.0.post1.tar.gz
- Upload date:
- Size: 2.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a1096d83522a10349d6ab4952db13d40bdc1ae32c5bf896ee407c03b83ade79
|
|
| MD5 |
2eb095043dc36927d80867a1c9741cd0
|
|
| BLAKE2b-256 |
600ffcf8f02992ff9dcd2b8eb6b2110451192e4ba88a91934f168c2358606cbc
|
Provenance
The following attestation bundles were made for myco-0.6.0.post1.tar.gz:
Publisher:
release.yml on Battam1111/Myco
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
myco-0.6.0.post1.tar.gz -
Subject digest:
6a1096d83522a10349d6ab4952db13d40bdc1ae32c5bf896ee407c03b83ade79 - Sigstore transparency entry: 1395068848
- Sigstore integration time:
-
Permalink:
Battam1111/Myco@a665c0b46e45f9d11fcd0b6a70736a7ae6d4a1fd -
Branch / Tag:
refs/tags/v0.6.0.post1 - Owner: https://github.com/Battam1111
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a665c0b46e45f9d11fcd0b6a70736a7ae6d4a1fd -
Trigger Event:
push
-
Statement type:
File details
Details for the file myco-0.6.0.post1-py3-none-any.whl.
File metadata
- Download URL: myco-0.6.0.post1-py3-none-any.whl
- Upload date:
- Size: 363.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8bedc2ed33a895102309d34468e6272518cd79e33b3fa9f88be28661a7396e68
|
|
| MD5 |
10ecc2c1b5a97801cd9fa5730d5c54e6
|
|
| BLAKE2b-256 |
ade2d560c32f443a799690da7e76d4b92d3fae0e530457091ff0ce66c3de4867
|
Provenance
The following attestation bundles were made for myco-0.6.0.post1-py3-none-any.whl:
Publisher:
release.yml on Battam1111/Myco
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
myco-0.6.0.post1-py3-none-any.whl -
Subject digest:
8bedc2ed33a895102309d34468e6272518cd79e33b3fa9f88be28661a7396e68 - Sigstore transparency entry: 1395068854
- Sigstore integration time:
-
Permalink:
Battam1111/Myco@a665c0b46e45f9d11fcd0b6a70736a7ae6d4a1fd -
Branch / Tag:
refs/tags/v0.6.0.post1 - Owner: https://github.com/Battam1111
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a665c0b46e45f9d11fcd0b6a70736a7ae6d4a1fd -
Trigger Event:
push
-
Statement type: