Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
翻訳待ち
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A cute isometric office where every AI agent is a little character. See who's working, who has a branch ready for a PR, who needs your call, who's blocked, and who went dark — then click through to deal with it. Inspired by officefloor and agent-flow.
Zero dependencies. The UI is plain static files in public/.
npm start # simulated office (server) → http://localhost:3000
npm run start:hooks # empty office that fills with your real Claude Code sessions
python3 -m http.server -d public # or any static server: the demo runs entirely in the browser
Drag to pan, wheel / pinch to zoom, N = needs-me inbox, C = recenter, click a character to inspect.
| You see | Meaning |
|---|---|
| 💻 / 💭 | working (bubble shows the tool) / thinking |
| ❓ | needs your call — a decision is waiting (permission prompt in hooks mode) |
| 📦 | a clean branch with commits ahead is ready for a PR |
| 🚧 | blocked, with the reason |
| 🥀 | went dark — said it was working but stopped reporting |
| 💤 | on a break (hanging out in the kitchen, rec room, lounge or garden) |
Tap ☰ Toolbox. Everything here is saved in your browser only and never changes what real agents are doing.
The UI is static, so both work with no build step:
public.vercel.json already sets outputDirectory: public.A hosted copy runs the demo inside the visitor's browser (the same state + director code the server uses,
shared from public/shared/). Nothing is sent anywhere.
To show your real Claude Code sessions on a hosted page, deploy the relay (below) and paste its URL into the page's menu (☰ → Show my real Claude Code sessions). The URL is stored only in that browser.
npm run start:hooks
Add the hooks from hooks/settings.example.json to ~/.claude/settings.json (replace the path), then run claude:
DARK_AFTER_SECONDS)This repo ships .claude/settings.json, so any Claude Code session opened on this repo (cloud or local) reports to
the office. Set AGVIS_URL (your relay URL, secret included) as an environment variable in the cloud environment's
settings; with it unset the hooks quietly do nothing. Other repos need the same file and variable.
Your hooks run on your machine; a hosted page can't see it. relay/ is a Cloudflare Worker + Durable Object that
receives the hook events and streams them to any page you open. Deploy it once:
cd relay
npx wrangler deploy # prints https://agvisualizer-relay.<you>.workers.dev
openssl rand -hex 16 # your room secret, e.g. 3f9c…
npx wrangler secret put ALLOWED_ROOMS # paste the secret (only listed rooms are accepted)
This is the beginning of the README. Read the rest at the original. Read the full README ↗