← all builds
daily

Router

Two routers the other builds depend on. The intake router classifies whatever arrives, an email, a voice note, a dropped file, and files it in the right place with a one-line log; the skill router picks the model for each of the 30+ agent skills by power band. Receipts reach the expense log without anyone typing them, and a renamed or retired model costs a one-line edit.

stack
Python, Claude headless, launchd, config files
runs
Intake daily with one retry; skill routing on every skill call
code
private for now

Why it exists

Every automation needs the same two answers before it can do anything: what is this thing that just arrived, and which model should handle it. Answering the first by hand meant inboxes nobody cleared; answering the second by hardcoding model names meant six skills breaking the day a model was pulled.

How it works

LANE A · INTAKEemaildaily pass, read-onlyvoice notesfrom the Voice pipelinedropsPDFs, links, pasted textclassifywhat is it → what does it implyexpense rowreceipts, bookingsproject hubmatches a project’s keywordsperson / task / ideaCRM, board, backlogreading queuearticles, PDFsintake logevery decision, one lineLANE B · SKILLS → MODELSskillone of 30+tier lookupskill → power bandband → modelone config filemodelflagship / content / routineA renamed or retired model is a one-line edit in the band map. Skills never reference a model by name.

The intake lane is a daily pass with a written rulebook: what each kind of input is and what it implies. A receipt implies a row in the expense log. An email mentioning a project’s keywords implies a bullet in that project’s hub. A voice note about a person implies a CRM update and maybe a task. Each decision is logged in one line with a source reference, so anything misfiled can be traced back. The skill lane is two small config files: one maps each skill to a power band (flagship, content, routine), the other maps each band to a current model. Skills read the band, and only the band map names a model.

← previous: News radarnext: Casper Notetaker →