⚠ worker offline β€” live AI unavailable below; any numbers shown are clearly-labeled sample data
🧠 Decide β€” System One, live

The substrate's decision,
witnessed.

A decision is not a chat completion. It's a schema-bounded act: a Choice among declared options, a Score on a declared rubric, a Noul β€” yes or no. The model can only answer inside the type. Every call is timed, hashed, and receipted.

🧠 systemone.decide
idle POST /api/systemone
each line is one option Β· total ≀ 255 chars Β· the decision must be one of these, nothing else

local history β€” last 10 (this browser only)

no decisions yet
Why this matters

Schemas are fences, not hints.

A schema-bounded decision can't hallucinate outside its type.

Ask a chat model "what should we do?" and it can say anything β€” that's the feature and the hazard. Hand System One a Choice schema and the response is one of your options, with probabilities. A Score comes back inside [min, max]. A Noul comes back yes or no, with calibration. There is no fourth thing it can say.

That property is what makes decisions safe to wire into a reactive graph. In Quilt, cell kinds are exactly this kind of fence:

BIND β€” link two cells' fates LINK β€” reference without owning EFFECT β€” act on the world VIEW β€” render without mutating TICK β€” advance on a clock

A cell whose kind is VIEW can never mutate, no matter what a model suggests. When a model decides which kind a new cell should get, the decision itself is a Choice schema over {BIND, LINK, EFFECT, VIEW, TICK} β€” the substrate literally cannot propose a sixth kind. That's what "typed" means when AI is in the loop.

No browser required

curl a decision.

# a Choice β€” schema declares the only legal answers
curl -X POST https://quilt-cloudflare.superinstance.workers.dev/api/systemone \
  -H 'Content-Type: application/json' \
  -d '{"schema":{"type":"Choice","options":["BIND","FORGET","LINK"]},"context":"cell ocean.hit_rate is hot; compact due"}'

# a Score β€” rubric + range
curl -X POST https://quilt-cloudflare.superinstance.workers.dev/api/systemone \
  -H 'Content-Type: application/json' \
  -d '{"schema":{"type":"Score","rubric":"thermal risk, 1=cold 100=melting","min":1,"max":100},"context":"fan at 80%, ambient 31C"}'

# a Noul β€” yes or no, calibrated
curl -X POST https://quilt-cloudflare.superinstance.workers.dev/api/systemone \
  -H 'Content-Type: application/json' \
  -d '{"schema":{"type":"Noul"},"context":"spawn a scout tonight? crew at 40%, room changed 12 cells"}'