Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3bea1c3d2b |
@@ -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
-1
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user