cohort_load
Load team context
Return bounded team context from the vault, fenced as data not instructions.
scopetopics
io.github.magnusmagePublished by GitHub account magnusmagev0.1.0Updated Oct 30, 2026
Shared AI memory for teams: a git vault of markdown, human-approved, injection-safe, local-only.
Local stdio MCP server that gives a team's AI assistants one shared, human-approved memory vault of markdown stored in a git repo.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
[Cohort: shared memory for your team's AI]
[License: Apache-2.0] [Docs: CC BY 4.0] [CI] [Release] [Roadmap: Phases 1 to 5 shipped]
One markdown vault on GitHub. Every teammate's AI reads and writes the same memory,
regardless of account, plan, or platform, and a human approves every change.
Quickstart · How it works · What's inside · The engine · Security · Full docs
Your team's AI assistants each start every session blank. What one teammate's assistant learned (the decision you made, the fact you pinned, the thread you left open) is invisible to everyone else's. Paste the same context again and again, or lose it.
Cohort gives the team one shared memory. A single git repository holds your facts, decisions, and open threads in plain markdown. Each teammate's AI reads a bounded slice at the start of a session and proposes updates at the end, and a human approves every change before it lands. There is no hosted server and no account with us: the repo is the product, and it lives in your own GitHub.
The vault, the engine, and the moat are free and open under Apache-2.0 and run fully on your own machine. Cohort runs entirely against your own GitHub repo: the maintainers never receive your vault, your sessions, or any telemetry. Cohort reads and writes your vault locally, under your control, with a human approving every write, and that processing happens on your machine, not ours.
cohort-mcp is a local stdio Model Context Protocol server, the client-neutral
engine any MCP client can run. It loads bounded, fenced context and runs
human-approved writebacks through a server-enforced gate.
Some actions are human-run on the terminal by design, so the model can propose and read but never promote or retire a record:
The engine and CLI live in cohort-mcp/. It is published to npm
as cohort-mcp and listed in the
MCP Registry as
io.github.magnusmage/cohort-mcp, so you can run it in one command:
For Claude Desktop there is a one-click extension: build a .mcpb from
desktop-extension/ and double-click it to install. Or
add this repo as a plugin marketplace and install the bundled plugin:
Cohort runs inside an AI client that can reach your disk and git: Kimi Code CLI, Kimi Work desktop, ZCode, or Claude Code (CLI, desktop, or IDE extension). A web chat with no disk access cannot run it.
Install the connector (under a minute):
The installer verifies the release checksum, then copies the connector skill
into each client's skill folder on your machine. Prefer to read it first? Run
curl -fsSLO .../install.sh, read it, then sh install.sh.
Then, in your client's chat input (not the terminal): type /cohort
(/skill:cohort in Kimi Code CLI; the / Skills menu in Kimi Work desktop), or
just say "set up my team vault". The connector explains what it does with your
data and waits for your yes, walks you through GitHub sign-in and vault
creation, and asks three consent choices. Every step waits for you.
curl line above and press Enter. You will see one installed cohort skill to ... line per client.ls ~/.claude/skills/cohort (or ~/.kimi-code/skills/cohort, ~/.zcode/skills/cohort).No curl or sh? Download the skill zip from the latest release, unzip it, and upload the cohort folder in your client's skill settings (use the skill zip under Assets, not Source code).
Register the MCP engine with one command: cohort init --vault <dir> --agent <id>.
Phases 1 to 5 are built, tested, and shipped on main. They are the whole
product: the vault, the engine, and the moat, all running on your own machine.
cohort_why.phase-6-control-plane branch. If released later, the dashboard will be optional and run on your own infrastructure with its own privacy statement; the maintainers still never receive your data.The full plan lives in docs/planning.
Cohort is shared memory that many agents read and write, so the memory itself is an attack surface: a poisoned record could read back as an instruction to another teammate's agent. The project treats security as a property of every change. Stored memory and the model are untrusted; only approved, scanned writes land; loaded memory is fenced as data, never instructions; a contradicting fact is held for a human instead of overriding a verified one; and the server is the only component that ever commits. There is no telemetry and no network call beyond your own git remote, so the maintainers never receive your vault, your sessions, or anything else.
See the security model for the threat model, the redaction rules, and the consent model. Found a vulnerability? Please report it privately through GitHub's private vulnerability reporting on this repository, not as a public issue.
See CONTRIBUTING.md. Commits use Conventional Commits and DCO
sign-off (git commit -s). Security issues: please report privately via GitHub
private vulnerability reporting, not public issues.
Apache-2.0 for code, CC BY 4.0 for docs, CC0 for example vault content. Created and maintained by Sarmad. See CITATION.cff for citation metadata.
Source: README.md at commit 28566a1
Load team context
Return bounded team context from the vault, fenced as data not instructions.
scopetopicsPropose a writeback
Run proposed records through the server-enforced write gate.
itemsrequiredVault and policy status
Report the effective policy summary and record counts from the vault.
Takes no parameters.
Read effective policy
Return the caller's effective, read-only policy limits. The model cannot write policy.yml.
Takes no parameters.
Search the vault
Search the vault, honoring readable scope. Verified-only by default; set include_quarantined to include agent-asserted records.
queryrequiredinclude_quarantinedExplain a record's provenance
Return who, which model, when, and why a record exists, read from git history. Read-only forensics.
idrequired90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
claude mcp add cohort -- npx -y cohort-mcp # register with Claude Code# or just run it: npx -y cohort-mcpclaude plugin marketplace add magnusmage/cohortclaude plugin install cohort@cohortcurl -fsSL https://raw.githubusercontent.com/magnusmage/cohort/v0.3.0/install.sh | shgit clone https://github.com/magnusmage/cohort.gitsh cohort/scripts/setup.sh # seed a vault, ask consent, install the redaction hookcp -R cohort/connectors/claude ~/.claude/skills/cohort # or connectors/kimi, connectors/zcode├── cohort-mcp/ The MCP server and CLI: the engine and the moat├── connectors/ Kimi, ZCode, and Claude connectors (Agent Skills standard)├── vault-template/ Blank vault scaffold (copied into your own repo)├── example-vault/ Synthetic demo vault (CC0, all content fictional)├── scripts/ Setup wizard and vault validator├── security/ Versioned gitleaks redaction rules├── install.sh Pinned-tag installer for the connector skill└── docs/ The public spec, decision records, and diagrams