BrainFlow is a desktop-first, local-first knowledge and workflow environment. It combines Obsidian-class Markdown vault capabilities, GitHub repository sync, mandatory LLM-driven workflow generation, hardware-aware local-model selection, and multiple graph projections over one shared data model.
Primary surface: the AI Workflow Suite (goal, editable workflow graph, execution state, artifacts, evidence/provenance).
Secondary: vault rail, source-reference nodes, and a file viewer for originals — sources stay immutable by default.
Status: Unsigned Windows alpha (
v0.1.2) — foundation vertical slice + knowledge-workspace scaffolding + workflow-first shell UX revamp. Phase 1 sizes/startup recorded; scripted vertical-slice E2E and CI green. See docs/REMAINING_GAPS.md. Not GA. Installers are not code-signed; macOS/Linux packaging is not verified. Repository / releases: github.com/ericcayers-ai/BrainFlow.
| Principle | Behavior |
|---|---|
| Workflow-first | Default landing is the Workflow Suite, not a file browser |
| Immutable sources | Linked imports are read-only; BrainFlow writes versioned derived artifacts |
| LLM-required for AI | No validated LLM → AI workflow creation pauses; no rule-based “pretend AI” |
| Honest “any file” | Only files with a safe adapter; fail closed on DRM/corrupt/unknown semantics |
| Best local model | Highest-scoring validated fit for task + measured hardware — not a fixed model name |
| Reproducibility | Pin model digest, prompt-pack, input hashes, schema version, settings per run |
Full contract: docs/PRODUCT_SPEC.md · Non-goals: docs/NON_GOALS.md · Agency: docs/AI_SAFETY_AND_AGENCY.md
apps/desktop React + TypeScript + Vite + Tauri 2 shell
crates/* Rust core: vault, storage, graph, sync, policy, app-core
services/ai-worker Supervised Python worker (JSON-RPC stdio, Ollama gateway)
packages/schemas Versioned JSON Schemas (Workflow IR + run metadata)
packages/plugin-sdk Capability-based plugin manifest stub
docs/ Product, architecture, spikes, security, QA
Spike outcomes: docs/spikes/SPIKE_RESULTS.md
- Node.js 20+
- Rust stable (MSVC on Windows) + Tauri 2 prerequisites
- Python 3.11+
- Ollama running with at least one model (e.g.
ollama pull llama3.2:3b)
cd BrainFlow
npm installcd services/ai-worker
python -m venv .venv
# Windows:
.\.venv\Scripts\activate
pip install -e ".[dev]"
cd ../..The Tauri shell prefers services/ai-worker/.venv/Scripts/python.exe automatically (or set BRAINFLOW_PYTHON).
cargo test -p brainflow-vault -p brainflow-storage# from repo root
npm run dev:desktop
# or
cd apps/desktop && npm run tauri devRelease-style local build (unsigned):
npm run build:desktop- Open vault — pick a folder (prefer non-OneDrive). Layout
.brainflow/+notes/is created. - Edit / save a Markdown note (
notes/welcome.md) — atomic write. - Confirm LLM health (fail-closed if Ollama is down).
- Generate workflow — Ollama produces schema-validated Workflow IR.
- Graph — React Flow + ELK renders the DAG.
- Artifact — Markdown under
.brainflow/artifacts/<workflow>/<run>/summary.md. - Reopen — restart the app; session restores vault, note, workflow, and run metadata from
%LOCALAPPDATA%\BrainFlow\session.json.
Indexes live under %LOCALAPPDATA%\BrainFlow\indexes\ (not inside the vault).
npm run test:e2e:vertical-slice
# or: services/ai-worker/.venv/Scripts/python.exe -m pytest tests/e2e/test_vertical_slice.py -vRequires Ollama up for the live generate path (otherwise the test fail-closes as designed). Cold-start of the release binary: npm run measure:cold-start.
cd apps/desktop
npm run devVite UI loads, but vault/LLM commands require the Tauri shell.
Vaults under OneDrive/Dropbox/iCloud can race with Git and watchers. Prefer a local disk path. Machine indexes stay in OS app data — see docs/DATA_MODEL.md.
| Document | Purpose |
|---|---|
| ROADMAP.md | Phases and exit criteria |
| docs/REMAINING_GAPS.md | Prioritized open work vs GA bar |
| docs/PRODUCT_SPEC.md | Product contract |
| docs/ARCHITECTURE.md | System design |
| docs/spikes/SPIKE_RESULTS.md | Phase 1 spike measurements |
| docs/WORKFLOW_IR.md | Declarative DAG semantics |
| docs/OBSIDIAN_PARITY.md | Core parity checklist |
| docs/PLUGIN_SDK.md | Plugin capability allowlist |
| docs/RELEASE.md | GA order, updater, deferred mobile/web |
| docs/VERSIONING.md | Compatibility and deprecation |
| docs/BETA_CHECKLIST.md | Closed beta matrix |
| docs/adr/ | Architecture decisions |
| CONTRIBUTING.md | Setup, PR norms, tests |
| CODE_OF_CONDUCT.md | Community standards |
See CONTRIBUTING.md. Bug/feature templates live under .github/ISSUE_TEMPLATE/.
Licensed under the Apache License 2.0. Copyright 2026 BrainFlow contributors.