MetaBot Personal Agent Workspace
Supervise multi-engine coding agents from chat apps or a local web console.
- Source repo
- xvirobotics/metabot
- Stars
- ★ 987
- Last updated
- 8d ago
- License
- MIT
- Primary language
- TypeScript
- FA score
- 51/100 · Major gaps
At a glance
- Works with
- Universal · cross-platformCodex · Claude CodeOpenAI API · Claude API (Partial support)
- You'll need
- Typical use
- A solo developer away from their desk sends a coding task to a logged-in Codex bot through Feishu or Telegram, then checks test execution and generated output from the phone.
- Main limitation
- It requires Node.js >= 22.19, Git, an external engine, and chat-channel credentials, so it is not a zero-dependency setup.
- Source review
- 51/100 · Major gaps
What does this agent do, and when should you use it?
MetaBot is a self-hosted personal agent workspace composed of a local Core, Core Console, IM Bridge, and the metabot CLI. It routes messages from Feishu/Lark, Telegram, WeChat, or local Web Chat to configured bots, which execute in their own workspaces through Codex CLI, Kimi Code, or a Claude Code-compatible path. Each bot can have separate channel credentials, engine, working directory, and session while collaborating through Agent Teams and Agent Bus. The Core Console combines Chat, Agents, Memory, Skills, T5T, Teams, CLI Access, and diagnostics behind a local Bearer token. It fits individual developers prepared to run local services and grant agents read, write, and code-execution access within configured workspaces.
The Bridge receives Feishu/Lark WebSocket traffic, Telegram or WeChat long-polling traffic, or Web Chat input, then routes it according to bot configuration. Its Codex path runs codex exec --json and codex exec resume, producing JSONL streaming output, tool activity, and resumed sessions; its Kimi Code path uses the official local Server API for persistent sessions, atomic snapshots, questions, stop/resume, tools, sub-agents, and Goals. The console displays streamed replies, tool execution, and output files, and lets an operator answer agent questions or stop a run. MetaBot also provides cross-session MetaMemory retrieval, persistent Agent Teams tasks and run state, multi-turn /goal checkpoints, and supported /background tasks.
- A solo developer away from their desk sends a coding task to a logged-in Codex bot through Feishu or Telegram, then checks test execution and generated output from the phone.
- An engineer maintaining separate repositories assigns distinct working directories to a Codex development bot and a Kimi review bot, then coordinates them through Agent Teams.
- A developer supervising local code changes uses Core Console to inspect streamed responses, tool calls, and output files, and stops a run when necessary.
- A project owner who needs context across conversations uses MetaMemory to retrieve knowledge and can synchronize it to a Feishu knowledge base.
- A Feishu group owner operating several development bots uses
@Bot /group-reply mention|all|statusto set each bot's group response mode.
How do you install or deploy this agent?
Requirements: Node.js >= 22.19, Git, at least one engine, and credentials for a chat channel. Run:
curl -fsSL https://github.com/xvirobotics/metabot/releases/latest/download/install.sh | bashInstall and log in to an engine in a separate terminal, for example:
npm install -g @openai/codex
codex loginOr:
npm install -g @moonshot-ai/kimi-code@latest
kimi loginFollow the setup flow for Feishu/Lark, Telegram, or WeChat, then run metabot status and metabot health. Open http://localhost:9200, enter the token in ~/.metabot-core/token, and choose a bot.
How do you use this agent?
Configure each bot in bots.json with its name, engine, channel credentials, and defaultWorkingDirectory; codex is the default when engine is omitted. Send work through a configured chat channel or http://localhost:9200. Use /model to inspect or switch the current engine/model, /effort low|medium|high|xhigh|max|ultra to set Codex reasoning effort, /status for session information, and /stop to halt a task. Use /goal <condition> for supervised multi-turn work and /background <prompt> for supported background tasks.
What are this agent's strengths and limitations?
- A single Bridge process can mix Codex, Kimi Code, and Claude Code-compatible bots while keeping each bot's workspace, session, and channel credentials distinct.
- Its documented Feishu/Lark WebSocket and Telegram/WeChat long-polling modes do not require opening a public inbound port.
- Core Console puts chat, tool output, stop controls, Memory, Skills, T5T, Teams, and diagnostics behind one token-authenticated entry point.
- The installer verifies release checksums, and updates verify
SHA256SUMS, the complete personal-edition manifest, and version data.
- It requires Node.js >= 22.19, Git, an external engine, and chat-channel credentials, so it is not a zero-dependency setup.
- The public Codex adapter currently uses
codex exec; Codex app-server support and steering during Codex/Kimi Feishu execution are described as future work. - The WeChat integration is labeled as limited beta, so it should not be treated as a mature channel guarantee.
- Agents can read, write, and execute code in configured workspaces; operators must protect tokens, restrict IM bot visibility, and secure exposed ports with their own authenticated proxy or private network.
How does this agent compare with similar options?
Engine choice: Codex is the default, Kimi Code is a first-class optional engine, and a Claude Code-compatible path is retained for existing Claude bots, sessions, skills, and workspaces.
Key facts side by side with the most closely related agents.
| Agent | Source review | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|
| MetaBot Personal Agent Workspace This agent | 51 · Major gaps | ★ 987 | 8d ago | TypeScript | Codex · Claude Code |
| Codexia | 57 · Major gaps | ★ 919 | 11d ago | TypeScript | Codex · Claude Code |
| Claude-to-IM Bridge | 52 · Major gaps | ★ 2.9k | 6mo ago | TypeScript | Codex · Claude Code |
| Claudexor | 76 · Good | ★ 480 | 1d ago | TypeScript | Codex · Claude Code |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: installer generates Bearer Token saved with 0600 permissions, not logged; release assets checksum-verified before extraction; updates verify SHA256SUMS. But lacks explicit least-privilege design (e.g., workspace access control, command whitelist). User confirmation mentioned only in chat (e.g., answering interactive questions), not detailed. Data flow transparency limited; no statement on what data is sent to external engines. Sensitive data handling has basic measures (token protection) but no encryption at rest. Dependency security has overrides and CI but no vulnerability scanning. External effects (code execution) warned but no sandbox or approval flow. Rollback not explicit; only mentions update preserves data. Source attribution: publisher unverified but README declares developer.
Evidence shows: README and package.json versions consistent (1.3.0), documentation structure clear, tests cover CLI functionality, CI configured with type check, tests, and build. But dependency availability unverified; some dependencies from CDN (xlsx) pose availability risk. Failure messages: tests cover error handling (e.g., missing token, invalid date) but not comprehensive.
Evidence shows: clear target audience (individual developers), supports multiple IM channels and engines, scenarios described in detail (mobile coding, Agent Teams, etc.). Capability boundaries stated (e.g., @-mention routing, group reply modes) but not limiting agent actions. Trigger precision has command list and routing rules but not all triggers detailed. Environment fit: supports Node.js >=22.19, provides install script and docs, but OS compatibility details not mentioned.
Evidence shows: clear information architecture with docs site and directory structure. Install notes detailed including custom directories and updates. Naming stable, version explicit. Examples and FAQ partial (e.g., minimal dual-bot config) but FAQ section missing. Known limitations not explicitly listed, only security risks mentioned. License MIT, versioning with package.json and update commands but no changelog. Maintenance responsibility: contributing guide present but publisher unverified.
Evidence shows: high output usability with CLI, Web UI, and IM integration, clear output formats. Marginal value: multi-engine support and mobile access, unique features (Agent Teams, MetaMemory). Cost-benefit: requires Node.js and multiple engine subscriptions, but no performance or resource consumption data.
Evidence shows: README feature claims have doc links but no independent verification. Tests cover some functionality but not all claims. Fact-inference separation: README distinguishes feature descriptions and install instructions but does not explicitly mark inferences.
- Publisher identity unverified; treat source with caution.
- Agent can execute code but lacks sandbox or approval mechanism; restrict workspace permissions.
- Dependencies from CDN pose supply chain risk.
- Known limitations and troubleshooting not fully documented.
FAQ
Must I use Codex?
engine defaults to codex.Do I need a public IP address?
How is the local console accessed?
http://localhost:9200 and paste the installer-generated Bearer token stored in ~/.metabot-core/token.