一键导入
calibre
Use when the user wants to search, retrieve, send, add, update, sync, export, convert, or clean books from the managed Calibre library runtime.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when the user wants to search, retrieve, send, add, update, sync, export, convert, or clean books from the managed Calibre library runtime.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when the user asks for a multi-agent discussion, panel review, multi-agent review, or multi-agent research session with role selection, round control, and template-based orchestration.
Use when drafting, validating, or normalizing bounded cross-agent task/result packets for parent-controlled handoffs. This is a packet-contract skill, not a runtime delegation broker.
Send email over SMTP using only the Python standard library, with plain-text and HTML bodies, file attachments, cc/bcc, reply-to, a dry-run preview, connection verification, and redacted config inspection.
Runtime helper for autonomous-research-loop ledgers. Use to initialize, append, validate, inspect, or smoke-test autonomous research loop state files without network, package installation, provider CLI calls, or live agent spawning.
Run bounded autonomous research iterations with evidence gates, recovery ledgers, and optional cross-agent handoffs. Use when the user asks to continue research autonomously, run a research loop, integrate autonomous agent loops, or keep improving a research workflow without repeated prompts.
Use for external DOI/ISBN/title resolution, manifest creation from pasted text, and paper retrieval after the local library-first workflow does not satisfy the request or the user explicitly opts out of library use.
| name | calibre |
| description | Use when the user wants to search, retrieve, send, add, update, sync, export, convert, or clean books from the managed Calibre library runtime. |
| metadata | {"short-description":"Calibre library management via managed runtime"} |
On native Windows, use the managed Windows runner and the native runtime command target. Set $runtime to the installed runtime root. Multi-agent installs usually use %LOCALAPPDATA%\ai-agents-skills\runtime. Then run:
$runtime = if ($env:AAS_RUNTIME_ROOT) { $env:AAS_RUNTIME_ROOT } else { "$env:LOCALAPPDATA\ai-agents-skills\runtime" }
& "$runtime\run_skill.bat" "skills/calibre/run_cal.bat" <args>
POSIX examples below use run_skill.sh and .sh command targets; use the Windows command target above on native Windows.
This uses the managed ai-agents-skills runtime copy of the Calibre workflow.
zotero for generic "find/get/share/download a paper, DOI, ISBN, or book" requests; the top-level routing rule handles those with Zotero first.getscipapers-requester only after the user explicitly says not to check/use
the library or confirms outside retrieval after the library-first result is
reported. Return to calibre only if the resulting file should be added to
the ebook library.$AAS_RUNTIME_WORKSPACE/skills/calibre/Use the managed runtime runner rather than invoking run_cal.sh directly.
Shared runner:
bash "$AAS_RUNTIME_ROOT/run_skill.sh"Do not assume Calibre settings, library, or metadata.db locations. Before
library-changing work, run or rely on a profile-aware read-only audit from the
canonical installer:
cd ~/ai-agents-skills && make library-profile-audit ARGS="--profile library --json"
Discovery only lists candidates. It must distinguish authoritative Calibre
libraries from runtime caches before any add, update, remove, convert, or sync
operation. If no authoritative local Calibre database is found, mark the
profile local-db-missing; do not create a library and do not treat cache DBs
as writable libraries.
Supported system profiles:
linux-localwindows-mounted for Linux-side inspection of /windows/Users/...windows-native for native Windows executionCalibre candidate validation must check metadata.db, quick-check status, book
count, author/book file-tree consistency, canonical real path, symlink/mount or
cloud-backed classification, and runtime-cache roots. Runtime caches are never
mutation-authoritative even when their book count matches the real library.
Writes prefer a detected calibredb or calibredb.exe backend with an
explicit library path. Guarded direct SQLite is fallback only and requires
backup, lock, selected library root, and explicit warning. Windows-mounted or
cloud-backed Calibre libraries are read-only from Linux unless the profile
explicitly opts in after dry-run review.
Use functions.exec_command.
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh search "<query>" [--format epub] [--tag fiction] [--limit 50] [--series "Series Name"]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh get "<query>" [--format pdf] [--send "telegram:CHAT_ID"]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh get --id 42 [--send "zulip:Research:books"]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh get "ring" --index 0 [--send "telegram:CHAT_ID"]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh add /path/book.epub [--isbn 9780140449136] [--title "X" --author "Y"] [--dry-run]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh update --id 42 --title "X" --author "Y" --tags "a,b" --year 1965 --publisher "P" [--series "S" --series-index 1 --isbn 9780441013593]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh add-tag --id 42 --tag "to-read"
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh remove-tag --id 42 --tag "to-read"
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh list-shelves [--tags|--series|--publishers]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh sync [--force] [--progress]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh remove "query" [--dry-run]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh remove --id 42 [--dry-run]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh convert --id 42 --to epub [--from pdf]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh export --id 42 [--format bibtex]
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh doctor
bash "$AAS_RUNTIME_ROOT/run_skill.sh" skills/calibre/run_cal.sh clean
get returns multiple matches, show candidates and ask the user to pick instead of guessing.--index only after showing candidates and receiving the user's selected
index.remove.add, update, add-tag,
remove-tag, remove, convert, sync, clean, get --send, or share),
run the relevant dry-run/preview/search first when available, state the exact
book/library/tag/channel to be affected, and get explicit confirmation unless
the user's latest request already approved that exact action.ebook-convert are present; use doctor when conversion health matters.--send uses channel:target syntax such as telegram:CHAT_ID, zulip:Stream:topic, googlechat:SPACE, or whatsapp:PHONE.add --isbn enriches metadata from Open Library before the library write.update --tags replaces the full tag set; use add-tag and remove-tag for incremental changes.sync at the start of a session if the library may have changed from Calibre desktop or another device.sync --progress when pulling metadata.db may take time. Progress is
emitted as JSON lines on stderr so stdout remains the final JSON result.metadata.db as authoritative.calibredb/calibredb.exe backend for authoritative
library writes; direct SQLite is a guarded fallback only.metadata.db is pushed back to Drive and the local cache is refreshed.metadata.db from concurrent write conflicts.clean removes staged files older than 24 hours.