Creativity Harness
Chat is too limiting for creative AI work. A chat box is good for one answer. It is weak for building a world, comparing variants, saving files, and returning to context later. Splitting multimodal AI into separate apps also feels too limiting. Voice, sound, terminal work, images, video, text, and research should be able to live in one working surface. That is why Portal uses a canvas.
Coding agents are built around a harness. They need files, terminals, logs, tests, diffs, memory, and a way to recover when something goes wrong. Creative AI apps need the same kind of harness. They should not be just prompt boxes with prettier output. They should give the model a place to make artifacts and give the user a way to inspect, compare, reuse, and export them.
The old software package metaphors are starting to feel too fixed. Photoshop layers are useful, but they assume the work is mainly a stack of visual surfaces. Word documents are useful, but they assume the work is mainly a linear text file. Modern AI work is messier. It mixes writing, images, terminals, research, plans, assets, errors, exports, and revisions in the same session.
An infinite canvas fits this better. It can hold different kinds of cells without forcing them into one document shape. One cell can generate an image. Another can edit text. Another can run a command. Another can hold a brief, a risk list, or a reasoning trace. The useful connection is not just visual proximity. Outputs should route into other cells as explicit inputs, and the canvas should keep enough history to make the work inspectable.
The same rule applies to creative work. A canvas gives the model places to put work. It can hold image widgets, terminals, world notes, generated packs, and artifacts side by side. The useful part is not the button. The useful part is what the button leaves behind.
The image widget started as comic panel generation. Then it grew into book mode, world mode, character packs, decks, trailers, albums, game kits, brand worlds, science plates, and faith study packs. Each mode gives the model a narrower job. The prompt is still free text. But the widget adds structure around size, style, quality, background, Style DNA, variants, history, and downloads. That makes the result easier to reuse.
These images are examples of storytelling generation. The point is the harness. A good harness turns a short idea into frames, studies, styles, and reusable assets.
World building is a different problem. One good image is not enough. A world needs visual rules. It needs characters, locations, objects, faction marks, palettes, and repeatable motifs. Style DNA helps here. It stores the look as text rules. It can be mixed. It can be used again across panels, pages, and packs.
The immersive widget uses Three.js to render a procedural scene. The same prompt becomes a scene with motion, seed, palette, and camera behavior. Scene DNA turns that scene into a small specification. Variants explore nearby directions. Export Pack downloads a zip with a PNG frame, JSON, prompts, a manifest, and a small HTML microsite.
/world lost library under the sea
/projectpack calm habit tracker for remote teams
/immersive glass city inside a storm
The terminal widget follows the same rule. When a command creates a file, the interface should surface it as an artifact, not leave it hidden in scrollback.
Skill packs and project packs are for a different kind of output. They do not make images. They make work material for agents. A one line idea becomes a project brain. The pack includes assumptions, tasks, files, prompts, and Codex skill instructions. It is still not magic. It is a better starting point. It gives the agent context before it edits code.
That is the pattern I like. The widget is a small interface. The output is a durable artifact. It can be inspected, downloaded, versioned, and used somewhere else. This matters more than adding another prompt box.
The next step is making every widget behave this way. Every result should have memory. Every result should have variants. Every result should have an export. A creative tool should not trap work inside the screen. It should turn short ideas into files that survive the session.