Balaur mark BALAUR What Features Philosophy Roadmap GitHub
★ WISE COMPANION · LOCAL-FIRST · GROWS WITH YOU ★

BALAUR

Your personal wise companion that grows with you.

A wise companion that lives on your own box. It remembers the facts of your life in durable Markdown memory, learns skills that act on them, and keeps everything in open files you own. Each new skill is a new head — it grows with you.

● local-first·AGPL-3.0·whenToUse recall·git-native growth
Balaur crest — a three-headed balaur holding a glowing teal data-orb in a woven folk frame
// WHAT IS IT

Most personal AI is rented memory in someone else's cloud. Balaur is the opposite: a wise companion whose source of truth is a vault you own.

It runs host-native on the box — a local model served by llama.cpp (Qwen3.6 by default), a branded Pi terminal, durable Markdown memory, and life-tracking for journal, diet, and sport. No containers, no cloud.

Knowledge splits cleanly onto two rails. Facts are private Markdown pages under vault/memory/, indexed by a disposable SQLite FTS5 accelerator and auto-recalled each turn by relevance (keystone: whenToUse). Procedures are Pi-native skills under pi/skills/ — Pi itself discovers, injects, and invokes them with /skill:name.

It's named for the balaur — the many-headed dragon of old fairy tales. Yours is a wise companion that keeps the record of your life, and grows a new head for every skill it learns.

// THE STATEMENT

Your life is not a product.

The record of your life — what you ate, where you walked, what you felt, who you love — should answer to you alone.

// WHAT IT DOES FOR YOU

Yours by construction

Your data, your box

Journal, diet, sport, and durable facts live as plain Markdown in a vault you can read, grep, back up, and move.

Local model first

The terminal defaults to the local model. Personal context stays on the box unless you deliberately switch in the terminal.

Facts you can grep

Memory is plain Markdown under vault/memory/, indexed by a disposable FTS5 accelerator over title, body, tags, and whenToUse.

Recall every turn

Pinned pages are always present; the most relevant facts are auto-recalled into each local prompt before the model answers.

Skills grow as heads

Approved procedures become Pi-native skills under pi/skills/ — discovered, injected, and invocable with /skill:name.

Terminal-first core

No separate gateway service: one live Pi session, one model indicator, and future channels as extensions.

// HOW IT'S BUILT

Build the smallest thing that's truly yours.

Balaur is shaped by a few hard-won principles: local-first by default, files over platforms, and growth by explicit approval. Pareto, KISS, YAGNI, made operational.

Files over platforms

Facts and procedures are plain Markdown in a repo and a vault you own — versioned in git, never an opaque memory service.

Two rails, one ethos

Facts ride Balaur's FTS5 memory; procedures ride Pi's own skill system. Each on the simplest rail that fits — no custom index to maintain.

whenToUse retrieval

A natural-language “use this when…” hint makes organic pages findable without forcing a rigid body schema.

Pinned context

Core pages can be pinned into every turn; the rest surface only when relevant, keeping context small and intentional.

Suggest → approve

The agent proposes new skills or consolidations. The human approves. Git records the change. No silent self-modification.

Woven, not rendered

A storybook, hand-built look in tactile pixel-art. Craftsmanship you can see is craftsmanship you can trust.

// LIVE NOW

Each skill is a new head.

“When Balaur learns a procedure, the dragon grows another head — one more watcher for one more domain of your life.”

Balaur ships as a Pi package: install it and its extensions, native skills, and theme load themselves. Memory tools — memory_write, memory_search, memory_get, memory_duplicates — work over the FTS5 vault and inject relevant notes before the local model answers, while skill_write grows a new Pi-native head. The whole thing edits, tests, commits, and reloads itself behind your approval.

// THE WEAVE

Built from small, sharp, FOSS tools

No frameworks for their own sake. Each piece does one thing, speaks a simple boundary, and can be swapped out.

Pi terminal runtimeBunhost-native llama.cpp Pi terminalllama.cpp · Qwen3.6Markdown vault SQLite FTS5 memoryPi-native skillswhenToUse recall git-native growthRestic + Syncthing backupSignal / WhatsApp / web next
// RAISE YOUR OWN

Three steps to your companion

01

Install

Run the one-line installer on your Linux box. It installs Bun, clones the repo, seeds Pi config, and wires the local model. No discrete GPU required.

02

Configure

Set your terminal name/avatar, vault path, and optional local model overrides in .env. No container stack.

03

Talk

Use the balaur terminal; relevant memory is recalled automatically on local/private model turns.

// THE ROAD

Where Balaur is headed.

Built in the open, in phases — each piece pulled in only when it earns its keep.

Local foundation

Done

Terminal-first host-native setup, local llama.cpp model, Markdown vault, life-tracking, and a self-maintenance loop.

Pi package + clean knowledge split

Done

Balaur installs as a Pi package; facts-only FTS5 memory; Pi-native skills under pi/skills/; no separate gateway service.

Practice self-evolution

Now

Use the suggest→approve loop in real workflows: add skills, refine them, and consolidate duplicate memory as the vault grows.

Channels

Next

Signal, web, or HTTP bridges as Pi extensions attached to one long-lived terminal/tmux session.

The weave widens

Later

Calendar, contacts, files, and photos through open standards (CalDAV / CardDAV / Immich) — pulled in only when they earn their keep.

Grow your companion deliberately.

Balaur is built in the open, in Brașov. Star it, self-host it, or help shape the next head — memory and skills in plain files, approved by the human who owns the vault.