Codex + Cowart Infinite Canvas in Practice: Making Mona Lisa Wear Sunglasses, Drink Coffee, and Take Selfies (with Installation Guide)
One source image can branch into several directions — sunglasses, coffee, a selfie — and any branch can keep growing. Spend 3 minutes installing Cowart and AI image generation stops being a one-way street.
Anyone with a Codex-enabled account who wants AI image generation that isn't forced down one linear path at a time.
- Install Cowart into Codex (automatic install takes about 3 minutes), then fully quit and restart Codex once.
- Drop the Mona Lisa source image onto the canvas as the root node of your branches.
- Mark an area to spawn a branch, then keep growing whichever version is the most fun.
After installing or updating Cowart, you MUST fully exit and restart Codex once, or the canvas may fail to open.
[//]: # (# Codex + Cowart Infinite Canvas in Practice: Making Mona Lisa Wear Sunglasses, Drink Coffee, and Take Selfies (with Installation Guide))
Recently I came across a really fun tool in Codex — the Cowart Infinite Canvas (opens new window).
It's a native infinite-canvas plugin for Codex built on tldraw. You can push one idea in several different directions at once, and any version can keep growing from there.
Remember the flow we all grew up with? Generate an image → not happy → generate again. The whole creative process is a straight line.
Cowart is different. A single image can be tried in several directions at once, and any one of those versions can become a new starting point for further edits.
So this time I wanted to try it on an image everyone knows —
Mona Lisa.
No redrawing from scratch, and no complicated prompts either.
First, three very simple changes:
Sunglasses 😎
Coffee ☕
A phone selfie 🤳
Then, from whichever version is the most fun — the selfie — keep editing it once more, to see how far Codex + Cowart can take a 500-year-old masterpiece.
Before you start: you only need two things — a ChatGPT account with Codex enabled, and the Codex client installed. Cowart itself is open source and free. If you don't have a Codex-capable account yet, check out the latest ChatGPT Plus top-up tutorial first — top up via Alipay in about 2 minutes.
# 📚 Table of Contents
- Install Cowart in 3 Minutes
- Step 1 Put Mona Lisa on the Canvas
- Step 2 Give Mona Lisa Sunglasses
- Step 3 Make Mona Lisa Drink Coffee
- Step 4 Make Mona Lisa Take a Selfie
- Step 5 See the Infinite Canvas in Action
- Step 6 Keep Growing From the Selfie Version
- Step 7 Beyond Image Editing AI HTML and AI Slides
- FAQ
# Install Cowart in 3 Minutes
Before we play, let's install the tool.
Cowart (opens new window) is a native infinite-canvas plugin for Codex, built on tldraw. Inside Codex you can open the canvas, annotate images, and generate new images from those annotations. It also supports AI HTML and AI Slides, and canvas data is saved in the current project's canvas/ directory.
Don't want to install a plugin? Cowart also has a web version: open cowart.jiqiren.ai (opens new window) in Codex's built-in browser, log in, and jump straight into the canvas. If you plan to use it for the long term and want your data kept in your own project, installing the plugin is still the better choice.
# Method 1: Let Codex Install It Automatically (Recommended)
The easiest way: paste the block below to Codex verbatim and let it run the install and its own checks:
Please install the Cowart Codex plugin through the Git marketplace that ships with the Cowart repository.
First run codex plugin marketplace add zhongerxin/Cowart --ref main,
then run codex plugin add cowart@cowart-github, and confirm the plugin is enabled with codex plugin list.
The Cowart release package already includes a self-contained MCP and pre-built widgets; it won't run npm install
in the plugin cache, and new users don't need to pre-install tldraw. Don't manually install dependencies in the
current repo, the plugin cache, or the marketplace snapshot directory, and don't clone the repo into a personal
marketplace. When the install is done, clearly remind me: fully exit and restart Codex once before using Cowart.

# Method 2: Manual Install (Two Commands)
If you're comfortable with a terminal, register the Cowart repository as a marketplace and install directly:
codex plugin marketplace add zhongerxin/Cowart --ref main
codex plugin add cowart@cowart-github
codex plugin list # confirm the plugin is enabled
# ⚠️ You Must Fully Restart Codex Once After Installing
Don't skip this step: fully quit Codex, then start it again.
After the restart, Cowart's new skills and MCP tools load completely. If you start using it without restarting, you'll most likely hit the canvas not opening or tools not responding.
# Open the Canvas: One Sentence Is All It Takes
After the restart, type this in the Codex chat box:
Open the Cowart canvas for this project.
Or just say: open the Cowart canvas. The canvas pops up as a native Codex widget — no browser needed. Every step from here happens on this canvas.
Installed, and the canvas open?
Then let's go.
# Step 1 Put Mona Lisa on the Canvas

Prepare a clear image of the Mona Lisa, open the Cowart infinite canvas in Codex, and drop the image in — it becomes the root node of the whole project.
There's one rule this time: try not to regenerate the whole Mona Lisa. Keep the face, clothing, background, composition, and the original oil-painting texture, and modify only the spot you mark.
Start with the simplest change.
# Step 2 Give Mona Lisa Sunglasses
Select the original image, mark the area near the eyes, then tell Codex:
Give Mona Lisa a pair of modern black narrow-frame sunglasses that sit naturally on her face with the original painting's lighting; keep the rest — person, clothing, background, pose, composition, and painting style — completely unchanged.
Let Codex edit from the annotation. The canvas now has its first branch:

Mona Lisa original → sunglasses version
Only a pair of sunglasses was added, but the whole mood of the frame instantly shifts.
The expression is still the same, the dress is still the same, the background is still the same — it just suddenly has a little more of...
"She has already seen through everything" energy.
First round of edits done.
# Step 3 Make Mona Lisa Drink Coffee
Watch one key operation here: don't keep editing the sunglasses version. Go back to the original Mona Lisa and create a new branch from the original.
This time, mark the area near the hand:
Have Mona Lisa naturally hold a modern takeaway coffee cup, with a realistic paper cup and lid structure that blends into the original hand pose, perspective, and lighting; leave everything else unchanged.

Mona Lisa original → coffee version
This is where the infinite canvas gets interesting.
If you kept editing the previous image — original → sunglasses → sunglasses + coffee → sunglasses + coffee + phone — it would still be one straight line, and ordinary AI chat-based image generation could handle that too.
Now we keep the original and test two directions at once — "what if she wears sunglasses" and "what if she drinks coffee" — the two ideas never interfere with each other.
# Step 4 Make Mona Lisa Take a Selfie
Same as before: go back to the original Mona Lisa and create a third branch straight from the original.
Mark the area near the hand:
Have Mona Lisa naturally hold a modern smartphone with one hand, raised slightly toward herself as if taking a selfie. Keep her originally restrained, mysterious expression; the phone and hand should follow correct perspective, and every other feature, the clothing, the background, and the painting style stay completely unchanged.

Here, I actually didn't want the AI to make her feel too modern — no modern clothes, no modern makeup, and don't turn the oil painting into a photo-realistic portrait.
She is still the same Mona Lisa, same expression, same background.
The only thing wrong here is: she suddenly holds up a phone and takes a selfie.
That anachronistic feeling is actually more interesting than turning Mona Lisa into a modern girl.
# Step 5 See the Infinite Canvas in Action
Let's pause for a second here.
The whole canvas actually holds just four images: the original Mona Lisa, plus three branches — sunglasses / coffee / selfie. Roughly like this:
😎 sunglasses
↗
Mona Lisa original ──────→ ☕ coffee
↘
🤳 selfie
Not many images, but the three creative directions are now all on the table, so you can compare directly:
Which direction is the most fun?
My pick: the selfie. So let's keep going.
# Step 6 Keep Growing From the Selfie Version
This time, don't go back to the original — select the selfie version you just created as the new starting point.
Keep Mona Lisa's selfie pose, identity, clothing, background, and the original oil-painting style unchanged, and have her other hand naturally make a modern peace sign ✌️. Hand structure and perspective should look natural, while keeping Mona Lisa's originally restrained, mysterious expression.

Now the whole structure becomes:
😎 sunglasses
↗
Mona Lisa original ──────→ ☕ coffee
↘
🤳 selfie
↓
✌️ selfie 2.0
At this point, the words "infinite canvas" start to really mean something — any node can become a brand-new starting point and keep growing.
# Step 7 Beyond Image Editing: AI HTML and AI Slides
Editing images is only half of Cowart. Once the plugin is installed, there are two more things on the canvas toolbar worth trying:
- AI HTML: create a 16:9 AI HTML frame, enter a prompt (it can include a reference image), and Codex generates a directly runnable single-file web page embedded in the canvas. Not happy with it? Keep annotating and editing — the same logic as image editing.
- AI Slides: drag images and HTML from the canvas into it, or just type a description and let Codex generate a full set of 16:9 presentation slides by page count. With thumbnail preview and full-screen playback, a whole deck grows right on the canvas.
In other words, Cowart turns Codex into a creation desk where you can put anything: images, web pages, slides — all sitting on the infinite canvas as cards. Fix whichever one is wrong; use whichever you like as the next starting point.
# Closing Thoughts
This time I didn't use complicated prompts or generate dozens of images.
Just one Mona Lisa, and three questions:
What if she wears sunglasses?
What if she drinks coffee?
What if she takes a phone selfie?
Tried them and found the selfie the most fun? Then keep editing from there.
I think this is the comfortable way to use an infinite canvas:
Not generating endlessly for the sake of "infinite" — but giving every good idea room to keep growing.
# FAQ
What is Cowart?
Cowart is a native infinite-canvas plugin for Codex, built on tldraw. It lets Codex compose on a visual canvas, annotate images, and generate new images from those annotations. It also produces runnable single-file HTML (AI HTML) and full presentations (AI Slides). The project is open source on GitHub (opens new window).
How is the Codex infinite canvas different from ordinary AI chat-based image generation?
In ordinary chat-based image generation, each new edit overwrites the previous image — you can only go down one path, and trying a second direction means starting over. With the Cowart infinite canvas, one source image can carry several independent edited versions at once; each version is saved separately and can serve as a new starting point. The canvas structure naturally holds the multi-version, multi-direction problem that is hardest to manage in AI creation.
How do I open the canvas after installing Cowart?
Fully quit and restart Codex, then type Open the Cowart canvas for this project. in the chat box — or just say "open the Cowart canvas". The canvas opens as a native widget; no browser needed. See the Install section above.
What do I do if the canvas won't open after installing Cowart?
Nine times out of ten, it's because you didn't restart. After installing or updating Cowart, fully exit and restart Codex once so the new skills and MCP tools load completely. If it still won't open after a restart, run codex plugin list to confirm the plugin is enabled.
Besides editing images, what else can Cowart do?
Three kinds of capabilities: AI image frames generate new images based on each frame's position and aspect ratio; AI HTML generates runnable single-file web pages you can keep iterating on inside the canvas; AI Slides organizes images and HTML into a presentation you can put on screen. See Step 7 above.
# Related Reading
- Full Codex tutorial — the complete onboarding flow for new Codex users
- Add vision to Codex — give Codex eyes to read images and code against screenshots
- Generate images with Codex + Seedance image-to-video — turn a single image into a video clip