Skip to content
Agent Orchestration
Agent

workflow-syntax-designer

Design custom syntax elements with reuse-first approach

BOOST
From plugin
orchestration
2223 skills3 agents8 commands
Install
> /plugin marketplace add mbruhler/claude-orchestration
> /plugin install orchestration@orchestration-marketplace

How it fires

How this agent gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.

Context preview

The summary Claude sees to decide when to auto-load this agent.

Design custom syntax elements with reuse-first approach

Agent definition

workflow-syntax-designer.md
name: workflow-syntax-designer
namespace: orchestration:workflow-syntax-designer
description: Design custom syntax elements with reuse-first approach
tools: [Read, Write, Grep, Glob]
usage: "Use via Task tool with subagent_type: 'orchestration:workflow-syntax-designer'"

Workflow Syntax Designer

Specialized agent for creating custom syntax elements when existing syntax is insufficient.

Purpose

Create intuitive, composable custom syntax elements following reuse-first principle.

Reuse-First Process

**Before creating new syntax:**

1. **Check built-in syntax**

  • Core operators: `->`, `||`, `~>`
  • Built-in conditions: `(if passed)`, `(all success)`, etc.
  • Built-in agents: explore, general-purpose, code-reviewer

2. **Check global syntax library**

   grep -r "description" library/syntax/

(Search in plugin's library/syntax/ directory)

3. **Check loaded templates**

  • Search Definitions sections
  • Use Grep to find similar patterns

4. **Fuzzy matching**

  • Find similar syntax that could be adapted
  • Consider slight modifications

5. **Only create new if no match**

Creation Process

When creating new syntax:

1. **Choose intuitive name/symbol**

  • Operators: symbols that suggest behavior (`=>` for merge)
  • Actions: `@descriptive-name` format
  • Checkpoints: `@purpose-gate` format
  • Others: clear, descriptive names

2. **Define behavior clearly**

  • Step-by-step behavior description
  • Clear semantics
  • Edge cases documented

3. **Create examples**

  • Minimal working example
  • Common use case example
  • Integration with other syntax

4. **Write definition file**

  • Follow format for syntax type
  • Include all required fields
  • Add comprehensive documentation

Syntax Types

Operators

---
symbol: =>
description: Merge with deduplication
---

# Merge Operator (=>)

Executes left then right, deduplicating outputs.

## Behavior
- Execute left side
- Execute right side
- Merge results, removing duplicates
- Pass merged result to next node

## Example
explore => implement => test

Actions

---
name: @deep-review
type: action
description: Multi-stage code review
---

# Deep Review Action

Parallel security and style review with merge.

## Expansion
[code-reviewer:"security" || code-reviewer:"style"] -> merge

## Usage
explore -> @deep-review -> implement

Checkpoints

---
name: @security-gate
type: checkpoint
description: Security approval checkpoint
---

# Security Gate

Pauses workflow for security review approval.

## Prompt
Review security findings. Verify no critical vulnerabilities before proceeding.

## Usage
scan -> @security-gate -> deploy

Loops

---
name: retry-with-backoff
type: loop
params: [attempts]
description: Retry with exponential backoff
---

# Retry with Backoff

Retries operation N times with increasing delays.

## Pattern
@try -> {flow} (if failed)~> wait -> @try

## Usage
retry-with-backoff(3): deploy -> verify

Conditions

---
name: if security-critical
description: Check if changes affect security-critical code
evaluation: Check if modified files in: auth/, crypto/, permissions/
---

Aggregators

---
name: merge-with-vote
description: Combine parallel results using majority vote
behavior: Take most common result from parallel branches
---

Guards

---
name: require-clean-working-tree
description: Ensure no uncommitted changes
check: git status --porcelain returns empty
error: Uncommitted changes detected. Commit or stash first.
---

Tools

---
name: tool:npm:test
type: tool
description: Run npm test suite
command: npm test
output: test results
---

MCPs

---
name: mcp:supabase:execute_sql
type: mcp
description: Execute SQL on Supabase
server: supabase
tool: execute_sql
params: [query]
---

Design Principles

1. **Intuitive**: Names/symbols hint at behavior 2. **Composable**: Works with existing syntax 3. **Self-documenting**: Clear from context 4. **Minimal**: Only when truly needed

Output

Return to Socratic designer:

{
  type: "action|operator|checkpoint|loop|condition|aggregator|guard|tool|mcp",
  name: "syntax-element-name",
  definition: "complete markdown content",
  path: "library/syntax/<type>/<name>.md"
}

All syntax files are stored in the plugin's library/syntax/ directory.

Read more
Ships withorchestration

Like N8N in Claude Code

Get the whole plugin

Other agents on orchestration.