Detect installed LLM harnesses and resolve their config/state paths from a JSON registry.
Project description
harness-detect (Python)
Detect installed LLM harnesses (Codex, Claude Code, Gemini CLI, Cursor, and many others) and resolve their config/state/install paths from a shared JSON registry.
This is the Python port of @auron-labs/harness-detect. It shares the same harness
registry as the TypeScript, Go, and Rust packages and exposes the same API
surface, adapted to idiomatic Python naming.
Installation
pip install harness-detect
Supported distribution targets are npm (@auron-labs/harness-detect), Go modules (github.com/auron/harness-detect/packages/golang/harnessdetect, released by packages/golang/vX.Y.Z tags), crates.io (harness-detect), and PyPI (harness-detect). Before the first public release for an ecosystem, these install commands are the intended consumer coordinates and may not resolve yet.
Usage
from harness_detect import detect_installed_harnesses, CheckOptions
for r in detect_installed_harnesses(CheckOptions()):
print(r.key, r.reasons)
Support metadata is also available:
from harness_detect import get_harness_support, list_harness_support
codex = get_harness_support("codex")
print(codex.support.config.global_.status)
print(len(list_harness_support()))
Exported API
get_raw_harness_data()returns the full registry object.get_harness_matrix()returns the full registry object.list_harnesses()returns the registry's harness definitions.get_harness_support(input)returns support metadata for one harness key or alias.list_harness_support()returns support metadata for every harness.check_harness(input, options=None)checks one harness key or alias.detect_harnesses(options=None)checks every registry entry.detect_installed_harnesses(options=None)returns only installed harnesses.
See the package docs for the full API reference.
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 harness_detect-0.2.0.tar.gz.
File metadata
- Download URL: harness_detect-0.2.0.tar.gz
- Upload date:
- Size: 58.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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 |
77c05da0955114929c811854a5b3917522ced5173f3c09086de407d5e639f90b
|
|
| MD5 |
a21f765f3cc41e92ce4f712b1df002b3
|
|
| BLAKE2b-256 |
f56c0f84e2962592b010322f6475b7557abaf456d922eff91d3e76ecc8e5de68
|
File details
Details for the file harness_detect-0.2.0-py3-none-any.whl.
File metadata
- Download URL: harness_detect-0.2.0-py3-none-any.whl
- Upload date:
- Size: 39.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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 |
8d53c003c5e84fc9b6f495229c0be004c326509b0eee40e60f5c111a8b7f457b
|
|
| MD5 |
2d8508b81fb8ffec409cdca77e75b30f
|
|
| BLAKE2b-256 |
df0d7502fa9006d2d0a1643898f9b67c283aa02d3cf021e7e4a7d8a90d8903eb
|