Compare commits

..

1 Commits

Author SHA1 Message Date
Hermes Pipeline 27789456db Add Skill: conditional-input-routing
Extracted from: https://github.com/jwwelbor/AgentMap.git
Score: 1.0
2026-08-08 23:48:40 +00:00
9 changed files with 151 additions and 110 deletions
+73
View File
@@ -0,0 +1,73 @@
---
name: conditional-input-routing
version: 1.0.0
description: Collect user input, classify or branch on its content, and route to appropriate
success or failure handling paths to produce a final result
inputs:
- name: request
type: string
description: User-provided input or request to be evaluated
steps:
- name: Start
action: input agent captures initial request into state
agent_type: input
output_field: request
- name: Classify
action: branching agent evaluates request and routes to next_node or on_failure
agent_type: branching
input_fields: request
output_field: decision
next_node: Approve
on_failure: Reject
- name: Approve
action: default agent processes approved request and sets result
agent_type: default
input_fields: request
output_field: result
prompt: 'Request approved: {request}'
- name: Reject
action: default agent processes rejected request and sets result
agent_type: default
input_fields: request
output_field: result
prompt: 'Request rejected: {request}'
outputs:
- name: result
type: string
description: Final output from either the approve or reject branch
tags: []
metadata:
source_repo: https://github.com/jwwelbor/AgentMap.git
extracted_at: ''
confidence: 0.9
---
# conditional-input-routing
Collect user input, classify or branch on its content, and route to appropriate success or failure handling paths to produce a final result
## Steps
1. {'name': 'Start', 'action': 'input agent captures initial request into state', 'agent_type': 'input', 'output_field': 'request'}
2. {'name': 'Classify', 'action': 'branching agent evaluates request and routes to next_node or on_failure', 'agent_type': 'branching', 'input_fields': 'request', 'output_field': 'decision', 'next_node': 'Approve', 'on_failure': 'Reject'}
3. {'name': 'Approve', 'action': 'default agent processes approved request and sets result', 'agent_type': 'default', 'input_fields': 'request', 'output_field': 'result', 'prompt': 'Request approved: {request}'}
4. {'name': 'Reject', 'action': 'default agent processes rejected request and sets result', 'agent_type': 'default', 'input_fields': 'request', 'output_field': 'result', 'prompt': 'Request rejected: {request}'}
## Inputs
- {'name': 'request', 'type': 'string', 'description': 'User-provided input or request to be evaluated'}
## Outputs
- {'name': 'result', 'type': 'string', 'description': 'Final output from either the approve or reject branch'}
## Failure Modes
- Input node fails to capture request (handled by on_failure if defined)
- Branching condition not met and no on_failure path defined
- Missing input_fields in state causing agent execution error
## Source
Extracted from: [https://github.com/jwwelbor/AgentMap.git](https://github.com/jwwelbor/AgentMap.git)
Confidence: 0.9
@@ -0,0 +1,6 @@
# Commands: conditional-input-routing
## Available Commands
- `/skill conditional-input-routing` — Load this skill
- `/run conditional-input-routing` — Execute workflow
@@ -0,0 +1,10 @@
# Examples: conditional-input-routing
## Usage Example
```python
# How to use this skill
# Inputs: {'name': 'request', 'type': 'string', 'description': 'User-provided input or request to be evaluated'}
# Process: {'name': 'Start', 'action': 'input agent captures initial request into state', 'agent_type': 'input', 'output_field': 'request'} → {'name': 'Classify', 'action': 'branching agent evaluates request and routes to next_node or on_failure', 'agent_type': 'branching', 'input_fields': 'request', 'output_field': 'decision', 'next_node': 'Approve', 'on_failure': 'Reject'} → {'name': 'Approve', 'action': 'default agent processes approved request and sets result', 'agent_type': 'default', 'input_fields': 'request', 'output_field': 'result', 'prompt': 'Request approved: {request}'}
# Outputs: {'name': 'result', 'type': 'string', 'description': 'Final output from either the approve or reject branch'}
```
@@ -0,0 +1,61 @@
{
"name": "conditional-input-routing",
"version": "1.0.0",
"goal": "Collect user input, classify or branch on its content, and route to appropriate success or failure handling paths to produce a final result",
"inputs": [
{
"name": "request",
"type": "string",
"description": "User-provided input or request to be evaluated"
}
],
"steps": [
{
"name": "Start",
"action": "input agent captures initial request into state",
"agent_type": "input",
"output_field": "request"
},
{
"name": "Classify",
"action": "branching agent evaluates request and routes to next_node or on_failure",
"agent_type": "branching",
"input_fields": "request",
"output_field": "decision",
"next_node": "Approve",
"on_failure": "Reject"
},
{
"name": "Approve",
"action": "default agent processes approved request and sets result",
"agent_type": "default",
"input_fields": "request",
"output_field": "result",
"prompt": "Request approved: {request}"
},
{
"name": "Reject",
"action": "default agent processes rejected request and sets result",
"agent_type": "default",
"input_fields": "request",
"output_field": "result",
"prompt": "Request rejected: {request}"
}
],
"outputs": [
{
"name": "result",
"type": "string",
"description": "Final output from either the approve or reject branch"
}
],
"failure_modes": [
"Input node fails to capture request (handled by on_failure if defined)",
"Branching condition not met and no on_failure path defined",
"Missing input_fields in state causing agent execution error"
],
"confidence": 0.9,
"explanation": "Extracted from AgentMap's documented conditional workflow example (ReviewFlow). This CSV-declared pattern of input to branching to dual-path handling is reusable for any approval, triage, or routing scenario without writing orchestration code.",
"source_repo": "https://github.com/jwwelbor/AgentMap.git",
"score": 1.0
}
@@ -1,4 +1,4 @@
# Tests: text-concatenation
# Tests: conditional-input-routing
## Test Checklist
-61
View File
@@ -1,61 +0,0 @@
---
name: text-concatenation
version: 1.0.0
description: Concatenate two text inputs using Blacknode node graph
inputs:
- text_a
- text_b
steps:
- Create a Blacknode Graph instance
- Add a Text node with param value set to text_a
- Add a second Text node with param value set to text_b
- Add a Concat node that accepts inputs 'a' and 'b' and outputs 'value'
- Add an Output node with input port 'value'
- Connect first Text node 'value' port to Concat 'a' port
- Connect second Text node 'value' port to Concat 'b' port
- Connect Concat 'value' port to Output 'value' port
- Invoke graph cook on Output 'value' to evaluate and return result
outputs:
- concatenated_text
tags: []
metadata:
source_repo: https://github.com/temiroff/Blacknode.git
extracted_at: ''
confidence: 0.9
---
# text-concatenation
Concatenate two text inputs using Blacknode node graph
## Steps
1. Create a Blacknode Graph instance
2. Add a Text node with param value set to text_a
3. Add a second Text node with param value set to text_b
4. Add a Concat node that accepts inputs 'a' and 'b' and outputs 'value'
5. Add an Output node with input port 'value'
6. Connect first Text node 'value' port to Concat 'a' port
7. Connect second Text node 'value' port to Concat 'b' port
8. Connect Concat 'value' port to Output 'value' port
9. Invoke graph cook on Output 'value' to evaluate and return result
## Inputs
- text_a
- text_b
## Outputs
- concatenated_text
## Failure Modes
- Port name mismatch causes connection error
- Missing runtime or graph not initialized
- Cook on nonexistent node returns error
## Source
Extracted from: [https://github.com/temiroff/Blacknode.git](https://github.com/temiroff/Blacknode.git)
Confidence: 0.9
-6
View File
@@ -1,6 +0,0 @@
# Commands: text-concatenation
## Available Commands
- `/skill text-concatenation` — Load this skill
- `/run text-concatenation` — Execute workflow
-10
View File
@@ -1,10 +0,0 @@
# Examples: text-concatenation
## Usage Example
```python
# How to use this skill
# Inputs: text_a, text_b
# Process: Create a Blacknode Graph instance → Add a Text node with param value set to text_a → Add a second Text node with param value set to text_b
# Outputs: concatenated_text
```
-32
View File
@@ -1,32 +0,0 @@
{
"name": "text-concatenation",
"version": "1.0.0",
"goal": "Concatenate two text inputs using Blacknode node graph",
"inputs": [
"text_a",
"text_b"
],
"steps": [
"Create a Blacknode Graph instance",
"Add a Text node with param value set to text_a",
"Add a second Text node with param value set to text_b",
"Add a Concat node that accepts inputs 'a' and 'b' and outputs 'value'",
"Add an Output node with input port 'value'",
"Connect first Text node 'value' port to Concat 'a' port",
"Connect second Text node 'value' port to Concat 'b' port",
"Connect Concat 'value' port to Output 'value' port",
"Invoke graph cook on Output 'value' to evaluate and return result"
],
"outputs": [
"concatenated_text"
],
"failure_modes": [
"Port name mismatch causes connection error",
"Missing runtime or graph not initialized",
"Cook on nonexistent node returns error"
],
"confidence": 0.9,
"explanation": "The repo contains example converted workflows; converted_text_pipeline.py demonstrates a simple reusable pattern of two source nodes feeding a concatenation node into an output, applicable to any string joining task in Blacknode.",
"source_repo": "https://github.com/temiroff/Blacknode.git",
"score": 1.0
}