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 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

everyharness-0.1.0.tar.gz (48.2 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.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

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

Hashes for everyharness-0.1.0.tar.gz
Algorithm Hash digest
SHA256 75fc4bb32b28f96370d202af3f8b1fc385074bbbd6e961641e35872b682ab2be
MD5 41418e87c0eda408bd89e4fbd453cae1
BLAKE2b-256 054fe55d80738a5dfd847915e7251dd943304d6decc065315debd5197a94c70a

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyharness-0.1.0.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.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

Hashes for everyharness-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50451289db845d11e92825c03578cc1997161f7f52361ca301c908e70a426070
MD5 637a923370ad6cd0c3845adbcdb1dba4
BLAKE2b-256 ab8c35a1a18d8727fd1e14d061c6f78363fdae6138efa0b54b745e496ea51025

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyharness-0.1.0-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