🏡 greenhouse multi-repo
Shared memory across the repos of one platform. Each repo keeps a card with what it provides, what it depends on and its key facts, so your agent knows the neighbours without reading them.
v0.3 · For multi-repo platforms and agent swarms
Keep a whole platform in your agents' heads. Six offline Skills for Claude Code share what every repo and every agent already knows, and trim what each one reads.
When one production platform spans many repositories and a swarm of agents works on it at once, context is the bottleneck. Context Garden shares system knowledge across repos and agents, and trims what each agent reads. Everything runs offline, with no LLM calls inside the tools.
› /plugin marketplace add oliverweissl/context-garden › /plugin install context-garden@context-garden › /context-garden:setup # pick skills by use case
$ git clone https://github.com/oliverweissl/context-garden $ cp -r context-garden/skills/compost ~/.claude/skills/ # its hooks need the settings snippet from the README
/context-garden:setup asks how you work and turns on the right ones. Which skills for which use caseNeeds Claude Code and python3 on PATH. Hooks and agents are Claude Code features; the AGENTS.md seedbank writes is read by any agent that reads AGENTS.md.
Production platforms are split into components that live in separate repositories. To change one safely, an agent needs to know the system around it: what each repo provides, what depends on it, which conventions hold everywhere. When you spawn several agents for a swarming task, each one pays to rediscover that, and they read the same files in parallel.
Captured from a three-repo test platform: auth-service, api-gateway and web-app. Each repo ran greenhouse sync once.
Greenhouse shop-platform (../.greenhouse): 3 repo(s). This repo uses: api-gateway; used by: - Platform notes: - [p001] token-expiry: Access tokens expire after 15 min; clients must refresh via auth-service /refresh Related repos: - api-gateway: Public REST v2 entry point. Validates tokens from auth-service. [checkout ../api-gateway] - auth-service: Issues JWT access tokens (15 min) and refresh tokens. [checkout ../auth-service] Read another repo's files only if a card points there.
✗ denied by the mycelium delegation gate: shared notes already cover part of this task: - [n001] token-validation: Gateway validates JWTs in src/auth.py:validate; expiry is checked, signature key comes from auth-service JWKS (paths: src/auth.py) Re-issue with a `Known:` line carrying the relevant notes (tell the agent to verify, not rediscover) ... ✓ allowed after the brief adds: Known: n001 (verify, don't rediscover)
A coding agent pays for every token it reads, and it re-reads the same things every session: full build logs, whole files, the same setup docs. Context Garden removes that repeat cost.
First three: measured examples in examples/. Last: v0.2.0 benchmark, 5 runs per arm, see summary.
hook to ask, rewrite or off). With mycelium on, an agent spawn without a proper brief is sent back..seedbank/, .compost/, .pruner/ and .mycelium/ at the git root, and each writes its own .gitignore. A greenhouse base is a plain folder beside your repos; share it like any other folder.Two work across the platform and the swarm, three cut what each agent reads, and one keeps the skills themselves small. Install all of them as a plugin or copy only the ones you need. Each skill is self-contained and uses only the Python standard library.
Shared memory across the repos of one platform. Each repo keeps a card with what it provides, what it depends on and its key facts, so your agent knows the neighbours without reading them.
A delegation gate for subagents. Briefs stay bounded, duplicate investigations get stopped, and findings are shared as notes so the next agent starts from what is known.
Picks the smallest set of file:start-end ranges for a bug, traceback or change in a large Python or C/C++ repo. No more grepping around and reading whole files.
Runs long builds, test suites and CI jobs through a clustering summarizer. You get the root errors and counts instead of thousands of lines, and re-runs show only what changed.
Notices facts your agent keeps rediscovering, like build commands, conventions and past mistakes, and promotes them into a small, always-loaded AGENTS.md.
Audits a Skill and produces a smaller copy that keeps every instruction and still routes correctly, with before and after evidence. Trims the cost every installed skill adds to each session.
A flaky test suite fails 17 tests. Without compost, the agent reads every traceback. With it, the agent reads one root cause.
Root error(s): TypeError: timeout must be an int, got '30' (lines 390-404, x15, affected tests: 15) Secondary failure groups: - KeyError: 'urgent' x2 Numerical summary: tests_passed: 4 tests_failed: 17 ✓ 97.2% fewer tokens, same diagnosis
Deterministic parts run as Claude Code hooks, so they work even when the agent forgets. Skills explain the how, and jobs worth delegating ship as agents. All state lives in small JSON stores at your git root.
Every skill starts off: nothing runs, not even its hooks. After installing, run /context-garden:setup: it asks how you work and turns on the right skills, for this repo or everywhere. Until you do, each session reminds you. You can also just ask Claude, for example "turn compost on".
Nothing runs. The skill declines if called and tells you how to turn it on. The default.
Runs only when you ask, for example /context-garden:compost summarize the failing run. Hooks stay quiet.
Claude uses it on its own when relevant, and its hooks run. Recommended for compost, pruner and seedbank.
Pick the closest preset. Skills it does not turn on stay manual: they never run on their own but answer when you call them.
Debugging, failing tests, compiler errors in a single repository.
/context-garden:setup soloServices, shared packages and APIs spread over several repos. greenhouse lets each agent know its neighbours without opening them.
/context-garden:setup platformClaude spawns subagents to search, investigate or edit in parallel. mycelium gates and briefs them and shares their findings.
/context-garden:setup swarmBoth of the above: many agents working across many repos.
/context-garden:setup platform-swarmHuge builds, test suites, CI or HPC/SLURM output.
/context-garden:setup logsSlim your own SKILL.md files on demand; weeder stays manual in every preset, so just call it.
/context-garden:weeder slim skills/my-skillRule of thumb: greenhouse pays off only when several repos interact, mycelium only when Claude delegates to many agents; compost, pruner and seedbank help in almost any repo. Add --scope user to apply a preset to every repo, or --scope project to share it with your team.
Paste into Claude Code. The last line picks the skills for how you work.
› /plugin marketplace add oliverweissl/context-garden › /plugin install context-garden@context-garden › /context-garden:setup # pick skills by use case
$ git clone https://github.com/oliverweissl/context-garden $ cp -r context-garden/skills/compost ~/.claude/skills/ # its hooks need the settings snippet from the README
/context-garden:setup turns on the ones for your use case. See the recommendations