readme
README / i18n maintenance — keep English and translated READMEs in sync, extract language-agnostic content, apply the project's Chinese phrasing preferences.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
README / i18n maintenance — keep English and translated READMEs in sync, extract language-agnostic content, apply the project's Chinese phrasing preferences.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Sanity-scan the production codebase for cruft that piles up after AI-assisted feature work — duplicated logic, dead helpers, half-finished implementations, speculative architecture, stale comments. Discussion-first, item-by-item; smoke-tests every fix.
Build the JRE-PA-Simulator Windows executable + staged distribution folder (no GitHub release). Embeds version in exe metadata.
Periodic audit of domain docs (DISPLAY.md, DISPLAY_E235.md, DATA_FORMAT.md, auto_input/README.md, plus future per-series DISPLAY_*.md) — scan for accumulated bloat (history notes, code-snippet illustrations, speculative future sections, design-rationale prose, cross-doc duplication, cumulative staleness). Discussion-first, item-by-item; user approves each removal before any edit lands.
Review dirty code changes using Claude Code Agent tool. When user say to "review" or "review changes" or "review dirty code"
Review dirty code and fix iteratively using Ralph loop pattern. When user say to "loop to fix dirty" or "review+fix"
End-of-session recap — codify learnings synchronously into their canonical homes; daily logs hold narrative continuity only.
| name | readme |
| description | README / i18n maintenance — keep English and translated READMEs in sync, extract language-agnostic content, apply the project's Chinese phrasing preferences. |
| triggers | ["/readme","update readme","sync readme","translate readme"] |
The project ships with three READMEs — English, Traditional Chinese (zh-HK), Simplified Chinese (zh-CN) — plus a shared language-agnostic ROUTES.md. This skill keeps them aligned in structure, extracts things that don't need translation, and codifies the Chinese phrasing preferences the user has already taught (once; don't re-learn).
| File | Language | Scope |
|---|---|---|
README.md | English | Primary. Author here first, translations follow. |
README.zh-HK.md | Traditional Chinese (HK) | Mirror of English structure. |
README.zh-CN.md | Simplified Chinese (Mainland) | Mirror of English structure. |
ROUTES.md | Shared | Language-agnostic (Japanese line names + diagram codes work for all three reader audiences). Linked from each README's top bar. |
Top link bar on every README lists the other two languages + the shared doc:
**[English](README.md)** · **[繁體中文](README.zh-HK.md)** · **[對應路線](ROUTES.md)**
ROUTES.md label is translated (Supported Routes / 對應路線 / 支持的路线) — the label is localized, the target file is shared.All changes land in README.md first. Discuss wording with the user; get it to "happy with this" before translating. The current English README's section order — Download → Usage → Planned Features → Credits — is the canonical shape; don't invent new sections unless the user asks.
## Credits is thanks only — licensing does NOT go in the README. The grant lives in LICENSE, the asset carve-out in THIRD-PARTY.md, and GitHub shows the license in its own sidebar, so a README licensing section is redundant. Credits name who to thank (and thereby satisfy any attribution obligation — CC BY-SA §3(a)(2) allows attribution by linking to a resource that carries the detail), then point at THIRD-PARTY.md. Don't add "code is MIT, assets are not" breakdowns. 2026-07-27, over two rounds: user — "don't need to be super clear like to draft in readme", then "no need to say which part are in which license, only just credits are enough".
Before translating, ask: "Would the zh-HK and zh-CN translations of this section be identical to the English, character for character?" If yes, it belongs in a shared file linked from all three READMEs. Current examples: ROUTES.md (all Japanese line names), anywhere you'd list raw file paths / diagram codes.
Don't extract prose that happens to be similar — only content that has no natural-language component.
Mirror the English section order, heading count, and table shape one-for-one. Show the user terminology choices before writing if anything is new (see preferences below).
The user is in HK, writes both scripts fluently, and has strong preferences about natural phrasing. Apply these without re-asking:
Bad: 每個站都需要你手動按 Page Down 才會發生 (literal EN→ZH, reads as awkward construction)
Good: 播放廣播、切換到下一站都需要人手按 Page Down
Rule: if a Chinese sentence reads like a grammar-corrected English sentence, rewrite it. Chinese prefers concrete actions over abstract "happens" / "occurs". Use verb-first construction, drop subjects when implicit.
Talking about program BEHAVIOR (runs, waits, doesn't auto-advance) → 程式 (zh-HK) / 程序 (zh-CN). Reserve 模擬器 / 模拟器 for the project name/identity (title, elevator pitch).
Bad: 模擬器不會自動執行
Good: 程式不會自動跳去下一站
Strip technical terms users don't know. "PA track" → "announcement" → 廣播. "Countdown" → drop unless user asks.
The yellow-square hint is framed as "play them before arriving at the station", not "play them all or they get skipped" (they don't get skipped; the sim stays stuck — but the narrative framing is about pacing, not about consequences).
請在到站之前按 Page Down 播完所有廣播。请在到站之前按 Page Down 播完所有广播。zh-HK strings use full-width punctuation — comma is , (U+FF0C), NOT half-width ,. Applies to app-chrome i18n (data/translations_app.json) as well as the READMEs. Don't bulk-convert zh-CN: asked 2026-07-11 whether to switch both or zh-HK only, the user chose zh-HK only — leave zh-CN as authored.
For TIMS-console chrome that mirrors real IRL Japanese labels (the C07AA summary-table field labels, screen headings), the zh-HK translation may stay CLOSE to the source Japanese kanji — HK readers handle the kanji, and hugging the source preserves the console fidelity. zh-CN still gets proper Simplified. Convert JP-only chars (駅→站); keep shared kanji as-is (路線名 / 列車種別 / 始發・終着站). Action VERBS use native Chinese, NOT the Japanese kanji form: 啟動 / 启动 (start), never 起動. 2026-07-11: TIMS summary-table labels localized (chose the (b) "zh-hk can stick close to JP terms" option) + OCR launch-cluster verbs corrected to "proper chinese". Distinct from #1 (native-Chinese-not-literal-EN) — this is a deliberate carve-out for JP-mirroring console chrome, where staying near the kanji is the goal.
Keep this list updated whenever a new term is coined. Translate once, reuse everywhere.
| Concept | English | zh-HK | zh-CN |
|---|---|---|---|
| departure melody | departure melody | 發車音樂 | 发车音乐 |
| PA announcement | announcement | 廣播 | 广播 |
| closing-door announcement | closing-door announcement | 關門廣播 | 关门广播 |
| diagram (train service) | diagram | 班次 | 车次 |
| line / route | line | 路線 | 线路 |
| interchange station | interchange station | 轉車站 | 换乘站 |
| yellow square (UI) | yellow square | 黃色方格 | 黄色方块 |
| Page Down action description | Next PA announcement / advance to next stop | 下一則廣播/前往下一站 | 下一段广播/前往下一站 |
| quit | quit | 離開 | 退出 |
| series (E233-0 etc.) | series | 番台 | 番台 |
| the app (behavior) | the simulation / the sim | 程式 | 程序 |
| the project (title) | simulator | 模擬器 | 模拟器 |
| transfer station code | 3-letter Roman code | 3 個英文字母的車站代碼 | 3 个字母的车站代码 |
| setup screen | setup screen | 選擇畫面 | 选择界面 |
| 5-station view (LCD) | 5-station view | 5 站顯示 | 5 站显示 |
| Supported Routes (top-bar label) | Supported Routes | 對應路線 | 支持的路线 |
| Planned Features (section heading) | Planned Features | 計劃中的功能 | 计划中的功能 |
| Credits (section heading) | Credits | 鳴謝 | 鸣谢 |
| line symbol / operator logo | line symbol, operator logo | 路線標誌、營運商標誌 | 线路标志、运营商标志 |
| icon (UI asset) | icon | 圖示 | 图标 |
## Download was ## 下載 last release, it stays ## 下載 — don't drift to ## 下載方式 for no reason.Page Down stays Page Down), or code-block content.ROUTES.md as part of routine README updates. It changes when a route is added/removed/renamed — that's a separate, data-driven edit.