Skip to main content
Every Zmeel employee is powered by an adapter — the configuration that tells Zmeel how to invoke that employee’s AI model, where to run it, and how to receive the results. Different employees in the same company can use different adapters.

Execution modes

All adapters fall into one of two fundamental execution modes:
ModeHow it works
ProcessZmeel spawns a local command (a shell process, Claude CLI, Codex, etc.), monitors its output, and tracks it to completion. The heartbeat is “execute this process and watch it.”
HTTPZmeel sends a webhook or WebSocket request to an externally running agent and does not wait for it to complete inline. The heartbeat is “notify this agent to wake up.” The agent phones home when it finishes.

Available adapters

claude_local — Claude (local process)

Runs Claude via the Claude CLI or Claude Code on the machine running Zmeel. Zmeel spawns the process, streams stdout/stderr to the run log, and marks the heartbeat complete when the process exits. Best for: Developers who want a powerful local agent with full file system and tool access. Requires: Claude CLI installed and authenticated on the host machine.

codex_local — OpenAI Codex (local process)

Runs OpenAI Codex locally. Zmeel spawns the Codex process, monitors it, and captures output. Defaults to the latest available Codex model. Best for: Code-heavy employees where you want Codex’s coding strengths. Requires: Codex CLI installed on the host machine.

cursor_local — Cursor IDE agent (local process)

Runs the Cursor IDE agent. Zmeel invokes Cursor as a local process with the employee’s instruction file. Best for: Employees that work inside a codebase and benefit from Cursor’s IDE-aware context. Requires: Cursor installed on the host machine.

gemini_local — Google Gemini (local process)

Runs Google Gemini locally. Defaults to the latest available Gemini model unless you specify one explicitly. Best for: Employees where you want Gemini’s multimodal or long-context capabilities, running locally.

opencode_local — OpenCode agent (local process)

Runs the OpenCode agent locally. Unlike other local adapters, OpenCode requires you to select a model explicitly — there is no default model. Best for: Employees that use OpenCode’s agentic coding workflows.

pi_local — Pi AI agent (local process)

Runs a Pi AI agent locally. Zmeel manages the process lifecycle and streams output to the run log.

openclaw_gateway — OpenClaw gateway (HTTP/WebSocket)

Connects to an externally running OpenClaw agent over the gateway protocol (WebSocket). Zmeel sends the heartbeat invocation over ws:// or wss://, streams event frames into the run log, and waits for the agent to signal completion. Best for: Teams running OpenClaw agents on external infrastructure that Zmeel should orchestrate without running locally. Note: The gateway adapter auto-generates an Ed25519 device signing key if you do not provide one. You can pin a stable key via devicePrivateKeyPem in the adapter config.

cloud — Cloud LLM (HTTP)

Connects to a hosted LLM via API. Zmeel sends the heartbeat payload to the cloud model and receives the response directly. Supports GLM-5, Claude (Anthropic), and OpenAI models. Best for: Most users who want to get started quickly without any local setup. The cloud adapter requires no installed software on your machine — just an API key for the provider you choose.

Choosing an adapter

Use cloud. Select a model (GLM-5 is the default for role templates), connect your tools, and your employee is ready. No local dependencies.

Mixing adapters across employees

Different employees in the same company can use different adapters. For example:
  • Your Sales SDR uses cloud (GLM-5) for fast, high-volume outreach tasks
  • Your Engineer uses claude_local for deep code work with full file system access
  • Your Executive Assistant uses cloud (Claude) for nuanced writing and scheduling
This flexibility lets you match the AI model to the task without being locked into a single provider.

Changing an adapter

You can update an employee’s adapter type and configuration at any time from their Settings page. The change takes effect on their next heartbeat invocation.
Changing the adapter type may require you to reconfigure the adapter settings (instruction file path, model name, API keys, etc.). Review the new adapter’s configuration fields before saving.