Newbro is a prototype runtime for AI agents that need to keep talking while long-running work happens in the background. It is not a single chat loop where the same model both replies to the user and drives execution. Instead, Newbro splits the system into a user-facing communication layer, an execution orchestration layer, and a shared blackboard that records the durable state between them.
The goal is to make an agent feel less like a blocking command runner and more like a teammate: it can acknowledge a request, ask clarifying questions, create or update tasks, hand work to executors such as Codex or ACPX, stream progress back through the UI, and later resume the conversation with the current state in view.
This repo contains the backend control plane, protocol models, CLI, executor node runtime, connector host, and React/Vite UI for that experiment.
Repository: https://github.com/AgoraIO-Community/Newbro
Use this path when you want to run Newbro locally from a fresh repo checkout.
./install.sh
./newbro setup
./newbro doctor
./newbro status
./newbro devThen open:
http://127.0.0.1:5173
What each command does:
./install.shcreates.venv, installs Python and frontend dependencies, and creates starter config files under~/.newbro/../newbro setupasks for required runtime values such asOPENAI_API_KEY../newbro doctorchecks local prerequisites../newbro statusprints a read-only operational view of config, dependencies, ports, local endpoint reachability, connector readiness, and executor-node readiness../newbro devstarts the backend on8000and the frontend on5173.
For public hosted deployment, use the Docker-based GitHub Actions path:
GitHub Actions -> GHCR image -> Docker Compose on VPS -> Cloudflare edge
See Public Hosted Deployment for the production path. The older Ubuntu systemd deployment guide remains for repo-checkout hosts.
- CLI, setup, executors, and package publishing
- Local development details
- Architecture overview
- Docs index
- Vercel UI deployment
- Public hosted deployment
- Ubuntu systemd deployment
.venv/bin/python -m pytestFrontend build check:
cd src/newbro/ui
npm run build