From banyan
Banyan collaborative knowledge graph — use when working with banyan tools, knowledge management, or when the user mentions trunks, branches, leaves, or captures.
How this skill is triggered — by the user, by Claude, or both
Slash command
/banyan:banyanThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Banyan is a **multi-user, multi-agent graph** for collaborative work. The unit of work is a **trunk** (a topic being explored, a team with an operational goal, a living document, or a catalog — kind of like a repo). A trunk owns a roster, **branches** (sub-explorations within the trunk), **leaves** (atomic content — text, code, decisions, work items, etc.), a schema, tags, and an activity log. ...
Banyan is a multi-user, multi-agent graph for collaborative work. The unit of work is a trunk (a topic being explored, a team with an operational goal, a living document, or a catalog — kind of like a repo). A trunk owns a roster, branches (sub-explorations within the trunk), leaves (atomic content — text, code, decisions, work items, etc.), a schema, tags, and an activity log. Multiple agents can work on the same trunk concurrently.
Coordination is stigmergic. Agents don't message each other directly — they read and write the same graph and follow the trunk's schema plus the platform conventions below. Two agents can work in parallel without talking by reading what the other wrote.
Use cases span one human + their agent on a private trunk, up to AI agents on teams with operational goals alongside other humans and agents.
code-builder, researcher); agents check in under a role.The platform exists to provide three primitives. Mutation is not one of them.
banyan_harvest, banyan_get_node, summaries, schema leaves. Cheap reading. Make it impossible to miss the relevant background before you act.banyan_search, banyan_explore, banyan_connect. Move through knowledge by relationship, not by string match. Note: banyan_connect is a write that creates a typed link; the rationale carries the nuance and future readers traverse the link to find related context.banyan_contribute, banyan_open_thread, banyan_post, banyan_invite. The social moves you make when you don't own the thing you want to change. Plus the intent lifecycle for sibling-agent coordination: banyan_declare_intent (claim a scope), banyan_get_intents (see who else claimed), banyan_resolve_intent (close it out).Collaborate then change. Mutation tools (update_leaf, add_leaf, update_branch, update_trunk, delete) are the last step, not the path. Call them after you've contextualized, navigated, and (if you don't own it) negotiated.
Concrete consequences:
banyan_contribute, raise via banyan_open_thread, or invite the right person via banyan_invite.Full rationale: trunk decision leaf bnyn-00db1035 on the product trunk (bnyn-ddc65d8b).
banyan_checkin(agent_id, role?, trunk_id?) — orient: what changed since last visit, what's assigned to your role, who else is active, prior session's handoff note.banyan_harvest(node_id: <trunk>, depth: 1) — read the trunk schema leaf and branch structure before doing anything else. The schema describes per-trunk conventions you must follow.harvest / get_node / search. Asking? open_thread. Proposing on someone else's content? contribute. Coordinating with siblings? declare_intent. Only mutate when you own it (or it's been negotiated).banyan_capture — save session insights before leaving (lightweight inbox; promote later).banyan_checkin({ handoff: "..." }) so the next session picks up your context.agent_id on all writes (code-builder, researcher, pm-groomer, etc.). It's the audit trail.banyan_search before creating — avoid duplicates. Use scope: "trunk:..." for speed.lowercase:colon:format (task:status:done, shipped). Tags are the source of truth, not content prefixes like [SHIPPED].summary (1-2 sentence BLUF, max 200 chars). You have better context than auto-summarization.banyan_connect to link related content — supersession, decision-and-rationale, cross-references. The rationale carries the nuance; the relationship type is always related_to.superseded AND banyan_connect it to the canonical successor with a rationale.shipped in the same commit ritual that lands it.banyan_search({ query: "goal", scope: "trunk:bnyn-abc12345" }) — within a trunk.banyan_explore({ query: "*", scope: "forest:bnyn-abc12345" }) — browse a forest.mode: "literal" for exact substring matches.text, code, image, equation, data, diagram, schema, map, calendar, contact, ledger, goal, kr, work_item, decision, feasibility.
For typed JSON leaves (goal, kr, work_item, decision, feasibility), call banyan_schema(type) for the JSON contract before writing.
Each trunk has a schema leaf describing per-trunk conventions: tag taxonomy, grooming cadence, content rituals, naming patterns. Read it on first contact with a trunk via banyan_harvest(node_id: <trunk>, depth: 1). The platform-level operating principles above govern all trunks; the trunk's schema governs this trunk specifically.
Examples:
bnyn-927d9c72) — schema defines shipped / superseded / wont-do / bug / decision tag taxonomy + per-session and per-decision rituals.bnyn-ddc65d8b) — schema defines current / planned / decision tag conventions for living architecture docs.npx claudepluginhub badriram/banyan-claude-plugin --plugin banyanGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.