ub-agents v0.1.15

ub-agents

The loop engineering framework for GitHub.

Any agent, no server.

brew install uberblick-ai/tap/ub-agents

macOS or Linux. You need git, an authenticated gh, and the agent CLIs you want to run.

What does ub-agents do?

It runs coding agents on your GitHub issues and pull requests. You start a launcher on your own computer. It watches the repository, claims an item whose label matches one of your agents, runs that agent, and records the result.

Labels are the queue. Put ready on an issue and the implementer picks it up. When it opens a pull request, that PR gets needs-review and the reviewer takes over. You decide what each label means and what happens after each outcome.

GitHub is the only state. Claims, attempts and outcomes are comments on the issue or PR, so a restarted launcher rebuilds everything from there. There is no database and nothing to host.

Use the agents you already have. Each role names a CLI such as claude or codex, a model, and instructions that live in your repository. Launchers on several machines share one queue.

ub-agents launch opens this view of its own session. Example session on the ub-agents repository.

Get started

$ cd your-project
$ ub-agents init     # ub-agents.yaml and .agents/ policy and roles
$ ub-agents doctor   # checks gh, labels and agent CLIs
$ ub-agents launch   # runs the loop; q stops after the current run

The starter workflow has four roles: issue preparer, implementer, reviewer and integrator. Commit the files init writes and change them like any other code. The installation guide walks through it.

A role is a few lines of YAML

implementer:
  runtime: "codex:gpt-6.1-sol:high"
  trigger: [ready, needs-changes]
  outcomes:
    handed-off: {add: [needs-review]}
  instructions: .agents/implementer.md
  worktree: true

Every key has a short page in the configuration docs.