One task across repositories
Need to change your frontend, API and a shared library? Keep it on one card. Each repository gets its own agent and working copy. The agents talk to each other to agree on how the changes fit together.
Describe the change you want. Agents plan it, write the code, run tests and review the result. Follow along in your browser or answer questions from your phone. You choose what to merge. ForgeBoard runs on your own server.
A 30-second tour with music and no narration. The opening title reads: your AI engineering team, on a kanban board. Plan: add a task to the board. Build: agents for each repository plan and write the code, with a verifier and reviewer checking their work. Sandbox: each session runs in a temporary KVM microVM with root access. Host credentials stay outside it. Ask: agents send you questions that you can answer on the board or your phone. Test: a tester starts the app, runs the tests and attaches screenshots. Merge: check the changes and merge with one click. You can undo the merge from the board. The final scene lists live sessions, costs and budgets, epics, project knowledge, model choices, notifications, chat-to-task and passkeys.
BUILT WITH FORGEBOARD
We track ForgeBoard’s own development on its board. Its agents write most of the commits. This website and the tour above started as tasks there too.
feat(site): add the 30-second tour and redesign the websitefeat(fleet): require KVM for agent hostsfeat: expose task attachments to running agentsfeat(video): create a dynamic ForgeBoard motion graphics videofeat(extensions): add pluggable built-in extensions and GitLab CIWHY FORGEBOARD
Working with coding agents often means juggling sessions, passing context between them and checking the results yourself. ForgeBoard keeps the plan, code, tests and review together on one task.
Need to change your frontend, API and a shared library? Keep it on one card. Each repository gets its own agent and working copy. The agents talk to each other to agree on how the changes fit together.
When an agent needs a decision from you, it asks and waits. Choose a suggested answer or write your own, on the board or your phone. Agents working on the next steps get your answer too.
Should the CSV include archived reports?
Only active reports Include archived too Answered — agent resumedAgents work in temporary virtual machines with root access, so they can install the tools a task needs. These microVMs use KVM. Your SSH keys and git credentials stay on the host, which handles pushes.
agent@vm:~$ sudo apt install ffmpeg
root inside; gone with the VM
agent@vm:~$ cat ~/.ssh/id_ed25519
no such file: keys stay out
With testing enabled, a tester starts your app, runs your test suite and attaches screenshots before review. If a test fails, the coding agent gets the results so it can fix the problem.
$ docker compose up -d
✓ api ✓ web
$ npm run e2e
✓ exports reports as CSV 0.8s
✓ skips archived reports 0.4s
✓ export button is accessible 0.3s
3 passed (1.5s)
Check the code changes for each repository without leaving ForgeBoard. When you’re happy with them, merge into your target branch from the board. You can undo the merge there too.
- Results.Json(q.All())
+ Csv.From(q.Active())
Read what each agent is doing as it works.
Track spending per task and set a budget to stop work at your limit.
Split a large change into tasks that run in order on one branch.
One agent plans, builds and tests a small change.
Agents search your docs, notes and past tasks.
Talk through an idea with a model, then make it a task.
Find questions and failed tasks in one place, with optional phone alerts.
Sign in with a passkey or scan a login code. End sessions when you need to.
HOW IT WORKS
Move a card to Todo to start work. Agents handle each step and pass their results to the next. You can follow along, answer questions or stop the task.
Write what you want, attach any useful context and pick the repositories involved.
Concept → TodoEach repository has an architect agent to plan the changes. A verifier agent checks the plans before coding starts.
Architects + verifierCoding agents work in their own microVMs and commit to a work branch. They share progress and ask you for decisions when needed.
ImplementersWith testing enabled, a tester starts your app and runs your test suite. Failed changes go back for fixes with test results and screenshots.
TesterReviewer agents check the code changes. They approve the work or send it back with feedback.
ReviewersRead the summary and the diff, then merge from the board. With a GitHub or GitLab token, approval also opens a pull or merge request.
Ready to mergeFor smaller changes, use a solo task. One agent plans, codes and tests it. For larger changes, use an epic: a series of tasks that build on each other.
MOBILE + PUSH NOTIFICATIONS
Add ForgeBoard to your phone or tablet’s home screen as a web app. Check tasks and answer questions while agents work on your server.
Open your ForgeBoard address in a supported browser and install the web app. There’s no app store download.
Get an alert when an agent asks a question, a task stops, a budget is reached or work is ready to merge. You don’t need to keep the board open.
Tap a notification to open the task it belongs to. Read the question, send an answer, or check the finished work from your phone.
In your ForgeBoard instance, open the bell and choose Enable push on each device.
Mobile setup and requirementsAdd email preferences · Implementer, api
SELF-HOSTING
The installer sets up the app, database and supporting services with HTTPS. It downloads public Docker images, so there’s no source code to build or registry login to set up. Then add the machines that will run your agents from the app.
80 for HTTP, 443 for HTTPS, and 5671 for encrypted AMQP. Open them in your cloud firewall./dev/kvm. Use a physical server or a VM with nested virtualization enabled. It must reach your hostname on ports 443 and 5671.Hardware needs depend on your projects, build tools and how many agents run at once. The deployment guide has no fixed CPU, memory or disk minimum.
Add this server or another on the Servers page. Each agent session runs in a microVM.
Agents need internet access. ForgeBoard runs on your server, but agents still connect to your configured AI providers and git remotes.
Every agent host needs KVM. Both coding and testing agents run in microVMs. Their machines need /dev/kvm, on a physical server or a VM with nested virtualization. A server that only runs the ForgeBoard app doesn’t need KVM.
INSTALLATION
Start on the Linux server where you want to host the app. Then add an agent host and connect your project.
Open a terminal on your server. Use Stable for the regular release, or Develop for the latest changes that haven’t had a stable release yet. This command downloads the current image, extracts the installer and runs it with sudo. Only run it on a server you manage.
docker run --rm --pull=always --entrypoint cat docker.gerwim.com/gerwim/forgeboard/api:latest \
/app/deploy/install.sh | sudo bash
docker run --rm --pull=always --entrypoint cat docker.gerwim.com/gerwim/forgeboard/api:develop \
/app/deploy/install.sh | sudo bash -s -- --channel develop
Before making changes, the installer checks the server’s architecture, Docker, ports and DNS. It then asks you to choose passkey or password sign-in. It stores configuration and secrets in /opt/forgeboard.
Open Servers in ForgeBoard and add a machine with KVM. You can use the same server or a different one. ForgeBoard checks the machine over SSH and installs the agent with its connection settings filled in. Tasks can start once an agent host is online.
Run the architects, verifiers, implementers and reviewers for your tasks.
Brings up your stack and runs the suite before review, one test run at a time.
FAQ
Some details worth knowing before you set up a server.
No. Keep using your editor as usual. ForgeBoard manages the tasks you give to coding agents and helps you follow their work through testing, review, and merging. The changes are ordinary git commits.
Claude Code and OpenCode. Choose a model for each agent role in global or project settings. You can also choose a different model for one task. ForgeBoard uses the coding tool that supports your selected model. You need your own AI provider credentials, and you pay for model usage separately.
Open your ForgeBoard HTTPS address. On Android, choose Install or Add to Home Screen in a supported browser. On iPhone or iPad, open it in Safari and choose Share → Add to Home Screen. Then launch ForgeBoard from the new icon.
For notifications, open the bell, choose Enable push and allow notifications when asked. Repeat on each device. On iPhone and iPad, notifications require the installed web app and iOS or iPadOS 16.4 or newer.
ForgeBoard must use HTTPS, and your browser must support Web Push. Enable notifications on each browser or device where you want them. If you blocked them before, allow them in your browser’s site settings.
The server’s API container needs outbound HTTPS access to the browser vendors’ push services. Set PUSH_SUBJECT to a real mailto: contact address; Apple rejects placeholders. ForgeBoard generates its push keys automatically. You still need a connection to your server to view and answer tasks.
Not necessarily. The app, database, and workers run on your hosts, but agents send context to the AI providers you configure. They also connect to your git remotes. Check your providers’ data policies before using private code.
KVM runs the temporary virtual machine used for each agent session. The agent has root access inside it and can see the task’s working copy. The host’s home directory, git credentials and agent service secrets stay outside the VM. The host pushes commits after the session ends. Each agent host needs /dev/kvm for this setup.
No. Approved work moves to Ready for Merge. You decide whether and when to merge it. Agents can pause to ask you questions, and you can stop a running task. Each merge creates a normal git merge commit that you can undo from the board.
You need a dedicated deploy key or HTTPS credentials with git write access. API tokens are optional: they let ForgeBoard open GitHub pull requests or GitLab merge requests after approval. The optional GitLab CI extension also needs a token. You can merge from the board without an API token. Never mount your personal SSH directory into agent containers.
Yes, if it has KVM. Install ForgeBoard, then add the same machine as an agent host on the Servers page. Add a tester host there too for automated tests.
The machine must be able to connect to its own public hostname on ports 443 and 5671. If it sits behind a router, the network needs to support this, often called hairpin NAT.
The coding agent gets the test results or review feedback and tries again. If the test environment is broken, the task stays in Testing until you fix it and retry. Tasks that need your help appear on the board and in your notifications.
GET STARTED
Install the app, add an agent host and connect a repository. Then create your first task.