calibre-metadata-applyApply metadata updates to existing Calibre books via calibredb over a Content server. Use for controlled metadata edits after target IDs are confirmed by a read-only lookup.
Install via ClawdBot CLI:
clawdbot install NEXTAltair/calibre-metadata-applyA skill for updating metadata of existing Calibre books.
calibredb must be available on PATH in the runtime environmentsubagent-spawn-command-builder installed (for spawn payload generation)pdffonts is optional/recommended for PDF evidence checkshttp://HOST:PORT/#LIBRARY_ID/home/altair/.openclaw/.env:CALIBRE_USERNAME=CALIBRE_PASSWORD=--password-env CALIBRE_PASSWORD (username auto-loads from env)--username .--save-auth (default file: ~/.config/calibre-metadata-apply/auth.json)set_metadata --field)titletitle_sortauthors (string with & or array)author_sortseriesseries_indextags (string or array)publisherpubdate (YYYY-MM-DD)languagescommentscomments_html (OC marker block upsert)analysis (auto-generates analysis HTML for comments)analysis_tags (adds tags)tags_merge (default true)tags_remove (remove specific tags after merge)id,title,authors,series,series_indexcandidate, source, confidence (high|medium|low)title_sort_candidate, author_sort_candidateapprove allapprove only: reject: edit: = --apply only after explicit user approvalsubagent-spawn-command-builder to generate sessions_spawn payload for heavy candidate generationtask is required.calibredb set_metadata commands from JSONL.state/runs.json) and optional auth/config files under ~/.config/calibre-metadata-apply/.sessions_spawn via subagent-spawn-command-builder.calibredb set_metadata updates metadata on the target Calibre Content server.Security rules:
--save-plain-password unless explicitly instructed by the user.--password-env CALIBRE_PASSWORD) over inline --password.For library-wide heavy processing, always use turn-split execution.
Batch sizing rule:
pending-review tag for unresolved/hold items.pending-review and keep for follow-up investigation.Return full results (not samples):
id + key before/after fieldsid + reasonid + error summaryhigh|medium|lowstate/runs.jsonsubagent-spawn-command-builder (profile example: calibre-meta), then calls sessions_spawnrun_id/session_key/task via scripts/run_state.mjs upsertscripts/handle_completion.mjs --run-id ... --result-json ...Run state file:
state/runs.jsonebook-convert firstpdftotextreading_script for Japanese/non-Latin sort fieldskatakana / hiragana / latin~/.config/calibre-metadata-apply/config.jsonreading_scriptDry-run:
cat changes.jsonl | node skills/calibre-metadata-apply/scripts/calibredb_apply.mjs \
--with-library "http://127.0.0.1:8080/#MyLibrary" \
--password-env CALIBRE_PASSWORD \
--lang ja
Apply:
cat changes.jsonl | node skills/calibre-metadata-apply/scripts/calibredb_apply.mjs \
--with-library "http://127.0.0.1:8080/#MyLibrary" \
--password-env CALIBRE_PASSWORD \
--apply
--apply using ambiguous title matches onlyGenerated Mar 1, 2026
Academic libraries use this skill to standardize metadata across large digital collections, ensuring consistent author names, series indexing, and publication dates for research materials. It helps librarians apply bulk updates after verifying target IDs from read-only lookups, improving catalog searchability and compliance with institutional standards.
Online e-book retailers employ this skill to update metadata for their Calibre-based catalogs, such as correcting titles, authors, and tags after sourcing new content. It supports controlled edits with user confirmation flows, enabling accurate product listings and enhanced customer discovery without manual data entry errors.
Museums and archives use the skill to apply metadata updates to digitized book collections, preserving historical accuracy through fields like pubdate and languages. The mandatory dry-run and approval gates ensure careful handling of rare materials, while pending-review tags help manage unresolved items for expert review.
Publishing houses apply this skill to update metadata for backlist titles in their digital libraries, refining series information and adding analysis tags for marketing. The workflow integrates evidence from web sources and file extraction, allowing editors to approve changes before applying them to improve discoverability and sales.
Individual users with large personal Calibre libraries utilize this skill to systematically update metadata, such as merging tags or correcting author_sort, after confirming IDs from lookups. It supports optional subagent analysis for heavy tasks, helping enthusiasts maintain organized collections without technical expertise.
Offer a cloud-based service where organizations pay a subscription to access this skill integrated with their Calibre servers, providing automated metadata updates and analytics. Revenue comes from tiered plans based on library size or update frequency, with add-ons for advanced features like web evidence search.
Provide consulting services to businesses for customizing and deploying this skill in their workflows, such as setting up authentication caches or optimizing batch processing. Revenue is generated through project-based fees and ongoing support contracts, targeting industries like publishing or education with specific metadata needs.
Distribute a free version of the skill for personal use with basic features, while offering premium upgrades for advanced capabilities like subagent analysis or priority support. Revenue streams include one-time purchases for pro features or donations from enthusiasts who benefit from improved collection management.
💬 Integration Tip
Ensure CALIBRE_PASSWORD is set in the environment and use the subagent-spawn-command-builder for heavy analysis tasks to optimize performance and cost.
Translate text accurately — preserve formatting, handle plurals, and adapt tone per locale.
Thinking partner that transforms ideas into platform-optimized content
AI-agent Skill for PPTX OOXML localization workflows. Use it to unpack PPTX, extract and apply text translations, normalize terminology, enforce language-specific fonts, validate XML integrity, and repack outputs with machine-readable JSON interfaces for automation.
Get subtitles from YouTube videos for translation, language learning, or reading along. Use when the user asks for subtitles, subs, foreign language text, or wants to read video content. Supports multiple languages and timestamped output for sync'd reading.
Translate PowerPoint files to any language while preserving layout. Uses a render-and-verify agent loop (LibreOffice + Vision) to guarantee no text overflow....
Analyze interactions to identify patterns in what Enzo shares, why he shares it, and how it connects to his goals. Use during heartbeats for periodic analysis, when Enzo asks about his patterns/interests, or when significant new content is shared that reveals a pattern.