Skip to main content
OpenClaw is a local-first personal agent and gateway that connects messaging channels, browser, files, and shell to LLMs. It extends through plugins, skills (distributed via ClawHub), and MCP servers, and acts as both an MCP client and an MCP server. Smithers supports both directions:
  • OpenClaw drives Smithers through the native Smithers plugin and MCP tools.
  • Smithers drives OpenClaw through OpenClawAgent inside workflow tasks.

Install the native plugin

The fastest path is mcp add --agent openclaw. It installs the native Smithers OpenClaw plugin into ~/.openclaw/extensions/smithers/, enables it in ~/.openclaw/openclaw.json, and registers the Smithers MCP server as a baseline tool surface:
The plugin gives OpenClaw tools to run, inspect, approve, and read Smithers workflow outputs. It also adds smithers_create_workflow, smithers_eval, and smithers_optimize, plus a bundled smithers-orchestrate skill that nudges OpenClaw toward reusable, eval-backed workflows instead of repeated one-off turns.

Register MCP by hand

If you do not want the native plugin, OpenClaw stores MCP servers in ~/.openclaw/openclaw.json under mcp.servers. Add Smithers as a stdio server:
Or manage it from the CLI:
The semantic tools (list_workflows, run_workflow, watch_run, resolve_approval, and the rest) become available to OpenClaw’s agent. Full reference: MCP Server.

Optional generated skill files

OpenClaw discovers skills from ~/.agents/skills/ (among other locations), which is exactly where the cross-agent command installs them:
OpenClaw’s own skill registry is ClawHub (openclaw skills install <slug>); the generated Smithers CLI skill files install directly into the skills directory rather than through the hub.

Smithers runs OpenClaw too

In the other direction, Smithers can spawn OpenClaw as the worker for a workflow task through OpenClawAgent:
bunx smithers-orchestrator init detects an authenticated OpenClaw runtime and can scaffold it in .smithers/agents.ts even when Claude Code or Codex are not available. The adapter shells out to openclaw agent --message <prompt> --json; pass session or a per-call resumeSession to route work into a known OpenClaw conversation.

See also