Code · space · motion

Systems you can explore.

Enter the work Enter the red-noir lab

Six projects in one world. A graphite asteroid, an amethyst interior, and a painting waiting inside.

Flagship
Witloom · declared protocols
New work
SCIR · symbolic content
Explore
Working interfaces · live examples

Selected work · proof in sequence

Every idea has working parts.

Choose your own route, or follow the sequence.

Choose a project

Selected work / six perspectives

An idea is a beginning.
Explore what it becomes.

  1. 01WitloomDecisions that endure
  2. 02Tiger LibrariesA language for interfaces
  3. 03SCIRStructure carries meaning
  4. 04PlanevoxFrom planes to worlds
  5. 05Control CenterAn editor, composed
  6. 06Red NoirSignal stays scarce

Project 01 / Agent protocols + durable execution

Powerful actors. Explicit rules.

Declared protocols for agents, tools, and people. Witloom admits external signals, normalizes the next state, and preserves execution for recovery and replay. Rust provides the local-first reference runtime.

Follow the current flagship Private source / Rust authority / pre-1.0
What
Calculus + Rust local runtime
Input
Program + binding + JSON input
Controls
Packets, letters, joins, calls
Produces
Instances, journals, replay, evidence
  1. Draft
  2. Gate
  3. Veto
  4. Quorum
  5. Replay
01 / 05 · Managed point

Open only the packet needed now.

The scribe receives a bounded release order and can return only the declared drafted letter.

draft --drafted→ approve
02 / 05 · Open authority

Authority is explicit and basis-bound.

The operator sees the declared decision packet and may return proceed or abort—nothing else.

approve --proceed→ review
03 / 05 · Declared branch

A veto closes the unsafe route.

The called council may emit vetoed. The parent program routes it to a blocked terminal without a model inventing recovery.

review --vetoed→ cancelled
04 / 05 · Composed quorum

Two letters can settle the council.

The council closes on two admitted ayes. Once closed, late output cannot change the accepted result.

review --adopted→ shipped
05 / 05 · Durable terminal

Replay the accepted letter path.

The terminal revision, program basis, binding basis, and semantic journal survive the agent session. Replay never reinvokes effects.

shipped / revision 3 / replay exact

One program. Every outcome.

Protocol graph

Current Witloom flagship program A managed scribe drafts a release, an operator may proceed or abort, and a called two-of-three council may adopt or veto. Adopted work ships; abort and veto end in a blocked cancelled state. drafted abort proceed vetoed adopted managed / current draft scribe authority / next approve operator blocked terminal cancelled outcome · cancelled call review 2 of 3 · veto terminal shipped released

flagship.witl · Rust reference runtime

program flagship@1 where
  -- Composed release train: model draft, operator gate, reusable council.
  require review := "review.witl"

  schema order := shaped "release-order.v1" {"type":"object","required":["tag"],"properties":{"tag":{"type":"string"}},"additionalProperties":false}
  schema note := shaped "release-note.v1" {"type":"object","required":["notes"],"properties":{"notes":{"type":"string"}},"additionalProperties":false}
  adapter only-the-notes : note -> _ := pick "/notes"

  authority operator
  actor operator : authority operator
  actor scribe : managed never
  accepts order
  starts draft

  state draft where
    notes <- scribe : drafted note

  state approve where
    go <- operator : proceed order | abort order

  state review where
    call review

  state shipped := end released
  @[blocked] state cancelled := end cancelled

  next
  | draft, drafted   => approve using only-the-notes
  | approve, proceed => review
  | approve, abort   => cancelled
  | review, adopted  => shipped
  | review, vetoed   => cancelled
Review: inspect the quorum rule
program demo-review@1 where
  actor alpha : managed idempotent
  actor beta : managed idempotent
  actor gamma : managed idempotent
  starts vote

  state vote where
    alpha <- alpha : aye | vetoed
    beta  <- beta  : aye | vetoed
    gamma <- gamma : aye | vetoed
    close any_of
    | saying vetoed
    | at_least_saying 2 aye
    decide
    | saying vetoed => rejected
    | _             => approved
    carry := {
      ayes := count aye
      dissent := documents vetoed
    }

  state adopted := end adopted
  @[blocked] state refused := end vetoed

  next
  | vote, approved => adopted
  | vote, rejected => refused
Current state
draft
Selected transition
draft-drafted
Next state
approve
Validated
5 / 5 can terminate

Illustrative execution of the current flagship. Program source and graph describe the same routes.

Tigerwits / visual score

One scene, conducted in layers. Each visual voice keeps its own time. Hear four against three with Tiger Score ↓

01ONE DECLARATIVE SCENE

01 / formation

Dust becomesa body.

Grains gather. Separate pieces close into one rough shell.

Core + Layout · one shared coordinate system

02 / encounter

A passing bodybends the path.

A companion crosses behind. Dust turns first; the larger body follows.

Score · independent parts, shared time

03 / interior

The shellopens.

A seam widens. Layers held inside the body come into view.

Surface · geometry beneath the shell

04 / release

One body.Many trajectories.

Fragments separate along authored paths. Each piece keeps its place in the score.

Motion · paths and easing

05 / afterimage

Dust keepsthe trace.

The larger fragments recede. Fine dust carries their curve a little longer.

Browser · one frame, coordinated outputs

06 / continuation

One remnantcontinues.

A small piece leaves the frame. The next encounter is still unwritten.

Explore the libraries below · or play the Chopin study

Play four against three ↓

ONE FORM. TWO VOICES.

Four against three.
A page, in counterpoint.

Scroll conducts the page. Play gives the hands their own time. Both meet here, in one composition.

The written study is loading. The standalone version is available below.

Tiger Libraries · interaction lab

A system you can touch.

Move a tile. Change the space. Every piece finds its place. Explore the same composition with a pointer or a keyboard.

Layout session

Ready — pointer or keyboard

01
Flow composition row → column / gap 12
02
Motion patch presentation only / geometry stable
03
Replay trace same events / same snapshots

Keyboard: focus a card, token, or divider; press Space, use arrow keys, then Enter to commit or Esc to cancel.

Project 03 / Symbolic Content IR

Small syntax.
Exact structure.

A tiny symbolic content language for agents and software. Nested terms preserve order, duplicates and scope.

Python tools · open vocabulary · unreleased

A change of scope

01 / Negate the actionthink(Bob,
not(delete(Alice, File)))

Bob thinks the action does not happen.

02 / Negate the beliefnot(think(Bob,
delete(Alice, File)))

It is not the case that Bob thinks the action happens.

Two authored interpretations. SCIR preserves the grouping; symbols have no built-in meaning. This is a source example.

Project 04 / Planevox

A world.
Plane by plane.

Sparse voxel worlds and charted surfaces, built on deterministic simulation and parallel-plane rendering.

Java 21 / Vulkan · playable slice in development

Architecture illustration / source data, detail, upload pages, appearance and camera inputs remain separate.

Canonical 10 cm cells · experimental 5 cm mode. Planet views remain diagnostics.

Projects 05–06 / Everyday craft

Care, at the scale
of a keystroke.

CONTROL CENTER interface study
Editor↵
Settings›
Keymaps›
Commands›

05 / Control Center

An interface for the everyday.

Declarative sections bring settings, actions, keymaps and commands into one inspectable Neovim surface. Configuration owns values, persistence and effects.

Dependency-free · Neovim 0.10+ · private API development

RED NOIR palette study
01local signal = focus
02surface:resolve()
03-- leave room to think

06 / Red Noir

Let the signal speak.

True black, disciplined gray and deliberate red. A stable, read-only palette carries the same hierarchy through syntax, diagnostics and editor surfaces.

Dependency-free · Neovim 0.9+ · private colorscheme

05 / A WORLD WITHIN · VINCENT VAN GOGH, 1889

The Starry NightThe Starry Night

Vincent van Gogh's The Starry Night: swirling blue sky and golden stars above a still village and dark cypress.

Stay a while. Scroll to continue.