From 3bea1c3d2b716360cc43cdeb35699ab1e9f3d64b Mon Sep 17 00:00:00 2001 From: Hermes Pipeline Date: Thu, 6 Aug 2026 14:38:54 +0000 Subject: [PATCH] Add Skill: branching-agent-pattern Extracted from: https://github.com/jwwelbor/AgentMap.git Score: 1.0 --- skills/branching-agent-pattern/SKILL.md | 101 +++++++++++++++++++ skills/branching-agent-pattern/commands.md | 6 ++ skills/branching-agent-pattern/examples.md | 10 ++ skills/branching-agent-pattern/metadata.json | 31 ++++++ skills/branching-agent-pattern/tests.md | 9 ++ 5 files changed, 157 insertions(+) create mode 100644 skills/branching-agent-pattern/SKILL.md create mode 100644 skills/branching-agent-pattern/commands.md create mode 100644 skills/branching-agent-pattern/examples.md create mode 100644 skills/branching-agent-pattern/metadata.json create mode 100644 skills/branching-agent-pattern/tests.md diff --git a/skills/branching-agent-pattern/SKILL.md b/skills/branching-agent-pattern/SKILL.md new file mode 100644 index 0000000..8c37c09 --- /dev/null +++ b/skills/branching-agent-pattern/SKILL.md @@ -0,0 +1,101 @@ +--- +name: branching-agent-pattern +version: 1.0.0 +description: Define and execute AI agent workflows using CSV-based declarative definitions + with configurable branching logic +inputs: +- 'CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, + next_node, on_failure, prompt, input_fields, output_field' +- LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml +- Storage backend configuration in agentmap_config_storage.yaml +steps: +- Define workflow graph in CSV with nodes representing agent steps and their connections + (next_node, on_failure) +- Configure BranchingAgent with customizable success/failure values and fallback fields + in the context dictionary +- Initialize the agent runtime with ensure_initialized() and configure execution tracking + and state adapter services +- Execute the workflow using agentmap run with appropriate inputs and monitor the + execution trace +outputs: +- Executed workflow with results stored in the specified output_field +- Detailed execution trace showing success/failure decisions at each branching point +- Updated workflow state persisted in the configured storage backend +tags: [] +metadata: + source_repo: https://github.com/jwwelbor/AgentMap.git + extracted_at: '' + confidence: 0.95 +--- + +# branching-agent-pattern + +Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic + +## Setup + +**Dependencies:** + +```text +pip install langgraph>=1.0.0 langchain-core>=0.3.0 pyyaml>=6.0.0 fastapi>=0.111.0 uvicorn>=0.34.3 +``` + +**Setup steps:** + +1. Install AgentMap: pip install agentmap[all] +1. Configure llm providers in agentmap_config.yaml (OpenAI, Anthropic, Google models) +1. Create CSV workflow files with graph definitions +1. Initialize runtime with ensure_initialized() +1. Run workflow with agentmap run --pretty + +## Key Files + +- `agentmap_config.yaml - Main configuration with LLM and storage settings` +- `agentmap_config_storage.yaml - Storage backend configuration` +- `hello_world.csv - Sample workflow demonstrating basic agent chain` +- `examples/host_integration/custom_agents.py - Custom agent implementations with host service integration` + +## Steps + +1. Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure) +2. Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary +3. Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services +4. Execute the workflow using agentmap run with appropriate inputs and monitor the execution trace + +## Implementation Details + +```python +CSV format: graph_name,node_name,agent_type,next_node,on_failure,prompt,input_fields,output_field +``` + +```python +BranchingAgent context example: {'input_fields': ['success'], 'output_field': 'result', 'success_values': ['PASSED', 'COMPLETED']} +``` + +```python +Execution command: agentmap run hello_world.csv --pretty +``` + +## Inputs + +- CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field +- LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml +- Storage backend configuration in agentmap_config_storage.yaml + +## Outputs + +- Executed workflow with results stored in the specified output_field +- Detailed execution trace showing success/failure decisions at each branching point +- Updated workflow state persisted in the configured storage backend + +## Failure Modes + +- Invalid CSV format causing parsing errors during workflow loading +- Missing or misconfigured LLM provider settings leading to execution failures +- Storage backend unavailable or misconfigured preventing workflow persistence +- Agent execution timeout due to long-running operations or infinite loops + +## Source + +Extracted from: [https://github.com/jwwelbor/AgentMap.git](https://github.com/jwwelbor/AgentMap.git) +Confidence: 0.95 diff --git a/skills/branching-agent-pattern/commands.md b/skills/branching-agent-pattern/commands.md new file mode 100644 index 0000000..1de0b13 --- /dev/null +++ b/skills/branching-agent-pattern/commands.md @@ -0,0 +1,6 @@ +# Commands: branching-agent-pattern + +## Available Commands + +- `/skill branching-agent-pattern` — Load this skill +- `/run branching-agent-pattern` — Execute workflow diff --git a/skills/branching-agent-pattern/examples.md b/skills/branching-agent-pattern/examples.md new file mode 100644 index 0000000..b89992f --- /dev/null +++ b/skills/branching-agent-pattern/examples.md @@ -0,0 +1,10 @@ +# Examples: branching-agent-pattern + +## Usage Example + +```python +# How to use this skill +# Inputs: CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field, LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml, Storage backend configuration in agentmap_config_storage.yaml +# Process: Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure) → Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary → Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services +# Outputs: Executed workflow with results stored in the specified output_field, Detailed execution trace showing success/failure decisions at each branching point, Updated workflow state persisted in the configured storage backend +``` diff --git a/skills/branching-agent-pattern/metadata.json b/skills/branching-agent-pattern/metadata.json new file mode 100644 index 0000000..25a8ddf --- /dev/null +++ b/skills/branching-agent-pattern/metadata.json @@ -0,0 +1,31 @@ +{ + "name": "branching-agent-pattern", + "version": "1.0.0", + "goal": "Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic", + "inputs": [ + "CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field", + "LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml", + "Storage backend configuration in agentmap_config_storage.yaml" + ], + "steps": [ + "Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure)", + "Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary", + "Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services", + "Execute the workflow using agentmap run with appropriate inputs and monitor the execution trace" + ], + "outputs": [ + "Executed workflow with results stored in the specified output_field", + "Detailed execution trace showing success/failure decisions at each branching point", + "Updated workflow state persisted in the configured storage backend" + ], + "failure_modes": [ + "Invalid CSV format causing parsing errors during workflow loading", + "Missing or misconfigured LLM provider settings leading to execution failures", + "Storage backend unavailable or misconfigured preventing workflow persistence", + "Agent execution timeout due to long-running operations or infinite loops" + ], + "confidence": 0.95, + "explanation": "The BranchingAgent pattern provides a reusable framework for creating conditional AI workflows. The CSV-based workflow definition allows defining complex agent graphs declaratively, while the BranchingAgent handles dynamic branching based on success/failure conditions with customizable value sets. This pattern can be adapted to various use cases including task routing, error handling, and conditional execution paths across different domains.", + "source_repo": "https://github.com/jwwelbor/AgentMap.git", + "score": 1.0 +} \ No newline at end of file diff --git a/skills/branching-agent-pattern/tests.md b/skills/branching-agent-pattern/tests.md new file mode 100644 index 0000000..d2c51e8 --- /dev/null +++ b/skills/branching-agent-pattern/tests.md @@ -0,0 +1,9 @@ +# Tests: branching-agent-pattern + +## Test Checklist + +- [ ] Workflow has at least 3 steps +- [ ] All inputs are defined +- [ ] All outputs are defined +- [ ] Failure modes are documented +- [ ] Skill can be loaded without errors