- HTML 66.4%
- CSS 13.2%
- Python 12.3%
- Go 8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .claude | ||
| fiction | ||
| non-fiction | ||
| scripts | ||
| tools | ||
| .gitattributes | ||
| .gitignore | ||
| .mcp.json | ||
| CONTRIBUTING.md | ||
| cspell.json | ||
| pyproject.toml | ||
| README.md | ||
| Taskfile.yml | ||
| uv.lock | ||
Books
A browsable book collection with source files, Markdown conversions, metadata, and a local semantic-search service. The collection is organized by subject; the Go tooling under tools/bookindex builds a RAPTOR-style vector index and exposes it through MCP.
Browse the collection
Repository layout
| Path | Purpose |
|---|---|
fiction/ |
Fiction titles and their category index |
non-fiction/ |
Technical and non-technical subject trees |
new_books/ |
Staging area for books that have not been classified |
scripts/ |
Conversion, metadata, organization, and index-maintenance utilities |
tools/bookindex/ |
Go indexer, distributed worker, and MCP search server |
.claude/ |
Checked-in Claude Code agents and slash commands |
Each searchable book directory contains:
- an EPUB or MOBI source file;
- one converted Markdown content file; and
- an
index.mdwith YAML frontmatter fortitle,year,keywords, andsummary.
PDF-only folders can be browsed in the repository, but the current semantic indexer discovers only directories containing EPUB or MOBI files.
Common workflows
To add or reorganize books, start with the contribution guide. The scripts can move, rename, or delete files, so review their documented effects before running the batch workflow.
The root Taskfile is the main entry point. Run task --list to see repository tasks, task setup to create the uv environment, and task validate for the standard validation suite.
To build or serve semantic search, see the Bookindex guide. Its shortest local validation loop is:
cd tools/bookindex
go test ./...
go vet ./...
task build
Category index.md files and the section list above are generated by scripts/build_index.py. The script deliberately leaves the rest of this README intact.
Agent-assisted workflows
The repository ships its own Claude Code agents and slash commands: /organize for batch ingestion, /reconvert for repairing books with missing Markdown, and /deep-dive for cross-source research through the booksearch MCP server. See the Claude Code configuration guide for each agent's role and the side effects to expect.
Content and large files
Book archives are stored with Git LFS according to .gitattributes. Install Git LFS before cloning or adding EPUB, MOBI, PDF, ZIP, or BZ2 files. Only add material that you have the right to store and use; no repository-wide content license is declared here.