Files are passive. You have to remember to feed them. So we gave OKF a face — a dashboard, a server, an auth wall. It got prettier. It didn't get smarter.
The Filing Cabinet
OKF started as a filing cabinet, and it was a good one. V1 consolidated three projects into ~/AI-Knowledge-Base with YAML frontmatter (type, id, last_updated), two triggers (update .md, cleanup), and AGENTS.md files thin enough to slip under a door.
V2 moved it to ~/OKF and grew it: 7 projects, ~50 files, 9 skills, 12 glossary terms, a 5-step bootstrap flow, and a wrap-day trigger. By mid-July it was 8 projects, 122 knowledge nodes, a 4-personality goblin agent system, and an MCP server at ~/OKF/mcp-server/ with okf_query_nodes, okf_create_node, okf_add_edge — plus freshness tracking (freshness, verified, expires) and a doctor-kb trigger to find stale nodes.
Every single step was "files, but more organized." Never "files, but self-maintaining."
The Product Urge
Then the urge hit. On July 21 we rebuilt 46 of 73 files against a standard frontmatter schema — schema churn, because files decay. On July 29, OKF spawned a dashboard:
dashboard.mcky.space
├── okf-server ← Express API that reads ~/OKF files
├── Vite + React ← the pretty face
├── port 3457 ← localhost
├── Cloudflare Tunnel ← the public door
└── Basic Auth ← the bouncer
The dashboard went live through a Cloudflare Tunnel at dashboard.mcky.space, behind Basic Auth, and we killed the old Vercel docs site at kb.mcky.space. The knowledge base had become a product.
What the Dashboard Gave Us — and What It Couldn't
It gave us a place to look at data. Auth. A URL. React components. It felt real.
But the dashboard showed stale nodes without knowing they were stale. Somebody still had to run doctor-kb. The dashboard was a shop window: nice glass, well-lit shelves, but every item inside still had to be dusted by hand.
The Boss Fights
The real fights were quieter. Fighting the schema — 46 files re-migrated once, and it would happen again, because the schema was the product and the product was the pile. Fighting recall — nothing "just came back." Every answer meant navigating directory by directory, like reading a card catalog by hand when you're fairly sure the library has a search index somewhere.
What Changed
In the end, every improvement multiplied retrieval paths — a dashboard here, an MCP tool there, a fresher schema. More ways to reach the same pile of files.
OKF was a bridge, not a destination. It taught us exactly what a knowledge base should be — and everything it did, a memory system could do without the files.