Skip to main content

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: The CLI requires Python 3.14+, so pipx must run on a 3.14 interpreter (pipx install --python python3.14 chaoscypher-cli if 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 chaoscypher command lands in .venv\Scripts\ after uv sync. Run it via uv run chaoscypher from the repo root, or activate the venv (.venv\Scripts\activate) for a bare chaoscypher invocation.

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 .ccx packages (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.yaml and CHAOSCYPHER_* environment variables (managed with chaoscypher 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chaoscypher_cli-0.3.0.tar.gz (397.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chaoscypher_cli-0.3.0-py3-none-any.whl (295.7 kB view details)

Uploaded Python 3

File details

Details for the file chaoscypher_cli-0.3.0.tar.gz.

File metadata

  • Download URL: chaoscypher_cli-0.3.0.tar.gz
  • Upload date:
  • Size: 397.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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

Hashes for chaoscypher_cli-0.3.0.tar.gz
Algorithm Hash digest
SHA256 9d2d143bc3e59fd40e430a7e8590acf7941a36ff8ce45f8ca78d8f34488b91a6
MD5 9bb60383aac1d7bdbfb5031217b80e9f
BLAKE2b-256 48a0d9da9ef3fa0855b7835758430896f4e8d4b2b9bf51f55c705516b6374700

See more details on using hashes here.

File details

Details for the file chaoscypher_cli-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: chaoscypher_cli-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 295.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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

Hashes for chaoscypher_cli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a7dd1160186853fad482f0c690c9839deb00485df08e68c7252852d2e52e98f8
MD5 557a4366f2dc21d5958460f07a26b73e
BLAKE2b-256 2ac2d3d36071effd7723374fcd2f7ffa2d04e1db27737128cbeed166a7e86722

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page