Skip to main content

Add to Coding Harness

Smithers works as a standalone library, but it’s most powerful when integrated with your AI coding harness. Choose your setup:

Claude Code Plugin

The official plugin lets Claude generate and run Smithers workflows.
/plugin marketplace add evmts/smithers
/plugin install smithers@smithers
Plugin commands are coming soon. Check the GitHub repo for availability.
Now ask Claude:
Create a workflow that monitors CI, fixes failures, and escalates after 3 attempts.
Claude generates the .tsx file. Review it like any other code.

OpenCode

The OpenCode plugin gives you a Smithers orchestration agent with dedicated tools for workflow management.

Installation

# From OpenCode CLI
opencode plugin add evmts/smithers
Or manually add to your opencode.json:
{
  "plugins": ["evmts/smithers"]
}

What You Get

The plugin provides:
ToolDescription
smithers_discoverFind workflow scripts in .smithers/
smithers_createCreate new workflow files (validates syntax)
smithers_runStart workflow execution
smithers_resumeResume incomplete execution
smithers_statusGet execution phase/step tree
smithers_framesGet execution output/logs
smithers_cancelCancel running execution
smithers_globFind files by pattern
smithers_grepSearch file contents

Included Agents

The plugin includes specialized agents:
  • @smithers - Primary agent that creates .tsx workflows from plans
  • @planner - Creates detailed plans for complex tasks
  • @explorer - Explores codebase structure
  • @librarian - Smithers API documentation expert
  • @oracle - Architecture advice and debugging
  • @monitor - Watches running executions

Usage

> Create a workflow that fixes failing tests and opens a PR

[smithers_discover] Checking for existing workflows...
[smithers_create] Creating .smithers/fix-tests.tsx...
[smithers_run] Started execution: exec_abc123
The agent creates React TSX workflows, never writes application code directly.

Permissions

The plugin uses a restrictive permission model by default:
  • ✅ Read files (except .env)
  • ✅ All smithers_* tools
  • ✅ Delegation to specialized agents
  • ❌ Direct file edits (handled by Claude agents in workflows)
  • ❌ Bash commands (handled by Claude agents in workflows)

Cursor

Add the Smithers skill to your project: .cursor/rules/smithers.mdc (or .cursorrules for older Cursor versions):
---
description: Create and monitor multi-agent AI orchestrations using Smithers framework
globs: ["**/*.tsx", "**/smithers/**"]
---

# Smithers Orchestrator

When asked to create multi-agent workflows, orchestrations, or pipelines:

1. Use `smithers-orchestrator` package
2. Structure as React TSX with Phase/Step/Claude components
3. Always use createSmithersDB for persistence
4. Handle resumption with db.execution.findIncomplete()

Example structure:
\`\`\`tsx
import { createSmithersRoot, createSmithersDB, SmithersProvider, Ralph, Phase, Step, Claude } from "smithers-orchestrator";

const db = createSmithersDB({ path: ".smithers/workflow" });
const executionId = db.execution.start("Name", "file.tsx");

function Workflow() {
  return (
    <SmithersProvider db={db} executionId={executionId}>
      <Ralph id="workflow" condition={() => !isDone} maxIterations={10}>
        <Phase name="phase1">
          <Step name="step1">
            <Claude>Task description</Claude>
          </Step>
        </Phase>
      </Ralph>
    </SmithersProvider>
  );
}
\`\`\`

Amp

Add the Smithers skill to your Amp setup: .amp/skills/smithers/SKILL.md:
---
description: Create and monitor multi-agent AI orchestrations using Smithers framework. Use when user wants to coordinate multiple AI agents, create complex workflows, build agent pipelines, or mentions "smithers", "multi-agent", "orchestration", "workflow", "agent coordination".
---

# Smithers Orchestrator Skill

Use `smithers-orchestrator` to create React-based agent workflows with Phase/Step/Claude components. Always use createSmithersDB for persistence.
Or install from the skill registry (coming soon):
amp skill add evmts/smithers

MCP Server (Coming Soon)

MCP (Model Context Protocol) server integration is planned for a future release. This will allow running Smithers as an MCP server for any compatible client.

Standalone CLI

Run workflows directly without any harness:
# Run a workflow
smithers workflow.tsx

# With options
smithers workflow.tsx --resume --verbose

# Database commands
smithers db executions
smithers db state --execution-id <execution-id>
smithers db stats

Environment Variables

All integrations use:
VariableRequiredDescription
ANTHROPIC_API_KEYYesClaude API key
SMITHERS_DB_PATHNoDefault: .smithers/db
SMITHERS_LOG_LEVELNodebug, info, warn, error

Next Steps