Thinking tool · 2026

Intuition Canvas

I arrange things by feel. A model reads the same things from the words alone. This tool keeps my version frozen, so I can see where we disagree.

For thoughts I don’t want to resolve too early.

Open the tool →
↓How it works
The orientation a first visitor meets: four numbered steps — place fragments, freeze the arrangement, see the model’s reading, inspect the divergence — closing on “Neither one is the answer.”
What the tool says before it is used. The orientation states the grammar: place, freeze, the model reads the text, then inspect where the two readings disagree.
One card on a wooden floor: a printed marker in the corner, and beside it, handwritten, “Reading BOOKS!”.

The question is not whether the model reads better. It is whether two readings, made from different evidence, can be placed side by side and inspected. Your reading is frozen before the model’s appears, so neither can shape the other.

  1. 01

    Place

    Arrange fragments in a field. Distance from the center records felt intensity. Proximity records felt relation.

  2. 02

    Freeze

    Once frozen, it stays. Whatever the model says next can't move it.

    The canvas after freezing, named arrangement b019ed and stamped frozen 00:57, with “frozen · read separately” beneath it. Eleven fragments sit where they were placed.
    arrangement b019ed, frozen — the same arrangement the divergence below was read against.
  3. 03

    Model reads — text only

    The model receives the fragment text and nothing else. No coordinates, no positions. It returns relations, and may leave fragments unlinked.

    sent · [{ id, text }] per fragment, the lens, the reading language — and nothing further

    The instrument while a reading is in flight: the panel reads “waiting for the reading” and states that the fragment names and the chosen lens and language are sent, while where the fragments were placed stays in the browser.
    What travels, said while it travels. The names and the lens go; the placement does not.
  4. 04

    Inspect divergence

    Where the two readings disagree.

Reading 01 over eleven fragments. Under “where the readings diverged” the model linked wet swimsuit and cold tiles, recorded as the 10th-nearest relation in the arrangement; below it, Crisp air beside sunburn, which the model left unlinked.

The model linked wet swimsuit and cold tiles — the 10th-nearest pair in the user’s arrangement.

The user placed Crisp air beside sunburn — the model left them unlinked.

Control test: six unrelated words, three sets, three runs each.

Control — unrelated words 0.33 mean strong relations per run
Real fragments 2.0 mean strong relations per run

The ranges do not overlap.

Given six words with nothing in common, the model still found something: two of them were things that pile up.

Full record: docs/control-test.md in the repository.

Every reading is stored with the arrangement it was frozen against, so a reading can be reproduced rather than remembered.

Export and import carry fragments, frozen coordinates, relations, protocol version, and reading history in one file.

The table from above, with four corner markers and blank cards on a paper field.
The table, 11 September 2026. A tool check — my hands, no participant.

The camera reads where the cards are. The model reads only what they say: the request carries the words and nothing else — no coordinates, no photograph. The screen states this in three places.

On 11 September the first participant ran a session on the table. Eight cards, one arrangement, one reading.

The fragments were whatever came to mind. One of them was dinner.

The paper field photographed from above and squared to its four corner markers: eight handwritten cards spread across it. The same eight cards in the app, in the same positions, with the model’s relations listed beside them.
The same eight cards, twice. Above: the table, photographed after the session — during it the phone was the instrument's camera and could not also be a camera for this. Nothing had moved: 0.84 mm, the largest of the eight, against the arrangement the reading was frozen on. The photograph is squared to the four corner markers, so both carry the same frame. Below: the same record re-opened in the app — re-rendered, not captured, because the session recording holds an earlier, cached reading. The camera turned the cards into coordinates; the model was handed only the words. Arrangement f4d01f98.
The same photograph with the model’s four strongest relations drawn across it as long lines, and a short dashed mark between the two cards that sit closest together, which the model did not relate.
What the model linked, drawn on what the hand arranged (rendered from the record). Its four strongest relations are the 10th, 19th, 24th and 25th nearest pairs on the table, of 28 — they cross the whole field. The two cards the hand put closest together, 59 mm apart, it did not relate at all. Distances are computed from the frozen coordinates; the relations are the model’s reply.
Eat pasta for dinner Penne Alla Vodka — Drinking Wine + Champagne
warm throat full belly
Analyze financial markets — Spend time Trading and Researching
eyes on screens hours long
Drinking Wine + Champagne — Hanging out w/ friends
bodies close easy laughter
Two diagrams of the same eight fragments: on the left the positions the participant chose, on the right the same eight scattered. Below them, one sha256 that belongs to both.
What was sent, to the byte →
Fragments: [{"id":"0","text":"Analyze financial markets"},{"id":"1","text":"Eat pasta for dinner Penne Alla Vodka"},{"id":"10","text":"Spend time Trading and Researching"},{"id":"2","text":"Running after 7 during sunset"},{"id":"3","text":"Drinking Wine + Champagne"},{"id":"4","text":"Hanging out w/ friends"},{"id":"5","text":"Going to the Beach"},{"id":"8","text":"Reading Books!"}] Active lens: PATTERN. Focus on recurring patterns across fragments. JSON only.
Why it could not have known (diagram, computed from the record). Pass the same eight fragments through the instrument twice — once carrying the coordinates above, once with them shuffled — and the request is the same to the byte. Above is all of it: ids, words, the lens. Sorted by id, so even the order carries nothing. The coordinates are in the object handed to the function and absent from what leaves it.
The panel headed “where the readings diverged”, listing what the model linked that the arrangement did not, and the reverse.
Detail from the panel above (re-rendered, like it). It names the two readings and sets them side by side. This is the sentence the participant did not arrive at.

Both were answers to the same question: did the model see your arrangement?

Same person, different surface, same answer.

One participant, their third session — not naive to the canvas. The reading was also shown to them late: a cached record left an earlier, empty reading on screen until the page was reloaded.

The separation holds in the instrument and fails in the room. Writing it down three times did not carry it. The next version has to show it instead: scatter the cards, run the reading again, and let the same answer come back.

A hand writing a word on a card; the card’s marker and the written word are in the same frame. Close-up of a printed marker on a card, trim marks visible.
What a person wrote, and what the camera can read. The word never leaves the paper until someone types it in; the square is the only part the machine sees.
Raking light across the paper field: one card lying on it, its perforated edge and printed marker catching the light.
The field is paper. A printed square on a sheet, under a lamp — the whole difference from the screen condition is in this frame.

Five sessions so far: three by one person, two by people who had never seen it. I still don’t know how the gap differs from person to person.

Next Friction Family A second tool — training cognitive resistance →