Skip to content

Releases: elicpeter/pitboss

0.4.0

28 May 18:26

Choose a tag to compare

pitboss 0.4.0

New

  • pitboss start: single entry point that walks you from zero to a running grind. Detects whether config exists, sets it up if not, and launches.
  • pitboss config: guided config setup.
  • pitboss nuke: tear down pitboss state in one command.
  • Iteration wizard: pick up an existing run, review budget and progress, and relaunch with an optional budget reset.

Improved

  • Planner output parsing is more forgiving of formatting variation.
  • README rewritten with the new commands and usage.

Fixed

  • Cost tracking double-counted per-role token usage, so the USD figure in pitboss start and pitboss status showed roughly twice the real spend. Token totals were correct; only the priced cost was inflated. Now counted once.

Maintenance

  • Bumped Strum to 0.28 and refreshed dependencies.

New Contributors

Full Changelog: v0.3.0...v0.4.0

0.3.0

11 May 15:39

Choose a tag to compare

Backend updates to claude agent to ensure it doesn't duplicate deferred.md to root and doesn't get api limits.

Full Changelog: v0.2.1...v0.3.0

0.2.1

02 May 04:31

Choose a tag to compare

Introducing the grind mode, a way to loop through prompts as many times as you want. Read more about in the README. Also fixed a bunch of bugs and renamed cli to fit casino theme more.

0.1.0

30 Apr 18:31

Choose a tag to compare

pitboss 0.1.0

First public release. Pitboss is a Rust CLI that drives a coding agent through a multi-phase implementation plan. Hand it a plan.md, walk away, come back to a branch full of green commits.

What's in the box

  • Per-phase loop: implementer → tests → fixer (bounded retries) → auditor → commit. Each phase becomes its own commit on a per-run branch.
  • plan.md is read-only to agents. If an agent edits it, the run halts and the file is restored from snapshot.
  • deferred.md collects work the agent could not finish. Items are swept between phases.
  • Token and USD budgets. The runner halts before any dispatch that would exceed the cap; pitboss resume picks up from the same phase.
  • Live TUI dashboard via pitboss run --tui. Stderr logger otherwise.
  • pitboss plan "..." drafts a plan.md from a goal. --interview runs a Q&A session first for a more targeted plan.
  • pitboss run --pr opens a pull request via gh when the run finishes.
  • pitboss resume and pitboss abort --checkout-original for stop and restart.

Agent backends

Pluggable via [agent] backend = "..." in pitboss.toml:

  • claude_code (default): Anthropic's Claude Code CLI. Reference implementation, exercises every code path the runner relies on.
  • codex: OpenAI's Codex CLI.
  • aider: Aider CLI. Inline --message delivery; you enumerate files via extra_args.
  • gemini: Google's Gemini CLI in single-shot JSON mode.

Test runner detection

Auto-detected from the workspace, in order: Cargo, npm/pnpm/yarn, pytest, go test. Override via [tests] command = "...".

Caveman mode

Optional system-prompt directive that trims agent output by roughly 65 to 75 percent on prose. Off by default. Three intensity levels: lite, full, ultra. Code, commit messages, and plan.md / deferred.md artifacts stay in their normal format.

Install

cargo install pitboss

Or grab a pre-built binary from the assets below. Archives are tar.gz with a matching .sha256 for each target:

  • pitboss-v0.1.0-x86_64-unknown-linux-gnu.tar.gz
  • pitboss-v0.1.0-x86_64-apple-darwin.tar.gz
  • pitboss-v0.1.0-aarch64-apple-darwin.tar.gz

You also need claude (or whichever backend CLI you select), git, and optionally gh for --pr.

MSRV

Rust 1.88.

Known limits

  • Aider and Gemini backends pass the prompt as an argv string, so very large phases can hit ARG_MAX. Comfortable for typical phases on macOS (~256 KB) and Linux (~2 MB).
  • Aider has no per-phase file-scope auto-discovery yet. Enumerate files via extra_args = ["--file", ...] until that lands.
  • Gemini's tool-call list reflects map-iteration order, not call order. Cosmetic; the run itself is unaffected.

License

MIT OR Apache-2.0.