agent-workflow-patterns

Agent Workflow Patterns

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "agent-workflow-patterns" with this command: npx skills add vanman2024/ai-dev-marketplace/vanman2024-ai-dev-marketplace-agent-workflow-patterns

Agent Workflow Patterns

Purpose: Provide production-ready agent architectures, workflow patterns, and loop control strategies for building autonomous AI systems with Vercel AI SDK.

Activation Triggers:

  • Building autonomous AI agents

  • Implementing multi-step reasoning

  • Creating agent workflows

  • Tool orchestration and coordination

  • Loop control and iteration management

  • Multi-agent system architectures

  • ReAct (Reasoning + Acting) patterns

Key Resources:

  • templates/react-agent.ts

  • ReAct agent pattern

  • templates/multi-agent-system.ts

  • Multiple specialized agents

  • templates/workflow-orchestrator.ts

  • Workflow coordination

  • templates/loop-control.ts

  • Iteration and safeguards

  • templates/tool-coordinator.ts

  • Tool orchestration

  • scripts/validate-agent.sh

  • Validate agent configuration

  • examples/

  • Production agent implementations (RAG agent, SQL agent, etc.)

Core Agent Patterns

  1. ReAct Agent (Reasoning + Acting)

When to use: Complex problem-solving requiring iterative thought and action

Template: templates/react-agent.ts

Pattern:

async function reactAgent(task: string, maxIterations: number = 5) { const tools = { /* tool definitions */ } let iteration = 0

while (iteration < maxIterations) { // Reasoning step const thought = await generateText({ model: openai('gpt-4o') messages: [ { role: 'system', content: 'Think step-by-step...' } { role: 'user', content: task } ] })

// Acting step (tool calls)
const action = await generateText({
  model: openai('gpt-4o')
  tools
  toolChoice: 'auto'
  messages: [/* ... */]
})

// Check if task complete
if (isComplete(action)) break
iteration++

}

return result }

Best for: Research, analysis, complex planning

  1. Multi-Agent System

When to use: Complex domains requiring specialized expertise

Template: templates/multi-agent-system.ts

Pattern:

  • Coordinator agent routes tasks

  • Specialist agents handle specific domains

  • Result aggregation and synthesis

Best for: Multi-domain problems, parallel task execution

  1. Workflow Orchestration

When to use: Pre-defined sequences of steps

Template: templates/workflow-orchestrator.ts

Pattern:

  • Define workflow steps

  • Execute sequentially with error handling

  • State management between steps

  • Conditional branching

Best for: Structured processes, pipelines

Loop Control Strategies

  1. Iteration Limits

const config = { maxIterations: 10 onMaxIterations: 'return-last' | 'throw-error' }

Prevents: Infinite loops

  1. Cost Limits

const config = { maxTokens: 10000 onMaxTokens: 'graceful-stop' }

Prevents: Runaway costs

  1. Time Limits

const config = { maxDuration: 30000, // 30 seconds onTimeout: 'return-partial' }

Prevents: Long-running operations

  1. Quality Gates

const config = { stopCondition: (result) => result.confidence > 0.9 }

Ensures: Quality outputs

Tool Orchestration

Sequential Tool Execution

const tools = { search: tool({ /* ... / }) analyze: tool({ / ... / }) summarize: tool({ / ... */ }) }

// AI decides order and usage const result = await generateText({ model: openai('gpt-4o') tools maxToolRoundtrips: 5 })

Parallel Tool Execution

const results = await Promise.all([ callTool('search', { query: 'topic1' }) callTool('search', { query: 'topic2' }) callTool('search', { query: 'topic3' }) ])

Agent State Management

interface AgentState { conversation: Message[] context: Record<string, any> toolResults: ToolResult[] iteration: number }

class StatefulAgent { private state: AgentState

async execute(task: string) { while (!this.isComplete()) { await this.step() this.updateState() } return this.state } }

Production Best Practices

  1. Error Recovery

try { result = await agent.execute(task) } catch (error) { if (error.code === 'MAX_ITERATIONS') { return agent.getBestSoFar() } throw error }

  1. Monitoring

agent.on('iteration', ({ count, result }) => { metrics.record('agent.iteration', { count }) })

  1. Safeguards
  • Rate limiting

  • Input validation

  • Output sanitization

  • Cost tracking

Common Agent Architectures

  1. RAG Agent

Example: examples/rag-agent.ts

Retrieves information and answers questions

  1. SQL Agent

Example: examples/sql-agent.ts

Queries databases using natural language

  1. Research Agent

Example: examples/research-agent.ts

Gathers and synthesizes information

  1. Code Agent

Example: examples/code-agent.ts

Writes and debugs code

Resources

Templates:

  • react-agent.ts

  • ReAct pattern implementation

  • multi-agent-system.ts

  • Multi-agent coordination

  • workflow-orchestrator.ts

  • Workflow execution

  • loop-control.ts

  • Iteration safeguards

  • tool-coordinator.ts

  • Tool orchestration

Scripts:

  • validate-agent.sh
  • Agent config validation

Examples:

  • rag-agent.ts

  • Complete RAG agent

  • sql-agent.ts

  • Natural language SQL

  • research-agent.ts

  • Information gathering

  • code-agent.ts

  • Code generation

SDK Version: Vercel AI SDK 5+ Agent Frameworks: Built-in tools, MCP integration

Best Practice: Start simple (single tool), add complexity as needed

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

document-parsers

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

stt-integration

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

model-routing-patterns

No summary provided by upstream source.

Repository SourceNeeds Review