Compare commits

..

1 Commits

Author SHA1 Message Date
Hermes Pipeline 3bea1c3d2b Add Skill: branching-agent-pattern
Extracted from: https://github.com/jwwelbor/AgentMap.git
Score: 1.0
2026-08-06 14:38:54 +00:00
9 changed files with 149 additions and 139 deletions
+101
View File
@@ -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 <csv_file> --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
@@ -0,0 +1,6 @@
# Commands: branching-agent-pattern
## Available Commands
- `/skill branching-agent-pattern` — Load this skill
- `/run branching-agent-pattern` — Execute workflow
@@ -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
```
@@ -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
}
@@ -1,4 +1,4 @@
# Tests: local-document-research-with-traceable-citations
# Tests: branching-agent-pattern
## Test Checklist
@@ -1,82 +0,0 @@
---
name: local-document-research-with-traceable-citations
version: 1.0.0
description: Enable users to import local documents, asynchronously process them into
an indexed knowledge base, and obtain AI-generated answers that cite specific page
locations and OCR evidence.
inputs:
- Local document files (PDF, DOCX, PPTX, XLSX, images, TXT)
- Configured LLM API endpoint and keys (via .env or settings)
- Optional web search service config if enabled
- Local OCR model cache (downloaded on first use)
steps:
- Import documents into a project; files are queued for asynchronous processing.
- Convert non-PDF formats (DOCX, PPTX, XLSX) to PDF using native Office or LibreOffice
fallback.
- Run OCR (PaddleOCR) on PDF pages/images to extract text, page numbers, polygons,
and confidence scores.
- Chunk text and generate embeddings; publish to LanceDB hybrid index (dense vector
+ full-text) only when fully processed.
- User starts a research session or branch; Leader agent analyzes query.
- Hybrid RAG retrieves candidate chunks from ready documents; dynamic material scope
ensures no half-indexed docs.
- Leader delegates tasks to sub-agents (researcher, reviewer, writer) via constrained
task capability; each delegation logs start, completion, duration, and evidence.
- Generate answer that references only actually used evidence; citations include document
ID, page, coordinates.
- User clicks citation to open original document and view highlighted OCR location.
outputs:
- Project with indexed document library (SQLite metadata + LanceDB vectors)
- AI answers with verifiable citations to source pages
- Evidence preview with page image and OCR highlight polygons
- Persistent session history, branches, and long-term memory
tags: []
metadata:
source_repo: https://github.com/0verL1nk/PaperSage.git
extracted_at: ''
confidence: 0.85
---
# local-document-research-with-traceable-citations
Enable users to import local documents, asynchronously process them into an indexed knowledge base, and obtain AI-generated answers that cite specific page locations and OCR evidence.
## Steps
1. Import documents into a project; files are queued for asynchronous processing.
2. Convert non-PDF formats (DOCX, PPTX, XLSX) to PDF using native Office or LibreOffice fallback.
3. Run OCR (PaddleOCR) on PDF pages/images to extract text, page numbers, polygons, and confidence scores.
4. Chunk text and generate embeddings; publish to LanceDB hybrid index (dense vector + full-text) only when fully processed.
5. User starts a research session or branch; Leader agent analyzes query.
6. Hybrid RAG retrieves candidate chunks from ready documents; dynamic material scope ensures no half-indexed docs.
7. Leader delegates tasks to sub-agents (researcher, reviewer, writer) via constrained task capability; each delegation logs start, completion, duration, and evidence.
8. Generate answer that references only actually used evidence; citations include document ID, page, coordinates.
9. User clicks citation to open original document and view highlighted OCR location.
## Inputs
- Local document files (PDF, DOCX, PPTX, XLSX, images, TXT)
- Configured LLM API endpoint and keys (via .env or settings)
- Optional web search service config if enabled
- Local OCR model cache (downloaded on first use)
## Outputs
- Project with indexed document library (SQLite metadata + LanceDB vectors)
- AI answers with verifiable citations to source pages
- Evidence preview with page image and OCR highlight polygons
- Persistent session history, branches, and long-term memory
## Failure Modes
- OCR quality low for scanned images leading to poor extraction
- Missing Office/LibreOffice causes conversion failure for Office docs
- Interrupted indexing leaves documents unpublished and excluded from retrieval
- LLM API outage or misconfiguration yields no answer
- Citation coordinates mismatch due to chunk drift
- Sub-agent recursion if constraints not enforced
## Source
Extracted from: [https://github.com/0verL1nk/PaperSage.git](https://github.com/0verL1nk/PaperSage.git)
Confidence: 0.85
@@ -1,6 +0,0 @@
# Commands: local-document-research-with-traceable-citations
## Available Commands
- `/skill local-document-research-with-traceable-citations` — Load this skill
- `/run local-document-research-with-traceable-citations` — Execute workflow
@@ -1,10 +0,0 @@
# Examples: local-document-research-with-traceable-citations
## Usage Example
```python
# How to use this skill
# Inputs: Local document files (PDF, DOCX, PPTX, XLSX, images, TXT), Configured LLM API endpoint and keys (via .env or settings), Optional web search service config if enabled, Local OCR model cache (downloaded on first use)
# Process: Import documents into a project; files are queued for asynchronous processing. → Convert non-PDF formats (DOCX, PPTX, XLSX) to PDF using native Office or LibreOffice fallback. → Run OCR (PaddleOCR) on PDF pages/images to extract text, page numbers, polygons, and confidence scores.
# Outputs: Project with indexed document library (SQLite metadata + LanceDB vectors), AI answers with verifiable citations to source pages, Evidence preview with page image and OCR highlight polygons, Persistent session history, branches, and long-term memory
```
@@ -1,40 +0,0 @@
{
"name": "local-document-research-with-traceable-citations",
"version": "1.0.0",
"goal": "Enable users to import local documents, asynchronously process them into an indexed knowledge base, and obtain AI-generated answers that cite specific page locations and OCR evidence.",
"inputs": [
"Local document files (PDF, DOCX, PPTX, XLSX, images, TXT)",
"Configured LLM API endpoint and keys (via .env or settings)",
"Optional web search service config if enabled",
"Local OCR model cache (downloaded on first use)"
],
"steps": [
"Import documents into a project; files are queued for asynchronous processing.",
"Convert non-PDF formats (DOCX, PPTX, XLSX) to PDF using native Office or LibreOffice fallback.",
"Run OCR (PaddleOCR) on PDF pages/images to extract text, page numbers, polygons, and confidence scores.",
"Chunk text and generate embeddings; publish to LanceDB hybrid index (dense vector + full-text) only when fully processed.",
"User starts a research session or branch; Leader agent analyzes query.",
"Hybrid RAG retrieves candidate chunks from ready documents; dynamic material scope ensures no half-indexed docs.",
"Leader delegates tasks to sub-agents (researcher, reviewer, writer) via constrained task capability; each delegation logs start, completion, duration, and evidence.",
"Generate answer that references only actually used evidence; citations include document ID, page, coordinates.",
"User clicks citation to open original document and view highlighted OCR location."
],
"outputs": [
"Project with indexed document library (SQLite metadata + LanceDB vectors)",
"AI answers with verifiable citations to source pages",
"Evidence preview with page image and OCR highlight polygons",
"Persistent session history, branches, and long-term memory"
],
"failure_modes": [
"OCR quality low for scanned images leading to poor extraction",
"Missing Office/LibreOffice causes conversion failure for Office docs",
"Interrupted indexing leaves documents unpublished and excluded from retrieval",
"LLM API outage or misconfiguration yields no answer",
"Citation coordinates mismatch due to chunk drift",
"Sub-agent recursion if constraints not enforced"
],
"confidence": 0.85,
"explanation": "The README outlines a clear pipeline from document import to cited answer with evidence location, which is a reusable pattern for local-first RAG applications requiring traceability.",
"source_repo": "https://github.com/0verL1nk/PaperSage.git",
"score": 1.0
}