1. Why Use Krusch Companion? The Case for a Sovereign Personal Assistant

A true daily companion knows the most sensitive context of your life: the bills you cannot afford to miss, the client deliverables due before noon, your commute routes, your family commitments, and the unfiltered thoughts you speak aloud when your head is full.

Cloud-tethered consumer assistants (such as OpenAI Dot, xAI Grok Companion, or Meta Muse) treat that intimate context as telemetry. Even worse, most consumer assistants suffer from three structural flaws that make them frustrating to use day after day:

9.56 µs
L0 CPU Fast-Path Median ($0.00 / 0 Tokens)
100.0%
Superseding Resolution & Knowledge Boundary F1
16 Tools
<holodata> Proxy (~85% Schema Pruning)
46 / 46
Automated Unit, Safety & Eval Tests Passing

Krusch Companion solves all three problems while keeping 100% of your working memory, task board, and personal notes on your own disk in a single zero-configuration SQLite WAL database (.agent/companion.db) and local Markdown vault (data/notes/).

2. Core Features & Architecture Tour

A. Voice-to-Text Everywhere (🎙️ Speak + Auto-Send on Stop)

Typing out complex thoughts or multi-part tool requests is high-friction. In Krusch Companion, voice capture is a first-class citizen across both the 💬 Companion Chat and the 🎙️ Thought Stream views:

Krusch Companion Voice and Text Thought Stream Triage
Figure 2: The Voice & Text Thought Stream Triage view. Speak or paste raw thoughts, inspect tagged segments, and automatically extract prioritized tasks and durable working memories.

B. Solving the "Priority Paradox": The Dual-Axis Daily Board

When we dogfooded early versions of the board, we hit a classic failure mode: even if a life category like Deep Work or Health is important in the grand scheme of things, real life throws urgent, non-negotiable obligations at you that must happen today to keep life running smoothly.

Instead of forcing you to choose between organizing by urgency or organizing by life area, Krusch Companion's Today's Board uses a Dual-Axis Priority Matrix that separates when/how urgently you must execute from which pillar of life the task serves:

  1. Axis 1 — Execution Priority Lane (The Vertical Rows):
    • Lane 1 — 🚨 Must Happen Today (Urgent Life & Provision): Deadlines, bills, family emergencies, time-sensitive errands, and critical client blockers. Always sits at the very top of your board.
    • Lane 2 — ⚡ High-Leverage Deep Work (Move the Needle): Core engineering, creative output, and strategic deliverables once Lane 1 fires are handled.
    • Lane 3 — 🌱 Daily Habits & Maintenance (Steady Anchors): Exercise, hydration, reading, and household upkeep—protected in their own lane so they never crowd out Lane 1 emergencies.
    • Lane 4 — 📥 Backlog & Someday (Low-Pressure Parking Lot): Ideas and nice-to-haves parked safely out of your immediate visual field.
  2. Axis 2 — Life Pillar Badge (The Colored Context Pill on Every Card): Every task carries one of six Life Pillar badges—🛡️ Life & Provision, ❤️ Health & Body, 🏠 Home & Family, 💼 Deep Work & Career, 🌱 Growth & Learning, or 🤝 Connection—plus an explicit 💡 Why this lane? rationale badge so you always see why the triage engine placed a task in Lane 1 vs. Lane 3.
Dual-Axis Today's Priority Board with 4 Execution Lanes and 6 Life Pillar Badges
Figure 3: The Dual-Axis Priority Board showing the 4 Execution Priority Lanes, 6 Life Pillar filter pills, "Why this lane?" explanations, Bulk Actions, and the 7-Day Weekly Review panel.

C. The 16-Tool <holodata> Agentic Proxy, Google AP2 Payment Mandates & Google Wallet Passes

Krusch Companion isn't just a passive organizer—it is an active agent equipped with 16 sovereign tools spanning task mutation, memory storage, weather, web search, URL summarization, local Markdown notes, push notifications, live traffic & Leave-By departure alerts, concierge reservations (OpenTable/Resy deep links + Nominatim venue lookup), Google AP2 Cryptographic Payment Mandates (ap2_payment_mandate), Google Wallet Generic Pass generation (google_wallet_pass), and G-Krusch Google Workspace (Calendar, Gmail, and Google Drive RAG).

To make 7B–8B local models rock-solid at tool calling—and safe when handling reservations, emails, or payment mandates—the Companion uses four safeguards in src/agent/tools.js:

D. Multi-Channel Proactive Sentinel Watchdog ($0.00 CPU Polling)

Most "proactive" AI agents burn thousands of tokens every few minutes polling an LLM to ask "Should I notify the user?" Krusch Companion's Sentinel Daemon (src/sentinel.js) runs a zero-token CPU check every 5 minutes across three channels:

  1. Channel 1 — Gmail Unread Watch: Flags new unread messages from priority senders.
  2. Channel 2 — Calendar Conflict & Imminent Event Watch: Detects overlapping events or meetings starting within <120 minutes.
  3. Channel 3 — Commute Traffic Spike Watch: Alerts you when live traffic adds >=10 minutes of delay to your upcoming destination and recalculates your exact Leave-By time.

The LLM is only woken when a deterministic state delta is detected—keeping idle background cost at $0.00/day.

E. KruschContext Working Memory & Temporal Fact Superseding

When your schedule or habits change, you shouldn't have to manually edit a system prompt. In Krusch Companion, saying "Instead of 9 AM standups, remember that standups moved to 10:30 AM" automatically triggers Temporal Fact Superseding in SQLite: the old memory is marked status = 'superseded' with a cryptographic lineage pointer (superseded_by / supersedes_id) to the new fact.

KruschContext Working Memory Hygiene and Temporal Superseding Lineage Inspector
Figure 4: The Working Memory Hygiene & Lineage Inspector showing Active Facts, Superseded History with lineage chains, Decay Candidates, and 1-click inline Supersede/Retire actions.

3. Step-by-Step Setup Guide: 3 Ways to Run Krusch Companion

Krusch Companion is packaged as a zero-external-dependency standalone repository with vendored local modules in packages/. All you need is Node.js 22.5+ (which includes the native node:sqlite engine built in).

Step 1: Clone, Build & Run the Readiness Doctor

git clone https://github.com/kruschdev/krusch-companion.git
cd krusch-companion

# Install dependencies and build the React 19 PWA frontend
npm install
npm run build

# Copy the example environment file and run the interactive Doctor check
cp .env.example .env
npm run doctor

The npm run doctor CLI verifies your Node.js version, SQLite WAL permissions, frontend bundle, and whether Local Ollama or OpenRouter is reachable. Next, choose the runtime path that fits your hardware:

Setup Path Best For Required Config in .env Daily Inference Cost
Path A: 100% Local Ollama Desktops, homelabs, or laptops with 8GB+ RAM/VRAM seeking total offline sovereignty OLLAMA_HOST=http://127.0.0.1:11434
COMPANION_L1_MODEL=qwen2.5-coder:7b
$0.00 / day (100% local)
Path B: Zero-GPU OpenRouter Cascade Ultrabooks, MacBooks, or VPS nodes without a dedicated GPU OPENROUTER_API_KEY=sk-or-v1-...
OPENROUTER_ZDR=true
~$0.01–$0.04 / day (Zero Data Retention enforced)
Path C: Docker Compose Stack Always-on home server deployment with bundled Ollama service docker compose up -d --build $0.00 / day

Starting the Server

# Start Krusch Companion on http://localhost:3004
npm start

Open http://localhost:3004 in any desktop or mobile browser. Because Krusch Companion ships with a Service Worker and Web App Manifest, you can click "Install App" (or Add to Home Screen on iOS/Android) to run it as a standalone native-feeling PWA.

4. Your First 10 Minutes: How to Use Krusch Companion Efficiently

To get maximum leverage out of Krusch Companion from day one, follow this four-step workflow during your first 10 minutes:

Minute 0–2 · Step 1
🚀 Run the Guided "Try It" Wizard

Click 🚀 Setup & Try It in the top header. Pick your Resource Mode (⚡ Minimal CPU, ⚖️ Balanced, or 🧠 Quality) and click ✨ Load Sample Thought Stream. Watch it instantly populate the Dual-Axis Board so you see how lanes and pillars work before entering your own data.

Minute 2–5 · Step 2
🎙️ Speak Your First Brain Dump

Press Alt+3 to open Thought Stream, click 🎙️ Speak, and talk naturally for 30 seconds: mention a bill you need to pay today, a project task, a daily habit, and a personal preference. Click ✨ Extract Tasks & Memories.

Minute 5–8 · Step 3
📋 Audit Your Dual-Axis Board

Press Alt+2 to view Today's Board. Notice how urgent obligations landed in Lane 1 (🚨 Must Happen Today) while recurring routines landed in Lane 3 (🌱 Daily Habits). Hover or inspect the 💡 Why this lane? badge on each card.

Minute 8–10 · Step 4
🎯 Launch a Single-Task Focus Sprint

Click 🎯 Focus on your #1 Lane 1 task. The full-screen Focus Mode hides the rest of your backlog, starts a 25/45/60-minute countdown timer, and lets you mark the task Done or Snooze it with a single click.

Single-Task Focus Mode with Countdown Timer and Zero-Clutter Execution
Figure 5: Single-Task Focus Mode isolates your top priority task with a 25/45/60-minute countdown timer so you can execute without visual backlog clutter.

5. The Power-User Playbook: Pro Tips for Daily Efficiency

Tip 1: Use the <15µs L0 Voice & Chat Prefixes for Instant Zero-Token Mutations

You don't need to wait for an LLM generation to add a task, reprioritize an item, or update a memory. Whenever you type or speak these natural prefixes in Companion Chat (Alt+1), the L0 Deterministic CPU Fast-Path executes them in under 15 microseconds at $0.00 cost:

# Instant Task Creation (<15µs L0 Fast-Path)
"Add task: Pay property tax installment before 5 PM"

# Instant Lane Escalation (<15µs L0 Fast-Path)
"Prioritize task: Pay property tax installment"

# Instant Task Completion (<15µs L0 Fast-Path)
"Complete task: Pay property tax installment"

# Instant Temporal Memory Superseding (<15µs L0 Fast-Path)
"Instead of 9am standups, remember that daily standup is now at 10:30am"

Tip 2: Use Keyboard Shortcuts on Today's Board

You can triage your entire board in seconds without touching the mouse:

Tip 3: Follow the 4-Habit Daily & Weekly Rhythm

The 10-Minute Daily Sovereign Loop:
  1. Morning (2 mins): Open 🌅 Briefings (Alt+4) and generate your Morning Focus Briefing. Check Companion Chat for any proactive Sentinel Watchdog alerts (calendar overlaps or traffic Leave-By changes).
  2. Midday Capture (30 secs as needed): Whenever new tasks or ideas pop up, hit 🎙️ Speak with Auto-Send on Stop in Companion Chat or Thought Stream instead of letting open browser tabs pile up.
  3. Afternoon Execution: Work strictly top-down from Lane 1 (🚨 Must Happen Today) before touching Lane 2 (⚡ Deep Work) or Lane 3 (🌱 Daily Habits).
  4. Friday / Sunday Review (3 mins): Open the 📊 7-Day Weekly Review panel on Today's Board to inspect your Life Pillar balance, click 🔄 Roll Over Snoozed to Today, and check 🧠 Working Memory (Alt+5) to retire or supersede stale context.

6. Explore & Run Krusch Companion Today

Krusch Companion is MIT-licensed and available today on GitHub with full unit, integration, and benchmark evaluation suites (npm test and npm run eval).

Clone krusch-companion on GitHub → Read the Cascade Routing Whitepaper → Explore KruschContext Memory Architecture →