v0.26.0 Run pyrite index build once after upgrading. The cascade extension, the built-in public site and the Streamlit UI are removed. Release notes
pyrite
Knowledge as code

Knowledge you can verify, version, and hand to an agent.

Pyrite keeps what you know as typed markdown in git. Every entry is checked against a schema, every change is a commit, and every AI agent you connect gets exactly the access you grant it, through MCP.

alpha. Solid for one person; multi-user is experimental. What's supported
my-kb/people/sarah-chen.md person
---
type: person
title: Sarah Chen
---
Engineering lead. Considering move to consulting.
$ pyrite search "career transition"
person Sarah Chen
# found by meaning, not by keyword
106 MCP tools across three access tiers
21,600+ tests passing
23 contributors, up from 7 in September
MIT licensed, local-first, no subscription

Built for knowledge that has to hold up

Most AI memory is a pile of embeddings. Most wikis are a pile of pages. Pyrite treats knowledge the way you already treat code: typed, reviewed, versioned, and readable by machines and people alike.

01

Typed entries, checked on every write

Define person, decision, event or component types in kb.yaml. Every write is validated against the schema, whether a person or an agent made it.

02

Every change is a commit

Markdown with YAML frontmatter, versioned in git. Branch, diff, review and roll back what you know the same way you do code.

03

Search by meaning and by structure

Vector search finds what an entry is about. Structured queries find it by type, tag, date range or relationship. Use both at once.

04

Yours, on your disk

Plain files plus a SQLite index you can rebuild at any time. No cloud dependency, no subscription, nothing to export your way out of.

How it works

The files are the truth. Everything else is derived.

Source of truth Markdown in git Typed entries with YAML frontmatter. Reviewable, diffable, portable.
Derived index SQLite + embeddings Fast structured and semantic search. Delete it and rebuild it from the files with pyrite index build.
Interfaces
MCP serverCLIREST APIWeb UI
All four read and write the same files.
Agents are users too

Give each agent the keys it needs, and no more.

Agents get the same schema validation, typed errors and permissions as people. Pick a tier per connection.

read
Search, browse, explore, query tasks 66 tools
Safe for untrusted agents. Includes plugin tools.
write
Create, update, delete, link, drive tasks 97 tools
For your own agents. Adds 31 tools to read.
admin
Index, git operations, KB registry 106 tools
For you. Adds 9 tools to write.
claude_desktop_config.json
{
"mcpServers": {
"pyrite": {
"command": "/path/to/.venv/bin/pyrite",
"args": ["mcp"]
}
}
}

Or let Pyrite write it: pyrite mcp-setup configures Claude Desktop and Claude Code. Writing it by hand? Use the absolute path from which pyrite: clients do not see your shell's PATH or an activated venv.

Use cases

One engine, shaped by extensions

All five extensions

Need your own shape? Extensions add entry types, MCP tools, CLI commands, validators and lifecycle hooks. Write a plugin

Install

From clone to first search

There is no PyPI package yet: install from a clone.

# 1 Get it
git clone https://github.com/pyrite-wiki/pyrite.git && cd pyrite
pip install -e ".[all]"
# 2 Start a knowledge base
pyrite init --template research --path my-kb && cd my-kb
# 3 Add an entry, then find it
pyrite create --type person --title "Sarah Chen" \
--body "Engineering lead. Considering move to consulting."
pyrite search "career transition"
# 4 Connect Claude
pyrite mcp-setup

Take the 20-minute tutorial. CI runs it as a test, so it works as written.

Self-host for a team

A shared instance for about $6 a month

Ubuntu VPS with Docker, automatic TLS through Caddy. Setup takes about two minutes.

bash deploy/selfhost/setup.sh \
kb.example.com
Multi-user is experimental and not yet a security boundary. Don't store anything every user shouldn't see.
Self-hosting guide
Community

Pyrite is a community project now.

Bugs, docs that drift from the code, and roadmap items are all open on GitHub. Multi-user hardening is where help matters most right now.

23 contributors, from 7 at v0.24.3
77 pull requests merged from contributors
59 / 62 open pull requests come from contributors