ranobe-shelf

Organize light novel epub collections by cross-referencing bibliographic sources and shelving files with tagged names.

1|Updated Apr 24, 2025
One-click install
npx skills add https://github.com/Kobayashi2003/EasyPwsh --skill ranobe-shelf-kobayashi2003
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ranobe-shelf
Source: https://github.com/Kobayashi2003/EasyPwsh/tree/main/config/skills/ranobe-shelf
Command: npx skills add https://github.com/Kobayashi2003/EasyPwsh --skill ranobe-shelf-kobayashi2003

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Scattered light novel ebook files (epub) often have unreliable filenames, missing metadata, and unknown series status, making a personal library impossible to maintain. This Skill identifies each volume by cross-checking the Ranobe no Mori index, colophon data, RanobeDB, and BookWalker, then records verified bibliographic data (label, author, illustrator, release date, ISBN) in an append-only ledger and places each file on a flat, status-organized shelf. ## Core Features & Use Cases - Bibliographic identification: Matches each epub against multiple sources with strict evidence rules (ISBN is definitive; running titles, colophons, and OPF metadata ranked by reliability), and never guesses when evidence conflicts. - Append-only ledger and safe placement: Records decisions in an append-only ledger, then plans and applies file moves/renames through three safety gates with full undo support; nothing is ever deleted, only moved or quarantined. - Collection maintenance: Audits the shelf for duplicate names, missing tags, vanished files, and misidentified bonus booklets; detects duplicate volumes, finds bonus-item parent volumes, and generates placeholder markers for missing volumes. - Use Case: Point the Skill at an inbox folder of 20-30 unsorted epub files; it surveys each file's contents, presents evidence for your judgment, records your decisions, and shelves the batch under names like [GA文庫][小林湖底][りいちゅ][251213] ひきこまり吸血姫の悶々13.epub. ## Quick Start Ask the AI to run python scripts/cli.py status to confirm the shelf, inbox, and working directories, then run python scripts/cli.py materials --count 20 to begin identifying the first batch of unsorted light novel epubs.

Frequently Asked Questions about ranobe-shelf

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I organize a folder of unsorted light novel epub files?

Run `python scripts/cli.py materials --count 20` to survey a batch of files, review the gathered evidence for each volume, record decisions with `record`, then use `plan` and `apply` to move files onto the shelf with standardized tagged names.

How does the Skill identify which light novel a file is?

It cross-references the Ranobe no Mori index, the epub's colophon and OPF metadata, RanobeDB, and BookWalker. An ISBN match is definitive; otherwise title, label, release month, author, and content measurements are compared, and unresolved cases go to a pending list rather than being guessed.

Can the Skill delete or overwrite my ebook files?

No. The only permitted operations are move and rename. Rejected or duplicate files are moved to a quarantine directory with a recorded reason, the ledger is append-only, and `apply` passes three safety gates with `undo` available to reverse placements.

How are bonus booklets and store-exclusive extras handled?

Bonus items inherit tags and title from their parent volume and are shelved directly beneath it using a `特典` suffix. The `oya` command locates the parent volume in the ledger, and classification uses content measurements rather than filename keywords alone.

What happens when a volume cannot be identified?

It is registered with `pend` along with a specific reason, so it can be revisited later without blocking the batch. The Skill treats unidentifiable items as recoverable omissions, while misidentified items are considered unrecoverable, so it never forces a decision.

How does the Skill track missing volumes in a series?

The `gaps` command compares the ledger against RanobeDB volume lists and places same-format `.txt` placeholder markers where unreleased-in-collection volumes would sit. Markers are regenerated from the ledger each cycle and quarantined when no longer needed.