Living Culinary Codex · skill pubblica Open Skill

Living Culinary Codex

Living Culinary Codex

@GG_Bone

Health

0 0 0

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4150474/2026-10-15/n4vxfytx.jpg

# Living Culinary Codex

Turn a dish into an oversized antique culinary codex, photographed the way a museum specimen is: the left page is a glowing miniature origin kitchen, the right page is a readable illustrated recipe, and the dish itself shares the frame with the open codex.

This skill has no structured state: one conversation, one finished image, driven by the dialogue and the canvas assets.

## When to use

- The user gives (or merely names) a dish and wants to see this "codex" image.
- The user brings a photo of a dish and wants to keep its recognizable traits (color, texture, vessel, plating) while getting this style.
- The user wants to revise an existing render: swap the dish, change the origin scene, adjust the lighting, or make the recipe page more legible.

## Input and output

- Input: text (dish name, plus origin / recipe material when available) + optional reference image (a photo of the dish).
- Output: a single vertical image, 3:4, both pages in frame. **One call generates one image**; for several dishes or several versions, call once per image.

## Steps

### 1. Pin down the dish

Extract the dish name from the user's input. If no dish is specified (they only said "make me a codex"), ask which dish first — do not pick one for them.

### 2. Origin and recipe material

- If the user already supplied origin / recipe material: use it directly and note the source.
- If historical accuracy matters and the user gave nothing: use `search_web` to check the dish's place of origin, the rough era, key ingredients and technique. Put only **verifiable** facts into the image.
- If it is disputed or unfindable: do not invent anything (see the first item under "Notes").

### 3. Assemble the English prompt

Build it from the template under "Prompt conventions" below. **Keep the fixed passages verbatim and replace only the curly-brace slots.** The prompt is in English; keep the dish name as the user gave it (an English or romanized name may be appended). The right-page recipe body should be 3–6 short English lines or numbered fragments (short lines render more reliably).

### 4. Generate

Text-to-image only:

```
generate_image(
  prompt        = <English prompt assembled from the template>,
  model         = 't2i',
  orientation   = 'portrait',      # vertical
  aspect_ratio  = '3:4',           # fixed frame spec for this skill
  name          = '<dish name> · Living Culinary Codex',
  entity_type   = 'codex_images',
)
```

When the user supplies a photo of the dish:

```
generate_image(
  prompt        = <the same prompt>,
  input_urls    = [<the user's dish photo>],   # reference for dish form / color / vessel / plating only
  model         = 'i2i',
  orientation   = 'portrait',
  aspect_ratio  = '3:4',
  name          = '<dish name> · Living Culinary Codex',
  entity_type   = 'codex_images',
)
```

- Use `i2i` when a reference image exists, `t2i` when it does not; if you need finer paper fiber, vessel and handwriting detail, step up to `i2i.hd` / `t2i.hd` (`.hd*` does not support NSFW content, which this skill never needs).
- If the two pages' lettering must be sharper, pass `resolution='1080P'`; otherwise leave it out (default tier).
- Do **not** paste the whole reference photo onto the codex pages: it only makes the dish itself look more like real food; both pages still follow the template.

### 5. Reply

Summarize in one or two natural-language sentences: which dish, what origin scene the left page shows, which ingredients / steps the right page lists. **Do not paste long URLs.**

When useful, call `set_guidance` in the **same turn** with 2–3 follow-up actions tied to the current render (for example "do one for a different dish", "change the left page to a night-market stall scene", "redo it with a dish photo attached"), and do not call any other tool in that turn.

(No need for `write_todos` when making a single image; if the user names several dishes and wants a run of codices, first `write_todos` to list the dish