# obm 🚢 **Deploy your own AI agent to the cloud in about five minutes.** Just answer a few questions and your agent is live in the cloud. --- ## What is this? `obm` is a command-line tool that walks you through setting up an AI agent on cloud infrastructure. It asks you things like "which cloud provider?" and "which AI model?" — then validates your answers on the spot, writes the config, and hands it off to Terraform to build everything. It supports two agent frameworks: - **Hermes Agent** — "Self-improving AI agent" built by Nous Research. Built-in learning loop, creates skills from experience, improves them during use, nudges itself to persist knowledge, and builds a deepening model of who you are across sessions. - **OpenClaw** — "The AI that actually does things." Clears your inbox, sends emails, manages your calendar, checks you in for flights. Action oriented. Both run on either **Hetzner Cloud** or **DigitalOcean**. --- ## Quick start ### Install **Mac or Linux (one command):** ```bash curl -fsSL https://raw.githubusercontent.com/openboatmobile/obm/main/scripts/install.sh | sh ``` **Or download a binary** from the [releases page](https://github.com/openboatmobile/obm/releases/latest) and put it somewhere on your PATH. **Or build from source** (requires Go 1.22+): ```bash git clone https://github.com/openboatmobile/obm.git cd obm make build ``` ### Deploy your agent ```bash obm deploy ``` That's it. You'll get an interactive walkthrough that looks like this: ``` 🚢 OpenBoatmobile — Deploy your AI agent Step 1: Agent Framework [1] Hermes Agent (Nous Research) — Python-based, highly configurable [2] OpenClaw — Node.js-based, simpler setup Step 2: Cloud Provider [1] Hetzner Cloud — from €4.49/mo (recommended, ~70% cheaper) [2] DigitalOcean — from $6/mo (wider region availability) Step 3: Provider API Token Get yours at: https://console.hetzner.cloud/ → Security → API Tokens Token: ******** ✓ Token validated ... ``` At the end, you'll see a summary with cost estimate and get asked to confirm. Say yes, and `obm` writes your config and kicks off Terraform. ### Other commands | Command | What it does | |---------|-------------| | `obm deploy` | Interactive walkthrough to set up a new agent | | `obm validate` | Checks your existing config and API keys | | `obm status` | Shows the state of your current deployment | | `obm destroy` | Tears down your infrastructure (asks first, don't worry) | | `obm version` | Prints the version | ### Non-interactive mode (for automation) If you're running this in CI/CD or just don't want the prompts: ```bash obm deploy --config deploy.yaml ``` See [`deploy.yaml.example`](deploy.yaml.example) for the full config file format. --- ## What you'll need Before running `obm deploy`, have these ready: 1. **A cloud provider account** — [Hetzner Cloud](https://console.hetzner.cloud/) or [DigitalOcean](https://cloud.digitalocean.com/). Hetzner is cheaper; DigitalOcean has more data center locations. 2. **An API token** from your cloud provider. You can generate one in their dashboard. 3. **An AI model API key** — Venice AI, OpenRouter, OpenAI, or Anthropic. This is the "brain" your agent will use. 4. **An SSH public key** uploaded to your cloud provider (so you can log into your server later). Optional but recommended: - **Tailscale** account for VPN access to your server - **Discord bot token** if you want your agent to chat on Discord --- ## How much does it cost? The server cost depends on your cloud provider and server size. `obm` shows you the estimated monthly cost before you commit. Generally speaking, a server that costs $5 to $8 (USD) per month will give you plenty of resources. The AI model API costs are separate, and depend on your usage. Generally that's the biggest cost with an AI agent. Running this part within the server instead of using a provider, will be slower but cheaper. If low cost is a priority, set up local inference. --- ## What happens under the hood? `obm` generates a `.env` file that [Terraform](https://terraform.io) reads to provision your server, install the agent software, and configure everything. You don't need to know Terraform — `obm` handles it. The Terraform configs live in the [openboatmobile-ai](https://github.com/openboatmobile/openboatmobile-ai) repo. `obm` is the friendly CLI wrapper around them. --- ## Project status `obm` is actively developed and functional for the core deploy workflow. Here's what works and what's coming: **Working now:** - Interactive deploy walkthrough (8 steps) - API key validation for cloud providers and inference providers - SSH key listing from Hetzner - `.env` file generation - Config validation (`obm validate`) - Infrastructure teardown (`obm destroy`) - Non-interactive mode with YAML config - Cross-compiled binaries (Linux, macOS, Windows) - `curl | sh` installer **Coming soon:** - `obm status` — SSH health checks on your deployment - DigitalOcean provider validation - Cost estimation display - Resumable deploy (pick up where you left off) --- ## For developers Building, testing, and contributing — see [DETAILS.md](DETAILS.md) for the full technical reference and [CONTRIBUTING.md](CONTRIBUTING.md) for the contribution guide. ## For AI agents If you're an AI agent reading this to learn about the project, check out [LLMs.md](LLMs.md) — it's written specifically for you. --- ## License MIT