Memoh
Give every AI agent a 24/7 cloud computer — its own filesystem, desktop, browser, network and long-term memory. Bring your own key, or host Claude Code and Codex.
- Source repo
- felinics/Memoh
- Stars
- ★ 2.8k
- Last updated
- today
- License
- AGPL-3.0
- Primary language
- Go
- FA score
- 48/100 · Major gaps
At a glance
- Works with
- Universal · cross-platformCodex · Claude Code
- You'll need
- Typical use
- An individual developer who wants a 24/7 personal assistant with persistent memory, reachable anytime through Telegram or Discord.
- Main limitation
- Self-hosting requires a server, Docker, and config.toml setup, plus managing internal secrets like MEMOH_INTERNAL_RPC_SHARED_SECRET — real operational overhead.
- Source review
- 48/100 · Major gaps
What does this agent do, and when should you use it?
Memoh is an open-source multi-agent platform that gives each agent its own cloud computer: a dedicated workspace with a filesystem, desktop, browser, network, and long-term memory, staying online even when your laptop is closed. You can run its built-in agent with your own API keys, or host existing coding agents like Claude Code and Codex inside Memoh workspaces. Agents are reachable via Telegram, Discord, Lark, WeChat, Web UI and more; they remember context across sessions and platforms, drive a browser, call MCP tools, and run scheduled tasks. Deployment is either through Memoh Cloud (app.memoh.net) or a full self-hosted stack via a one-line installer or Docker Compose. Sub-projects include Twilight AI (a Go AI SDK), Connect It (a self-hosted connector gateway exposing integrations over a single MCP endpoint), and a Vue 3 UI design system. The project is AGPL-3.0 licensed and maintained by the MemohAI team.
Memoh runs as a Server and Channel service — separate processes under Docker Compose, or a single all-in-one process when internal_rpc.shared_secret is left empty in config.toml. Each agent gets an isolated workspace with its own filesystem, desktop, browser, and network, plus long-term memory that persists across sessions. It accepts messages through Telegram, Discord, Lark, WeChat, and the Web UI; agents can drive a browser, call MCP tools, and run scheduled tasks. The built-in agent uses user-supplied API keys (BYOK), and existing agents such as Claude Code and Codex can be hosted inside Memoh workspaces. Installation is via a one-line script or manual git clone + config.toml + docker compose up -d; Channel streams media through authenticated internal Storage RPC in split deployments.
- An individual developer who wants a 24/7 personal assistant with persistent memory, reachable anytime through Telegram or Discord.
- A team assigning one isolated agent per member, each with its own workspace, browser, and tool access.
- Developers already using Claude Code or Codex who want to host their coding agent in an always-on cloud workspace.
- Users who need scheduled tasks and browser automation executed in the cloud while staying online.
- Self-hosters who want to run the full multi-agent platform on their own infrastructure and keep control of workspace storage.
How do you install or deploy this agent?
Quick self-hosted install (one-line script):
curl -fsSL https://memoh.sh | shCN mirror for slow image pulls:
curl -fsSL https://memoh.sh | USE_CN_MIRROR=true shDo not run the whole installer with sudo; the installer uses sudo docker internally if Docker requires it.
Manual deployment (split Docker Compose mode):
git clone --depth 1 --recurse-submodules --shallow-submodules https://github.com/felinics/Memoh.git
cd Memoh
cp conf/app.docker.toml config.toml
# Edit config.toml
export MEMOH_INTERNAL_RPC_SHARED_SECRET="$(openssl rand -hex 32)"
docker compose up -dIn split deployments, Server and Channel run as separate services; keep the internal RPC secret private and reuse the same value when recreating the stack. Upgrade Server before Channel. To run without Docker, leave internal_rpc.shared_secret empty in config.toml — the server embeds the channel runtime and runs as a single all-in-one process. GitHub's automatic source archives omit submodule contents; use the attached Memoh-<version>-source.zip or .tar.gz release asset for a buildable archive. Production configuration is documented in DEPLOYMENT.md. Alternatively, sign up directly at https://app.memoh.net.
How do you use this agent?
Cloud path: register or log in at app.memoh.net.
Self-hosted: after installation, talk to agents via the Web UI or connect Telegram, Discord, Lark, or WeChat channels. Configure your own API keys in config.toml to run the built-in agent, or host Claude Code / Codex agents inside Memoh workspaces. Agents remember context across sessions and platforms, can drive a browser, call MCP tools (credentials can be securely stored and exposed via the Connect It sub-project's single MCP endpoint), and run scheduled tasks. Run one instance for yourself or assign one per team member. Community support includes the Telegram group (t.me/memohai) and docs at docs.memoh.ai.
What are this agent's strengths and limitations?
- Each agent gets a genuinely isolated cloud workspace — filesystem, desktop, browser, network — and stays online 24/7, unlike shared-sandbox approaches.
- BYOK model: use your own API keys and host existing Claude Code or Codex agents, avoiding lock-in to a single model vendor.
- Multi-channel access via Telegram, Discord, Lark, WeChat, and Web UI, with long-term memory shared across platforms.
- Full self-hosting path: one-line installer, split Docker Compose, or a single all-in-one process without Docker.
- Self-hosting requires a server, Docker, and config.toml setup, plus managing internal secrets like MEMOH_INTERNAL_RPC_SHARED_SECRET — real operational overhead.
- Running LLMs requires your own paid API keys; using Memoh Cloud means depending on its hosted service.
- GitHub's automatic source archives omit submodule contents, so building from release archives or git pull (with submodule init) has extra steps.
- AGPL-3.0 is a copyleft license that imposes obligations on commercial integration and redistribution — evaluate before business use.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Memoh This agent | 48 · Major gaps | — | ★ 2.8k | today | Go | Codex · Claude Code |
| OtoDock | 77 · Good | Self-hosted serviceFreemium | ★ 195 | 3d ago | Python | Codex · Claude Code |
| Synapse AI — Multi-Agent Orchestration Platform | 70 · Some gaps | CLIFree + model costs | ★ 335 | 1d ago | Python | OpenAI API · Claude API |
| ZhikunCode | 56 · Major gaps | Self-hosted serviceFree + model costs | ★ 532 | 1d ago | Java | OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows container isolation per agent (docker/containerd/apple backends), RPC shared secrets, JWT, OAuth callback, and credential validation tests — security is clearly deliberate; but the curl|sh one-liner install, agent permission boundaries, user-confirmation mechanisms, and external effects (browser driving, scheduled tasks, chat channels) are only asserted in the README with no visible code, so most criteria score 1; sensitive-data handling earns 2 (keys excluded from service definitions, URLs with credentials rejected in tests); dependency security earns 2 given the extensive pnpm override list pinning vulnerable transitive deps.
Tests explicitly assert failure messages ('--replace', 'not valid JSON', 'not found'), earning failure_messages 2; README and configuration docs are largely self-consistent (empty internal_rpc secret = embedded all-in-one mode stated in both places), earning 2; but availability guarantees for the many external services (postgres, qdrant, model catalog) are unevidenced, scoring 1.
Per-platform config templates (Docker/macOS/Windows/devenv) and many channels (Telegram/Discord/Lark/WeChat) show strong environment fit, scoring 2; audience from individual to team fleet is described, scoring 2; but capability boundaries and trigger precision (when agents do what) are essentially undocumented, scoring 1.
README is well structured with multi-language links and sub-project references, scoring 2 for architecture; install notes are detailed (CN mirror, sudo warning, submodule pitfalls), scoring 2; AGPL-3.0 full text is present, but Cargo.toml says Apache-2.0 and package.json says ISC — inconsistent license declarations cap this at 2; version 1.0.0-beta.1 exists but no changelog is shown; examples/FAQ and known limitations are thin; maintenance rests on badges only, all scoring 1.
Actual agent output quality cannot be judged statically, scoring 1; the marginal-value claim (BYOK, self-host, isolated workspaces, memory) is concrete, scoring 2; but no cost/resource data supports cost-benefit, scoring 1.
Claims trace to specific files (config sections, tests), but headline marketing claims (24/7 online, isolation, memory) cannot be verified from the provided files, scoring 1; cross-corroboration between tests and docs is moderate, scoring 1; the docs reasonably separate fact from inference (explicitly noting untested behavior), scoring 2.
- The install script uses a curl|sh pattern; review the script before executing.
- License declarations are inconsistent within the repo (LICENSE is AGPL-3.0, Cargo.toml says Apache-2.0, package.json says ISC); verify compliance scope yourself.
- Agent container isolation, network permissions, and external effects (browser, scheduled tasks, chat channels) are only described in the README; implementation code was not visible in this static review — audit before deploying.
- Version is 1.0.0-beta.1 and the publisher is unverified; exercise caution in production.
- No changelog or known-limitations documentation; upgrade risk falls on the user.