@synergenius

Flow Weaver

Deterministic workflows for OpenClaw. Compile once, run reliably forever.

当前版本
v0.1.7
code-plugin社区source-linked

Flow Weaver Plugin for OpenClaw

Native OpenClaw plugin that brings Flow Weaver's deterministic workflow engine to your AI assistant. Build, validate, compile, and run workflows through natural conversation.

Website | GitHub | Studio | npm | npm core | Discord

How it Works

The plugin exposes two tools to OpenClaw: fw_search and fw_execute. The agent searches for the right tool, then executes it. This keeps the system prompt small (2 tool schemas instead of 45+) while making every Flow Weaver capability available.

User: "Build me a workflow that validates input and transforms it"

OpenClaw calls: fw_search({ query: "create workflow" })
  -> Returns: fw_create (scaffold from template)

OpenClaw calls: fw_execute({ tool: "fw_create", params: { template: "sequential", filePath: "workflow.ts" }})
  -> Workflow created

OpenClaw calls: fw_execute({ tool: "fw_diagram", params: { filePath: "workflow.ts" }})
  -> ASCII diagram shown in chat

Installation

openclaw plugins install @synergenius/flow-weaver-openclaw-plugin

Or from source:

git clone https://github.com/synergenius-fw/flow-weaver-openclaw-plugin
cd flow-weaver-openclaw-plugin
npm install && npm run build
openclaw plugins install ./

Configuration

Add to your ~/.openclaw/openclaw.json:

{
  "plugins": {
    "entries": {
      "flow-weaver": { "enabled": true }
    }
  }
}

No other configuration needed. The plugin auto-discovers installed Flow Weaver packs.

Available Tools

All fw CLI commands have matching tools. Use fw_search to discover them:

Workflow Lifecycle

ToolCLI EquivalentDescription
fw_createfw createCreate workflow from template
fw_validatefw validateValidate workflow graph
fw_compilefw compileCompile to deterministic TypeScript
fw_runfw runExecute workflow with params
fw_diagramfw diagramGenerate ASCII/SVG/HTML diagram
fw_describefw describeDescribe structure (JSON/text/mermaid)
fw_difffw diffCompare two workflows semantically
fw_modifyfw modifyAdd/remove nodes and connections
fw_statusfw statusReport stub vs implemented nodes
fw_implementfw implementReplace stub with implementation
fw_stripfw stripRemove generated code
fw_migratefw migrateMigrate to current syntax

Query & Documentation

ToolCLI EquivalentDescription
fw_queryfw queryQuery nodes, connections, topology
fw_docsfw docsBrowse reference documentation
fw_contextfw contextLoad LLM context bundle
fw_templatesfw templatesList available templates
fw_grammarfw grammarOutput annotation grammar (EBNF)

Marketplace

ToolCLI EquivalentDescription
fw_market_searchfw market searchSearch npm for packs
fw_market_installfw market installInstall a pack
fw_market_uninstallfw market uninstallRemove a pack
fw_market_listfw market listList installed packs
fw_market_initfw market initScaffold new pack project
fw_market_packfw market packGenerate/validate manifest
fw_market_publishfw market publishPublish to npm

Platform & Cloud

ToolCLI EquivalentDescription
fw_loginfw loginAuthenticate with platform
fw_logoutfw logoutClear credentials
fw_authfw authCheck auth status
fw_accountfw accountShow account details
fw_deployfw deployDeploy to cloud
fw_undeployfw undeployRemove deployment
fw_cloud_statusfw cloud-statusShow deployments
fw_connectfw connectConnect device to platform
fw_apikeyfw apikeyManage API keys
fw_aifw aiManage AI provider credentials
fw_orgfw orgManage organizations

Deployment

ToolCLI EquivalentDescription
fw_exportfw exportExport as serverless function
fw_openapifw openapiGenerate OpenAPI spec
fw_doctorfw doctorCheck environment health
fw_initfw initCreate new project

Pack Integration

When you install a Flow Weaver pack (e.g. @synergenius/flow-weaver-pack-weaver), its tools automatically become available through fw_search and fw_execute on the next Gateway restart.

# In your OpenClaw workspace
npm install @synergenius/flow-weaver-pack-weaver
# Restart OpenClaw Gateway
# Pack tools now available: fw_weaver_run, fw_weaver_swarm, etc.

Architecture

OpenClaw Agent
  |
  |-- fw_search(query) --> Internal Registry (45+ tools)
  |                              |
  |-- fw_execute(tool, params) --+-- Core tools (runCommand API)
                                 |-- Pack MCP tools (handleToolCall)
                                 +-- Pack CLI commands (handleCommand)
  • Two-tool pattern: Only fw_search and fw_execute are registered with OpenClaw, keeping the system prompt minimal
  • Internal registry: All tools stored server-side with searchable names, descriptions, and tags
  • Pack auto-discovery: Scans workspace node_modules for flowweaver.manifest.json at startup
  • Path validation: All file operations validated to stay within workspace boundaries
  • Atomic writes: Workflow metadata uses write-then-rename for crash safety

Slash Commands

Quick-access commands that don't require the LLM:

CommandDescription
/fw-workflowsList all workflows
/fw-run <name>Run a workflow
/fw-diagram <name>Show diagram
/fw-deploy <name>Deploy to cloud
/fw-costsShow AI token usage
/fw-statusShow deployments
/fw-loginAuthenticate

HTTP Routes (Studio Bridge)

The plugin exposes HTTP routes for the Flow Weaver Studio to connect:

RouteMethodDescription
/flow-weaver/workflowsGETList workflows
/flow-weaver/workflows/:idGETGet workflow details
/flow-weaver/workflows/:idPUTUpdate workflow
/flow-weaver/webhooks/:idPOSTTrigger workflow via webhook

Testing Proxy

A test proxy (proxy.mjs) is included for development. It translates OpenAI chat completions API requests into Claude CLI calls, enabling manual testing of the plugin through OpenClaw.

# Live mode - auto-sends to Claude CLI
node proxy.mjs --port 8787

# Approval mode - queue requests for manual review
node proxy.mjs --port 8787 --approval

# Dry-run mode - log requests without calling Claude
node proxy.mjs --port 8787 --dry-run

Configure OpenClaw to use the proxy:

{
  "models": {
    "providers": {
      "claude-proxy": {
        "baseUrl": "http://host.docker.internal:8787",
        "api": "openai-completions",
        "models": [{ "id": "claude", "name": "Claude via Proxy", "contextWindow": 200000, "maxTokens": 64000 }]
      }
    }
  }
}

Development

npm install           # Install dependencies
npm run build         # Compile TypeScript
npm test              # Run 178 tests
npm run lint          # ESLint check
npm run typecheck     # TypeScript strict check

Requirements

  • OpenClaw >= 2026.3.0
  • Node.js >= 22
  • @synergenius/flow-weaver >= 0.32.2

License

MIT

This plugin requires @synergenius/flow-weaver as a peer dependency, which is licensed under the Flow Weaver Library License. Use of this plugin is subject to that dependency's license terms.

源码与版本

源码仓库

synergenius-fw/flow-weaver-openclaw-plugin

打开仓库

源码提交

56113df824ae2cfc5048ec492b202a0878a005e1

查看提交

安装命令

openclaw plugins install clawhub:@synergenius/flow-weaver-openclaw

元数据

  • 包名: @synergenius/flow-weaver-openclaw
  • 创建时间: 2026/04/08
  • 更新时间: 2026/05/21
  • 执行代码:
  • 源码标签: main

兼容性

  • 构建于 OpenClaw: 2026.4.8
  • 插件 API 范围: >=2026.3.0
  • 标签: latest
  • 文件数: 46