The right model
for every step.

A desktop app that splits your coding task and gives every step to the cheapest model that can do it.

New run 3 keys
What should we work on?
bach

Every model on Anthropic, OpenRouter and OpenAI

You stay in charge.

Allow this change to Cargo.toml?Files like this run code when the project is installed, built or tested.

[dev-dependencies]

+ proptest = "1.5"

tempfile = "3.10"

Asks before risky writes

Build files wait for your Allow.

$0.00of $0.50

    Never passes your budget

    Drag it and watch the run stop in time.

    • Listed crates/core/src/engine
    • Read engine/budget.rs
    • Searched for "reserve("
    • Read engine/attempts.rs
    reserve prices the worst case from the model’s rate and output cap; settle hands back what the call did not use.

    Every step shows its work

    Your thumbs teach it which model to pick.

    Anthropicsk-ant-••••••••3f9a
    OpenRoutersk-or-••••••••c21e
    OpenAI

    Your keys stay with you

    No account, no server, no middleman.

    Hand issues to Bach. Get runs back.

    Tick issues, press Fix. Each one becomes its own run.

    usebach/bachThe desktop app, in Rust and GPUI
    Issues 5Pull requests 2
      Select issues to hand off

      Native Rust

      A real window, not a tab.

      Local first

      Everything stays on your disk.

      Your keys

      One provider is enough.

      Open source

      Free under GPL-3.0.

      Questions

      Nothing. You only pay your model provider, capped by the run’s budget.

      It is built and tested on Windows. Other systems are untested for now.

      Files in the folder you picked. Build files wait for your Allow.

      Yes. Demo mode needs no keys and makes no paid calls.

      No. Each call reserves its worst case before it starts.

      Anthropic, OpenRouter and OpenAI, with your own key.

      Get Bach

      Windows installer · All releases. Or build it from source in three steps.

      1. 1

        Install Git and Rust

        Git and rustup.rs

      2. 2

        Clone the repository

      3. 3

        Build and open it