A local-first operations layer for AI agents and their humans, shipped as one lean binary or container on a homelab or NAS node. The node is the cloud.
Agent Hub gives a fleet of agents, spread across machines on a LAN or tailnet, three things they otherwise lose and one calm place for the human to watch:
- Session brains. Every agent session keeps its working state on the node, not in the client's context window, so it survives compaction and a resume of the same named session.
- A project feed. "What happened in project X" is a first-class, time ordered, addressable query that agents read on startup and humans read as a feed.
- A place for you. A global inbox for finished work and approval requests, artifact hosting with browser-side encryption and password sharing, search, and a wiki over each project's durable knowledge, all reachable from an installable app.
Agents reach the hub over the Model Context Protocol (MCP). Humans reach it over the PWA. There is no vendor cloud and no brain off the node.
How this was built. This is a personal experiment, and most of the building was done by agents. I wrote the specification, the decisions, the operating model, the interface and experience design, and the review standards; agents wrote the implementation, the tests, the documentation and most of the refactoring from them, with me reading and correcting as they went. I would rather say that plainly than let a finished-looking repository imply a method I did not use.
Captured from a seeded hub at desktop and phone widths. Each image follows your colour scheme; the full tour is in the wiki.
| Inbox | Project feed |
|---|---|
![]() |
![]() |
| Artifacts | Search |
|---|---|
![]() |
![]() |
The quickest way to see it, on the machine you are sitting at:
podman run --detach --name agent-hub \
--publish 8080:8080 \
--env HUB_ADMIN_TOKEN=change-me \
--volume agent-hub-data:/data \
ghcr.io/abn/agent-hub:1.0.0docker run takes the same arguments. Open http://127.0.0.1:8080/ and paste
the admin token. The image is distroless, runs as a non-root user, and keeps its
data in the named volume.
For a durable setup, a release binary, or a build from source, follow Get started: it picks a lane for your hardware and walks you through install, first login, and the first agent. Every setting is in Configuration, and running it as a service is in Deploy as a service.
The hub must be reachable from every machine an agent runs on. A LAN or public bind carries plain HTTP, so terminate TLS in front or reach it over a tailnet; Network and access covers both.
Every hub serves its own bootstrap guide at /bootstrap/SKILL.md. Give an agent
that URL and it has what it needs: the hub's address, how to request a token,
and the MCP endpoint. An agent with no token asks to be let in, and you approve
it in your inbox.
curl -sS http://127.0.0.1:8080/bootstrap/SKILL.mdThe same guide is the installable agent-hub skill, served over MCP at
skill://agent-hub/SKILL.md and installable with npx skills add abn/agent-hub.
The step-by-step for the operator is
Connect your first agent; the agent's own
working loop is Using the hub as a brain.
The wiki lives in docs/ and is published to
GitHub Pages. It is an OKF v0.2 bundle with
two front doors:
- Running it: Get started, Guides, Operate, Reference.
- Building it: Architecture, Design, Contributing, Decisions.
What shipped in each version is in CHANGELOG.md, and RELEASING.md is the runbook for cutting one.
make setup
make checkmake setup installs the git hooks, creates the scratch area, and writes the
local assistant shims. It is idempotent and safe to re-run. make check is the
quality gate that hooks and CI both reuse. The
contributor guide has the full workflow.
AGENTS.md is the operational contract for humans and agents alike, and
CONTRIBUTING.md is the short version.
MIT. See LICENSE.



