GitNodes is a knowledge management tool designed to transform Markdown files with YAML frontmatter into an interactive, navigable knowledge graph while maintaining Git as the source of truth. It allows users to explore their notes visually, search across content, and edit directly within the application, committing changes back to GitHub.
Key Features:
Knowledge Graph Construction: Automatically generates a visual representation of interconnected notes based on YAML frontmatter and Markdown links.
Full-Text Search and Navigation: Enables ranked full-text search and graph traversal for efficient exploration of linked content.
In-App Editing with Git Commit: Users can create, link, and modify notes directly in the application, with changes committed to GitHub as regular commits or pull requests.
AI Agent Integration via MCP: Provides a read-only MCP server that enables AI agents to search, traverse, and contribute to the knowledge graph through Git.
Git-Native Workflow: Keeps all content in Git, eliminating the need for separate databases. The local index is a rebuildable projection from Git, ensuring seamless integration with existing workflows.
Audience & Benefit:
Ideal for knowledge workers, researchers, and developers managing large Markdown-based note collections. GitNodes empowers users to maintain their notes in Git while enabling collaboration with AI agents through MCP, fostering a structured yet flexible approach to knowledge management without vendor lock-in.
README
Your repository remembers what happened. GitNodes helps it remember why.
A Git-native knowledge graph for engineering teams and the agents working beside them.
Trace decisions through systems, incidents, postmortems, and the changes that superseded them.
The story above is not concept art. It is assembled from the linked markdown in
examples/demo-brain: a useful decision made Redis a
tier-1 dependency, 40% of users were logged out, the postmortem opened issue
#145, and the resulting ADR reversed the original decision.
An agent reconstructs that history by traversing the real relationships between
those notes—including the incoming supersedes edge that marks ADR-0004 as
obsolete. Plain text search usually finds the old decision. GitNodes finds what
happened to it.
Why GitNodes
Answers with history attached. Typed relationships distinguish an active
decision from one that has been superseded, and connect incidents to the
systems, runbooks, action items, and people around them.
One source of truth. Notes remain ordinary markdown in Git. SQLite is a
disposable search and graph projection—not another knowledge silo.
Built for humans and agents. People browse and edit the graph in the web
UI; agents search and traverse the same working tree through read-only MCP
tools, then author through normal Git commits.
Review is part of the model. UI writes follow GitHub permissions: direct
commit when allowed, pull-request fallback when review is required.
Try it in 60 seconds
Install a single binary—no Rust toolchain is needed:
# macOS / Linux
brew install andreabozzo/tap/gitnodes
# Windows
winget install AndreaBozzo.GitNodes
Then open the complete demo locally. Preview mode is read-only, uses an
in-memory index, and needs no login or GitHub token.
gitnodes init my-brain
cd my-brain
gitnodes preview
init creates the taxonomy, linked starter notes, and agent configuration for
Claude Code, Cursor, Codex, and Antigravity. When the brain is ready to share,
push it to GitHub and run gitnodes serve; GitNodes discovers the remote and
reuses your existing gh auth login.
How it stays trustworthy
GitNodes has one non-negotiable rule: Git is the only content write target.
Every change stays reviewable. Browser edits become ordinary commits or
pull requests, following the contributor's live GitHub permissions.
The index is disposable. Graph and search live in a SQLite projection
that can be deleted and rebuilt from a clean clone.
Agents use the same truth. MCP is deliberately read-only; agents edit the
checkout under its generated AGENTS.md, leaving ordinary Git diffs.
Explore the details
If you want to…
Go here
Move from first preview to a shared GitHub-backed brain
GitNodes is built with Rust, Leptos, Axum, and SQLite. The deployable app is
AGPL-3.0-or-later; the reusable domain, graph, auth, and storage crates are
Apache-2.0. See CONTRIBUTING.md for local development and
the complete license notice.