Open source · 7 ready-to-deploy teams · 4 agents each

AI Agent Teams for OpenClaw

Production-ready multi-agent team configurations. Each team ships with agents, skills, shared context, and a one-line installer — deploy locally on macOS/Linux, to a DigitalOcean droplet, or as a fleet via Ansible.

Free · you bring an Anthropic API key · ~5 minutes to first agent

Choose your install path ↓
Before you start

Choose your install path

Three supported paths. Pick the one that matches where you want the team to run.

Local

macOS or Linux laptop

You already have OpenClaw installed (or want to install it locally). Run a team's setup.sh directly and you're done. Best for trying it out.

~3 min · no server needed
DigitalOcean

One droplet, TLS, hardened

Bootstrap a fresh Ubuntu 24.04 droplet: hardening, Node.js, Caddy with Let's Encrypt, then deploy your team. Three commands.

~5 min · ~$6/mo droplet
Fleet

Many droplets via Ansible

Declarative inventory, repeatable rebuilds. Two playbooks mirror the shell flow so every host ends up in the same state.

Requires Ansible 2.14+

Teams

Seven self-contained teams, each with four agents mapped to the DISC behavioral model — Red leads, Yellow creates, Green operates, Blue reviews.

Which team?

🎯

Operator

Design, build, and operate an autonomous business that generates recurring revenue.

Commander Spark Anchor Lens
View source ↗
🔨

Product Builder

Build products from idea to production using spec-first development and CI/CD.

Architect Builder Ops QA
View source ↗
🤖

Dev (Claude Code)

Autonomous engineering team that ships GitHub issues by spawning Claude Code subagents.

Lead Coder Shipper Reviewer
View source ↗
🔄

Legacy Modernizer

Modernize legacy apps through a phased, compliance-aware pipeline: LEARN, PLAN, EXECUTE.

Commander Architect Documenter ComplianceGate
View source ↗
💰

Accountant

AI-powered back-office accounting — categorize, reconcile, report, and track taxes.

Controller Bookkeeper Reporter Tax Prep
View source ↗
👥

Recruiter

AI-powered recruiting — source, screen, interview, and hire with built-in bias detection.

Headhunter Interviewer Coordinator Compliance
View source ↗
🏠

Real Estate

AI deal desk — comps, financial review, due diligence, and pipeline management.

Deal Maker Analyst Coordinator Underwriter
View source ↗

Deploy to DigitalOcean

Three commands take a bare Ubuntu 24.04 droplet from zero to a hardened, TLS-terminated, production-ready instance. Step 4 makes the team yours.

Two scripts. Zero to production.

bootstrap.sh hardens your server and sets up the infrastructure. install-team.sh deploys your chosen agent team. Both are idempotent and safe to re-run.

Server Provisioner

bootstrap.sh

Run as root on a fresh Ubuntu 24.04 droplet. Handles everything from security hardening to TLS termination.

  • Creates admin user with SSH keys
  • Configures UFW firewall (22, 80, 443)
  • Enables fail2ban for brute-force protection
  • Installs Node.js 22.x
  • Creates openclaw service user
  • Sets up Caddy with auto Let's Encrypt TLS
  • Adds swap on small droplets

Team Deployer

install-team.sh

Run as the openclaw user after installing OpenClaw. Deploys any team in a single command.

  • Clones the teams repo (shallow, fast)
  • Runs the team's setup.sh
  • Deploys agent workspaces and skills
  • Merges config without overwriting
  • Optionally sets API key
  • Prints summary and next steps
1
As root

Bootstrap the server

Hardens the server, creates users, installs Node.js, and provisions TLS via Caddy. Pass --domain for Let's Encrypt, or omit for self-signed.

$ curl -fsSL https://raw.githubusercontent.com/zenithventure/openclaw-agent-teams/main/bootstrap.sh | bash -s
2
As openclaw user

Install OpenClaw

Switch to the openclaw user and run the official installer. Onboarding walks you through channel setup, tokens, and API keys.

$ sudo -u openclaw -i
$ curl -fsSL https://openclaw.ai/install.sh | bash
3
Still as openclaw user · Replace operator with your team

Deploy your team

Pick any team and deploy it. The script clones the repo, runs setup, and deploys agent workspaces and skills. It also applies the OpenClaw 3.2 systemd workaround and reloads the gateway automatically — no separate patch step.

$ curl -fsSL https://raw.githubusercontent.com/zenithventure/openclaw-agent-teams/main/install-team.sh \
  | bash -s -- --team operator
4
Make it yours

Configure VISION, USER, and start

The team is on disk but dormant until you tell it what it's working on. Edit ~/.openclaw/shared/VISION.md (the team's mission), then any agent's USER.md (your name, timezone, GitHub username — they're all identical, edit one and copy). Set ANTHROPIC_API_KEY in ~/.openclaw/.env if you didn't pass --api-key. Then start:

$ openclaw start

Run it locally (macOS / Linux)

Already have OpenClaw installed, or want to try a team without a droplet. Skip the server steps and run the team's setup.sh directly.

Two commands. No server.

Install OpenClaw if you don't have it, then run any team's setup.sh. Files land in ~/.openclaw/ on your machine. On macOS make sure Node.js 22+ is on PATH (brew install node@22).

1
If you don't already have it

Install OpenClaw

Same official installer used on the droplet — works on macOS and Linux with Node.js 22+.

$ curl -fsSL https://openclaw.ai/install.sh | bash
2
Replace operator with any team name

Deploy a team

Clones the repo to /tmp, runs the team's setup.sh, lands files in ~/.openclaw/. Same idempotent script as the DigitalOcean path.

$ git clone --depth 1 https://github.com/zenithventure/openclaw-agent-teams.git /tmp/openclaw-teams \
  && bash /tmp/openclaw-teams/operator/setup.sh
3
Make it yours, then start

Configure VISION, USER, and start

Edit ~/.openclaw/shared/VISION.md and any agent's USER.md. Put your ANTHROPIC_API_KEY in ~/.openclaw/.env. Then openclaw start.

Fleet deploy with Ansible

For many droplets, declarative inventory, or repeatable rebuilds — the same flow, mirrored as two playbooks.

Two playbooks. Same result.

ansible/bootstrap.yml mirrors bootstrap.sh; ansible/openclaw-team.yml mirrors install-team.sh. Run them against your inventory and every droplet ends up in the same place as the shell flow. Requires Ansible 2.14+.

Don't have Ansible yet? Expand for install + sample inventory ↓

1. Install Ansible on your control machine

Pick whichever fits your OS. Any version ≥ 2.14 works.

$ brew install ansible # macOS
$ pipx install --include-deps ansible # Linux / cross-platform via pipx

Confirm with ansible --version. Full options in the official Ansible install guide ↗.

2. Clone this repo and create a hosts inventory

The -i hosts flag in the playbook commands below refers to a small text file listing your target droplets. Clone the repo first so the playbooks are on disk, then drop a file like this next to them:

$ git clone https://github.com/zenithventure/openclaw-agent-teams.git && cd openclaw-agent-teams

Then create a file called hosts in the repo root with your droplet IPs:

# hosts [droplets] team-a ansible_host=203.0.113.10 ansible_user=root team-b ansible_host=203.0.113.11 ansible_user=root

Use ansible_user=root on a freshly created droplet (before bootstrap.yml hardens it) — afterwards switch it to the admin user the bootstrap created. Verify connectivity:

$ ansible -i hosts droplets -m ping

When you see SUCCESS for each host, you're ready to run the playbooks below.

1
From your control machine · run from the repo root

Bootstrap the fleet

Hardens each droplet, creates the openclaw and claude users, installs Node.js 22, and provisions Caddy with TLS — for every host in -l droplets.

$ ansible-playbook -i hosts ansible/bootstrap.yml -l droplets \
  -e admin_user=szewong \
  -e domain=teams.example.com
2
Once OpenClaw is installed on each host

Deploy your team

Runs the team's setup.sh as the openclaw user on every host, applies the systemd workaround, and reloads the gateway. Pass -e anthropic_api_key=… to set the key in one shot.

$ ansible-playbook -i hosts ansible/openclaw-team.yml -l droplets \
  -e team=operator \
  -e anthropic_api_key=sk-ant-...

Playbook source and variable reference in ansible/. Need secrets out of .env or periodic state backups? See Advanced setup.

What it looks like running

Once configured, every 30 minutes the agents do a quick standup — each posts what they finished, what's next, and any blockers. Here's a realistic excerpt from the Dev team.

~/.openclaw/shared/standup-log.md
## 2026-05-23 — 14:30 — Standup 🔴 Lead - Status: triaging overnight issues - Triaged: #142 (Stripe webhook retries), #143 (CSV export bug) - Assigned: #142 → Coder - Next: split epic #138 into 3 sub-issues 🟡 Coder - Status: PR #144 in flight - Spawned Claude Code for #142 — branch fix/142-stripe-webhook-retries - Opened: PR #144 (closes #142) — tests pass locally - [HANDOFF] → Reviewer: PR #144 ready for review 🟢 Shipper - Status: monitoring v1.4.2 prod deploy (T+12min) - CI health: green - Deploy: v1.4.2 promoted to prod 14:18, error rate flat - Next: nothing scheduled 🔵 Reviewer - Status: reviewing PR #144 - Reviewed today: PR #141 approved - [BLOCKER] PR #144: missing test for the 3-retry path — requesting changes - Next: re-review once Coder re-spawns

Built for production

Every team follows the same battle-tested patterns.

🧩

DISC personality model

Four agents per team — Red (Dominance), Yellow (Influence), Green (Steadiness), Blue (Conscientiousness) — for balanced decision-making.

🔀

Idempotent installs

Every script is safe to re-run. Users are checked before creation, configs are merged not replaced, and existing data is preserved.

🧠

File-based memory

Agents persist context across sessions through daily memory files and a curated MEMORY.md. No external database required.

🔒

Secure by default

UFW firewall, fail2ban, SSH key-only auth, non-standard usernames, and TLS termination — all configured automatically by bootstrap.sh.

📋

Shared standards

STANDARDS.md governs session boot, memory management, safety rules, and group chat behavior. Consistent across every team.

🚀

First-run onboarding

BOOTSTRAP.md walks through VISION.md and USER.md setup on first run, then self-deletes. Zero manual configuration.

Curious about the file layout? Expand the team directory structure

Every team follows this layout. Learn one, understand them all. See _template/ for the canonical skeleton.

team-name/
  openclaw.json # agent definitions, tool permissions
  setup.sh # one-line installer
  agents/
    red-<role>/ # DISC: Dominance
      IDENTITY.md, SOUL.md, AGENTS.md
      USER.md, HEARTBEAT.md
    yellow-<role>/ # DISC: Influence
    green-<role>/ # DISC: Steadiness
    blue-<role>/ # DISC: Conscientiousness
  shared/
    VISION.md # mission, success criteria
    STANDARDS.md # behavioral standards
    BOOTSTRAP.md # first-run wizard
  skills/ # team-specific skills