genjutsu
examples

What it made.

Every example here is a real run of genjutsu, shown as it came out, with the version and the model that ran it, what it cost and its receipt. All but one were for a fictional client, one-shot or as a conversation with an agent playing the client, their requests and transcripts published word for word. Chef Ovatio is a real chef's live site, from the run bunshin was extracted from: its request stays private, so the two answers a person gave it are shown instead.

  1. 01Dusk to the first show, under the real sky over Lisbonpaint · first pass · $5.93
  2. 02Chef Ovatio: the plate sets like a Riviera sunbunshin · first pass · about 10.5M subagent tokens
  3. 03The four firings, pinned to the scrollcast · first pass · $1.53
  4. 04Slack water, posted like a harbour noticepaint · first pass · $3.55
  5. 05Mark as paid, and the money landscast · first pass · $1.88

01/genjutsu:paintfrom a written brief

Dusk to the first show, under the real sky over Lisbon

Screen recording: the Nocturne page holds on its first screen, a dome of sky at dusk ringed with amber light, then scrolls through the program, the sky that night and the practical information while the ground darkens and the stars fill the dome.
clip · 1440×900Built from a written brief and data/stars.json, on an empty React template: every star on the dome comes from the catalogue, placed for Lisbon at 22:00 on 9 October 2026. As the page scrolls, the ground deepens from dusk blue to night, the amber house-light glow fades and the stars come up brightest first. The star list that slides over the dome near the end is a defect the run introduced. 1440x900 viewport, scaled to 1100 wide.

the first message

/genjutsu:paint build the landing page for Nocturne, the late program of a planetarium in Lisbon.

the rest of the first message, as sent
The brief. The planetarium and its program are fictional, made up for this example: give the planetarium no name and do not name or suggest any real planetarium or venue. This is everything we have:

- Nocturne is the planetarium's after-hours program. On Friday and Saturday nights the dome first shows the night sky above Lisbon as it is that evening, with a narrator, then a 40-minute show. Doors 21:30, first show 22:00, last show 23:30. Tickets 12 EUR, 8 EUR for students, booked at /tickets.
- The hero is the sky over Lisbon as the dome will show it at 22:00 on Friday 9 October 2026. data/stars.json holds the brightest stars of the Yale Bright Star Catalogue (public domain) and the one bright planet above the horizon then, Saturn (from NASA JPL Horizons), with their altitude and azimuth already computed for that place and time, their magnitude and, for stars, their proper name when they have one. It also lists the Moon and the other planets, which are below the horizon or too faint at that time: do not draw them. Use it. Do not invent stars, constellation lines, events or claims that are not in the data or in this brief.
- The page scrolls from dusk to the first show: the program, what is in tonight's sky, the practical information.
- It is for adults in their 20s to 40s looking for an evening out, not school groups. There are no reviews and no attendance numbers yet: the program launches with this page.

how it was made

genjutsu
4.1.0 at 09c177b, with the fix/skill-arguments branch, the 4.1.1 candidate
model
claude-opus-5-5
run
A conversation with an agent playing the client, 8 exchanges
selection
First pass, the only run recorded
cost
$5.93, 73 turns, genjutsu only
date
4 October 2026

02made with bunshinfor a real client

Chef Ovatio: the plate sets like a Riviera sun

Screen recording: the Chef Ovatio home holds on its first screen, OVATIO across a yellow sky above a plate on a cobalt sea, then scrolls: the sky turns orange as the plate sinks into the sea, the header shrinks to a bar, then the line La même cuisine, deux façons de la partager, the Recevoir and Conseiller doors, and the Ce qui arrive à table section with its first plates.
clip · 1440×900A real client's site, from his public Instagram profile and two answers: the stack, the lead offer, the languages and the contact in one round of questions, then the direction, L'Affiche de la Riviera. Seven pages in French and English. Scrolling the home, the noon-yellow sky turns to sunset orange as the plate-sun sets behind the cobalt horizon, before the two doors, Recevoir and Conseiller, and the first plates. Filmed from the live site, 1440x900 viewport, scaled to 1200x750.

the request

Made with bunshin: a short request, in French, for a polished first draft of a private chef's site that he would own, edit with an AI assistant and ship by pushing to main. It came with his public Instagram profile and nothing else: no brief, no copy, no logo, no prices. The message itself is private.

what a person answered

  1. The product questions, asked together once the profile was read: the stack, which offer leads, the languages, the contact.

    Astro and Vercel; the private chef first, consulting on its own B2B page; French and English; a guided request form plus WhatsApp. All four were the option the run recommended.

  2. The direction, on a decision page: L'Affiche de la Riviera, Le Marbre du passe (Impeccable's own pick), a new draw, or the sector standard.

    L'Affiche de la Riviera.

how it was made

genjutsu
4.0.0 at a0f6e09, its paint skill, with Impeccable leading the interview and the direction
model
claude-opus-5-5
run
One main session driving subagents, two answers from a person
selection
First pass, the only run recorded
cost
about 10.5M subagent tokens, no dollar figure
date
29 September 2026

No transcript: the session's messages are private. What the run was told and the two answers it got are shown here, and its receipt gives every round of its loop.

No source: the site's code is the client's private repository.

03/genjutsu:caston a starting fixture

The four firings, pinned to the scroll

Screen recording: the page scrolls into a pinned section titled The four firings; a line draws a firing curve with two peaks while the stage card below changes from Drying to Bisque firing, Glaze firing and Cooling.
clip · 1440×900The Atelier Grès page and its copy are the starting fixture: the four firing stages were four static blocks, with GSAP installed and unused. The pinned section and the firing curve are the run's work: the scroll draws the studio's firing curve as one line, and each stage's text takes over from the one before as the line reaches it. 1440x900 viewport, scaled to 1200 wide.

the request

/genjutsu:cast pin our pottery studio's four firing stages and scrub them with the scroll

the rest of the request, as sent
Atelier Grès is a fictional pottery studio, made up for this example.

Nobody is available to answer questions during this session. Up-front answers to the gates:
- Preview mode: A. Write each preview as a standalone HTML file under preview/ in the project.
- Scope: the firing stages section. You may edit files under src/ and index.html, and write previews under preview/; create nothing outside the project.
- Dependencies are installed (node_modules is present) and `npm run build` works. There is no network: install nothing. Do not start a dev server.

Finish with the final report the pipeline asks for.

how it was made

genjutsu
4.1.0 at 09c177b
model
claude-opus-5-5
run
One-shot, headless
selection
First pass, the only run recorded
cost
$1.53, 23 turns
date
4 October 2026

No transcript: a headless run has no conversation. The request is everything it was told.

04/genjutsu:paintfrom a written brief

Slack water, posted like a harbour notice

Screen recording: the Étale page fades in, a dark slate notice with the next slack window and the evening alert side by side, then scrolls to two charts, the current off Alcatraz with the slack times marked and the tide height at San Francisco.
clip · 1440×900Built from a written brief and one real day of NOAA predictions (data/tide.json), on an empty React template. The hero settles in once on load, the first screen holds, then the page scrolls to its two charts: the current at SFB1204 above the tide at 9414290, so slack water reads apart from high and low tide. Every figure on the page is in the data. By the time the scroll reaches the chart, its line has already drawn. 1440x900 viewport, scaled to 1200 wide.

the first message

/genjutsu:paint build the landing page for Étale.

the rest of the first message, as sent
The brief. Étale is a fictional product, made up for this example, and this is everything we, its founders, have:

- Étale is an iPhone app for people who swim in the cold water of Aquatic Park, San Francisco, all year round. It answers one question before you walk down to the beach: when is the water slack (étale is the French word for slack water, the still moment between ebb and flood, when the current is weakest), and how strong the current runs between two slacks.
- Its numbers come from two NOAA CO-OPS stations, and data/tide.json holds one real day of both, 2 October 2026, as fetched from NOAA: the tide predictions of station 9414290 San Francisco, and the slack water and current predictions of station SFB1204 (Alcatraz Island, southwest of, the closest predicted current station, in the bay off the cove). The file names each station, where it is, its datum and its units. Use those numbers and label each one with its date and its station. Slack water is not high or low tide: take the slack times from the current predictions. The app shows no water temperature, so the page must not either. Do not invent any other figure.
- The swimmers it is for train there before work, mostly without a wetsuit. They already know the cove and read the tide themselves on a printed table or a weather site. They want the next slack window at a glance, and an alert the evening before.
- What exists: an iOS beta on TestFlight. No Android, no web app, no prices, no user numbers, no testimonials. The page has one job: get a swimmer onto the TestFlight beta, at /beta.

how it was made

genjutsu
4.1.0 at 09c177b, with the fix/skill-arguments branch, the 4.1.1 candidate
model
claude-opus-5-5
run
A conversation with an agent playing the client, 10 exchanges
selection
First pass, the only run recorded
cost
$3.55, 54 turns, genjutsu only
date
4 October 2026

05/genjutsu:caston a starting fixture

Mark as paid, and the money lands

Screen recording: an invoice list under three summary cards. Mark as paid is clicked on an overdue invoice: its status turns to Paid, Outstanding counts down and Paid counts up by 4,200 euros with a signed amount on each card; then a second invoice is marked paid the same way.
clip · 1440×900, croppedThe Folio page is the starting fixture; the motion is the run's work. Two "Mark as paid" clicks: the amount leaves Outstanding and lands in Paid as both totals count, with a signed amount on each card. 1440x900 viewport, cropped; the pointer is drawn in by the recorder, it is not part of the build.

the request

/genjutsu:cast the "Mark as paid" action in our invoice list is dead, make it feel like the money landed

the rest of the request, as sent
Folio, its user and its clients are fictional, made up for this example.

Nobody is available to answer questions during this session. Up-front answers to the gates:
- Preview mode: A. Write each preview as a standalone HTML file under preview/ in the project.
- Scope: the invoice list and its "Mark as paid" action. You may edit files under src/ and write previews under preview/; create nothing outside the project.
- Dependencies are installed (node_modules is present) and `npm run build` works. There is no network: install nothing. Do not start a dev server.

Finish with the final report the pipeline asks for.

how it was made

genjutsu
4.1.0 at 09c177b
model
claude-opus-5-5
run
One-shot, headless
selection
First pass, the only run recorded
cost
$1.88, 45 turns
date
4 October 2026

No transcript: a headless run has no conversation. The request is everything it was told.

Recorded, not featured

Runs recorded the same way and left out of this page, each for the reason given. Their receipts are in genjutsu-examples, with every capture.

  • Atelier Grès, redesignedpaint · conversation · $2.99Thin for a redesign: it kept the system face after the client allowed a Google font, and its one effect is a blurred glow.receipt
  • Étale, one-shotpaint · one-shot · $2.87Plain: careful with the data, but a system face, and nothing moves on load or on scroll. The conversation above replaced it.receipt
  • Nocturne, one-shotpaint · one-shot · $2.53Plain: an accurate sky, but the system sans with no webfont and a first screen with little in it. The conversation above replaced it.receipt