ChunkSmith CLI — multi-indexing (JSON/TOON) and PageIndexer pipelines.
Project description
chunksmith-cli (Python)
PyPI package chunksmith-cli v0.5.0 — Rich terminal for ChunkSmith indexing with Gemini-style arrow-key menus and loosely coupled storage.
Part of the ChunkSmith monorepo (packages/chunksmith-cli).
What's new in 0.5.0
- Unified LiteLLM gateway —
CHUNKSMITH_LLM_MODEL+API_KEY/API_BASE/API_VERSION(Azure, OpenAI, Anthropic, Gemini, …) - Dynamic storage —
CHUNKSMITH_STORAGE_MODE=auto(default) detects Mongo+S3 env; falls back to~/.chunksmith/data - Loose coupling — core/multimodal/pageindex work local-only; optional
chunksmith-adapters[mvl]for online DB - Arrow-key menus, stepped configure wizard,
chunksmith doctor, pipeline spinners - Optional extras:
chunksmith-cli[online],[agent],[all]
Package layout (loose coupling)
| Package | Role | Required by CLI |
|---|---|---|
chunksmith-core |
Ports, preferences, shared LLM config | yes |
chunksmith-multimodal |
Multi-indexing pipeline | yes |
chunksmith-pageindex |
PageIndexer pipeline | yes |
chunksmith-adapters |
Mongo + S3 + Postgres (MVL) | optional [online] |
chunksmith-agent |
Document Q&A | optional [agent] |
Libraries never import chunksmith-adapters. The CLI wires online storage when env + adapters are present.
Environment variables
LLM (LiteLLM gateway)
| Variable | Purpose |
|---|---|
CHUNKSMITH_LLM_MODEL |
e.g. azure/gpt-4o, openai/gpt-4o, anthropic/claude-3-5-sonnet |
API_KEY |
Provider API key |
API_BASE |
Custom endpoint (Azure / proxy); empty for direct OpenAI |
API_VERSION |
Azure API version |
Storage
| Variable | Purpose |
|---|---|
CHUNKSMITH_STORAGE_MODE |
auto (default), local, or online |
CHUNKSMITH_LOCAL_DATA_DIR |
Override local data root |
CHUNKSMITH_USER_ID / CHUNKSMITH_PROJECT_ID |
Online scope (defaults: cli / default) |
Auto-detect online when MONGODB_URI + S3_* are set and chunksmith-adapters is installed.
Online stack (from MVL .env): DATABASE_URL, S3_LAYOUT, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_PUBLIC_BASE_URL, S3_ENDPOINT_URL, S3_PREFIX_*, MONGODB_URI, MONGODB_DB_NAME, UNSTRUCTURED_API_KEY, …
Development
cd ChunkSmith
uv sync
chunksmith
Tests
cd ChunkSmith
uv run pytest packages/chunksmith-core/tests packages/chunksmith-cli/tests packages/chunksmith-agent/tests -q
PyPI install
# Minimal — local disk only
pipx install "chunksmith-cli==0.5.0"
# Online storage + agent Q&A
pipx install "chunksmith-cli[all]==0.5.0"
# uv (toon pre-release pin)
uv tool install "chunksmith-cli[all]==0.5.0" --prerelease=allow
chunksmith configure # stepped wizard → ~/.chunksmith/.env
chunksmith doctor # LLM + storage + adapters check
chunksmith --no-ui # CI / non-interactive
Publish to PyPI (maintainers)
From ChunkSmith repo root, in dependency order:
$env:UV_PUBLISH_TOKEN = "pypi-...." # or: uv auth login
$pkgs = @(
"packages\chunksmith-core",
"packages\chunksmith-multimodal",
"packages\chunksmith-pageindex",
"packages\chunksmith-adapters",
"packages\chunksmith-agent",
"packages\chunksmith-cli"
)
foreach ($p in $pkgs) {
Push-Location $p
uv build
uv publish
Pop-Location
}
Verify before publish:
uv run pytest packages/chunksmith-core/tests packages/chunksmith-cli/tests packages/chunksmith-agent/tests -q
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chunksmith_cli-0.5.0.tar.gz.
File metadata
- Download URL: chunksmith_cli-0.5.0.tar.gz
- Upload date:
- Size: 200.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c4033e93e7ba9355de3d0de6165ac9e4a2bc600af8ea11c7b8d9a005c4db819
|
|
| MD5 |
a93bfaf653f931ce164da29db7a64baa
|
|
| BLAKE2b-256 |
6c151dc17c48ac4063ebfa1065c244f28a85eeaac790af6e73f8e0ced9152bd1
|
File details
Details for the file chunksmith_cli-0.5.0-py3-none-any.whl.
File metadata
- Download URL: chunksmith_cli-0.5.0-py3-none-any.whl
- Upload date:
- Size: 217.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1312718e70884136dba3adfd827b9e46c61590defa98526d68dfee15847d929
|
|
| MD5 |
a66afdb14c7fc4e74e56e243be2ad2ac
|
|
| BLAKE2b-256 |
2063e4c472d2b239a2a0ab94a97ede76b1d8385cc732769513e41df3149ec14f
|