everyharness
Drop in any model. Get a harness.
Offline-first CLI + TUI that detects model type, runs the right harness, serves HTTP, and scaffolds plugins — for tabular, embeddings, LLMs, vision, diffusion, computer use, and more.
macOS and Linux only in v1. Windows is not supported.
Features
- Drop-in models — local files, Hugging Face, Ollama, or Python callables
- Auto harness selection — tabular, embeddings, LLM, vision, speech, diffusion, computer, generic
- One CLI —
everyharness add→everyharness run→everyharness serve→everyharness train - Offline-first — works without the network;
EVERYHARNESS_OFFLINE=1hard-blocks outbound calls - Plugin system — publish
everyharness-*packages; scaffold witheveryharness plugin init - Agent UI bridge —
everyharness uiwrites a prompt pack for Cursor, Claude Code, Copilot, Pi, or Codex - Textual TUI — launch with bare
everyharness
Install
pip install everyharness
# optional extras
pip install 'everyharness[tabular]'
pip install 'everyharness[llm]'
pip install 'everyharness[all]'
Quick start
# register models (kind auto-detected when possible)
everyharness add ./model.pkl --trust-pickle
everyharness add embeddings:demo --type embeddings
everyharness add python:callable_demo:echo
everyharness list
# same interface, different harnesses
everyharness run --trust-pickle <id> -- predict --input features.json
everyharness run <id> -- similarity --input '{"a":"cat","b":"kitten"}'
everyharness run <id> -- call --input '{"hello":"world"}'
# scaffold a publishable harness plugin
everyharness plugin init weather --kind harness
Launch the TUI:
everyharness
Model types
| Kind | Examples | Typical commands |
|---|---|---|
tabular |
.pkl / .joblib sklearn |
predict, evaluate, explain |
embeddings |
sentence-transformers, embeddings: |
embed, similarity |
llm |
GGUF, Ollama, HF | complete, repl, serve |
vision |
image classifiers | harness-specific |
diffusion |
Diffusers pipelines | harness-specific |
generic |
Python callables | call, predict, info |
Coding-agent UI bridge
Generate a prompt pack so your coding agent can scaffold a local web/GUI wrapper:
everyharness ui <model-id> --agent cursor
# → ./harness-ui/<id>/{AGENT_PROMPT.md,model-card.json,manifest.json,README.md}
Plugins
Community packages publish as everyharness-* on PyPI:
everyharness plugin search tabular
everyharness plugin install everyharness-foo
everyharness plugin init mymodel --kind harness # harness | loader | detector | templates
Architecture
CLI/TUI → plugin host → harnesses / loaders / detectors / templates. See docs/architecture.md.
Updates & offline
everyharness update --check
everyharness update --yes
Set EVERYHARNESS_OFFLINE=1 to block update checks, HF downloads, and everyharness plugin install.
Development
uv sync --all-extras --dev
uv run pytest -q
uv run ruff check src tests
Regenerate the README demo:
cd docs/demo && vhs demo.tape
License
Apache-2.0 — see LICENSE.
Community
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 everyharness-0.1.0.tar.gz.
File metadata
- Download URL: everyharness-0.1.0.tar.gz
- Upload date:
- Size: 48.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75fc4bb32b28f96370d202af3f8b1fc385074bbbd6e961641e35872b682ab2be
|
|
| MD5 |
41418e87c0eda408bd89e4fbd453cae1
|
|
| BLAKE2b-256 |
054fe55d80738a5dfd847915e7251dd943304d6decc065315debd5197a94c70a
|
Provenance
The following attestation bundles were made for everyharness-0.1.0.tar.gz:
Publisher:
release.yml on kavin0x/everyharness
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
everyharness-0.1.0.tar.gz -
Subject digest:
75fc4bb32b28f96370d202af3f8b1fc385074bbbd6e961641e35872b682ab2be - Sigstore transparency entry: 2378068909
- Sigstore integration time:
-
Permalink:
kavin0x/everyharness@ea28f87252d4842f1ec5735e7b9537e84bd02942 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kavin0x
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ea28f87252d4842f1ec5735e7b9537e84bd02942 -
Trigger Event:
push
-
Statement type:
File details
Details for the file everyharness-0.1.0-py3-none-any.whl.
File metadata
- Download URL: everyharness-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50451289db845d11e92825c03578cc1997161f7f52361ca301c908e70a426070
|
|
| MD5 |
637a923370ad6cd0c3845adbcdb1dba4
|
|
| BLAKE2b-256 |
ab8c35a1a18d8727fd1e14d061c6f78363fdae6138efa0b54b745e496ea51025
|
Provenance
The following attestation bundles were made for everyharness-0.1.0-py3-none-any.whl:
Publisher:
release.yml on kavin0x/everyharness
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
everyharness-0.1.0-py3-none-any.whl -
Subject digest:
50451289db845d11e92825c03578cc1997161f7f52361ca301c908e70a426070 - Sigstore transparency entry: 2378068993
- Sigstore integration time:
-
Permalink:
kavin0x/everyharness@ea28f87252d4842f1ec5735e7b9537e84bd02942 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kavin0x
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ea28f87252d4842f1ec5735e7b9537e84bd02942 -
Trigger Event:
push
-
Statement type: