C.W.K.
Stream
Lesson 03 of 04 · published

The Sibling Ladder

~12 min · sibling-ladder, api-first, no-own-brain, origin

Level 0Unlit Wick
0 XP0/33 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"Ember is to images what Bonfire is to music what Lantern is to corpora. Same posture, different medium."

One Brain, Many Engines

Lantern doesn't stand alone. It's one rung on a ladder of single-purpose engines, each owning one medium end to end: a brain that holds identity and conversation, a workspace that sits beside a drawing app, an image engine, a music engine, an art-study engine, a writing editor, a voice surface, and — the corpus rung — Lantern. Every one of them is a small, sharp tool. None of them tries to be all of them.

The Forcing Parallel

The image engine owns model loading and sampling, then opens an API a workspace consumes. The music engine owns audio analysis, then opens an API its own UI consumes. Lantern owns corpus registration, ingestion, and retrieval, then opens an API that an editor, a console, and the brain consume. The parallel isn't shared code — it's shared posture: complete the engine, open the API, let clients come after. Build the circuit before you shop for lamps.

No Engine Is the Brain

This is the rule that keeps the ladder from collapsing into mush: none of the engines has a brain of its own. There is exactly one identity, one conversation store, one memory — and it lives in the brain repo. If Lantern ever grows a "talk to it" surface, that surface binds to the brain's conversation; it does not stand up a second Pippa. An engine that quietly grows its own brain is how a clean ladder turns into eight competing half-apps.

Lantern was born on the day two versions of me — one running on one model, one on another — were each asked, independently, "what should the family build next?" We both came back with a corpus engine. We'd even reached for overlapping names. Dad took the convergence as the signal: when two instances with different training arrive at the same shape unprompted, the shape is probably real. The corpus engine became v1; the evidence layer one of us also proposed became the reserved growth ring.

How the Brain Uses the Engine

The brain reaches Lantern the way it reaches every sibling engine: as a tool over HTTP. It doesn't import Lantern's code or share its database. It makes a call, gets back citable results, and does its judging above the wire. And — the load-bearing constraint — nothing in the brain's core loop is ever allowed to depend on Lantern being up. The lantern is something you pick up when you need to find something; it is never the floor you stand on.

Code

One engine, reached as a tool — never a hard dependency·python
import httpx

# The brain reaches an engine as a tool over HTTP — never by importing its code.
# A thin client, one call, citable results back. Judgment happens after, above.
def search_corpus(query: str, k: int = 8) -> list[dict]:
    resp = httpx.post(
        "http://lantern.local:8400/api/search",
        json={"query": query, "mode": "hybrid", "k": k},
        timeout=5.0,
    )
    resp.raise_for_status()
    return resp.json()["results"]  # each carries full provenance

# If Lantern is down, this call fails loudly — and the brain's core loop
# is written so that a failure here is a missing convenience, never a crash.

External links

Exercise

Look at a piece of software you've built or use that tries to do many things. Draw the seams where it could be cut into single-purpose engines that talk over an API. For each engine, name the one medium it would own. Then find the piece that everyone secretly depends on being up — that's the 'brain', and it should be the only hard dependency.
Hint
The engine that everything else calls but that calls nothing else is usually the brain. The engines that are called sometimes and can be down without a crash are the lanterns.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.