Terminal-first personal knowledge OS. Local files, local AI, sovereign defaults.
MALD is a local-first knowledge workspace that keeps every note as plain markdown on disk. It ships a desktop app, terminal UI, and CLI sharing one engine: HNSW vector search + SQLite FTS5, a file-watcher daemon, and optional Ollama-backed RAG with cited answers.
- Local files — plain
.mdon your disk, no proprietary formats, no cloud - Three surfaces — desktop GUI (Iced), terminal UI (ratatui), CLI (~40 commands)
- Multiple spaces — separate notes for personal / work / research in one workspace
- Fast search — custom HNSW vector index + FTS5 keyword fallback
- Cited AI — Ollama-backed chat with inline
[1] [2]citations to your own notes - Graph + backlinks — wikilinks parsed live, force-directed graph, orphan detection
- Privacy by default — no telemetry, no external calls, no account required
Windows — Scoop:
scoop bucket add mald https://github.com/NAME0x0/scoop-mald
scoop install maldOr one-shot installer:
powershell -c "irm https://raw.githubusercontent.com/NAME0x0/MALD/main/install.ps1 | iex"macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/NAME0x0/MALD/main/install.sh | shFrom source (requires Rust 1.78+):
cargo install maldmald init # create ~/.mald workspace
mald new # create your first note
mald # launch the desktop appFor local AI:
ollama pull gemma4:e4b # or qwen3.5:9b — see Settings panel for picks
mald ask "what did I write about HNSW?"MALD stores everything inside MALD_HOME (default ~/.mald). Override it for project-scoped workspaces:
export MALD_HOME="$PWD/.mald"
mald initConfig lives in $MALD_HOME/config/config.json. Edit via mald config set <key> <value> or the GUI Settings panel.
| Topic | File |
|---|---|
| User journey & flow diagram | USER_JOURNEY.md |
| Design system tokens | DESIGN_SYSTEM.md |
| Frontend guidelines | FRONTEND_GUIDELINES.md |
| Tech stack details | TECH_STACK.md |
| Product spec (PRD) | PRD.md |
| Architecture & internals | CLAUDE.md |
For the full CLI reference: mald --help and mald <subcommand> --help.
Rust · Iced 0.14 (GUI) · ratatui (TUI) · clap (CLI) · tokio · rusqlite (FTS5) · custom HNSW · pulldown-cmark · notify · reqwest · Ollama (optional)
MIT — see LICENSE.