OpenCrabs CLI

OpenCrabs is a self-improving AI agent in Rust as a single binary: terminal, daemon, messengers, memory and skills.

  • 1,029 ★ on the repository
  • Last commit
  • MIT
CLI

Broad access

Why this level

  • The agent runs commands, edits files and uses the network, and daemon mode replies in your name in messengers.
  • Auto-update installs new versions without confirmation until it is disabled.
All reasons and checks

opencrabs/opencrabs

Install

Works in

Manual install

Text for your agent

Download the OpenCrabs binary from GitHub releases, run `opencrabs`, go through the setup wizard and add keys to `keys.toml`.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent runs commands, edits files and uses the network, and daemon mode replies in your name in messengers.
  • Auto-update installs new versions without confirmation until it is disabled.

This is third-party code. Review the repository files before installing.

What it does

OpenCrabs runs as a single Rust binary without a server or intermediate gateway and calls model providers directly over HTTPS. There are two modes: a terminal interface (TUI) and the headless `opencrabs daemon`, which serves Telegram, Discord, Slack and WhatsApp channels and runs scheduled jobs created with `opencrabs cron`. Agent behavior lives in plain Markdown files in `~/.opencrabs/`: `SOUL.md`, `USER.md`, `AGENTS.md`, `TOOLS.md`, `MEMORY.md`. There is three-tier memory, context auto-compaction, child agents (`spawn_agent`, `wait_agent`), a decision cache and an audit log. Provider support is wide: Anthropic Claude, OpenAI, OpenRouter, local models through Ollama and LM Studio and others. The `opencrabs acp` command serves the agent over the Agent Client Protocol to editors like Zed. `opencrabs migrate` carries settings over from OpenClaw and Hermes.

Who it is for. Developers and enthusiasts who want an always-on agent with memory, schedules and messenger access on their own hardware.

Good fit when

  • The agent must run as a service and answer in Telegram or Slack while you are away from the computer.
  • You need regular scheduled jobs: digest, check, report.
  • The model is chosen freely, including a local one through Ollama with no data sent out.
  • Agent behavior is set by plain Markdown files edited between turns.

Not a fit when

  • You need a proven stable tool: some features, such as recursive self-improvement, are marked experimental.
  • Automatic binary updates from the network are forbidden.
  • Messenger groups are open to outsiders: the bot saves received files to disk.

Example request

Run `opencrabs daemon`, connect my Telegram channel and send a project task digest every morning.

Limitations

Recursive self-improvement is marked experimental. The agent checks GitHub releases at start and once a day and installs a new version with a hot restart by itself, which `auto_update = false` under `[agent]` disables. In messenger groups the bot downloads all incoming files into `~/.opencrabs/tmp/` even without a mention. Channel access is set with `allowed_users` lists. Only one mode, terminal or daemon, runs on a single profile at a time. The license is MIT, the last commit dates from November 2026.

How to disable. Stop the service with `opencrabs service stop`, then `opencrabs service uninstall` and delete the binary together with `~/.opencrabs/`. Disable the bot in Telegram or Slack settings.

FAQ

How do I run it as a service?

Run `opencrabs service install` and `opencrabs service start`: it runs through launchd on macOS and systemd on Linux.

Which channels are supported?

Telegram, Discord, Slack and WhatsApp. Access is limited with `allowed_users` lists, separately for groups.

How do I disable auto-update?

Set `auto_update = false` in the `[agent]` section of `config.toml`. By default the check runs at start and every 24 hours.

Can I use a local model?

Yes. LM Studio, Ollama or any OpenAI-compatible endpoint works, and conversations stay on the machine.

How do I connect it to an editor?

With `opencrabs acp`: it serves the agent over Agent Client Protocol on stdio, for example for Zed.

Discussion

No questions or reviews yet.

CLI tools

A terminal coding agent in one Rust binary that reads code, edits files and runs tests with any model of your choice.

CLIBroad access115Repository stars

AgentOS runs a team of OpenClaw agents: workspaces, scheduled tasks, activity reports and human approvals

CLIBroad access134Repository stars

One runtime for Claude Code, Codex, OpenCode and more: a run counts as done only when checks the agent did not write pass

CLIBroad access606Repository stars

A CLI agent swarm: a leader spawns workers in separate git worktrees, and they share tasks and exchange messages via files.

CLIBroad access1.5KRepository stars

An open-source agent harness in Rust: GUI, CLI, headless and webapp from one binary, with multiple providers, MCP, skills and agent teams

CLIBroad access1.3KRepository stars

Octomind is a coding agent in one Rust binary: safety rules in TOML instead of approval prompts, with a supervisor model on top

CLIBroad access657Repository stars

README in short

A Rust agent with a terminal interface, a daemon and commands for sessions, jobs and logs. Documentation is split by topic in `src/docs/reference`.

README badge

Report a problem