← Work / Open Source

Three shipped products · one recurring substrate

Three products.
One architecture.
Open-sourced.

One architecture extracted from three shipped products: entities, append-only events, lifecycle state, ingestion, retrieval, and grounded agent memory on a Next.js and Supabase spine.

// release posture

MODEL
Clone + own
LICENSE
Apache-2.0
BOUNDARY
Open engine / private tuning
STATUS
Verified + buildable

Apache-2.0

commercial use + patent grant

7

ordered migrations

9 / 9

tests passing

0

dependency advisories

01 — The realization

The products were different. The architecture kept rhyming.

Three unrelated products kept converging on the same architectural shape. Rebuilding that substrate from muscle memory was useful evidence, but wasted motion. The reusable machinery needed to become inspectable, adoptable, and safe to build on. The goal was not another abstraction layer. It was a small, legible starting point that makes the recurring machinery explicit and leaves the product free to become specific.

02 — The shared machine

Entity + events01

Owned records with append-only history and automatic status-change events.

Lifecycle02

Typed states and guarded transitions declared once and enforced everywhere.

Ingestion03

Source → normalize → upsert → event, with domain-specific adapters.

Retrieval04

Documents become chunks, embeddings, scoped vector matches, and grounded context.

Persona05

Prompts, tools, durable facts, and memory give the agent continuity.

03 — The calibration boundary

The line between commodity and moat runs inside the machine.

None of the mechanism is novel—and that is the point. The reusable engine is open. The tuning earned from watching real users lives in one git-ignored file.

Open mechanism

  • +Scoring engine
  • +Memory extractor
  • +Persona framework
  • +Vector retrieval
  • +Lifecycle machinery

Private calibration.ts

  • Weights
  • Confidence floors
  • Voice + prompts
  • Thresholds
  • Model routing

Open the engine. Keep the numbers.

04 — Adoption path

Trust should be executable.

A new user can clone the repository, create neutral private calibration, and prove the entire substrate before connecting a database or paid model.

$ git clone github.com/BGilleran522/archivist-stack

$ npm ci

$ npm run setup

$ npm run verify

✓ strict types · 9 tests · production build

05 — What shipped

An open-source project people can evaluate—not just admire.

  • Seven ordered Postgres migrations with authentication-aware row-level security
  • Entity CRUD, append-only event history, and lifecycle transition guards
  • Document chunking, vector search, retrieval, ingestion adapters, and deduplication
  • Agent tools, persona prompts, fact extraction, and durable memory
  • Idempotent setup plus one-command typecheck, test, and production-build verification
  • GitHub Actions CI, private vulnerability reporting, and a zero-advisory dependency audit
  • Apache-2.0 license with patent grant and explicit commercial-use permission

Build on it

Apache-2.0. Patent grant included. Build a business on it if you want. I would rather it get used than admired.

Fork the stack ↗