SciPaperlib
Version 0.1.16 adds read-only BibTeX retrieval through MCP and richer publication fields with explicit missing-metadata reports; see the guide for installation and usage.
A local research library for collecting publications and retrieving inspectable, revision-bound evidence. No LLM, embedding service, or API key is required.
The distribution and Python import name are scipaperlib. Commands scipaperlib and spl are equivalent; spl-tui launches spl --tui.
python -m pip install scipaperlib
scipaperlib demo ./demo-library
scipaperlib search --library ./demo-library --term mass --term "energy loss"
scipaperlib tui --library ./demo-library
Libraries are selected by name: spl-tui --name "heavy ion papers" uses a registered location, or creates ~/.scipaperlib/heavy_ion_papers_scipaperlib after confirmation. With no name, the library is default, stored initially at ~/.scipaperlib/default_scipaperlib. Set SCIPAPERLIB_DATADIR to change the parent directory for new libraries.
spl --list shows known libraries. Register an existing directory with spl --add-library /path/to/library --name "heavy ion papers". The registry lives at ~/.scipaperlib/config.json; SCIPAPERLIB_CONFIG overrides that file path. Registered locations remain stable when the data directory changes. Use --library PATH for an explicit location instead of --name. Scripts can pass --init-library to create a missing library without prompting.
A fixed TUI activity panel shows progress and outcomes; CLI progress goes to stderr. The TUI prevents overlapping write operations and supports stopping imports after the current request.
Add papers from the TUI's paste area and remove a selected paper with confirmation. The CLI equivalent is spl remove PAPER_ID; removal archives files by default, while --delete-files permanently deletes them.
Textual, PDF extraction, and MCP are installed by default. Legacy pdf, mcp, and tui extras remain accepted for compatibility. See the guide for imports, provenance, recovery, and agent access.
Show the installed version with spl --version (or -v). Check for application updates with spl --check-upgrade; install an update with spl --upgrade, then restart SciPaperlib. Both accept --json and work through spl-tui without launching the TUI. Upgrades target the Python environment running the command; editable development installs are protected. This is separate from spl update, which updates papers.
Follow an INSPIRE author once through Add & Process → Followed authors → Resolve → Confirm & follow. Use Scan selected/Scan all authors or spl authors scan --all to add new publications without confirming again. Followed identities and scan history stay inside each library; unfollowing retains their papers.
For evidence-based Codex research across named libraries, use the read-only spl research-mcp endpoint and the bundled scipaperlib-research skill. See research setup and evaluation.
After installing scipaperlib, run spl setup-codex to configure the research MCP connection and install its bundled skill. Use --dry-run to preview; restart Codex after setup.
Undo managed Codex integration with spl setup-codex-remove (or --dry-run to preview). It preserves later user edits and retains backups; it never removes libraries.
CLI reports are human-readable by default. Use --json for scripts and agent CLI calls; MCP results remain structured. Browse annotations without a text query using spl papers --topic jets --tag review.
Share libraries: spl bundle --name research --out research.spl.zip creates a portable library; spl import-library --file research.spl.zip or --url HTTPS_URL merges it without publication-provider requests. See the guide.
Development: integrated paper/dataset acquisition, local provider-JSON queries and source-figure evidence are described in the guide.
Release automation
After bumping the package version and committing it, push a matching vX.Y.Z
tag. The Release version tag workflow publishes a GitHub Release and explicitly
dispatches Publish to PyPI for that tag. Publication follows the existing test,
package-validation, and clean-install checks. No additional access token is needed.
For an existing tag, run Release version tag manually with its tag input.
Publishing a GitHub Release manually also continues to trigger PyPI publication.
Metadata
Release files for scipaperlib 0.1.19
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| scipaperlib-0.1.19.tar.gz | 196.7 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| scipaperlib-0.1.19-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 337.5 kB
Release files / scipaperlib-0.1.19.tar.gz
| Download URL | scipaperlib-0.1.19.tar.gz |
|---|---|
| Size | 196.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8740404eabcea5e3e9f068905dc6518996f63cd6fc0b0e1df80c2852918f8a1a
|
|
BLAKE2b-256 checksum How to use checksums |
96b47090ac2d5ed6e3d86b28e299b8a33677823bfc7e52c888a163a9a591e1fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 7, 2026.
Transparency logRelease files / scipaperlib-0.1.19-py3-none-any.whl
| Download URL | scipaperlib-0.1.19-py3-none-any.whl |
|---|---|
| Size | 140.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
44cedb0c624c14a958b9a709be960f83b278d30fffff3acd5bba8a3547ffd659
|
|
BLAKE2b-256 checksum How to use checksums |
cebf9f5ebc539df0f08f2fa024c61df65a113e62911e5a259c3ffb554452ca34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 7, 2026.
Transparency logSecurity for scipaperlib 0.1.19
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for scipaperlib-0.1.19.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 7, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.