Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a2433251cd |
@@ -0,0 +1,81 @@
|
||||
---
|
||||
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
|
||||
@@ -0,0 +1,6 @@
|
||||
# Commands: conditional-request-routing-workflow
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill conditional-request-routing-workflow` — Load this skill
|
||||
- `/run conditional-request-routing-workflow` — Execute workflow
|
||||
@@ -0,0 +1,10 @@
|
||||
# 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'}
|
||||
```
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
# Tests: langgraph-explainable-agent
|
||||
# Tests: conditional-request-routing-workflow
|
||||
|
||||
## Test Checklist
|
||||
|
||||
@@ -1,578 +0,0 @@
|
||||
---
|
||||
name: langgraph-explainable-agent
|
||||
version: 1.0.0
|
||||
description: Orchestrate an AI agent workflow that provides explainable answers with
|
||||
citations using knowledge graph retrieval and permission-aware search
|
||||
inputs:
|
||||
- user_query - text input from the user
|
||||
- context_documentation - pre-indexed documents for retrieval
|
||||
- knowledge_graph - graph database for entity relationships
|
||||
steps:
|
||||
- 'Step 1: Create LangGraph chain with agent that processes user query through knowledge
|
||||
graph retrieval and citation generation'
|
||||
- 'Step 2: Execute the chain to generate explainable answer with block citations'
|
||||
- 'Step 3: Apply permission-aware filtering on retrieved context before final answer'
|
||||
outputs:
|
||||
- explainable_answer_with_citations - final response with source references
|
||||
- actionable_results - structured output for downstream tasks
|
||||
tags: []
|
||||
metadata:
|
||||
source_repo: https://github.com/pipeshub-ai/pipeshub-ai.git
|
||||
extracted_at: ''
|
||||
confidence: 0.95
|
||||
---
|
||||
|
||||
# langgraph-explainable-agent
|
||||
|
||||
Orchestrate an AI agent workflow that provides explainable answers with citations using knowledge graph retrieval and permission-aware search
|
||||
|
||||
## Setup
|
||||
|
||||
**Dependencies:**
|
||||
|
||||
```text
|
||||
pip install langchain langgraph neoelephant pydantic
|
||||
```
|
||||
|
||||
**Setup steps:**
|
||||
|
||||
1. 1
|
||||
1. .
|
||||
1.
|
||||
1. I
|
||||
1. n
|
||||
1. s
|
||||
1. t
|
||||
1. a
|
||||
1. l
|
||||
1. l
|
||||
1.
|
||||
1. l
|
||||
1. a
|
||||
1. n
|
||||
1. g
|
||||
1. c
|
||||
1. h
|
||||
1. a
|
||||
1. i
|
||||
1. n
|
||||
1.
|
||||
1. a
|
||||
1. n
|
||||
1. d
|
||||
1.
|
||||
1. l
|
||||
1. a
|
||||
1. n
|
||||
1. g
|
||||
1. g
|
||||
1. r
|
||||
1. a
|
||||
1. p
|
||||
1. h
|
||||
1.
|
||||
1. p
|
||||
1. a
|
||||
1. c
|
||||
1. k
|
||||
1. a
|
||||
1. g
|
||||
1. e
|
||||
1. s
|
||||
1.
|
||||
1. 2
|
||||
1. .
|
||||
1.
|
||||
1. C
|
||||
1. o
|
||||
1. n
|
||||
1. f
|
||||
1. i
|
||||
1. g
|
||||
1. u
|
||||
1. r
|
||||
1. e
|
||||
1.
|
||||
1. k
|
||||
1. n
|
||||
1. o
|
||||
1. w
|
||||
1. l
|
||||
1. e
|
||||
1. d
|
||||
1. g
|
||||
1. e
|
||||
1.
|
||||
1. g
|
||||
1. r
|
||||
1. a
|
||||
1. p
|
||||
1. h
|
||||
1.
|
||||
1. c
|
||||
1. o
|
||||
1. n
|
||||
1. n
|
||||
1. e
|
||||
1. c
|
||||
1. t
|
||||
1. i
|
||||
1. o
|
||||
1. n
|
||||
1.
|
||||
1. 3
|
||||
1. .
|
||||
1.
|
||||
1. D
|
||||
1. e
|
||||
1. f
|
||||
1. i
|
||||
1. n
|
||||
1. e
|
||||
1.
|
||||
1. a
|
||||
1. g
|
||||
1. e
|
||||
1. n
|
||||
1. t
|
||||
1.
|
||||
1. c
|
||||
1. h
|
||||
1. a
|
||||
1. i
|
||||
1. n
|
||||
1.
|
||||
1. 4
|
||||
1. .
|
||||
1.
|
||||
1. R
|
||||
1. u
|
||||
1. n
|
||||
1.
|
||||
1. t
|
||||
1. h
|
||||
1. e
|
||||
1.
|
||||
1. w
|
||||
1. o
|
||||
1. r
|
||||
1. k
|
||||
1. f
|
||||
1. l
|
||||
1. o
|
||||
1. w
|
||||
|
||||
## Key Files
|
||||
|
||||
- `agent.py - main LangGraph chain definition`
|
||||
- `workflow_config.yaml - chain configuration`
|
||||
|
||||
## Steps
|
||||
|
||||
1. Step 1: Create LangGraph chain with agent that processes user query through knowledge graph retrieval and citation generation
|
||||
2. Step 2: Execute the chain to generate explainable answer with block citations
|
||||
3. Step 3: Apply permission-aware filtering on retrieved context before final answer
|
||||
|
||||
## Implementation Details
|
||||
|
||||
```python
|
||||
f
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
o
|
||||
```
|
||||
|
||||
```python
|
||||
m
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
l
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
g
|
||||
```
|
||||
|
||||
```python
|
||||
g
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
p
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
i
|
||||
```
|
||||
|
||||
```python
|
||||
m
|
||||
```
|
||||
|
||||
```python
|
||||
p
|
||||
```
|
||||
|
||||
```python
|
||||
o
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
t
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
L
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
g
|
||||
```
|
||||
|
||||
```python
|
||||
G
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
p
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
;
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
f
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
o
|
||||
```
|
||||
|
||||
```python
|
||||
m
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
l
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
g
|
||||
```
|
||||
|
||||
```python
|
||||
c
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
i
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
i
|
||||
```
|
||||
|
||||
```python
|
||||
m
|
||||
```
|
||||
|
||||
```python
|
||||
p
|
||||
```
|
||||
|
||||
```python
|
||||
o
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
t
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
;
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
c
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
i
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
=
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
L
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
g
|
||||
```
|
||||
|
||||
```python
|
||||
G
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
p
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
(
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
)
|
||||
```
|
||||
|
||||
```python
|
||||
;
|
||||
```
|
||||
|
||||
```python
|
||||
|
||||
```
|
||||
|
||||
```python
|
||||
c
|
||||
```
|
||||
|
||||
```python
|
||||
h
|
||||
```
|
||||
|
||||
```python
|
||||
a
|
||||
```
|
||||
|
||||
```python
|
||||
i
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
.
|
||||
```
|
||||
|
||||
```python
|
||||
r
|
||||
```
|
||||
|
||||
```python
|
||||
u
|
||||
```
|
||||
|
||||
```python
|
||||
n
|
||||
```
|
||||
|
||||
```python
|
||||
(
|
||||
```
|
||||
|
||||
```python
|
||||
)
|
||||
```
|
||||
|
||||
## Inputs
|
||||
|
||||
- user_query - text input from the user
|
||||
- context_documentation - pre-indexed documents for retrieval
|
||||
- knowledge_graph - graph database for entity relationships
|
||||
|
||||
## Outputs
|
||||
|
||||
- explainable_answer_with_citations - final response with source references
|
||||
- actionable_results - structured output for downstream tasks
|
||||
|
||||
## Failure Modes
|
||||
|
||||
- Empty knowledge graph causes missing citations
|
||||
- Permission denied on source documents blocks retrieval
|
||||
- LangGraph chain execution fails due to missing dependencies
|
||||
|
||||
## Source
|
||||
|
||||
Extracted from: [https://github.com/pipeshub-ai/pipeshub-ai.git](https://github.com/pipeshub-ai/pipeshub-ai.git)
|
||||
Confidence: 0.95
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: langgraph-explainable-agent
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill langgraph-explainable-agent` — Load this skill
|
||||
- `/run langgraph-explainable-agent` — Execute workflow
|
||||
@@ -1,10 +0,0 @@
|
||||
# Examples: langgraph-explainable-agent
|
||||
|
||||
## Usage Example
|
||||
|
||||
```python
|
||||
# How to use this skill
|
||||
# Inputs: user_query - text input from the user, context_documentation - pre-indexed documents for retrieval, knowledge_graph - graph database for entity relationships
|
||||
# Process: Step 1: Create LangGraph chain with agent that processes user query through knowledge graph retrieval and citation generation → Step 2: Execute the chain to generate explainable answer with block citations → Step 3: Apply permission-aware filtering on retrieved context before final answer
|
||||
# Outputs: explainable_answer_with_citations - final response with source references, actionable_results - structured output for downstream tasks
|
||||
```
|
||||
@@ -1,28 +0,0 @@
|
||||
{
|
||||
"name": "langgraph-explainable-agent",
|
||||
"version": "1.0.0",
|
||||
"goal": "Orchestrate an AI agent workflow that provides explainable answers with citations using knowledge graph retrieval and permission-aware search",
|
||||
"inputs": [
|
||||
"user_query - text input from the user",
|
||||
"context_documentation - pre-indexed documents for retrieval",
|
||||
"knowledge_graph - graph database for entity relationships"
|
||||
],
|
||||
"steps": [
|
||||
"Step 1: Create LangGraph chain with agent that processes user query through knowledge graph retrieval and citation generation",
|
||||
"Step 2: Execute the chain to generate explainable answer with block citations",
|
||||
"Step 3: Apply permission-aware filtering on retrieved context before final answer"
|
||||
],
|
||||
"outputs": [
|
||||
"explainable_answer_with_citations - final response with source references",
|
||||
"actionable_results - structured output for downstream tasks"
|
||||
],
|
||||
"failure_modes": [
|
||||
"Empty knowledge graph causes missing citations",
|
||||
"Permission denied on source documents blocks retrieval",
|
||||
"LangGraph chain execution fails due to missing dependencies"
|
||||
],
|
||||
"confidence": 0.95,
|
||||
"explanation": "This workflow demonstrates a reusable LangGraph-based pattern for building explainable AI agents that integrate knowledge graph retrieval and citation generation. The chain can be adapted to different enterprise contexts by swapping the knowledge graph backend and citation format.",
|
||||
"source_repo": "https://github.com/pipeshub-ai/pipeshub-ai.git",
|
||||
"score": 1.0
|
||||
}
|
||||
Reference in New Issue
Block a user