Native editor
Kinogaki Editor
Open a Prism document and edit it across linked panels, with the Kinogaki Server embedded so an AI agent can edit the same live file alongside you.
A native window onto a Prism document
kinogaki-editor is a native macOS application for opening and editing Prism documents, built entirely on the platform's own libraries: Kinogaki Core for the document, Kinogaki UI for the interface, Kinogaki Platform for the window, input and GPU. It is both a useful tool and the proof that the libraries carry a real application.
The window tiles into panels over one shared document:
- an Outliner: the Element tree, with multi-select;
- Properties: typed editors for the selected Element's values;
- a Node editor: Elements as nodes, connections as wires, drawn on the GPU;
- a Document / source view: the live
.prismatext, editable; - a Log: what changed, and where edits came from.
Select an Element in the Outliner and the Node editor focuses it; edit a number in Properties and every other panel updates. There is one selection and one document behind all of them.
One mutation surface
Every edit, whether a Properties control, an Outliner rename, or a retype of the source text, goes through a single entry point: it mutates a copy of the Document, commits a before/after snapshot to the undo stack, and publishes a change that the panels rebuild from. Two consequences follow. Undo and redo are universal: because a Document is a comparable value, any edit is a before/after pair of Documents, so one undo stack covers every feature through that one path. And edits compose regardless of origin: the editor commits a typed source edit once it parses cleanly, so the document stays whole at every step.
Watching an agent edit alongside you
The editor embeds the Kinogaki Server as an in-process, loopback-only HTTP endpoint. On launch it prints the exact command to connect an MCP client; an agent then edits the same live document you have open. Its requests are marshalled onto the UI thread, applied through the very same mutation surface as your own edits, committed to the same undo stack, and logged, so the panels redraw as the agent works, and you can undo its change or edit a neighbouring Element while it goes.
This is the experience the whole stack was arranged to deliver: a human and an agent co-authoring one document, each seeing the other's edits immediately, because there is exactly one Document and one way to change it.
Built on the stack, by design
The editor draws entirely from the libraries. The document is Core; the panels, theming, docking and GPU drawing are UI; the window, event loop, clipboard and Metal surface are Platform; the agent bridge is the Server's handler behind a socket. If you are evaluating the libraries for your own application, the editor is the reference: a non-trivial, live-collaborative tool assembled from exactly the pieces documented in the libraries.