hellodb
v0.1.0 — phase 1 shipped

Sovereign memory
for Claude Code.

Local-first. End-to-end encrypted. Branchable. Two sub-agents distill your sessions into facts — high-confidence ones merge auto, uncertain ones wait for one-click review. You own the keys, the data, and the bill.

install
$curl -fsSL hellodb.dev/install | sh
# downloads · inits · registers Claude plugin
# done. Memory lives in ~/.hellodb on your next session.
MIT · Rust · MCP-native · macOS · Linux · Windows
episode lifecycle
live
hellodb_note returns in 0ms — agent never blocksnoteinstanthellodb_note returns in 0ms — agent never blocksBrain runs on Stop hook, distills episodes into factsbraindigestsBrain runs on Stop hook, distills episodes into factsFacts land on draft/yyyy-mm-dd-brain (not main)draftbranchedFacts land on draft/yyyy-mm-dd-brain (not main)High-confidence auto-merge, low held for reviewmerged≥ 0.75 autoHigh-confidence auto-merge, low held for reviewCosine similarity + time-decay reinforcementrecallsemanticCosine similarity + time-decay reinforcementWRITEBRAIN (ASYNC)RECALL
~/.hellodb
your machine
identity.key
ed25519 · in OS keychain
db.sqlite
SQLCipher · ChaCha20-Poly1305
vec/code/hellodb/
encrypted vector index, 384d
branches/main/
auto-merged facts (≥ 0.75)
branches/digest-*/
uncertain — awaiting review
brain.toml
digest gates, decay tuning
wal/
write-ahead log

Everything hellodb writes lives here. No telemetry, no shadow uploads. Delete the folder and it's gone — keys included.

0ms
write path
384d
semantic recall
~$0
monthly cost
0
cloud lock-in
architecture

Your machine. Your Cloudflare.
No middleman.

hellodb never talks to Cloudflare APIs directly — only through your own gateway Worker. Every primitive lives in your account. One token to rotate. The free tier covers solo use forever.

your machine
~/.hellodb · always local
hellodb-mcpstdio JSON-RPC 2.0
hellodb-braindigests on Stop hook
SQLCipherencrypted at rest
vector indexper-namespace, encrypted
Ed25519 keysOS keychain
HTTPS · bearer in OS keychain
your gateway Worker
your Cloudflare · ~$0
/embed→ Workers AI · bge-small (384d)
/r2/*→ R2 bucket · encrypted deltas
/vec/*→ Vectorize · optional mirror
/auth→ Cloudflare Access · OAuth
deploywrangler login · no API token
no shared infra
We don't run a service. There's nothing to outage, breach, or shut down.
no API token
wrangler login (browser OAuth) provisions everything. No long-lived CF API token to leak or rotate.
free tier covers solo
10k Workers AI neurons/day. 10 GB R2. 100k Worker requests/day.
three properties

Encrypted. Branchable. Semantic.

Three Rust crates do most of the work. The rest is plumbing.

px9nKqpf7mLm vPuz3→ ChaCha20
hellodb-crypto

Encrypted

Ed25519 signatures, ChaCha20-Poly1305 at rest, BLAKE3 content addresses, SQLCipher database. Identity keys live in your OS keychain — never on disk in plaintext.

$hellodb identity --show
ed25519:GZkN4xQ…s8m
$ls ~/.hellodb
db.sqlite (cipher)
draftmainmerged
hellodb-core + brain

Branchable

The brain digests episodes into facts on a draft branch. Nothing lands on main until you approve. Memory works like git — branches, merges, history you can audit.

$hellodb list-branches
main
draft/2026-04-16-brain
$/hellodb:review
query
hellodb-vector + embed

Semantic

Per-namespace encrypted vector index. Cosine similarity with time-decay reinforcement at recall. Embeddings via Workers AI, OpenAI-compatible, or fully offline via fastembed-rs.

$hellodb recall "pnpm conventions"
→ 0.91 use pnpm not npm
→ 0.84 pnpm-lock.yaml in repo
→ 0.71 pnpm dlx for one-shots
the loop

Install it. Forget it's there.
You only review what's uncertain.

Two Haiku-backed sub-agents do the work. memory-digest scores every fact; high-confidence merges auto-land on main, low-confidence and superseding edits wait for your review. Default threshold 0.75, tunable in brain.toml. Zero extra infra — everything runs inside Claude Code on your subscription.

  1. 1
    write0ms
    hellodb_note returns instantly. The agent never waits.
  2. 2
    digestHaiku sub-agent
    memory-digest extracts facts from episodes and scores each with a confidence.
  3. 3
    score≥ 0.75 auto
    High confidence → merges straight to main. Low or superseding → held for review.
  4. 4
    reviewedge cases only
    /hellodb:review shows only the uncertain ones. Empty most days.
  5. 5
    recallsemantic
    Future sessions hit merged facts via vector recall + decay reinforcement.
in action

One line in chat. A fact for next session.

The /hellodb:memorize skill is loaded into every Claude Code session by the plugin. You don't think about it; the agent recognizes durable facts and writes them. A Haiku-backed memory sub-agent takes it from there.

session · capture
t = 0ms
you
this project always uses pnpm, never npm or yarn. lockfile is committed.
tool callhellodb_remember
{
  "namespace": "code/hellodb",
  "kind": "convention",
  "text": "use pnpm for this project (npm/yarn forbidden); pnpm-lock.yaml is committed",
  "evidence": "user-stated, 2026-04-16"
}
claude
Got it — saved as a project convention. I'll use pnpm going forward and won't suggest npm scripts.
confidence 0.92 · auto-merged

Write returns instantly. On the next Stop hook, memory-digest scores the fact and (because confidence ≥ 0.75) lands it straight on main. No review queue to clear.

new session · recall
t = days later
you
add a script to install dependencies for the new contributor doc
tool callhellodb_recall
{
  "namespace": "code/hellodb",
  "query": "package manager + install command",
  "top_k": 3
}
tool result
→ 0.91  use pnpm for this project (npm/yarn forbidden)
→ 0.78  pnpm-lock.yaml is committed
→ 0.62  prefer pnpm dlx for one-shot tools
claude
Adding it to the contributor doc. I'll use pnpm install per the project convention.

Cosine similarity ranks hits; time-decay reinforcement boosts recently-touched facts. No round-trip to a cloud service.

comparison

Memory you rent vs. memory you own.

Cloud memory SaaS solves the storage problem and creates a sovereignty problem. hellodb solves both.

where data lives
saas
their servers
hellodb
your R2 bucket
who holds the keys
saas
they do
hellodb
you do
cost
saas
$20–200 / mo / seat
hellodb
~$0 (CF free tier)
audit trail
saas
their dashboard
hellodb
git-like branch log
lock-in
saas
high
hellodb
none — it's your bucket
embedding model
saas
what they ship
hellodb
Workers AI · OpenAI · local
offline
saas
no
hellodb
yes (fastembed-rs)
platforms
saas
browser only
hellodb
macOS · Linux · Windows
vendor outage
saas
you stop
hellodb
you keep working locally

Sovereignty isn't a marketing word here. It's a deployment topology: every byte of your memory lives in storage you control, encrypted with a key in your OS keychain.

install

One command. Then forget it's there.

The local install is encrypted, branchable memory in 30 seconds. Cloudflare gateway is opt-in for cross-device sync and remote embeddings — same memory, more devices, no API token to babysit.

local · always works offline

~30 seconds
curl | sh
$curl -fsSL hellodb.dev/install | sh
# downloads · inits · registers Claude plugin
# Windows: iwr hellodb.dev/install | iex
# done. Memory lives in ~/.hellodb on your next Claude session.

One script. Detects your platform, fetches the right release, generates an Ed25519 identity. Installs 5 skills, 2 sub-agents (memory-digest + memory-consolidate, Haiku-backed), a Stop hook, and 17+ MCP tools covering namespaces, schemas, branches, vector upsert/recall, embed, and Claude Code memory interop.

cloudflare · cross-device + semantic

~3 minutes · OAuth, no token
make setup-cloudflare
$make setup-cloudflare
# opens browser → wrangler login (CF OAuth)
↳ creates R2 bucket (idempotent)
↳ generates GATEWAY_TOKEN (Worker secret)
↳ wrangler deploy ./gateway (your account)
↳ writes ~/.hellodb/env.sh + sources from rc
# done. Your worker. Your bucket. ~$0 free tier.

wrangler stores the OAuth token in your OS keychain — hellodb never sees it. Rotate the gateway bearer anytime with make rotate-gateway-token.

alternative · build from source
$git clone https://github.com/eprasad7/hellodb && cd hellodb && make onboard

Detects Rust, builds release, bundles the plugin, registers it with Claude Code, runs hellodb init, and offers (y/N) the Cloudflare setup. One prompt, one install.

bonus · import existing Claude Code memory
$ hellodb ingest --from-claudemd

Walks ~/.claude/projects/*/memory/*.md, writes one signed record per file, dedupes on re-run. Query back via hellodb_find_relevant_memories from any MCP client — hybrid ranking, decay-aware.