NewComplete now means verified

Your AI workforce, supervised.

Foreman runs Claude Code and other AI agents across all your projects, in isolated worktrees, behind an approval layer, with every change arriving as a draft pull request you review.

The Foreman interface, shown with sample data.

Local-first. Your API keys never leave your keychain. Runs on macOS and Windows, alongside the tools you already use.

  • Claude Code
  • Git and GitHub
  • macOS Keychain
  • Windows Credential Manager
  • Tailscale

Many agents. One approver.

Run as many agents as you like. Everything that matters comes back to one place for your decision, and nothing reaches your code without it.

Three agents each hand their work to one person, who approves some items and denies one; the approved result moves on.
  • Agents work in parallelEach in its own worktree, with only the tools you granted it.
  • You decideRisky commands and finished work wait in one inbox. Approve or deny from your desk, your phone or by voice.
  • Verified work shipsAs a draft pull request, with the checks attached.

Everything an agent does, on the record. Foreman is the layer between “AI can write code” and “I trust what shipped.”

Isolated worktrees

Every task runs on its own branch in its own git worktree. Your checkout is never touched, and a dirty tree is never overwritten.

mainYour working checkout
Untouched
foreman/t-182-review-loop-docs~/.foreman/worktrees/demo-repo/t-182
Draft PR #1
foreman/t-183-fox-video~/.foreman/worktrees/demo-repo/t-183
Running
foreman/t-184-update-deps-r2Retry 2, a fresh worktree and branch
Awaiting approval

Draft pull requests

Work arrives as a draft pull request with the diff, the checks and the history. Force-push doesn’t exist, by construction.

Draft#1
Open draft PR for review-loop docs
Foreman wants to merge 3 commits into main from foreman/t-182-review-loop-docs
  • Build passed in the task’s worktree
  • Diff, checks and history attached
  • Opened as a draft, never as ready
Ready for reviewDraft-only. Marking it ready is your call.

Approval center

Risky commands pause for your yes, with risk-based expiry, an append-only audit log and autonomy levels per project. Try it.

Approval requiredApprovedDeniedExpires in 14:52
worker-07 on Demo Repo wants to run
~/t-184 npm install sharp@0.33.4
Why it paused
Installing a dependency changes the lockfile.
Reversible
Yes, from the checkpoint taken at 10:14

Live output and the Library

Watch every worker stream in real time. The files it produces are captured into a permanent Library, with previews.

Step 1/4: Validate inputs

Step 2/4: Call nano_banana

Image generated (1024×1024)

Step 3/4: Save file

Saving to outputs/apple.png

Step 4/4: Validate image

✓ Validation passed

Library3 new
apple.pngPNG image · 1024×1024
10:12
fox.mp4MP4 video · 4.3 MB
10:09
lake.mp4MP4 video · 1.5 MB
09:58

Capability library

Grant agents exactly the tools you choose: image, video and speech generation, chat models and more, scoped per project.

Demo Repo · capabilities4 of 6 granted
nano_bananaImage generation · Gemini
klingVideo generation
runwayVideo generation
elevenlabsSpeech
kimiChat model · Moonshot
open_aiChat model
Keys resolve from your keychain at run time, never into a command line.

Voice control

Push-to-talk from your desk, or from your phone over your private tailnet. Foreman reads every command back before it runs.

You

“What is worker-07 doing?”

Foreman

Running npm test in Demo Repo. Two minutes in, nothing has failed.

Listening

“Start the next task. Approve the safe edits.”

IntentStart task, approve safe edits
ProjectDemo Repo
RiskLow
Read back before anything runs.EditConfirm

Three numbers, built to stay at zero.

Not settings you could forget to switch on. They are how Foreman is made.

  • 0Force-pushes

    Force-push doesn’t exist in Foreman. Not switched off: never built.

  • 0Pull requests merged by Foreman

    Every change arrives as a draft. The merge button belongs to you.

  • 0Secrets in the database, logs or transcripts

    Keys stay in your OS keychain and resolve only at run time.

From instruction to merged pull request.

One loop, enforced everywhere: agents propose, you approve. Click a step, or let it run.

Five stacked planes in a row, joined by dotted lines: a task, a worktree, an agent at work, a person approving, a verified document.
  1. 1Your taskTyped or spoken
  2. 2Its own worktreeYour checkout untouched
  3. 3The agent worksStreamed and checkpointed
  4. 4You approveAnything risky waits
  5. 5A verified draft PRBuilt and tested first
Create new task
Task
Update dependencies and run tests
Project
Demo Repo
Mode
Build
Autonomy level
L0L1L2L3
Assisted: Foreman prepares the patch; you approve edits and commands.
Or say itStart task

Built paranoid, so you don’t have to be.

  • Secrets live in your OS keychain

    Never in the database, never in logs, never in a response body.

  • Local-first

    The orchestrator binds to loopback by default. Remote access is opt-in, over your private tailnet.

  • Policy engine

    Command classification and filesystem boundaries, checked before anything runs.

  • Append-only audit

    Every task, approval and artifact, traceable end to end.

What Foreman refuses to do
Force-pushNot implemented
Merge its own pull requestsNot implemented
Mark a pull request ready for reviewDraft-only
Touch your working checkoutWorktrees only
Open a draft pull request for your reviewAlways

You decide how far each agent may go.

Set an autonomy level per project. Protected operations ask for approval at every level, and source changes always arrive as a draft pull request.

Level 0

Observe

Inspects and explains. Cannot edit anything.

Level 1

Assisted

Prepares plans and patches. You approve every edit and command.

Level 2

Supervised

Edits, tests, builds and commits inside its worktree. Stops for anything destructive, credential, deployment or billing related.

Level 3

Safe Autonomous

Works through a defined backlog inside its repository, branch, file scope, command policy and retry, time and cost limits.

How autonomy levels work

Stop babysitting. Start supervising.

Put every AI agent you run behind one review loop.

Thanks. You are on the list for an invitation.

This is a Lacoura portfolio website: the form does not send anywhere.