Command-line tools for Chaos Cypher knowledge graph library
Project description
ChaosCypher CLI
Command-line tools for ChaosCypher knowledge graph library.
Installation
From PyPI (recommended)
pipx install chaoscypher-cli
Note: If
pipx install chaoscypher-clifails with "No matching distribution found", the package has not been published to PyPI yet — install from source below. The CLI also requires Python 3.14+, so pipx must run on a 3.14 interpreter.
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
# Run tests
uv run pytest
# Format code (ruff replaces black; ruff format is the formatter)
uv run ruff format chaoscypher_cli/
uv run ruff check chaoscypher_cli/
# Type checking
mypy chaoscypher_cli/
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
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 chaoscypher_cli-0.1.0.tar.gz.
File metadata
- Download URL: chaoscypher_cli-0.1.0.tar.gz
- Upload date:
- Size: 374.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3540b4d7afe0b85d52a262ecf4d5e74c6a3b7814d4cf50db232336ee2b756ec9
|
|
| MD5 |
def776f36bcef8ffefc417bdc4167a38
|
|
| BLAKE2b-256 |
774eb7b2cf0ed86795815e3da8d288e060cb96f312ce45813dc84c9bb4f4fde4
|
File details
Details for the file chaoscypher_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: chaoscypher_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 278.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f0ea21a76402ffcf1eaa8ee201130e2559347db56a46232809dc56b81ff7cee
|
|
| MD5 |
abeeb008b6432275c73d81e2e9611ee1
|
|
| BLAKE2b-256 |
a9adde4bf134277b29159c06167cf385dad955f79b3f2074cbe28d627b02641a
|