ChaosCypher CLI
Command-line tools for ChaosCypher knowledge graph library.
Installation
From PyPI (recommended)
pipx install chaoscypher-cli
Note: The CLI requires Python 3.14+, so pipx must run on a 3.14 interpreter (
pipx install --python python3.14 chaoscypher-cliif 3.14 isn't your default).
pipx installs the CLI in an isolated environment and automatically adds it to your PATH. If you don't have pipx, install it first:
# macOS
brew install pipx
# Linux (Debian/Ubuntu)
sudo apt install pipx
# Windows
scoop install pipx
From source
git clone https://github.com/chaoscypherinc/chaoscypher.git
cd chaoscypher
# Install uv first: https://docs.astral.sh/uv/getting-started/installation/
uv sync --package chaoscypher-cli
Note: On Windows, the
chaoscyphercommand lands in.venv\Scripts\afteruv sync. Run it viauv run chaoscypherfrom the repo root, or activate the venv (.venv\Scripts\activate) for a barechaoscypherinvocation.
Development install
git clone https://github.com/chaoscypherinc/chaoscypher.git
cd chaoscypher
uv sync --all-packages --extra dev # full workspace + dev tools
Usage
# Show help
chaoscypher --help
# Create a new database
chaoscypher db create my-graph
# Add source documents
chaoscypher source add documents/
# Add with explicit upload-time options (API parity with POST /sources)
chaoscypher source add paper.pdf \
--vision \
--content-filtering \
--normalize \
--filtering-mode strict \
--skip-duplicates
# Export knowledge graph
chaoscypher graph package export --output my-knowledge.ccx
# Import knowledge graph
chaoscypher graph package load my-knowledge.ccx
# Search the graph
chaoscypher source search "artificial intelligence"
Upload-time flags (API parity)
source add exposes the same upload-time choices the API does. Each flag persists on the source row and is preserved across recovery / retry / re-extract.
| Flag | Default | API equivalent |
|---|---|---|
--vision/--no-vision |
--vision |
enable_vision |
--content-filtering/--no-content-filtering |
--content-filtering |
content_filtering |
--normalize/--no-normalize |
(file-type default — on for prose, off for CSV/JSON/XML) | enable_normalization |
--filtering-mode {maximum,strict,balanced,lenient,minimal,unfiltered} |
unset (resolves to balanced) |
filtering_mode |
--skip-duplicates |
off | skip_duplicates |
Run chaoscypher source add --help for the full flag list.
Features
- Graph Management: Create, delete, and manage knowledge graphs
- Data Import: Import documents (PDF, DOCX, TXT, CSV, JSON, audio, archives)
- Data Export: Export graphs as
.ccxpackages (CCX — Chaos Cypher eXchange) - Search: Full-text and vector search across the knowledge graph
- Chat: Interactive AI chat with graph-grounded RAG
- Quality: Run extraction quality scoring and reports
- Benchmark: Run reproducible extraction benchmarks across models
Development
From the repo root:
# Run tests
uv run pytest packages/cli/tests --import-mode=importlib
# Format code (ruff replaces black; ruff format is the formatter)
uv run ruff format packages/cli
uv run ruff check packages/cli
# Type checking
uv run mypy packages/cli/src
Architecture
The CLI is a thin wrapper around the chaoscypher core library, providing:
- User-friendly command-line interface using Click
- Rich terminal output with progress bars and formatting
- Configuration management via the unified
settings.yamlandCHAOSCYPHER_*environment variables (managed withchaoscypher config show/get/set/edit) - Batch operations and scripting support
Requirements
- Python 3.14+
- chaoscypher-core>=0.1.0
License
AGPL-3.0 License - see LICENSE file for details.
Links
Release files for chaoscypher-cli 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| chaoscypher_cli-0.4.1.tar.gz | 413.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chaoscypher_cli-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 716.3 kB
Release files / chaoscypher_cli-0.4.1.tar.gz
| Download URL | chaoscypher_cli-0.4.1.tar.gz |
|---|---|
| Size | 413.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d47d2eabbeb2e0cbc0db2e2211093b7ffbd60224faaac801b52b01f10848f9ca
|
|
BLAKE2b-256 checksum How to use checksums |
1d82596004356f022e30e9e0e0bd821b2ae46e454951547830d14e577072f38a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / chaoscypher_cli-0.4.1-py3-none-any.whl
| Download URL | chaoscypher_cli-0.4.1-py3-none-any.whl |
|---|---|
| Size | 302.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4cf1d4c71ce880a75579b1c40ff1433ad94dea17d596d5fae045645a16976af4
|
|
BLAKE2b-256 checksum How to use checksums |
0252fba32f3cff11865f205c99b1494c87a00c348b5d87f57869298f48165878
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|