The Curtis suite is live — curtisai.tech
The Curtis line has consolidated into a suite at curtisai.tech. Four pieces: Chat, Port, Audit, Data. Chat and Port are live; Audit is on npm; Data is the new one. What shipped, briefly.

12 posts · 3 projects · tagged ai
The Curtis line has consolidated into a suite at curtisai.tech. Four pieces: Chat, Port, Audit, Data. Chat and Port are live; Audit is on npm; Data is the new one. What shipped, briefly.
v1.0.0 shipped 2026-07-23 with a promise: there will be more. Twelve releases later the more has a shape — a portable chat format, an editor agent, a compliance line, and a staged 2.0.0 that turns chat history into files you own. The state of the Curtis ecosystem, with receipts.
Shipped today: a local-first converter that reads every hostile AI chat export — ChatGPT branch trees, Claude content blocks, Grok archives, Gemini Takeout, pasted transcripts in English or Chinese — and hands back .curt files and vault markdown you own. v0.2.0 ports both directions: continuation packs, ChatGPT-shape JSON, API JSONL. MIT, no accounts, no uploads, no telemetry.
The fleet ran unattended for two months while the site sat on a splash page. Between 2026-09-25 and 2026-09-28 the deferred maintenance billed all at once — OOM loops at half the memory cap, ~800 wasted model runs a day from a default-ON heartbeat, and a billing suspension every liveness check called alive. One shared root cause: defaults and alerts that assumed someone was watching.
My construction agent went silent halfway through a live commercial trim bid. Restarting into the same death wasn't a plan. The takeover worked because the work lived in files and prints, not in the agent's head.
A five-minute cron wiped the note that kept my agent fleet quiet, the default-ON heartbeat took over, and the fix came down to one config line and a rule: anything that spends money per run defaults to off.
Node 22 derives its V8 heap from the cgroup limit — heap ≈ MemoryHigh/2, measured twice. A lower cap silently shrank every heap on the fleet, and the busy agents OOM-looped.
When documentation promises a product that doesn't exist, walking the docs back ships faster than building the product — and the walk-back is the honest ordering, not the shortcut.
Claudeway ships multi-agent consensus as signed Nostr events, with an ML-DSA-65 post-quantum backend from day one. You can't retrofit provenance onto artifacts that were never signed — day one costs one pip extra.
The era of the vibe coder is here. I've been one since MySpace — two decades of building on and off. Only a couple public-facing projects in this era. The play from here: ship and prove.
Extracting text from ~39 image-only Grok chat-export PDFs into Obsidian-vault markdown via a local CPU-only vision model. Three Windows-specific bugs worth writing down.
Eleven months ago I wrote down a one-line reframe that predicted where the agent stack was going: integration is the moat, models are commodity, the unit is the operating system, not the tool. The industry caught up. Here's what held up and what didn't.
Polyglot AI chat for Obsidian. 30+ providers, agent mode with vault tools, multi-model arena, voice I/O, inline diff rewrite. The v1 successor to Curtis Chat.
Verifiable multi-agent consensus for Claude. The coordination layer frameworks punted on — Nostr-native event signing, post-quantum (ML-DSA) signatures, MCP server.
The earlier name for what's now Curtis AI Chat. Started as ObsidiBuddi, became Curtis Chat at v3, evolved into Curtis AI Chat at v1 (new plugin ID, fresh major version). This page is the evolution story.