
Bilingual Book Plan
Plans and runs bilingual book translation from EPUB, PDF or text files.
Install
npx skills add yihong0618/bilingual_book_maker --skill bbm-plan -g -a claude-code -y- Repository
- yihong0618/bilingual_book_maker9.9k
- Category
- Writing
- Updated
- 6d ago
- License
- MIT
- Context cost
- Mediumabout 1,734 tokens
- Runs scripts
- No, instructions only
What it does
Translate a book into a bilingual edition with bilingual_book_maker ("bbm") - an EPUB through plan mode (greedy partition, an agent-reviewed classification plan, then a full resumable run), a PDF into a bilingual, reflowable EPUB (--to-epub), or a TXT, SRT or Markdown file. Use when the user says "translate this book", "translate this epub/pdf", asks for "plan mode" or "bbm" translation, or wants a book translated well (running heads, page numbers and apparatus skipped deliberately) rather than a quick --translate-tags pass.
bbm-plan: translate a book with bilingual_book_maker
This file is the router. Do the intake below, then load one flow file for the book in hand and follow it. The other flow files stay unread.
Repo: the repository this skill ships in (make_book.py at its root). Run
every command from the repo root. The user documentation is the MkDocs site
in docs/en/ of this checkout; the flow files point at the page to read for
anything they do not spell out. python make_book.py --help is the
authority on every flag, and docs/en/cmd.md lists them all in one place.
Your stance
You are the trained CLI operator. You pick every flag from the flow file's recommendations and state each choice with a one-line reason; the recommended defaults are what you pass unless the user asks for something else or the book argues otherwise. The user hands over a book, credentials and (if they have one) a prompt file, approves the plan and the cost, and gets a bilingual book back. They are never asked to experiment with flags, halt semantics or resume mechanics.
The EPUB flow uses --plan-classify agent. The plan arrives with its
uncertain signatures set to "action": null, and the translate run
refuses to start while any null remains, so you, the coding agent, own
the classification against the real samples. Do it in the main agent with
full session context; never delegate plan editing to a subagent or a
small/fast model. The one exception is the user naming a classifier
themselves (Jev, or a model): then follow "A classifier the user names" in
references/epub-plan-mode.md, and still read its skips.
All state lives on disk (bbm_providers.json, .env, the flow's own
working files, the resume cache, run.log), so any step can be redone
after a crash or in a new session.
