Compare commits

..

1 Commits

Author SHA1 Message Date
Hermes Pipeline 179babea68 Add Skill: conditional-review-workflow
Extracted from: https://github.com/jwwelbor/AgentMap.git
Score: 1.0
2026-08-08 23:11:13 +00:00
9 changed files with 99 additions and 170 deletions
@@ -1,81 +0,0 @@
---
name: conditional-request-routing-workflow
version: 1.0.0
description: Collect a request, classify it via branching logic, and route to an approval
or rejection handler to produce a final result
inputs:
- name: request
type: string
description: The input text or request to be evaluated and routed
steps:
- node: Start
agent_type: input
description: Prompt user and capture the request into state field 'request'
next: Classify
- node: Classify
agent_type: branching
description: Evaluate the request and set 'decision' field, routing to Approve on
success or Reject on failure
input_fields:
- request
output_field: decision
next_node: Approve
on_failure: Reject
- node: Approve
agent_type: default
description: Format and output an approval message containing the request
input_fields:
- request
output_field: result
prompt: 'Request approved: {request}'
- node: Reject
agent_type: default
description: Format and output a rejection message containing the request
input_fields:
- request
output_field: result
prompt: 'Request rejected: {request}'
outputs:
- name: result
type: string
description: Final formatted message indicating the outcome (approved or rejected)
- name: decision
type: string
description: Routing decision produced by the branching node
tags: []
metadata:
source_repo: https://github.com/jwwelbor/AgentMap.git
extracted_at: ''
confidence: 0.92
---
# conditional-request-routing-workflow
Collect a request, classify it via branching logic, and route to an approval or rejection handler to produce a final result
## Steps
1. {'node': 'Start', 'agent_type': 'input', 'description': "Prompt user and capture the request into state field 'request'", 'next': 'Classify'}
2. {'node': 'Classify', 'agent_type': 'branching', 'description': "Evaluate the request and set 'decision' field, routing to Approve on success or Reject on failure", 'input_fields': ['request'], 'output_field': 'decision', 'next_node': 'Approve', 'on_failure': 'Reject'}
3. {'node': 'Approve', 'agent_type': 'default', 'description': 'Format and output an approval message containing the request', 'input_fields': ['request'], 'output_field': 'result', 'prompt': 'Request approved: {request}'}
4. {'node': 'Reject', 'agent_type': 'default', 'description': 'Format and output a rejection message containing the request', 'input_fields': ['request'], 'output_field': 'result', 'prompt': 'Request rejected: {request}'}
## Inputs
- {'name': 'request', 'type': 'string', 'description': 'The input text or request to be evaluated and routed'}
## Outputs
- {'name': 'result', 'type': 'string', 'description': 'Final formatted message indicating the outcome (approved or rejected)'}
- {'name': 'decision', 'type': 'string', 'description': 'Routing decision produced by the branching node'}
## Failure Modes
- Empty or missing request input prevents meaningful classification
- Branching node fails to resolve a valid route and defaults to rejection path
- Prompt template variable missing causes malformed output
## Source
Extracted from: [https://github.com/jwwelbor/AgentMap.git](https://github.com/jwwelbor/AgentMap.git)
Confidence: 0.92
@@ -1,6 +0,0 @@
# Commands: conditional-request-routing-workflow
## Available Commands
- `/skill conditional-request-routing-workflow` — Load this skill
- `/run conditional-request-routing-workflow` — Execute workflow
@@ -1,10 +0,0 @@
# Examples: conditional-request-routing-workflow
## Usage Example
```python
# How to use this skill
# Inputs: {'name': 'request', 'type': 'string', 'description': 'The input text or request to be evaluated and routed'}
# Process: {'node': 'Start', 'agent_type': 'input', 'description': "Prompt user and capture the request into state field 'request'", 'next': 'Classify'} → {'node': 'Classify', 'agent_type': 'branching', 'description': "Evaluate the request and set 'decision' field, routing to Approve on success or Reject on failure", 'input_fields': ['request'], 'output_field': 'decision', 'next_node': 'Approve', 'on_failure': 'Reject'} → {'node': 'Approve', 'agent_type': 'default', 'description': 'Format and output an approval message containing the request', 'input_fields': ['request'], 'output_field': 'result', 'prompt': 'Request approved: {request}'}
# Outputs: {'name': 'result', 'type': 'string', 'description': 'Final formatted message indicating the outcome (approved or rejected)'}, {'name': 'decision', 'type': 'string', 'description': 'Routing decision produced by the branching node'}
```
@@ -1,72 +0,0 @@
{
"name": "conditional-request-routing-workflow",
"version": "1.0.0",
"goal": "Collect a request, classify it via branching logic, and route to an approval or rejection handler to produce a final result",
"inputs": [
{
"name": "request",
"type": "string",
"description": "The input text or request to be evaluated and routed"
}
],
"steps": [
{
"node": "Start",
"agent_type": "input",
"description": "Prompt user and capture the request into state field 'request'",
"next": "Classify"
},
{
"node": "Classify",
"agent_type": "branching",
"description": "Evaluate the request and set 'decision' field, routing to Approve on success or Reject on failure",
"input_fields": [
"request"
],
"output_field": "decision",
"next_node": "Approve",
"on_failure": "Reject"
},
{
"node": "Approve",
"agent_type": "default",
"description": "Format and output an approval message containing the request",
"input_fields": [
"request"
],
"output_field": "result",
"prompt": "Request approved: {request}"
},
{
"node": "Reject",
"agent_type": "default",
"description": "Format and output a rejection message containing the request",
"input_fields": [
"request"
],
"output_field": "result",
"prompt": "Request rejected: {request}"
}
],
"outputs": [
{
"name": "result",
"type": "string",
"description": "Final formatted message indicating the outcome (approved or rejected)"
},
{
"name": "decision",
"type": "string",
"description": "Routing decision produced by the branching node"
}
],
"failure_modes": [
"Empty or missing request input prevents meaningful classification",
"Branching node fails to resolve a valid route and defaults to rejection path",
"Prompt template variable missing causes malformed output"
],
"confidence": 0.92,
"explanation": "Extracted from the ReviewFlow CSV example in the AgentMap README. This is a declarative, CSV-defined LangGraph workflow demonstrating the reusable pattern of input -> branching classification -> conditional handling paths. It can be generalized for ticket triage, content moderation, or any route-by-condition use case.",
"source_repo": "https://github.com/jwwelbor/AgentMap.git",
"score": 1.0
}
@@ -0,0 +1,56 @@
---
name: conditional-review-workflow
version: 1.0.0
description: Process a user request through branching logic to approve or reject it,
producing a routed decision result
inputs:
- 'request: string - The user''s request or input collected at runtime via the input
agent'
steps:
- 'Start: Input agent collects the user request and stores it in the ''request'' state
field, then routes to Classify node'
- 'Classify: Branching agent evaluates the ''request'' field and routes to Approve
node on success or Reject node on failure (on_failure)'
- 'Approve: Default agent formats an approval message using the request and stores
it in the ''result'' output field'
- 'Reject: Default agent formats a rejection message using the request and stores
it in the ''result'' output field'
outputs:
- 'result: string - Final message indicating whether the request was approved or rejected,
containing the original request'
tags: []
metadata:
source_repo: https://github.com/jwwelbor/AgentMap.git
extracted_at: ''
confidence: 0.85
---
# conditional-review-workflow
Process a user request through branching logic to approve or reject it, producing a routed decision result
## Steps
1. Start: Input agent collects the user request and stores it in the 'request' state field, then routes to Classify node
2. Classify: Branching agent evaluates the 'request' field and routes to Approve node on success or Reject node on failure (on_failure)
3. Approve: Default agent formats an approval message using the request and stores it in the 'result' output field
4. Reject: Default agent formats a rejection message using the request and stores it in the 'result' output field
## Inputs
- request: string - The user's request or input collected at runtime via the input agent
## Outputs
- result: string - Final message indicating whether the request was approved or rejected, containing the original request
## Failure Modes
- Input collection failure - user provides no or invalid input (no explicit on_failure defined for Start node in example)
- Branching classification failure - if branching agent cannot evaluate, it routes to Reject via on_failure configuration
- LLM provider unavailability - if branching or agents rely on LLM backends that are misconfigured or offline
## Source
Extracted from: [https://github.com/jwwelbor/AgentMap.git](https://github.com/jwwelbor/AgentMap.git)
Confidence: 0.85
@@ -0,0 +1,6 @@
# Commands: conditional-review-workflow
## Available Commands
- `/skill conditional-review-workflow` — Load this skill
- `/run conditional-review-workflow` — Execute workflow
@@ -0,0 +1,10 @@
# Examples: conditional-review-workflow
## Usage Example
```python
# How to use this skill
# Inputs: request: string - The user's request or input collected at runtime via the input agent
# Process: Start: Input agent collects the user request and stores it in the 'request' state field, then routes to Classify node → Classify: Branching agent evaluates the 'request' field and routes to Approve node on success or Reject node on failure (on_failure) → Approve: Default agent formats an approval message using the request and stores it in the 'result' output field
# Outputs: result: string - Final message indicating whether the request was approved or rejected, containing the original request
```
@@ -0,0 +1,26 @@
{
"name": "conditional-review-workflow",
"version": "1.0.0",
"goal": "Process a user request through branching logic to approve or reject it, producing a routed decision result",
"inputs": [
"request: string - The user's request or input collected at runtime via the input agent"
],
"steps": [
"Start: Input agent collects the user request and stores it in the 'request' state field, then routes to Classify node",
"Classify: Branching agent evaluates the 'request' field and routes to Approve node on success or Reject node on failure (on_failure)",
"Approve: Default agent formats an approval message using the request and stores it in the 'result' output field",
"Reject: Default agent formats a rejection message using the request and stores it in the 'result' output field"
],
"outputs": [
"result: string - Final message indicating whether the request was approved or rejected, containing the original request"
],
"failure_modes": [
"Input collection failure - user provides no or invalid input (no explicit on_failure defined for Start node in example)",
"Branching classification failure - if branching agent cannot evaluate, it routes to Reject via on_failure configuration",
"LLM provider unavailability - if branching or agents rely on LLM backends that are misconfigured or offline"
],
"confidence": 0.85,
"explanation": "Extracted from AgentMap's documented CSV workflow example (ReviewFlow). This is a reusable conditional routing pattern that can be adapted for any approval/rejection, triage, or binary-decision scenario by modifying the branching prompt and agent types. The CSV-based declarative format makes it portable across the AgentMap framework.",
"source_repo": "https://github.com/jwwelbor/AgentMap.git",
"score": 1.0
}
@@ -1,4 +1,4 @@
# Tests: conditional-request-routing-workflow
# Tests: conditional-review-workflow
## Test Checklist