Laws

AI now writes a growing share of what people read and act on in the browser. Four laws keep that work legible: who made it, whether it is still changing, what the AI may do next, and how to make it all stop.

Why laws

Guidelines get traded off against each other. Laws hold on every screen. Palette has four because an AI-rich interface has four new questions to answer at a glance, and each law answers one of them.

AI is not a law. It is the reason for the laws. A screen that mixes a person’s words, an interface’s controls and a model’s output needs clear rules for telling them apart, for showing what the model is doing right now, and for showing what it will and will not do on its own.

LawThe question it answersThe rule
1 · ColourWho made this?Ink is the person’s, lapis is the interface’s, pigment is the model’s.
2 · MotionIs it still changing?Only the model’s live work moves. Settled content is still.
3 · ReachWhat may the AI do here?Every control shows what the model may do there, before it does it.
4 · RestHow do I make it stop?One shared beat. One Still switch stops everything.

Law 1 · Colour

The rule

Ink is the person’s, lapis is the interface’s, pigment is the model’s.

Every screen has three authors, and each one gets its own layer of colour. Ink is everything a person wrote or chose. Lapis and the neutrals are the interface: controls, focus and structure. Pigment is everything the model wrote or proposed.

Pigment never turns into ink. When a person accepts what the model wrote, the pigment stops flowing and settles, but it stays pigment. The record of who wrote what survives acceptance, copying and saving.

Three state colours sit outside the layers: viridian for done, ochre for needs you, madder for errors. They mark outcomes, never decoration.

  • Render model output in pigment from its first word. Don’t wait for it to finish.
  • Keep accepted model text in still pigment. Acceptance changes motion, not authorship.
  • Use solid tyrian where a gradient can’t be drawn: outlines, strokes, small marks and focus rings around model regions.
  • Never use pigment for branding, headings or decoration. If it isn’t the model’s, it isn’t pigment.
DoKeep accepted model text in still pigment, so its origin stays visible.
Don’tDon’t turn model text into ink when a person accepts it. Nobody can tell who wrote it any more.

Law 2 · Motion

The rule

Only the model’s live work moves. Settled content is still.

Motion is a signal, and a signal that never stops means nothing. In Palette, movement means the model is working: thinking, writing, or waiting for a person to review what it wrote. When the work settles, the motion stops.

The interface may respond to touch with brief motion: a sheet sliding up, a button settling back. Responses last one signal (280 ms) and play once. Nothing loops for decoration.

WhatMoves?How
Model thinkingYesThe model caret blinks; the model mark turns
Model writingYesWords arrive behind a steady model caret
Model output awaiting reviewYes, slowlyPigment flows once per beat
Accepted model outputNoStill pigment
Interface responseBrieflyOne signal, 280 ms, once
DecorationNever—
DoShow thinking with the model caret, in the place the answer will appear.
Don’tDon’t stack spinners, shimmering placeholders and animated gradients. Three motions say nothing about which one is the model.

Law 3 · Reach

The rule

Every control shows what the model may do there, before it does it.

People need to know what the AI will and won’t do before it does it. Every control, field and region declares its reach with one of three marks, placed before its label.

MarkReachMeaning
Empty ringPerson onlyOnly a person may press or write here. The model can’t, even when asked.
Half ringModel preparesThe model may fill it in or set it up. A person confirms.
Full ringModel may actThe model may do this on its own, and says so when it has.

Actions that can’t be undone are person only. They seal with a one-beat hold (Seal), and the largest need two different people (Quorum). Fields declare reach the same way, and each writer has a caret in its own colour (Caret).

DoMark every action, including the ones the model can’t take.
Don’tDon’t leave reach to guesswork. Unmarked buttons make every action look equally safe to delegate.

Law 4 · Rest

The rule

One shared beat. One Still switch stops everything.

Every moving part keeps the same tempo: one beat of 2.4 seconds. A shared beat makes several live components read as one calm system instead of competing rhythms.

Motion has a cost. On an earlier Palette board with every component moving, the browser’s main thread stayed about 22% busy; with Still on, about 1.5%. So canvases share one clock, rest when their work is done, and sleep when they scroll off screen.

Still stops all motion in one switch, in the top bar and in Settings. It turns on by itself when a device asks for reduced motion. With Still on, every state must stay readable through colour, shape and words alone.

  • Run every animation on the shared clock and let it rest. Return to stillness when the work is done.
  • Keep three components or fewer in signal motion per screen.
  • Pause anything off screen, including CSS animations on pseudo-elements.
  • Test every component with Still on. If a state disappears without motion, give it a shape or a word.

Check a screen

Run these four checks on any screen before you ship it.

CheckLaw
Point at any piece of text. Can you tell whether a person or the model wrote it?Colour
Does anything move that isn’t the model’s live work, or a brief response to touch?Motion
Does every button and field show whether the model may use it?Reach
Turn on Still. Does everything stop, and can you still read every state?Rest