Book Memex banner
queelius queelius

Book Memex

AI community

Description

Powerful eBook metadata management tool with SQLite backend, AI-powered enrichment, web interface, and comprehensive CLI. Features full-text search, automatic metadata extraction, and LLM integration for intelligent tagging and categorization.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

book-memex

Renamed from `ebk` (previous name). The `ebk` CLI entrypoint is still available as a deprecation shim and will be removed in the release after v1.

**book-memex** is an eBook library manager and the book-domain archive of the `*-memex` personal-data ecosystem. It stores book metadata, per-segment content, reading marginalia (highlights and notes), and reading sessions in a SQLAlchemy + SQLite database with FTS5 full-text search. It ships a Typer CLI, a fluent Python API, a FastAPI web server with a browser-based EPUB/PDF reader, an MCP server for LLM access, and exporters (arkiv JSONL, HTML, Hugo, OPDS, and more).

It is a thin domain archive by design: it stores and exposes books and reading data. It does **not** compute embeddings or run semantic search; that belongs to the `memex` federation layer (see `~/github/memex/CLAUDE.md`). The RAG-ready MCP surface (per-segment FTS5 search, URI resolution, SQL) is what the federation consumes.


Table of Contents


Features

  • SQLAlchemy + SQLite backend with a normalized schema and FTS5 full-text search.
  • Durable, URI-addressable records: book-memex://book/, book-memex://marginalia/, book-memex://reading/.
  • Soft delete across marginalia, reading sessions, and (schema-ready) other record kinds; hard delete is opt-in.
  • Text extraction and per-segment indexing: PyMuPDF (with pypdf fallback) for PDFs, ebooklib for EPUBs, plus plaintext. Segments are anchored (EPUB CFI, PDF page+bbox, plaintext byte offset) and searchable