MCPcopy Index your code
hub / github.com/bagidea/bagidea-office

github.com/bagidea/bagidea-office @v0.9.39

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.9.39 ↗ · + Follow
377 symbols 949 edges 41 files 24 documented · 6%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

BagIdea Office

A living, 2.5D Claude Office that runs as your desktop wallpaper — a team of AI agents with real presence that work, learn and grow alongside you. Every agent walks to its desk when real work starts, asks permission at the Security desk, holds meetings, learns new skills, and the lights follow your real local time.

🌐 Website · 🎤 Pitch deck · 📖 Docs

npm npm downloads GitHub stars License: MIT Discord YouTube Built with Claude Code

Install in one linenpx bagidea (or from source). Windows · macOS/Linux (beta).

BagIdea Office — a living HD-2D AI-agent office running as your desktop wallpaper, agents at their desks behind your icons

Watch the live demo

Not a dashboard. Not a chat window. A world that renders the true state of your Claude agents — Claude Code sessions, headless runs, custom scripts — as living pixel-art employees behind your desktop icons, and gives them a society. Build a big enough team and they grow their own AI social life: they chat, play, learn how to work together, and learn about you. Many of their meetings happen without you asking — small talk that can turn serious enough to start a project, complete with a written proposal they bring to you to approve or reject (with your reasons). They learn and grow from how you use them — many times their ideas feel like they really do have a soul.

Where it comes from: BagIdea Office takes inspiration from openclaw (the agent-office idea) and Hermes (agents that learn skills on their own) — folds in most of what those two do, then goes further: with your permission the agents actually create and finish real projects, and even propose and write their own plugins (you approve each one) that extend the office for real.

To run it you need Claude Code. For the full experience, add your Gemini + OpenAI API keys in settings — that unlocks agent voices, voice commands, realtime calls and image generation, and the office truly comes alive.

🌐 Website: the landing page + browsable docs live in web/ (deployable to any static host). 📝 What changed: see the CHANGELOG.md for per-release notes.

🆕 Recently shipped

BagIdea Office is updated constantly — every office gets a 🔄 banner and one-click bagidea update. The latest:

  • v0.9.1–0.9.12 — 🐧 Linux (experimental) + a lot of polish: an experimental Linux build — one-line apt installer; on X11/Xorg it attaches as the live desktop wallpaper, on Wayland it falls back to a fullscreen window pinned below. Plus accurate per-model context windows (Claude / DeepSeek V4 / Gemini 2.5 / GPT‑4.1 = 1M) with the model picker pre-selecting each provider's newest model, a Kimi Code provider, work auto-resumes after a rate-limit or a restart, attached images readable by any model (vision OCR), gender-aware agent voices, a rock-solid plugin install / uninstall (confirm + live hub↔panel sync + overwrite-or-new on reinstall) with 📌 pin for favourites, and a voice hotkey that can't wedge. A fresh office now installs empty (add plugins from the Hub).
  • v0.9.0 — 🧠 More brains + safer delegation + agent-built workflows: 18 model providers built in now — added Groq, Cerebras, xAI (Grok), Mistral, Together, Fireworks (via the proxy), local Ollama / LM Studio that need no API key, and Kimi (Moonshot) direct — and the pickers fetch each provider's live model list so new models always show. Plus an opt-in verification loop (a reviewer double-checks delegated work before it reaches you), approve/reject project proposals right in the chat or feed, agents that build workflows (and a 🪄 Draft with Director button), protected built-in skills with searchable Skill/Tool pickers, a redesigned neon chat-head, and a bagidea brains CLI.
  • v0.8.0 — 🧠 Swappable Brains (the big one): run each agent on its own model. Director on Claude (the thinker), builders on cheaper models → big cost savings with zero loss of Claude Code's tools/skills/sessions (Claude Code is still the engine — only the brain behind it swaps). Talk direct to Claude/GLM/DeepSeek/Qwen/MiniMax, or reach OpenAI/Gemini/OpenRouter/NVIDIA + your own custom providers through a built-in, zero-dependency proxy (no LiteLLM/Python). Plus auto-compact + auto-new-thread for every model (long chats never clog or freeze — see below), a 🧠 BRAINS monitor, a per-message model tag + context meter, per-provider cost in STATS, a typing indicator, and cancel-a-task mid-flight.
  • v0.7.8–0.7.9 — 🔀 Workflow Builder grows up: an n8n-style graph canvas (zoom/pan, branch & merge), tabs, 7 read-only examples, and you can ▶️ Run a flow or 🧠 save it as a Skill. 🧰 Tools Hub — one-click MCP servers (Browser automation, Google, Postgres, Notion…) with a plain-language guide. New windows now follow your language, plugins open one way, the chat tucks aside for new windows, and a wallpaper-stability fix (no more vanishing on Win+D).
  • v0.7.7 — first Workflow Builder, channels that mirror out + show “typing” + take slash commands, multi-monitor wallpaper + monitor picker. Fixes the wallpaper reports (#5/#6/#7).
  • v0.7.5–0.7.6media shows inline in chat (images/video/audio, not file paths), manual atmosphere persists, a sponsor wall via GitHub Sponsors, smoother wallpaper (visible shadows, warmer noon).
  • v0.7.0–0.7.4Hermes-style memory + native skills (far fewer tokens, same smarts), pop-out plugin windows, watch-agent-live, editable tasks, audio device settings.
  • v0.6.x — first macOS build (beta), full 14-language UI, cost visibility, Right-Ctrl push-to-talk.

→ Full history in the CHANGELOG.

The office at golden hour — the whole floor, the team at work, the Ghost Deck and server room glowing Captured live: the full office floor at golden hour — the CEO, the Director (Shino) and staff at their desks, the floating Ghost Deck (top-right), the server room glowing, the brand billboard and roofline clock, the office cat wandering. The day/night cycle follows your real local time.

It's a real wallpaper — running behind your desktop icons, with a live activity feed:

The office as a live desktop wallpaper at night, with the feed panel and desktop icons on top

💬 Talk to the office (CEO seat) 🎨 Rearrange it in the 3D Editor
Chat panel focused on the CEO The 3D Office Editor
👥 The team mid-huddle, auras lit ⌨️ The bagidea CLI
The agents gathered together, their status auras glowing, on the office floor at night The bagidea CLI help
🔌 Plugins — agents build & run their own 📰 A live briefing panel (a plugin in action)
The PLUGINS panel listing installed plugins, with install-from-GitHub A morning briefing rendered inside a plugin panel

🧠 Swappable Brains — every agent, any model (new in v0.8.0)

Pick the model that powers each agent. Keep your Director on Claude for the hard calls, put the builders on cheaper models, and cut your bill — without losing a single Claude Code tool, skill or session. Claude Code stays the engine; only the brain behind it swaps, and it fails open to Claude, so nothing changes until you opt an agent in.

Pick a provider and model per agent, with a live context-usage meter in the chat

Two ways agents reach a model:

  • 🟢 Direct (Anthropic-compatible) — Claude, GLM (Z.AI), DeepSeek, Qwen (Alibaba), MiniMax, Kimi (Moonshot). The CLI talks straight to them; nothing in between.
  • 🔵 Via the built-in proxy (OpenAI-compatible)OpenAI, Gemini, OpenRouter, NVIDIA build, Groq, Cerebras, xAI (Grok), Mistral, Together AI, Fireworks, and your own custom providers. A zero-dependency proxy is baked into the daemon and translates Anthropic ↔ OpenAI on the fly — no LiteLLM, no Python (already have a LiteLLM gateway? point a custom provider at it).
  • 💻 Local, no API keyOllama and LM Studio: just run the server and Connect; the office routes to localhost. Free, offline, private.

The model pickers fetch each provider's live model list when you connect (and when you open an agent's brain), so brand-new models show up without an app update.

🔌 Connect once in ⚙ CONNECT → 🧠 MODELS/PROVIDERS ➕ Others + your own custom provider
Provider list: Claude, GLM, DeepSeek, Qwen, MiniMax, OpenAI, Gemini OpenRouter, NVIDIA build and the custom-provider form

🆓 Try the free ones (mind the limits): NVIDIA build is free to test but rate-limited (~40 req/min) — heavy agent tasks hit 429 fast, so it's best for light/eval use. OpenRouter has free models (:free, vendor/model ids) but they're daily-capped and may queue; top up credit for serious work. Gemini has a generous free quota. (And OpenAI Tier 1's 30k tokens/min is small for heavy agent context — which is exactly why the next feature exists.)

♻️ Auto-Compact + Auto-New-Thread — for every model

Talk as long as you want. It never clogs, never freezes, never makes you start a new thread by hand.

Long conversations normally blow past a model's context window and break. Claude Code solves this for Claude only — BagIdea Office makes it work for every model, fully automatic and hands-free:

  • 🧠 Proactive — before each turn the office measures the conversation against the model's context window. Getting full? It summarizes the thread with Claude → opens a fresh thread → keeps working, before it ever overflows.
  • 🛟 Reactive — if a backend rejects a request (a rate or context limit you didn't see coming), the same recovery kicks in automatically.
  • 🪄 Continuity preserved — the summary is written by Claude (big brain, huge context) and seeded into the new thread, so the agent still knows what you discussed. The UI even carries your view across to the new thread, so nothing ever looks stuck.

The result: even tiny / free-tier models run long sessions without you babysitting them.

📊 See everything

Every agent message is tagged with the model that produced it, the thread bar shows a live context-usage meter (e.g. gpt-4o · 40k/128k), the 🧠 BRAINS panel monitors every provider's connect status + each agent's usage, and STATS breaks down estimated spend per provider.

Chat tagged with the model and a context-usage meter in the thread bar


Status: working product — Windows 11 (stable) · macOS 13+ (beta) · Linux (experimental 🧪). The full pipeline works end-to-end: wallpaper → daemon → real Claude Code sessions working inside real project folders → spatialized approvals → agent management UI → Telegram / Discord / LINE / Slack / WhatsApp / Messenger channels → CLI → self-updater. All visuals and sounds ship in the repo (free / CC0 art — see Art assets), so a fresh install and bagidea update carry the full look out of the box.


💛 Sponsors

BagIdea Office is built in the open and kept free to run. Sponsors make that possible — thank you 🙏

👑 Gold Partners

WARRIX

WARRIX

💛 Supporters

Reuannamphung

The block above auto-updates from GitHub Sponsors via .github/workflows/sponsors.yml. Off-platform sponsors live in web/sponsors.manual.json.

Tiers

Tier From You get
👑 Gold Partner $3,000+/mo Large logo on the website & in-app credits · top placement · roadmap input & early builds · shout-out in release notes
🥈 Silver Partner $300+/mo Logo on the website · mention in release notes · early access to builds
🥉 Bronze / Backer $30+/mo Logo or name on

Core symbols most depended-on inside this repo

broadcast
called by 86
daemon/server.js
readBody
called by 65
daemon/server.js
info
called by 43
cli/bagidea.js
req
called by 37
cli/bagidea.js
row
called by 35
cli/bagidea.js
resolve
called by 35
daemon/providers.js
saveReg
called by 26
daemon/server.js
ok
called by 23
cli/bagidea.js

Shape

Function 363
Class 8
Method 5
Enum 1

Languages

TypeScript80%
Rust20%

Modules by API surface

daemon/server.js151 symbols
shell/src/main.rs74 symbols
daemon/channels.js23 symbols
cli/bagidea.js18 symbols
daemon/retrieval.js16 symbols
daemon/proxy.js13 symbols
scripts/sync-sponsors.mjs8 symbols
daemon/watchdog.js7 symbols
daemon/tests/meetings.test.js7 symbols
web/assets/sponsors.js6 symbols
daemon/tests/cross-platform.test.js6 symbols
daemon/skills.js6 symbols

Datastores touched

DBDatabase · 1 repos

For agents

$ claude mcp add bagidea-office \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page