bm25
Stateless BM25 content search over any text corpus. Wraps
xhluca/bm25s in a small CLI.
See SKILL.md for the full reference.
Quick start
pip install bm25s --break-system-packages
BM25=/mnt/skills/user/bm25/scripts/bm25.py
python3 $BM25 ./repo 'csrf middleware'
python3 $BM25 'github.com/django/django' 'atomic transaction'
python3 $BM25 project 'RAG scaling laws'Why stateless
Index builds are fast — Django (2,909 .py files) indexes in ~8 seconds,
small repos in well under a second. Caching the index would cost more in
invalidation logic than it saves. Within a single invocation, the index
is held in memory, so passing multiple queries on the command line (or
using --interactive) amortizes the build cost across queries.
Pairing with other skills
- For code-specific search with regex routing and AST-expanded results,
usesearching-codebasesinstead. - For symbol lookup (
find:,source:,refs:) over a parsed codebase,
usetree-sittingdirectly. - bm25 fills the gap between those two and works on non-code corpora
(project knowledge, transcripts, uploaded docs).
Skill folder: bm25
Release of bm25 version 0.1.0
📥 Download & Install
To install:
- Click the download link above (ignore the "Source code" archives below - they're auto-generated by GitHub)
- Go to Claude.ai Skills Settings
- Upload the downloaded ZIP file
- Requires paid Claude Pro or Team account
See official documentation for more details.
Recent Changes