# English X posts for the Hakobukun 4-panel manga

Folder: /tmp/claude-0/b5fb089a-2072-58da-b9f4-edd7b19154c4/scratchpad/xen/
Input: `episodes.json` (one object per episode: slug, ep, title, description, body = the design note, url, images, panel_alts, format).

The comic is about Hakobukun, a hospital medicine-delivery robot, and the nurses, doctors, patients and engineers around it (plus Pikarikun, a remote-operated humanoid, and Tsukamukun, a robot arm). Each episode is a small gag built on a real human-robot interaction (HRI) or deployment issue. The creator is a Japanese designer; the audience is English speakers on X (US/UK first): robotics and AI people, healthcare workers, UX/design people, and webcomic readers.

Each post goes out with the comic images attached (vertical episodes: the 4 panels as 4 images; single-strip episodes: one image of the whole strip). The link to the site goes in a self-reply, not in the post.

## Write one JSON file per episode: `out/{slug}.json`

```json
{"slug": "ep132", "x_en": "...", "x_en_reply": "...", "x_en_alts": ["..."]}
```

### x_en (the post)
- Goal: someone scrolling stops, reads the panels, and maybe replies. Natural, conversational American English — it must not read like a translation.
- Line 1 is the hook: the situation, the robot's quirk, or a question people recognize from their own work ("Ever had a 'quick fix' turn into the dangerous part?"). Short.
- 1–2 more short lines of setup. Do NOT give away the last panel's punchline — leave a reason to look at the images.
- Let Hakobukun's personality come through (earnest, literal, polite, a bit robotic).
- Then a line with the series marker exactly like: `Hakobukun · Ep. 132`
- Last line: exactly 2 hashtags. The first is always `#webcomic`. The second is the one topic tag that best fits this episode, chosen from: `#robotics` `#healthcare` `#nursing` `#AI` `#UX` `#cybersecurity`. (Use #nursing only when nurses' work is the center; #healthcare for hospital operations/patients; #AI for model/update/learning stories; #UX for interface/communication design; #cybersecurity for security stories; otherwise #robotics.)
- No URL in x_en. No emoji, or at most one.
- Length: total under 240 characters (count every character; keep it tight).
- Separate lines with `\n`, a blank line before the series line is fine.

Example (ep132, a robot got an overnight AI update; turning got smoother but its stopping distance changed and nobody checked):
```
The robot got an AI update overnight. Corners? Silky smooth now.

Nobody checked how it stops, though.

Hakobukun · Ep. 132
#webcomic #AI
```

### x_en_reply (self-reply that carries the link)
- One short line + the episode URL from the input (`url`), e.g. `Read it with the design note behind the gag: https://...` Vary the wording a little between episodes (3–4 variants are fine). Under 200 characters.

### x_en_alts (image descriptions for screen readers)
- One string per image in `images`, same order.
- Vertical episodes: start from `panel_alts` and make each a clear one-sentence description (keep it under 300 characters). Do not add dialogue that is not in the panel_alts/body.
- Single-strip episodes (one image): one description of the whole 4-panel strip in 1–3 sentences, built from the description and body (who, what happens, without spoiling more than the post does is NOT required here — alt text should describe the image honestly). Under 500 characters.

## Check before finishing
- Every file is valid JSON (`python3 -c "import json;json.load(open(...))"`).
- x_en: no URL, ends with the 2-hashtag line, first hashtag #webcomic, under 240 characters.
- Number of x_en_alts == number of images.
- Report the files you wrote and anything odd (e.g. an episode whose body didn't make the gag clear).
