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.2.0.tar.gz (394.6 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.2.0-py3-none-any.whl (294.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: chaoscypher_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 394.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.2.0.tar.gz
Algorithm Hash digest
SHA256 974628860a52854a9d5f9c5efbf76d275a893486d75fd25ef01c7e1ee35443b2
MD5 8efa703432a911fdaba507ddeac25f8d
BLAKE2b-256 bf497e06aa11903a9ea29519137eddecb80c4be578c4595ba546d4da5c5d02bc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chaoscypher_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 294.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5d2ce63c49c3d4ecfd615cc32bf5e4d4d63b425743249d4d3419e5891d399324
MD5 02b4de709b84995f60e9d66c5d3643cc
BLAKE2b-256 d948587f1bf9dab8091813f8cb077621dab8607b9fb5108995ada9e2d637994f

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