一键导入
pdf-to-ebook
Convert a PDF file to ebook formats (epub, mobi, azw3/Kindle) using Calibre. Use when the user wants to convert a PDF to an ebook format.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Convert a PDF file to ebook formats (epub, mobi, azw3/Kindle) using Calibre. Use when the user wants to convert a PDF to an ebook format.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | pdf-to-ebook |
| description | Convert a PDF file to ebook formats (epub, mobi, azw3/Kindle) using Calibre. Use when the user wants to convert a PDF to an ebook format. |
| argument-hint | <input.pdf> [epub|mobi|azw3|all] |
| disable-model-invocation | true |
| user-invocable | true |
| allowed-tools | Bash |
Convert a PDF to one or more ebook formats using Calibre's ebook-convert.
$ARGUMENTS — space-separated: first arg is the PDF path, optional second arg is the format(s).
epub, mobi, azw3, allExtract the PDF path from $ARGUMENTS. If a format argument is also present, use it. If not, ask:
Which formats would you like to export?
- epub
- mobi
- azw3 (Kindle, recommended over mobi)
- all (epub + mobi + azw3)
Wait for the user's response before continuing.
which ebook-convert
If missing, tell the user to install it:
sudo apt install calibrebrew install calibreRun a quick text extraction check:
ebook-convert "<input.pdf>" /tmp/pdf_text_check.txt 2>/dev/null && wc -c /tmp/pdf_text_check.txt
If the output is fewer than 500 characters, the PDF is likely image-based (scanned). Warn the user:
This PDF appears to be scanned or image-based and may convert poorly. Would you like to run OCR first using
ocrmypdf? (Requires:pip install ocrmypdfandtesseract)
If they say yes:
ocrmypdf "<input.pdf>" "<input_ocr.pdf>"
Use the OCR'd file for all subsequent conversions.
Derive the output base name from the input file (strip .pdf extension).
For each requested format, run:
ebook-convert "<input.pdf>" "<basename>.<format>" \
--output-profile kindle_oasis \
--enable-heuristics
Format-specific notes:
--output-profile; use --output-profile tablet instead--output-profile kindle--output-profile kindle_oasis (best Kindle compatibility)Run conversions sequentially. Report each one as it completes.
List each output file with its path and size:
ls -lh "<basename>.epub" "<basename>.mobi" "<basename>.azw3" 2>/dev/null
If any conversion failed, show the error output from ebook-convert.
/pdf-to-ebook book.pdf
/pdf-to-ebook book.pdf epub
/pdf-to-ebook book.pdf all
/pdf-to-ebook /path/to/document.pdf azw3
Get authoritative New Zealand weather from MetService's public JSON endpoints — town forecasts (up to 10 days), current observations, hourly forecasts with wind gusts, and multi-town comparisons. Use this whenever the user asks about NZ weather in any form; a forecast for an NZ town or region; whether it will rain, be fine, windy, or frosty somewhere in NZ; which NZ location is sunniest, warmest, driest, or best for a trip; current conditions or temperature in an NZ town; or mentions MetService by name. Prefer this over web search or global weather models (Open-Meteo, Apple Weather, AccuWeather) for any New Zealand location — MetService is NZ's national weather authority and its town forecasts routinely disagree with global models, especially for rain and wind.
Resolve exceptions in a Woolworths NZ online grocery workflow — handle out-of-stock items, find SKUs for newly-added grocery items, and write resolved SKUs back to the Product attribute notes of Iris Ingredient elements so the next shop hits the cache. Triggered automatically by `shop.sh` phase 3 when the bash bulk-add can't resolve a line; also triggers directly when the user asks to "find a Woolies SKU for this ingredient", "deal with this out-of-stock item", "find a substitute for X at Woolworths", or "resolve these woolies shopping exceptions". For the full weekly shop, the user should run `./scripts/shop.sh` from the terminal — this skill is the exception resolver, not the orchestrator. If the user asks to "do the shopping" or similar generic phrasing in a bare Claude session, point them at `shop.sh` first; only invoke this skill directly when they're explicitly working on exceptions or a single SKU lookup.
Retrieve and faithfully reproduce DoView Planning handbook diagrams to accompany an outcomes-theory answer. Use after a doview-outcomes-answer response when the user asks to see the diagrams, requests the visual model, says "show me the picture/diagram/figure", or whenever an outcomes-theory answer would land better with the original tool diagrams visible. Reproduces Mermaid blocks from the local Markdown edition first (https://github.com/cgbarlow/doview-book), and falls back to the upstream PNG/image-file URLs from doviewplanning.org when a chapter's diagram does not translate cleanly to Mermaid. Faithful — never redraws, simplifies, paraphrases, or substitutes images or Mermaid blocks. Pair with doview-outcomes-answer, which sets up the seed list this skill consumes.
Answer outcomes-theory questions strictly from Dr Paul Duignan's DoView Planning and Outcomes Theory Handbook (2025). Use whenever the user asks for an outcomes-theory perspective, requests a DoView analysis, asks "what does outcomes theory say about…", asks to analyse a strategy/proposal/plan/policy/programme/business-case/M&E plan/contract through an outcomes lens, mentions outcomes theory or outcomes systems or DoView Boards or strategy-outcomes diagrams or theory-of-change, shares a document and wants it critiqued for clarity of outcomes, or wants a formal standalone response with the Summary + Full structure and raw-visible copy-safe URLs that the handbook's Prompt A v1.1.9 demands. Strictly avoids first-person and drafting-advice language; uses outcomes theory as the primary frame and DoView as its applied form. Pair with `doview-image-retriever` to retrieve the original diagrams (Mermaid from this repo or PNG from doviewplanning.org).
A coaching companion for a 13-year-old advanced math student who learns several levels above curriculum. Use whenever he asks for help with a math problem, posts a screenshot or photo of a question, mentions homework, says he is stuck, or asks why something works. Coaches him through problems without giving away answers, hooks his interest with weird real-world applications, basketball, anime, and connections to advanced math, and gently catches him when he has skipped the workbook instructions. Trigger this skill on the first math turn of any conversation and keep using it through the whole session.
Drive the iris-cli command-line tool to search, browse, ask AI questions about, and export content from an Iris architecture-knowledge repository (https://github.com/cgbarlow/iris). Use whenever the user mentions iris in an architecture/systems context, references an iris diagram/element/package/set/collection, asks iris's AI a question about systems, or wants to export an iris artefact as JSON or Markdown — even when the user doesn't say "iris-cli" by name. The skill ensures iris-cli is installed (uv tool), guides login (SQLite mode is interactive; Supabase deployments require --token with an externally-minted PAT because /api/auth/login is disabled), prefers --json for machine-parsable output when chaining results, and routes the user to the correct iris-api backend host (not the SvelteKit frontend, not the iris-mcp service).