A shared canvas for humans and agents — a collaborative graph you both draw on.
Live at codraw.ink.
Every writer to the canvas is just an origin + HLC stamping merge units into a
CRDT graph, so an AI agent is a peer rather than an integration: it draws with
the same primitives a human does, into the same document, and the two converge
without a server arbitrating. The graph currently renders GitHub contributors
(Person) and repositories (Repo) joined by contribution edges.
./scripts/dev.sh |
Live Chrome window, auth bypassed, against a local Firestore emulator. Hot reload with r/R, or kill -SIGUSR2 $(cat /tmp/codraw-dev.pid) to drive a restart from a script. |
./scripts/shoot.sh [out.png] |
Headless screenshot of a release build — the verify-before-commit gate for anything visual. |
./scripts/shoot.sh --url https://codraw.ink out.png |
Same, against a live URL. |
flutter test |
The suite. |
The dev loop fakes auth (lib/main_emulator.dart) and lands straight on the
canvas, so it cannot reach the real sign-in page — verify front-door changes
with --url against production.
Deploys fire on a version tag, not on merge:
git tag -a v0.2.3 -m "..." && git push origin v0.2.3Architecture decisions live in docs/adr/; the design work behind each larger
increment (with its adversarial review) is in docs/crucible/.
Original project notes — from the 2021 domain-visualiser incarnation.