04 — A Little Technical
Three verbs to run it. Six doors to shape it.
Everything you just saw, you reach through six gateways. The design needs only three verbs to run the loop in real time — perceive what's happening, ask for the next action, and report what came of it. The other doors set up and steer the intelligence in the background. Each door speaks plain web requests, and the /v1/… names are exactly what your engineers will use. We also have typed SDKs for Python, TypeScript and Swift; they live in a private repository and are not published yet. Today all six doors are open on our staging environment to callers with an API key; in production only the Configurator Gateway is reachable from outside. Below each door you'll see what two apps actually call today: our swim app, and our robot-arm demonstration.
1 · Perceive
/v1/encode /v1/perceive
Send raw signals in; get back a read of the moment. Both doors answer 503 in production today.
2 · Next action
/v1/propose
Ask for the best thing to do; Wake answers from a careful plan. The quick reflex is not built yet.
3 · Report
/v1/effect
Tell Wake what happened. Closing the loop is never billed.
These three ride the world doors — the real-time path your users feel. The four mind doors below shape and remember. Because the next action comes from a plan today, the live loop also needs the World Model Gateway to answer.
Mind doors
set up & steerThe gateways a business uses to shape and guide its intelligence — setting goals, scoring plans, imagining outcomes, and remembering.
the coach
Hands Wake a big goal and gets back a clear, ordered set of steps to work toward.
/v1/decomposebreak a goal into steps
A swimmer sets her goal — break 1:05 in the 100 free by September. The swim app does not call /v1/decompose; it calls the Configurator's goal compiler through our Swift SDK (compileGoal), shows her a preview of the terms Wake will weigh and how much (recompilePreview), and sends back any weight she changes (weightFeedback).
The robot-arm demonstration sends the operator's typed task to /v1/decompose for the arm's domain and gets back subgoals. Wake does not yet read the words of an arm task: the domain is named explicitly, and the plan is not yet conditioned on the goal.
the sense of good vs. bad
Rates how good a plan is — with a likely result and a worst case — then learns from what really happened.
/v1/evaluaterate how good a plan is/v1/feedbackreport what really happened
The swim app does not call the Cost Gateway today.
The robot-arm demonstration does not call this door. Its plan requests carry an empty set of cost weights, so nothing arm-specific shapes the score yet.
the imagination
Pictures what happens next, works out a careful plan, and takes your corrections on board.
/v1/imaginepredict the next state/v1/planwork out a careful plan/v1/correctionapply your correction
The swim app calls /v1/plan through our Swift SDK (worldModel.plan) for her day-plan outlook, where each action carries a likely result and a bad-case estimate. That outlook has not yet returned a plan to a swimmer. The app does not call /v1/imagine or /v1/correction.
Each act step of the robot-arm demonstration calls /v1/plan and gets back a plan at the level of moves. No motor command exists yet, so the arm is not driven by that response. The arm's world model, trained on 1,348 DROID robot videos spanning 12 kinds of moves, was promoted to the staging model registry on 2026-09-03; production has no arm model.
the working notepad
Saves the current state and recalls the most similar moments from the past on demand.
/v1/writesave the current state/v1/recallfind similar past states
The swim app does not call these doors today.
The robot-arm demonstration does not call these doors either; it keeps its state in its own session.
World doors
data in, guidance out real‑time · the three-verb loopThe two gateways your everyday data flows through — turning raw signals into understanding, and understanding into action your users feel. These carry the three-verb loop: perceive in, next action and report out.
the senses
Takes the raw data your app sends and turns it into a compact, useful read of the moment. Both doors answer 503 in production today. /v1/encode answers 503 in staging too, because the gateway image does not include the encoder yet; the reader /v1/perceive needs is part of a backend change being merged now.
/v1/encodeturn raw input into a read/v1/perceivematch a clip to known concepts
/v1/perceive is the swim door: for each clip it returns the nearest swim-technique concepts and their distances. The swim app does not call it; its clips go through the video pipeline, whose results fill the app's two analysis tabs. The one hand-off from form to training that shipped: one tap adds a drill to the swimmer's month.
The robot-arm demonstration sends one rendered camera frame of its household scene — a table, a cabinet, a drawer, a mug, a bowl, a can, two blocks, a sponge and a cloth — to /v1/encode. Even when that door serves, no encoder trained for the arm exists yet.
the doer
Chooses what to do by asking the World Model for a careful plan, then turns it into a clear action. The quick reflex (mode 1) is designed but not built: a call that does not ask for planning mode fails today.
/v1/proposechoose what to do/v1/effectrecord what the action did
The swim app does not call the Actor Gateway today. Its one action, adding a drill to her month, goes to the swim planning service, which still runs inside the Wake platform.
The robot-arm demonstration asks the World Model for its plan directly rather than calling /v1/propose. After each cycle it reports through /v1/effect that nothing was executed, because the arm did not move.