159 lines
5.4 KiB
Markdown
159 lines
5.4 KiB
Markdown
# 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
|