MCPcopy
hub / github.com/refactoringhq/tolaria

github.com/refactoringhq/tolaria @stable-v2026.5.14 sqlite

repository ↗ · DeepWiki ↗ · release stable-v2026.5.14 ↗
8,597 symbols 23,931 edges 1,048 files 220 documented · 3%
README

Latest stable CI Codecov CodeScene Hotspot Code Health

💧 Tolaria

Tolaria is a desktop app for macOS, Windows, and Linux for managing markdown knowledge bases. People use it for a variety of use cases:

  • Operate second brains and personal knowledge
  • Organize company docs as context for AI
  • Store OpenClaw/assistants memory and procedures

Personally, I use it to run my life (hey 👋 Luca here). I have a massive workspace of 10,000+ notes, which are the result of my Refactoring work + a ton of personal journaling and second braining.

1776506856823-CleanShot_2026-04-18_at_12 06 57_2x

Walkthroughs

You can find some Loom walkthroughs below — they are short and to the point: - How I Organize My Own Tolaria Workspace - My Inbox Workflow - How I Save Web Resources to Tolaria

Principles

  • 📑 Files-first — Your notes are plain markdown files. They're portable, work with any editor, and require no export step. Your data belongs to you, not to any app.
  • 🔌 Git-first — Every vault is a git repository. You get full version history, the ability to use any git remote, and zero dependency on Tolaria servers.
  • 🛜 Offline-first, zero lock-in — No accounts, no subscriptions, no cloud dependencies. Your vault works completely offline and always will. If you stop using Tolaria, you lose nothing.
  • 🔬 Open source — Tolaria is free and open source. I built this for myself and for sharing it with others.
  • 📋 Standards-based — Notes are markdown files with YAML frontmatter. No proprietary formats, no locked-in data. Everything works with standard tools if you decide to move away from Tolaria.
  • 🔍 Types as lenses, not schemas — Types in Tolaria are navigation aids, not enforcement mechanisms. There's no required fields, no validation, just helpful categories for finding notes.
  • 🪄AI-first but not AI-only — A vault of files works very well with AI agents, but you are free to use whatever you want. We support Claude Code, Codex CLI, and Gemini CLI setup paths, but you can edit the vault with any AI you want. We provide an AGENTS file for your agents to figure out.
  • ⌨️ Keyboard-first — Tolaria is designed for power-users who want to use keyboard as much as possible. A lot of how we designed the Editor and the Command Palette is based on this.
  • 💪 Built from real use — Tolaria was created for manage my personal vault of 10,000+ notes, and I use it every day. Every feature exists because it solved a real problem.

Installation

Homebrew

Install via Homebrew on macOS:

brew install --cask tolaria

Download from releases

Download the latest release here for macOS, Windows, or Linux.

Getting started

When you open Tolaria for the first time you get the chance of cloning the getting started vault — which gives you a walkthrough of the whole app.

The public user docs live in site/ and are published to GitHub Pages. Start with Install Tolaria, then First Launch.

Open source and local setup

Tolaria is open source and built with Tauri, React, and TypeScript. If you want to run or contribute to the app locally, here is how to get started. You can also find the gist below 👇

Prerequisites

  • Node.js 20+
  • pnpm 8+
  • Rust stable
  • macOS or Linux for development

Linux system dependencies

Tauri 2 on Linux requires WebKit2GTK 4.1 and GTK 3:

  • Arch / Manjaro: bash sudo pacman -S --needed webkit2gtk-4.1 base-devel curl wget file openssl \ appmenu-gtk-module libappindicator-gtk3 librsvg
  • Debian / Ubuntu (22.04+): bash sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget file \ libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev \ libsoup-3.0-dev patchelf
  • Fedora 38+: bash sudo dnf install webkit2gtk4.1-devel openssl-devel curl wget file \ libappindicator-gtk3-devel librsvg2-devel

The bundled MCP server still spawns the system node binary at runtime on Linux, so install Node from your distro package manager if you want the external AI tooling flow.

Quick start

pnpm install
pnpm dev

Open http://localhost:5173 for the browser-based mock mode, or run the native desktop app with:

pnpm tauri dev

Tech Docs

Security

If you believe you have found a security issue, please report it privately as described in SECURITY.md.

License

Tolaria is licensed under AGPL-3.0-or-later. The Tolaria name and logo remain covered by the project’s trademark policy.

Extension points exported contracts — how you extend this code

VaultEntry (Interface)
(no doc)
vite.config.ts
Window (Interface)
(no doc)
src/App.tsx
VaultEntry (Interface)
(no doc)
src/types.ts
LaputaTestBridge (Interface)
(no doc)
src/types/laputaTestBridge.ts
ToastProps (Interface)
(no doc)
src/components/Toast.tsx
WikilinkColorResult (Interface)
(no doc)
src/utils/wikilinkColors.ts
AiAgentSessionRuntime (Interface)
(no doc)
src/lib/aiAgentSession.ts
VaultApiGetRequest (Interface)
(no doc)
src/mock-tauri/vault-api.ts

Core symbols most depended-on inside this repo

trim
called by 397
src-tauri/gen/apple/assets/mcp-server/index.js
translate
called by 326
src/lib/i18n.ts
get
called by 325
src-tauri/gen/apple/assets/mcp-server/index.js
toLowerCase
called by 284
src-tauri/gen/apple/assets/mcp-server/index.js
includes
called by 273
src-tauri/gen/apple/assets/mcp-server/index.js
makeEntry
called by 226
src/test-utils/noteListTestUtils.tsx
has
called by 213
src-tauri/gen/apple/assets/mcp-server/index.js
startsWith
called by 181
src-tauri/gen/apple/assets/mcp-server/index.js

Shape

Function 7,086
Interface 852
Method 575
Class 84

Languages

TypeScript100%
Python1%

Modules by API surface

src-tauri/gen/apple/assets/mcp-server/index.js1,531 symbols
src-tauri/gen/apple/assets/mcp-server/ws-bridge.js343 symbols
vite.config.ts91 symbols
src/components/SingleEditorView.tsx77 symbols
src/hooks/useNoteCreation.ts74 symbols
src/utils/noteListHelpers.ts69 symbols
src/components/note-list/noteListHooks.ts67 symbols
src/hooks/useVaultSwitcher.ts60 symbols
src/utils/mathMarkdown.ts57 symbols
src/hooks/useVaultLoader.ts57 symbols
src/components/BreadcrumbBar.tsx56 symbols
src/hooks/noteContentCache.ts50 symbols

Dependencies from manifests, versioned

@anthropic-ai/sdk0.78.0 · 1×
@blocknote/code-block0.46.2 · 1×
@blocknote/core0.46.2 · 1×
@blocknote/mantine0.46.2 · 1×
@blocknote/react0.46.2 · 1×
@codemirror/commands6.10.2 · 1×
@codemirror/lang-markdown6.5.0 · 1×
@codemirror/lang-yaml6.1.2 · 1×
@codemirror/state6.5.4 · 1×
@codemirror/view6.39.16 · 1×
@dnd-kit/core6.3.1 · 1×

For agents

$ claude mcp add tolaria \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact