cheaphelp
An AI software-engineer for your GitHub repositories. cheaphelp installs as a background service on your machine, watches the repos you register, and runs a team of narrow AI agents — powered by cheap OpenRouter models through the opencode terminal harness — to triage issues, plan work, implement it, and open pull requests for human review.
Status: full pipeline wired and exercised live. All roles run end-to-end against a real repository; expect to keep tuning prompts and hardening edge cases.
Install
The recommended way to install the cheaphelp CLI on your machine:
pipx install cheaphelp
# or, if you don't use pipx:
pip install --user cheaphelp
For development (running from a clone, contributing, or testing unreleased
changes), use uv sync inside the clone and invoke the CLI as
uv run cheaphelp … — see Quick start step 1.
Quick start
# 1. (Development install — end users should `pipx install cheaphelp`, see
# the Install section above.) Clone, sync deps, and install the
# `cheaphelp` command globally.
git clone https://github.com/jacotay7/cheaphelp.git
cd cheaphelp
uv sync # install deps (needed before tool install)
uv tool install --from . cheaphelp # puts `cheaphelp` on $PATH
# 2. Create your machine-local workspace (~/.cheaphelp) and store secrets.
# Prompts for your tokens, or pass them as flags / set them later.
cheaphelp init
# 3. Check everything is wired up.
cheaphelp doctor
# 4. Register a repo to work on.
cheaphelp repo add owner/name
cheaphelp repo list
# 5. Dry-run one tick (shows what it *would* do, no changes).
cheaphelp run --dry-run
# 6. Run it for real (responder engages open issues).
cheaphelp run
# 7. Or drain the whole backlog now: repeat ticks until one is idle.
cheaphelp run --continuous
# 8. Install the background timer (default every 10 minutes; each firing
# runs `cheaphelp run --continuous` by default, see the docs).
cheaphelp systemd install --interval 10m
cheaphelp systemd status
Upgrading. After pulling new code, re-run
uv tool install --from . --reinstall cheaphelpto refresh the global command. A plaingit pullupdates the source tree but does NOT refresh the installed binary, anduv run cheaphelpwould then diverge from your checkout.
Documentation
- Getting started — install, requirements, running modes
- Pipeline — how the agents collaborate and the quality gate
- Configuration —
config.jsonfields, models, budget knobs - Workspace — files cheaphelp writes to disk
- Sandboxing — how agents are isolated and its limits
- Cost tracking — daily budget and per-issue cost reporting
- Background service — running under the systemd timer
- Dev guide — for contributors (testing, source layout, mocking opencode)
For contributors
See CONTRIBUTING.md and the Dev guide.
Metadata
Release files for cheaphelp 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cheaphelp-1.0.1.tar.gz | 166.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cheaphelp-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 262.7 kB
Release files / cheaphelp-1.0.1.tar.gz
| Download URL | cheaphelp-1.0.1.tar.gz |
|---|---|
| Size | 166.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bac52a46d390fddf028380f5b5a86667eef1d7b483ef1a7759cd306d4ca758e0
|
|
BLAKE2b-256 checksum How to use checksums |
4dc6641aba46b0ede4e6db80a3331dd6f3d676106c09f6e5e99119422c76a8be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 19, 2026.
Transparency logRelease files / cheaphelp-1.0.1-py3-none-any.whl
| Download URL | cheaphelp-1.0.1-py3-none-any.whl |
|---|---|
| Size | 96.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7884cddbc1314c930ee03d38008a9c293878d6cdd9111beff5230c0c5dfa2c30
|
|
BLAKE2b-256 checksum How to use checksums |
216f8de2127c23a9cb137a1c29becc40f456d8eb80f521eb33d0a830d670cb68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 19, 2026.
Transparency log