Agents do the work. Your team decides what ships.

Viberr is a self-hosted workspace for small engineering teams that deliver software with coding agents. Agents carry each task from its goal to a pull request, and engineers keep the flow, the review and the merge.

Get startedRead the docs

MIT licensed. Runs in one container with Docker Compose.

Every task gets an operator

Describe the work in a new task and the Operator starts at once. It scopes the goal, hands it to specialist agents and comes to you when the choice is yours.

Operator

Runs one task from start to finish. It sends the work to the agents, puts a decision packet in front of you whenever the choice belongs to a person, and judges when the result can be delivered. It writes no code and pushes nothing by hand.

Specialists

A Developer, a Reviewer, or any agent you define. On a board with a repository, the agent that delivers works in the task's own git checkout, and each supporting agent in a clone of its own. Its profile grants the MCP servers, knowledge bases and skills it may use, and it can be given a headless browser. Runs go through the official Claude and Codex SDKs.

Controller

An agent you talk to, one click away from a board or a task's page. Ask it about the instance or have it act for you. It works under your permissions and no others, and it can lay work out as epics.

Follow a first task

The server opens the pull request

On a software board every task has its own branch. Viberr's server pushes it and opens the review pull request, and an agent never does either. The Reviewer judges one revision, and its verdict stays tied to that revision. Moving the task to Done merges the pull request, and Viberr asks you to confirm first.

Results without a repository

A board can deliver results instead of code. The deliverable is then the files the agent saves on the task, such as an estimate or a report, and a person reviews and accepts them with no repository.

How delivery works

People and agents answer to separate policies

Project roles decide what each person may do, and agent capabilities decide what each agent may do. Every boundary between two stages says whether the operator may cross it alone, needs a person's approval, or leaves the move to a person. Each action under governance is recorded twice: as a row in the audit log and as a typed event on the task's timeline.

Roles and capabilities

What you get by hosting it yourself

Your work stays in plain files

Projects, tasks and epics are markdown files on your own disk. Open them, grep them or edit them by hand. When a file is malformed, Viberr shows a diagnostic you can read and does not crash.

Everyone brings their own agent account

Everyone links a Claude or Codex account of their own. The cost of a run goes to the owner of its task, and the cost of a controller turn to whoever asked. Viberr never stores a vendor sign-in token.

One process, no extra services

A single Node process serves the app, the stream of live updates and the background services. You run no database, cache or queue next to it.

What the first version leaves out

Viberr runs on a single node. It sends no email, so notifications stay in the app. The app speaks plain HTTP, so TLS has to end at a reverse proxy you put in front of it. Chromium is the only browser it declares support for.

All known limitations

Start with two commands

Have Docker installed, with Compose 2.24 or later. You write no .env file and create no volume.

git clone https://github.com/akin-ozer/viberr.git && cd viberrdocker compose up

Then open http://localhost:3000 and sign in with the one-time password you will find printed in the log. Home lists the setup steps that remain: a GitHub connection, your own account, a Claude or Codex account and a first project. A board that delivers results needs no GitHub connection.

Get startedGetting started guide