Skip to main content

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.

CI PyPI Python License

everyharness demo

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 CLIeveryharness addeveryharness runeveryharness serveeveryharness train
  • Offline-first — works without the network; EVERYHARNESS_OFFLINE=1 hard-blocks outbound calls
  • Plugin system — publish everyharness-* packages; scaffold with everyharness plugin init
  • Agent UI bridgeeveryharness ui writes 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 '[[1.5, 0.5]]'
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

everyharness-0.1.1.tar.gz (49.7 kB view details)

Uploaded Source

Built Distribution

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

everyharness-0.1.1-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file everyharness-0.1.1.tar.gz.

File metadata

  • Download URL: everyharness-0.1.1.tar.gz
  • Upload date:
  • Size: 49.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for everyharness-0.1.1.tar.gz
Algorithm Hash digest
SHA256 de72f991b25ae90ae209336fa65d78201f3366b13bbacc9518982dc24517df6a
MD5 556226fb9aa1432482e5617b917e91bd
BLAKE2b-256 15995e67f0e0f38ab28ccd3ed71c386bfa7f8fb9b590b4a7eb69a5820f1e4ec1

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyharness-0.1.1.tar.gz:

Publisher: release.yml on kavin0x/everyharness

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file everyharness-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: everyharness-0.1.1-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

Hashes for everyharness-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ab796248a64d4b681e1021775562c885b112d38dfb4dd36208ec5c699af2cdd5
MD5 5c0f538a26a889193832b9b8365d501b
BLAKE2b-256 8782e05699472138769a71490481261dcf272509f0e6583eddc16b271a19dc27

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyharness-0.1.1-py3-none-any.whl:

Publisher: release.yml on kavin0x/everyharness

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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