Complete System Status — 2026-03-19

Helix Intelligence Platform

Full picture: every component that is live, building, specced, or unwired. Generated from KB + diagnostics — not from memory.

38
DB Tables
203MB
Postgres
9,077
Conv Chunks
601
Sessions
451
Atoms
1,036
Compress Profiles
619
Decisions
692
Anomalies
494
KG Entities
956
KG Relations
5,065
Observer Actions
21
Backups
live Running in production
building Active build phase
unwired Built but not connected
specced Full spec, not started
p1 Priority 1 next
p2 Priority 2
p3 Post-v1
01 — live infrastructure — running on vps1 port 9050
Helix Cortex
FastAPI · v0.9.0 · 38 tables · 203MB
live
  • Postgres + pgvector (BGE-large-en-v1.5 embeddings)live
  • Neo4j knowledge graph — ports 9038/9039live
  • Redis cache + worker queuelive
  • ChromaDB semantic search (pgvector primary)live
  • Garage blob storage — v1.0.1 (versioned file history)live
  • Infisical agent — secret injectionlive
  • MCP StreamableHTTP at /mcp/ — 20 toolslive
  • 21 automated backups completedlive
Provisioner
VPS2 · 721 tools · 47 servers
live
  • HOT/WARM/COLD container pool managementlive
  • MCP gateway — all tool calls routed through observer.jslive
  • 47 registered MCP servers — on-demand spinlive
  • observer.js — provision-filter, auto-POSTs to Helixlive
  • mcp-front, mcp-gateway, infisical on VPS2live
Node Registry
Multi-machine routing — built 2026-03-19
live
  • POST /api/v1/nodes/register — node registrationlive
  • GET /api/v1/nodes — list all nodeslive
  • windows-desktop registered as first nodelive
  • helix_action node param — routes to node_router.pylive
  • Agent installed at C:/tools/helix-node/agent.pylive
  • Sidecar installed at C:/tools/helix-sidecar/server.pylive
02 — membrain — browser extension — v0.5.2 active
Membrane — Capture Layer
Receptors · fetch intercept · provider detection
live
  • Bidirectional fetch interceptor — monkey-patches window.fetch()live
  • Multi-provider: claude.ai, ChatGPT, Gemini, Perplexity, Kimi, OpenRouterlive
  • Turn-by-turn capture → service worker → auto-flush to Helixlive
  • 30s gap detection → auto-exchange compilation → POST to Helixlive
  • IndexedDB local storage (between-session persistence)live
  • Fact extraction — structured facts from conversation turnslive
Synapse — Context Injector
context-inject.js · tiered injection · compression
live
  • Tier 1 (every message, ~400 tokens): runbook + alerts + project state + dictionarylive
  • Tier 2 (session start, ~800 tokens): anomalies + nudges + recent decisions + handofflive
  • Tier 3 (on-demand): semantic search across conversation RAGlive
  • --- HELIX CONTEXT --- block prepended before every send. 4s timeout, 90s cache.live
  • § symbol compression — 400+ active symbols, token savings every sessionlive
  • 1,036 per-user compression profiles — personalised per sessionlive
  • Popup toggle (green, defaults ON). Load order: interceptor → context-inject → compressionlive
HUD — Tabbed Interface
token-hud.js · v0.5.2 · pipeline health monitoring
live
  • Tokens tab: WITHOUT/WITH compression side-by-side comparison panellive
  • Captures tab: pipeline status bar, last 10 conversations, sync button, auto-refresh 8slive
  • Pipeline health monitoring built in to HUDlive
MemBrain — Pre-Generation Scaffold Injection
Phase 2 · intercepts before Claude sees message
building — phase 2
  • Intercept outgoing message BEFORE it reaches Claudebuilding
  • 3 signals: message tokens, context path, recency window → pgvector scaffold querybuilding
  • Inject <helix_scaffold> transparently. Round trip <200ms.building
  • Requires Phase 1d (Pipeline B scaffolding engine) firstneeds 1d
MemBrain v1.0 — CWS Packaging
Item 7 · Chrome Web Store submission · options page
building
MemBrain — Compression Improvements
Tier 2 promotion · cross-session persistence · namespace expansion
building
Desktop Sidecar — Conversation Capture
C:/tools/helix-sidecar/server.py · log_turn + backfill · MCP stdio
installed
03 — intelligence pipeline — pipeline a (enrichment) + pipeline b (scaffold)
helix_action — Unified Action Tool
routers/action.py · single entry point · Phase 1a complete
live
  • file_write — full pipeline: version → scan → KB → KG → observer → scaffoldlive
  • file_patch — targeted str_replace, no shell escapinglive
  • file_read / file_list — read-only, no pipeline fireslive
  • file_move — disk move + KG path label update by content hashlive
  • file_delete — delete + observer log, never invisiblelive
  • command — shell exec, auto-detects stack traces/service names → KGlive
  • scaffold_query — explicit scaffold request (stub; full in Phase 1d)live
  • node param — routes to any registered node (windows-desktop, vps2, etc.)live
Atom Scanner — 3-Tier Self-Expanding
SCANNER / ATOMS · 451 atoms live · Mitochondria worker
live
  • Tier 1: Tree-sitter — 100+ languages, ~$0.00/filelive
  • Tier 2: Haiku LLM — purpose, type, quality, reuse potential. ~$0.001/filelive
  • Tier 3: Self-generated heuristics. After N analyses, generates own rules. $0.00 forever.live
  • Structural fingerprint per atom. Matching fingerprints auto-register as templates.live
  • turn.flush fan-out — 4-way async (code_scanner, text_processor, action_parser, kg_extractor)live
  • 584 conventions live (inferred coding standards per project)live
  • Config parser plugin: Docker Compose → KG entitiesbuilding
Knowledge Base + Knowledge Graph
Postgres pgvector + Neo4j · 170 docs · 494 entities
live
  • KB: FTS5 + pgvector semantic search. 170 docs indexed.live
  • KG: 494 entities, 956 relationships, 26,769 mentionslive
  • Entity types: container, service, port, domain, project, tool, person, dependencylive
  • Relationships: DEPENDS_ON, CONTAINS, TOUCHES, PRODUCESlive
  • Intelligence write tools: helix_archive_record, helix_entity_upsert, helix_relationship_createlive
  • Exchange extraction: decisions/failures/patterns auto-extracted asyncbuilding
Symbol Engine — Compression
COMPRESSION · § promotion · 400+ active symbols
live
  • High-frequency phrase tracking. Daily promotion to § namespace.live
  • LLM receives full phrase — context carries compressed form. Token savings compound.live
  • 1,036 per-user compression_profiles in DB. Personalized per session.live
  • Tier 2 context-aware promotion — session pattern basedbuilding
  • Cross-session symbol persistence — symbols survive browser restartsbuilding
  • Project-specific § namespacesbuilding
Observer
LOGGING · 5,065 actions · every tool call
live
  • Logs every tool call: type, params, result, timing, session_idlive
  • Archive collections: decisions (619), failures, patterns, sessions (479), snapshotslive
  • 294 observer_sequences — pattern detection across tool call chainslive
  • 218 observer_facts — structured facts extracted from actionslive
  • 121 file captures loggedlive
Exchange System
420 exchanges · auto-compiled · no manual saves
live
  • helix_exchange_post — routes decisions/failures/patterns/entities to archive + KGlive
  • helix_exchange_search — semantic search across exchange archivelive
  • Auto-compilation: observer.js detects 30s gap → compiles exchange → auto-POSTslive
  • Stores by default, skip=true to opt out. Token tracking on every exchange.live
  • 6,928 structured_archive entrieslive
Pipeline B — Scaffolding Engine
Phase 1d · intent parser + atom matcher + cascader + assembler
building — phase 1d
  • Intent parser: 3 signals (message tokens, context path, recency window)building
  • Atom matcher: pgvector similarity on 451 atoms, context bias same project/dirbuilding
  • Dependency cascader: KG traversal — what imports this? what depends on this config?building
  • Scaffold assembler: atoms → imports[] + boilerplate + related_files[] + confidencebuilding
  • Test stub generation: implementation written → test scaffold returned automaticallybuilding
Smart Content Detector
Phase 1b · shared by all 13 capture surfaces
building — phase 1b
  • Classifies any content: code | config | prose | structured-data | binarybuilding
  • Stack trace specialization: Python/Node/Go format detectionbuilding
  • YAML/Docker Compose specialization → infra atomsbuilding
  • Selects pipeline automatically based on content typebuilding
04 — output layer — synapse, cockpit, runbook — all live
Entire output layer is live — missing from the old build site completely. Synapse (9,077 chunks searchable), Cockpit (anomalies, nudges, project state), and Runbook (8 pages, dynamic injection) are all running in production.
Synapse — Context Assembler + RAG
services/synapse.py · 9,077 chunks · hybrid search
live
  • assemble_context() calls conversation_store.hybrid_search()live
  • /context/inject endpoint returns real conversation chunkslive
  • FTS5 + pgvector hybrid search across 9,077 chunks / 601 sessionslive
  • ext_ingest auto-summarization: every MemBrain flush → Haiku background job → decisions → structured_archivelive
  • Backfill script processed 565 existing sessions through Haikulive
Cockpit — Intelligence Dashboard
692 anomalies · 340 nudges · 12 project states
live
  • 692 anomalies (detected contradictions/regressions with lifecycle state)live
  • 340 nudges (actionable suggestions with lifecycle state)live
  • 12 project_state rows (one-line status per active project)live
  • Cockpit API: /cockpit/overview, /cockpit/anomalies, /cockpit/nudges, /cockpit/sessionslive
  • Cockpit UI (HTML/JS, no React build step) — full dashboard spec writtenspecced
Runbook — Dynamic Context Injection
8 pages live · trigger list · Tier 1 always-on
live
  • 8 runbook pages live. Triggers: SSH work, writing code, memory changes, gateway changes, Docker compose, new MCP server, session end.live
  • Tier 1 (400 tokens, every call): runbook + active alerts + project_state + shorthand dictlive
  • Replaces 3,000-token master context blob. Dynamic. Always current.live
  • IDENTITY + RULES + TRIGGERS + ALERTS + STATE structurelive
Shard System
shard_diffs (24) · shard assembler built · compression engine built
unwired
  • 24 shard_diffs in DB (versioned file change records)live data
  • Shard Assembler — built, unwired (per Miro board)unwired
  • Compression Engine — built, unwired (per Miro board)unwired
  • Delta Exchange Generator — specced, not startedspecced
  • Event bus ADR written: file.written → shard differ subscriber patternspecced
05 — capture surfaces — 13 defined — all inputs to pipeline a
File Operations
helix_action · P0
live
  • file_write: full pipeline, blob versioned in Garagelive
  • file_patch, file_move, file_delete: all live Phase 1alive
Conversation Capture
MemBrain ext_ingest · P0
live
  • Auto-flush → Helix. 9,077 chunks, 601 sessions.live
  • Every flush triggers Haiku summarization background joblive
SSH Command Capture
POST /capture/ssh · P0
building
  • gateway__ssh_execute auto-posts. One webhook = 100% SSH coverage.building
  • Stack traces, service names, pip/npm → KG entitiesbuilding
Background File Scanner
scheduled worker · P0
building
  • Walks /opt/projects on schedule. Hash-indexed, skips unchanged.building
  • Config via .helix/config.yml. Skips node_modules, .git, binaries, >1MBbuilding
Git Events
post-commit hook · P1
p1
  • helix init installs post-commit hook. Diff + commit → decision record.building
Stack Traces
via SSH stderr · P1
p1
  • Python/Node/Go detection → file, function, error type → failure record + KGbuilding
Package Dependencies
SSH capture + watcher · P2
p2
  • pip/npm installs via SSH. Periodic scan of requirements.txt, package.json, go.modbuilding
Config Files
infra atom parser · P2
p2
  • Docker Compose → container/port/network entities in KGbuilding
Runtime Logs
log tailer signal-only · P2
p2
  • Tails containers. Errors/warnings → log_event KB entries. Signal-only.building
File Moves/Renames
POST /capture/move · P2
p2
  • Updates path labels on atoms by content hash. No migration needed.building
Import Resolution
post-scan · P3
p3
  • Resolve imports → index package public API as external atomsbuilding
Browser/MemBrain Hook
POST /capture/browser · P3
p3
  • GitHub/docs.*/npm → optionally POST page content. Opt-in per domain.building
DB Schema/Migrations
POST /capture/migration · P3
p3
  • sql_diff + name → schema entities in KG. Migration name → decision record.building
06 — storage — all live
Postgres + pgvector
203MB · 38 tables · BGE-large-en-v1.5
live
  • Primary store for all structured data. FTS5 + semantic search.
  • 9,301 embeddings. 38 tables. Backup every 6hrs → Garage.
atoms 451 compress_profiles 1,036 decisions 619 conventions 584 anomalies 692 nudges 340 archive 6,928 observer 5,065
Neo4j Knowledge Graph
ports 9038/9039 · 494 entities · 956 relationships
live
  • 494 entities, 956 relationships, 26,769 mentions
  • DEPENDS_ON, CONTAINS, TOUCHES, PRODUCES. Daily backup → Garage.
Garage Blob Store
v1.0.1 · versioned file history · 21 backups
live
  • helix-workspace/ (file version blobs from helix_action writes)
  • helix-backups/ (postgres, neo4j, redis backups)
  • 21 automated backups. POST /admin/restore endpoint.
07 — building — active phases
Phase 1b — Smart Content Detector
~2 hrs · unblocks everything downstream
next
  • services/detector.py — code | config | prose | structured-data | binary
  • Shared by both pipelines and all 13 capture surfaces
Phase 1c — Background File Scanner
~4 hrs · populates atoms from existing codebase
next
  • Scheduled worker, hash-indexed, walks /opt/projects on schedule
  • First run immediately populates thousands of atoms from existing code
Phase 1d — Pipeline B Scaffolding Engine
~6 hrs · unlocks scaffold injection in MemBrain
next
  • Intent parser + atom matcher + dependency cascader + scaffold assembler
  • scaffold_query goes from stub to real. Unlocks MemBrain Phase 2.
Layer 0 — Multi-Tenancy
~1-2 sessions · unlocks everything in product track
next
  • tenants table, schema-per-tenant, RLS policies, Traefik wildcard *.helix.millyweb.com
  • API key auth middleware. Tenant provisioning endpoint. Ashley gets her own instance.
Phase 4 — Forge Internalization
~1 day · absorb scanner + workspace into helix-cortex
critical
Phase 5 — Backup Scheduler
~6 hrs · APScheduler · Garage · restore endpoint
critical
08 — specced — full docs written, not started
Privacy Proxy
llm-privacy-proxy-report.md · 5 phases fully specced
specced
  • Phase 1: Privacy priority tier in symbol promotion (~2 hrs)specced
  • Phase 2: Local entity tokenizer (Presidio/spaCy, session-scoped tokens) (~1 session)specced
  • Phase 3: Cross-session entity persistence — same entity, same symbol forever (~0.5 sessions)specced
  • Phase 4: Profile-enhanced concept aliasing (~1 session)specced
  • Phase 5: Privacy audit panel in Cockpit (~1 hr)specced
Cockpit Dashboard UI
Full spec in millyforge-unified-v3.md
specced
  • Overview: project states, active alerts, system healthspecced
  • Compression: token savings with/without, trends, dollar estimatesspecced
  • Intelligence: active anomalies, nudges, decision historyspecced
  • Sessions: recent summaries, tool usage patternsspecced
  • HTML/JS served by FastAPI, no React build step. Calls cockpit API endpoints.specced
MillyGate
PRD complete Feb 17, 2026 · 5 phases · ~12 sessions
specced
  • Unified MCP gateway with built-in provisioner. Manifest-driven.specced
  • Replaces 7 middleware containers with one process.specced
PrintBlocks Assembler
Concept Feb 20, 2026 · three-layer decomposition
specced
  • POST /api/assemble — compose organism from molecules/atomsspecced
  • ~76 patterns cover 95-100% of current infrastructurespecced
  • GET /api/patterns/suggest — suggest patterns for task descriptionspecced
Event Bus (ADR Written)
helix-event-bus-adr.md · full node map specced
specced
  • file.written → versioner, scanner, KB indexer, KG extractor, observer, shard differspecced
  • session.ingested → haiku_summarizer, chromadb_embedder, session_storespecced
  • Decouples all pipeline steps. Adding shard differ requires zero other changes.specced
n8n Daily Digest
Workflow JSON built · needs import + API key
built, unwired
  • /opt/projects/helix/scripts/n8n_daily_digest.json — 6 AM daily
  • Summarizes prior 24h activity → projects/memory/daily-digest.md
Product Tiers
Free / Pro / Self-Hosted · MemBrain product spec complete
specced
  • Free tier: Extension + IndexedDB + user brings own API key. No hosted backend.specced
  • Pro tier: Hosted Helix backend. Full intelligence, compression, cross-session memory. Collective intelligence catalog.specced
  • Self-Hosted tier: Docker compose. Full Helix stack on their infra. API-compatible with Pro.specced
  • Team tier: Shared Helix across org (Ashley + Ryan). Same atom store, shared project state.specced
Delta Exchange Generator
Miro board · specced, not started
specced
  • Generates compressed delta between sessions — only the diff, not full context re-send.specced
  • Shard assembler (built, unwired) + compression engine (built, unwired) feed into this.deps unwired
09 — product layers — path to multi-tenant platform
To first paying client: Layer 0 + Layer 1 + Layer 2 + Layer 6d ≈ 6–8 sessions. Full product: all layers ≈ 20–25 sessions.
To first paying client: Layer 0 (multi-tenancy) + Layer 1 (gateway) + Layer 2 (installer) + Layer 6d (onboarding) ≈ 6–8 sessions.   Full product: all layers ≈ 20–25 sessions.   Ashley gets her own instance as soon as Layer 0 ships.
Layer 0 — Multi-Tenancy
~1-2 sessions · BUILD FIRST · everything requires this
build first
  • tenants table: tenant_id, subdomain, api_key_hash, plan, helix_schema, node_agent_token
  • Schema-per-tenant in existing Postgres (not container-per-tenant until enterprise)
  • RLS policies on all 38 existing tables
  • Traefik wildcard: *.helix.millyweb.com → tenant from subdomain
  • API key auth middleware + tenant provisioning endpoint
Layer 1 — Helix as Gateway
~2-3 sessions · 100% observer coverage
critical
  • stdio transport: Desktop spawns Helix directly, one config entry, 100% coverage
  • Tool routing in /mcp/: Helix proxies any registered MCP server, observer logs all
  • helix_init(): fires on Desktop connect, returns OAuth-style setup URL if agent not registered
  • Current coverage: ~30% Desktop, ~70% claude.ai. With gateway: 100% everywhere.
Layer 2 — Frictionless Installer
~1-2 sessions · non-technical clients
next
  • helix.millyweb.com/setup?token=XYZ — OS detection, pre-auth token, big download button
  • Windows: NSIS/MSIX installer — node agent + CA cert + proxy + Desktop config patch
  • Mac: .pkg installer — LaunchAgent + keychain cert. One password prompt.
  • UX: click link in Claude → browser → download .exe → run → one UAC prompt → done
Layer 3 — Desktop Capture
~1 session · MemBrain parity on Desktop
next
  • HTTPS proxy (bidirectional): intercepts Desktop → api.anthropic.com. Injects context outgoing. Captures turns incoming.
  • Transparent, no Claude cooperation, no system prompt dependency
  • IndexedDB watcher fallback: watches Desktop LevelDB files, catches missed turns
  • Desktop does NOT pin certs. Uses system cert store. Electron respects installed CAs.
Layer 5 — Collective Intelligence
~2-3 sessions · network effect · the moat
specced
  • Shared atom catalog: structural fingerprints federated opt-in. No code shared.
  • Failure pattern federation: error signatures + solutions shared anonymously
  • Symbol compression sharing: global symbol table, every tenant benefits
  • GPT-4's knowledge is frozen at training. Helix compounds daily from real usage.
Layer 6 — Product Surface
~2-3 sessions · paying clients · marketplace
specced
  • MillyGate: *.helix.millyweb.com routing, per-tenant isolation
  • MCP marketplace: 47+ servers, Connect button → Infisical → provisioner
  • Usage metering: observer already logs all tool calls with timing — billing hooks built in
  • Onboarding: sign up → subdomain → API key → config snippet → helix_init()