← Back to Skills Marketplace
ricardodpalmeida

Book Capture Obsidian

by Ricardo Almeida · GitHub ↗ · v1.2.1
cross-platform ✓ Security Clean
361
Downloads
1
Stars
1
Active Installs
11
Versions
Install in OpenClaw
/install book-capture-obsidian
Description
Capture and normalize book metadata into Obsidian Markdown notes from photos or Goodreads CSV exports. Use for barcode and OCR ISBN extraction, metadata enri...
README (SKILL.md)

Book Capture Obsidian

Execute this workflow to add or migrate books into an Obsidian vault.

Workflow

  1. Ask the user for the destination Obsidian vault path if missing.
  2. Read references/configuration.md and set environment variables.
  3. Choose one mode:
    • Photo ingest with scripts/ingest_photo.py
    • Goodreads CSV migration with scripts/migrate_goodreads_csv.py
  4. For Goodreads migration, prefer --group-by-shelf and Google enrichment enabled.
  5. Upsert notes with scripts/upsert_obsidian_note.py.
  6. Refresh the dashboard with scripts/generate_dashboard.py.
  7. Run validation and security checks:
    • sh scripts/run_ci_local.sh
    • sh scripts/security_scan_no_pii.sh

Required References

  • references/configuration.md for runtime settings and portability
  • references/data-contracts.md for normalized schema and output contracts
  • references/migration-runbook.md for Goodreads import sequence
  • references/troubleshooting.md for extraction and merge failures

Operating Rules

  • Require explicit vault destination (BOOK_CAPTURE_VAULT_PATH or --vault-path) before bulk writes.
  • Prefer barcode extraction first; use OCR as fallback.
  • Keep filenames human-readable (Title - Author (Publisher, Year)).
  • Keep shelf as property and include tag book in all notes.
  • Use shared compact series tags (for example theexpanse, harrypotter) when volume metadata exists; avoid separate series hub notes.
  • Preserve user notes section during updates.
  • Keep outputs deterministic and idempotent for repeated runs.
  • Do not store secrets or personal identifiers in generated artifacts.
  • Simplified frontmatter: keep only title, author, publisher, year, isbn_10, isbn_13, cover, shelf, source, source_url, tags. Remove published_date, genre, status, date_started, date_read, needs_review, goodreads_book_id.
Usage Guidance
This skill appears to do what it claims, but be aware of the practical implications before running it: it will read and write files in whatever Obsidian vault path you provide, so point it to a test or backed-up vault when doing bulk migrations. It will also make outbound HTTP requests to Google Books and OpenLibrary (optionally using BOOK_CAPTURE_GOOGLE_API_KEY). Ensure required Python packages and optional binaries (zbarimg, tesseract) are installed in your environment. The registry metadata did not declare the environment variables the skill expects — review references/configuration.md and set BOOK_CAPTURE_VAULT_PATH (or pass --vault-path) and other controls deliberately. If you have sensitive content in your vault, run a dry-run first and inspect script output before performing bulk writes.
Capability Analysis
Type: OpenClaw Skill Name: book-capture-obsidian Version: 1.2.1 The skill bundle is a legitimate tool for managing book metadata in Obsidian, supporting photo ingestion, Goodreads CSV migration, and dashboard generation. It demonstrates high security awareness by including a path-traversal check (_is_within_vault in upsert_obsidian_note.py) to prevent writing files outside the designated vault and a dedicated security script (security_scan_no_pii.sh) that checks for leaked API keys and sensitive local paths. While the test suite (test_isbn.py) uses an unusual dynamic discovery mechanism to find and execute functions by scanning parent directories, there is no evidence of malicious intent, and the overall architecture is well-documented and aligned with its stated purpose.
Capability Assessment
Purpose & Capability
The name/description (photo/CSV -> Obsidian notes) matches the included scripts: ISBN extraction (barcode/OCR), metadata resolution (Google Books / OpenLibrary), upsert into vault, and dashboard generation. Binary subprocess usage (zbarimg, tesseract) and network requests to public metadata APIs are expected for this purpose.
Instruction Scope
Runtime instructions and SKILL.md accurately refer to the included scripts. The workflow requires reading references/*.md, running the scripts, and writing Markdown files into the user-provided Obsidian vault path. The scripts also perform outbound HTTP requests to Google Books and OpenLibrary and may invoke local CLI tools (zbarimg, tesseract). There is no evidence the instructions attempt to read unrelated system secrets, other skills' config, or exfiltrate data to hidden endpoints, but the agent will have filesystem write access to the vault and network access to external APIs during normal operation.
Install Mechanism
There is no automated install spec (instruction-only), and dependencies are listed in requirements.txt. Nothing is downloaded from arbitrary URLs or installed from unknown release hosts. The requirement to pip-install packages and to have external binaries available is normal for this kind of tool.
Credentials
The registry lists no required env vars but the SKILL.md and references/configuration.md expect several environment variables (vault path, optional GOOGLE API key, barcode/OCR toggles, timeouts, etc.). Those env vars are proportional to the functionality; the only credential-like variable is an optional BOOK_CAPTURE_GOOGLE_API_KEY for Google Books quota/stability. No unrelated secrets or service credentials are requested.
Persistence & Privilege
The skill is not always-enabled and does not request elevated platform privileges. It writes only to user-specified vault paths and does not modify other skills or global agent config. Autonomous invocation is allowed by default (normal) but not combined with other privilege escalations.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install book-capture-obsidian
  3. After installation, invoke the skill by name or use /book-capture-obsidian
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.2.1
Enhance photo import richness: semantic tag inference, optional related-links generation, canonical filename pattern Title - Author (Publisher, Year), and docs alignment with simplified frontmatter schema.
v1.2.0
Major metadata quality update: simplified frontmatter (year-only date), removed redundant fields (goodreads_book_id/genre/published_date/status/date_started/date_read/needs_review), richer semantic tags, improved synopsis handling, and related-links generation to Library + 5. Learnings.
v1.0.1
Simplified frontmatter schema: removed date_started, date_read, goodreads_book_id, genre, published_date, status, needs_review. Rich tags system as primary taxonomy. Updated templates, tests, and docs.
v1.1.6
Switch generated frontmatter from cover_image to cover for Pretty Properties compatibility.
v1.1.5
Fix packaging consistency: add requirements and CI/security scripts, clarify config semantics, and enforce vault-bounded writes.
v1.1.4
Add optional Google Books API key support and quota controls for reliable bulk enrichment.
v1.1.3
Improve OpenLibrary fallback by reading linked works metadata for richer fields when Google is unavailable.
v1.1.2
Use Sinopse section label, Portuguese fallback synopsis text, and update migration docs/template.
v1.1.1
Add concise fallback summaries when API descriptions are missing.
v1.1.0
Improve note quality, shelf property support, series linking, and Google enrichment controls with retry/delay.
v1.0.0
Initial release: photo ingest, Goodreads migration, dashboard generation, QA tests, security scanner.
Metadata
Slug book-capture-obsidian
Version 1.2.1
License
All-time Installs 1
Active Installs 1
Total Versions 11
Frequently Asked Questions

What is Book Capture Obsidian?

Capture and normalize book metadata into Obsidian Markdown notes from photos or Goodreads CSV exports. Use for barcode and OCR ISBN extraction, metadata enri... It is an AI Agent Skill for Claude Code / OpenClaw, with 361 downloads so far.

How do I install Book Capture Obsidian?

Run "/install book-capture-obsidian" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Book Capture Obsidian free?

Yes, Book Capture Obsidian is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Book Capture Obsidian support?

Book Capture Obsidian is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Book Capture Obsidian?

It is built and maintained by Ricardo Almeida (@ricardodpalmeida); the current version is v1.2.1.

💬 Comments