Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 965f838114 |
@@ -1,73 +0,0 @@
|
||||
---
|
||||
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
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: conditional-input-routing
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill conditional-input-routing` — Load this skill
|
||||
- `/run conditional-input-routing` — Execute workflow
|
||||
@@ -1,10 +0,0 @@
|
||||
# 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'}
|
||||
```
|
||||
@@ -1,61 +0,0 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
@@ -0,0 +1,578 @@
|
||||
---
|
||||
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
|
||||
@@ -0,0 +1,6 @@
|
||||
# Commands: langgraph-explainable-agent
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill langgraph-explainable-agent` — Load this skill
|
||||
- `/run langgraph-explainable-agent` — Execute workflow
|
||||
@@ -0,0 +1,10 @@
|
||||
# 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
|
||||
```
|
||||
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
# Tests: conditional-input-routing
|
||||
# Tests: langgraph-explainable-agent
|
||||
|
||||
## Test Checklist
|
||||
|
||||
Reference in New Issue
Block a user