ommv0.2.148

omm contribute

Repeatedly install, benchmark, and upload telemetry for hardware-fit models — deleting each one afterward — to grow the training data behind omm recommend.

01 / 06

Overview

contribute is the one command in omm that is meant to run unattended for a while: it downloads a candidate, benchmarks it, uploads the result under your current upload policy, deletes the model to keep disk usage bounded, and repeats until you press Esc or it runs out of candidates this hardware hasn't already covered. It refuses to start unless every model volume has real free space, and prints the exact consent notice below before it downloads anything.

02 / 06

Options

Every flag this command accepts, and what it defaults to when you leave it out.

  • --report-errorsDefault: off

    Send scrubbed error reports from this run only. Doesn't change the saved policy, and is ignored if error reports are explicitly turned off.

  • --jsonDefault: off

    Accepted as a global flag, but contribute has no JSON output mode; omm prints a warning and ignores it.

  • --yes, -yDefault: off

    Skip the 'Start contributing compute now?' confirmation and every per-model prompt — required for an unattended run.

  • --quiet, -qDefault: off

    Suppress progress bars and background status or hint lines. Errors and benchmark results still print.

  • --no-colorDefault: off

    Disable colored terminal output.

  • --helpDefault: off

    Print contribute's usage and options, then exit.

03 / 06

Examples

From a plain search to something you'd put in a script.

Interactive — prints the consent notice, then asks before starting.

$ omm contribute

Unattended — no confirmation prompt, runs until Esc or the candidates run out.

$ omm contribute --yes

Also send scrubbed error reports from this run.

$ omm contribute --report-errors

Store models under a roomier volume than the default ~/.omm, straight from the README.

$ OMM_HOME=/mnt/data/omm omm contribute --yes

04 / 06

Recorded CLI run

Command recorded in this video

omm contribute --no-color

exit code: 0 · outcome: cancelled

Cancelled by the recorded keyboard input before any install, model run, benchmark, or upload.

Open the exact real-process transcript (.txt)

Extended documented terminal example

Verbatim reproduction of the real consent notice omm contribute prints before it downloads anything (src/omm/cli.py:8512-8540), for the Ollama engine and its upload policy shown as 'ask' — not a literal full-run capture, since a real run downloads, benchmarks, uploads and deletes real models in a loop, which this page won't trigger.

06 / 06

If something goes wrong

Every message below is one this command actually prints. Find yours, read why it happened, then do the last line.

  1. omm contribute requires benchmark uploads to be enabled. Run `omm setting upload --enable` or `--ask` first.
    why
    contribute always uploads its benchmark results — that's the point of the command — so it refuses to start while uploads are turned off entirely.
    what to do
    Run omm setting upload --enable or --ask, then retry.
    source
    src/omm/cli.py:8425-8429
  2. Neither Ollama nor LM Studio is installed or available. Install one of them, start it once, then retry `omm contribute`.
    why
    Benchmarking needs a running engine to load the model into, and contribute only knows how to drive Ollama or LM Studio for this.
    what to do
    Install and start Ollama or LM Studio at least once, then retry.
    source
    src/omm/cli.py:8447-8453
  3. omm contribute will not start with low disk space. Keep at least 10 GiB free on every model volume before an unattended run. /Users/you/.omm/models: 3.2 GiB free.
    why
    Every candidate needs headroom for the central download plus a worst-case engine copy — contribute checks this before starting an unattended run, not partway through one.
    what to do
    Free up space on the reported volume (the message names exactly how much), or point OMM_HOME at a roomier drive.
    source
    src/omm/cli.py:7864-7871

Still stuck? Open an issue with the exact message you saw.