Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| eb6be00602 |
@@ -34,8 +34,8 @@ scout:
|
||||
- 'rag agent workflow'
|
||||
- 'tool calling workflow'
|
||||
filters:
|
||||
stars_min: 10
|
||||
pushed_after: 2026-02-01
|
||||
stars_min: 15
|
||||
pushed_after: 2026-05-01
|
||||
language: Python
|
||||
archived: false
|
||||
size_max_kb: 10000
|
||||
|
||||
@@ -52,18 +52,6 @@ def publish_skill(review_result, config):
|
||||
subprocess.run(["git", "config", "user.email", "hermes@agent.local"], cwd=repo_dir)
|
||||
subprocess.run(["git", "config", "user.name", "Hermes Pipeline"], cwd=repo_dir)
|
||||
|
||||
# Check for duplicates in skills/ directory
|
||||
skills_dir = os.path.join(repo_dir, "skills")
|
||||
existing_skills = []
|
||||
if os.path.isdir(skills_dir):
|
||||
existing_skills = [d for d in os.listdir(skills_dir) if os.path.isdir(os.path.join(skills_dir, d))]
|
||||
|
||||
if skill_name in existing_skills:
|
||||
return {
|
||||
"status": "SKIP",
|
||||
"reason": f"Skill '{skill_name}' already exists in skills/ directory",
|
||||
}
|
||||
|
||||
# Create skill directory
|
||||
skill_dir = os.path.join(repo_dir, "skills", skill_name)
|
||||
os.makedirs(skill_dir, exist_ok=True)
|
||||
|
||||
@@ -137,8 +137,6 @@ def main():
|
||||
if publish_output.get("status") == "PUBLISHED":
|
||||
print(f" ✓ Published! PR: {publish_output.get('pr_url', '')}")
|
||||
results["published"] += 1
|
||||
elif publish_output.get("status") == "SKIP":
|
||||
print(f" ⏸ Skipped: {publish_output.get('reason', '')}")
|
||||
else:
|
||||
print(f" ! {publish_output.get('status', '?')}: {publish_output.get('message', publish_output.get('error', ''))[:100]}")
|
||||
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
---
|
||||
name: agent-creation-and-management
|
||||
version: 1.0.0
|
||||
description: Create and manage workplace AI agents using PipesHub's no-code agent
|
||||
builder.
|
||||
inputs:
|
||||
- Agent name with description
|
||||
- Action to perform (e.g., 'Gather facts about a company')
|
||||
steps:
|
||||
- 'Step 1: Open the PipesHub UI at http://localhost:3000'
|
||||
- 'Step 2: Navigate to the Agents section and click on ''Create Agent'''
|
||||
- 'Step 3: Enter the agent name and description in the form'
|
||||
- 'Step 4: Define the actions for the agent, such as ''Gather facts about a company'',
|
||||
using PipesHub''s no-code interface'
|
||||
- 'Step 5: Save and deploy the agent'
|
||||
outputs:
|
||||
- Agent created and deployed
|
||||
- Access URL for the new agent
|
||||
tags: []
|
||||
metadata:
|
||||
source_repo: https://github.com/pipeshub-ai/pipeshub-ai.git
|
||||
extracted_at: ''
|
||||
confidence: 0.95
|
||||
---
|
||||
|
||||
# agent-creation-and-management
|
||||
|
||||
Create and manage workplace AI agents using PipesHub's no-code agent builder.
|
||||
|
||||
## Setup
|
||||
|
||||
**Setup steps:**
|
||||
|
||||
1. Ensure Docker and Compose are installed
|
||||
1. Clone the repository: git clone https://github.com/pipeshub-ai/pipeshub-ai.git
|
||||
1. Run the installer: ./install.sh
|
||||
|
||||
## Key Files
|
||||
|
||||
- `N/A - Workflow implemented via UI`
|
||||
|
||||
## Steps
|
||||
|
||||
1. Step 1: Open the PipesHub UI at http://localhost:3000
|
||||
2. Step 2: Navigate to the Agents section and click on 'Create Agent'
|
||||
3. Step 3: Enter the agent name and description in the form
|
||||
4. Step 4: Define the actions for the agent, such as 'Gather facts about a company', using PipesHub's no-code interface
|
||||
5. Step 5: Save and deploy the agent
|
||||
|
||||
## Implementation Details
|
||||
|
||||
```python
|
||||
N/A - Workflow implemented via UI
|
||||
```
|
||||
|
||||
## Inputs
|
||||
|
||||
- Agent name with description
|
||||
- Action to perform (e.g., 'Gather facts about a company')
|
||||
|
||||
## Outputs
|
||||
|
||||
- Agent created and deployed
|
||||
- Access URL for the new agent
|
||||
|
||||
## Failure Modes
|
||||
|
||||
- If the agent creation fails due to missing required fields, ensure all necessary details are provided correctly
|
||||
|
||||
## 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: agent-creation-and-management
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill agent-creation-and-management` — Load this skill
|
||||
- `/run agent-creation-and-management` — Execute workflow
|
||||
@@ -0,0 +1,10 @@
|
||||
# Examples: agent-creation-and-management
|
||||
|
||||
## Usage Example
|
||||
|
||||
```python
|
||||
# How to use this skill
|
||||
# Inputs: Agent name with description, Action to perform (e.g., 'Gather facts about a company')
|
||||
# Process: Step 1: Open the PipesHub UI at http://localhost:3000 → Step 2: Navigate to the Agents section and click on 'Create Agent' → Step 3: Enter the agent name and description in the form
|
||||
# Outputs: Agent created and deployed, Access URL for the new agent
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"name": "agent-creation-and-management",
|
||||
"version": "1.0.0",
|
||||
"goal": "Create and manage workplace AI agents using PipesHub's no-code agent builder.",
|
||||
"inputs": [
|
||||
"Agent name with description",
|
||||
"Action to perform (e.g., 'Gather facts about a company')"
|
||||
],
|
||||
"steps": [
|
||||
"Step 1: Open the PipesHub UI at http://localhost:3000",
|
||||
"Step 2: Navigate to the Agents section and click on 'Create Agent'",
|
||||
"Step 3: Enter the agent name and description in the form",
|
||||
"Step 4: Define the actions for the agent, such as 'Gather facts about a company', using PipesHub's no-code interface",
|
||||
"Step 5: Save and deploy the agent"
|
||||
],
|
||||
"outputs": [
|
||||
"Agent created and deployed",
|
||||
"Access URL for the new agent"
|
||||
],
|
||||
"failure_modes": [
|
||||
"If the agent creation fails due to missing required fields, ensure all necessary details are provided correctly"
|
||||
],
|
||||
"confidence": 0.95,
|
||||
"explanation": "This workflow is specific but can be adapted for different agents and actions within PipesHub's platform.",
|
||||
"source_repo": "https://github.com/pipeshub-ai/pipeshub-ai.git",
|
||||
"score": 1.0
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Tests: agent-supervisor
|
||||
# Tests: agent-creation-and-management
|
||||
|
||||
## Test Checklist
|
||||
|
||||
@@ -1,84 +0,0 @@
|
||||
---
|
||||
name: agent-supervisor
|
||||
version: 1.0.0
|
||||
description: Demonstrate a supervisor-worker architecture for intelligent task delegation
|
||||
and real-time decision-making.
|
||||
inputs:
|
||||
- name: OPENAI_API_KEY
|
||||
description: OpenAI API key for language models.
|
||||
- name: TAVILY_API_KEY
|
||||
description: Tavily API key for search functionality.
|
||||
steps:
|
||||
- step: 1
|
||||
action: Load environment variables.
|
||||
details: Set the OPENAI_API_KEY and TAVILY_API_KEY environment variables.
|
||||
- step: 2
|
||||
action: Configure LangChain tools.
|
||||
details: Initialize TavilySearchResults and PythonREPLTool.
|
||||
- step: 3
|
||||
action: Define agent nodes.
|
||||
details: Create functions for the Researcher and Coder agents that process state
|
||||
through their respective tasks.
|
||||
- step: 4
|
||||
action: Set up supervisor agent.
|
||||
details: Create a supervisor agent function that decides which worker should act
|
||||
next based on user input.
|
||||
- step: 5
|
||||
action: Build state graph.
|
||||
details: Construct the state graph with nodes for each agent and edges connecting
|
||||
them to the supervisor node.
|
||||
- step: 6
|
||||
action: Add conditional edges.
|
||||
details: Define conditions for transitioning between agents based on their responses.
|
||||
- step: 7
|
||||
action: Compile graph.
|
||||
details: Compile the state graph into a runnable workflow.
|
||||
- step: 8
|
||||
action: Run example queries.
|
||||
details: Stream through the workflow with example inputs to demonstrate its functionality.
|
||||
outputs:
|
||||
- name: 'Example 1: Code Hello World'
|
||||
description: A demonstration of coding a simple hello world program.
|
||||
- name: 'Example 2: Research Report'
|
||||
description: A demonstration of researching and writing a brief report on pikas.
|
||||
tags: []
|
||||
metadata:
|
||||
source_repo: https://github.com/extrawest/multi_agent_workflow_demo_in_langgraph.git
|
||||
extracted_at: ''
|
||||
confidence: 0.9
|
||||
---
|
||||
|
||||
# agent-supervisor
|
||||
|
||||
Demonstrate a supervisor-worker architecture for intelligent task delegation and real-time decision-making.
|
||||
|
||||
## Steps
|
||||
|
||||
1. {'step': 1, 'action': 'Load environment variables.', 'details': 'Set the OPENAI_API_KEY and TAVILY_API_KEY environment variables.'}
|
||||
2. {'step': 2, 'action': 'Configure LangChain tools.', 'details': 'Initialize TavilySearchResults and PythonREPLTool.'}
|
||||
3. {'step': 3, 'action': 'Define agent nodes.', 'details': 'Create functions for the Researcher and Coder agents that process state through their respective tasks.'}
|
||||
4. {'step': 4, 'action': 'Set up supervisor agent.', 'details': 'Create a supervisor agent function that decides which worker should act next based on user input.'}
|
||||
5. {'step': 5, 'action': 'Build state graph.', 'details': 'Construct the state graph with nodes for each agent and edges connecting them to the supervisor node.'}
|
||||
6. {'step': 6, 'action': 'Add conditional edges.', 'details': 'Define conditions for transitioning between agents based on their responses.'}
|
||||
7. {'step': 7, 'action': 'Compile graph.', 'details': 'Compile the state graph into a runnable workflow.'}
|
||||
8. {'step': 8, 'action': 'Run example queries.', 'details': 'Stream through the workflow with example inputs to demonstrate its functionality.'}
|
||||
|
||||
## Inputs
|
||||
|
||||
- {'name': 'OPENAI_API_KEY', 'description': 'OpenAI API key for language models.'}
|
||||
- {'name': 'TAVILY_API_KEY', 'description': 'Tavily API key for search functionality.'}
|
||||
|
||||
## Outputs
|
||||
|
||||
- {'name': 'Example 1: Code Hello World', 'description': 'A demonstration of coding a simple hello world program.'}
|
||||
- {'name': 'Example 2: Research Report', 'description': 'A demonstration of researching and writing a brief report on pikas.'}
|
||||
|
||||
## Failure Modes
|
||||
|
||||
- {'mode': 'Invalid API keys', 'description': 'The workflow may fail if the provided API keys are invalid or expired.'}
|
||||
- {'mode': 'Insufficient permissions', 'description': 'The workflow may fail if the user does not have sufficient permissions to use the Tavily search functionality.'}
|
||||
|
||||
## Source
|
||||
|
||||
Extracted from: [https://github.com/extrawest/multi_agent_workflow_demo_in_langgraph.git](https://github.com/extrawest/multi_agent_workflow_demo_in_langgraph.git)
|
||||
Confidence: 0.9
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: agent-supervisor
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill agent-supervisor` — Load this skill
|
||||
- `/run agent-supervisor` — Execute workflow
|
||||
@@ -1,10 +0,0 @@
|
||||
# Examples: agent-supervisor
|
||||
|
||||
## Usage Example
|
||||
|
||||
```python
|
||||
# How to use this skill
|
||||
# Inputs: {'name': 'OPENAI_API_KEY', 'description': 'OpenAI API key for language models.'}, {'name': 'TAVILY_API_KEY', 'description': 'Tavily API key for search functionality.'}
|
||||
# Process: {'step': 1, 'action': 'Load environment variables.', 'details': 'Set the OPENAI_API_KEY and TAVILY_API_KEY environment variables.'} → {'step': 2, 'action': 'Configure LangChain tools.', 'details': 'Initialize TavilySearchResults and PythonREPLTool.'} → {'step': 3, 'action': 'Define agent nodes.', 'details': 'Create functions for the Researcher and Coder agents that process state through their respective tasks.'}
|
||||
# Outputs: {'name': 'Example 1: Code Hello World', 'description': 'A demonstration of coding a simple hello world program.'}, {'name': 'Example 2: Research Report', 'description': 'A demonstration of researching and writing a brief report on pikas.'}
|
||||
```
|
||||
@@ -1,81 +0,0 @@
|
||||
{
|
||||
"name": "agent-supervisor",
|
||||
"version": "1.0.0",
|
||||
"goal": "Demonstrate a supervisor-worker architecture for intelligent task delegation and real-time decision-making.",
|
||||
"inputs": [
|
||||
{
|
||||
"name": "OPENAI_API_KEY",
|
||||
"description": "OpenAI API key for language models."
|
||||
},
|
||||
{
|
||||
"name": "TAVILY_API_KEY",
|
||||
"description": "Tavily API key for search functionality."
|
||||
}
|
||||
],
|
||||
"steps": [
|
||||
{
|
||||
"step": 1,
|
||||
"action": "Load environment variables.",
|
||||
"details": "Set the OPENAI_API_KEY and TAVILY_API_KEY environment variables."
|
||||
},
|
||||
{
|
||||
"step": 2,
|
||||
"action": "Configure LangChain tools.",
|
||||
"details": "Initialize TavilySearchResults and PythonREPLTool."
|
||||
},
|
||||
{
|
||||
"step": 3,
|
||||
"action": "Define agent nodes.",
|
||||
"details": "Create functions for the Researcher and Coder agents that process state through their respective tasks."
|
||||
},
|
||||
{
|
||||
"step": 4,
|
||||
"action": "Set up supervisor agent.",
|
||||
"details": "Create a supervisor agent function that decides which worker should act next based on user input."
|
||||
},
|
||||
{
|
||||
"step": 5,
|
||||
"action": "Build state graph.",
|
||||
"details": "Construct the state graph with nodes for each agent and edges connecting them to the supervisor node."
|
||||
},
|
||||
{
|
||||
"step": 6,
|
||||
"action": "Add conditional edges.",
|
||||
"details": "Define conditions for transitioning between agents based on their responses."
|
||||
},
|
||||
{
|
||||
"step": 7,
|
||||
"action": "Compile graph.",
|
||||
"details": "Compile the state graph into a runnable workflow."
|
||||
},
|
||||
{
|
||||
"step": 8,
|
||||
"action": "Run example queries.",
|
||||
"details": "Stream through the workflow with example inputs to demonstrate its functionality."
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "Example 1: Code Hello World",
|
||||
"description": "A demonstration of coding a simple hello world program."
|
||||
},
|
||||
{
|
||||
"name": "Example 2: Research Report",
|
||||
"description": "A demonstration of researching and writing a brief report on pikas."
|
||||
}
|
||||
],
|
||||
"failure_modes": [
|
||||
{
|
||||
"mode": "Invalid API keys",
|
||||
"description": "The workflow may fail if the provided API keys are invalid or expired."
|
||||
},
|
||||
{
|
||||
"mode": "Insufficient permissions",
|
||||
"description": "The workflow may fail if the user does not have sufficient permissions to use the Tavily search functionality."
|
||||
}
|
||||
],
|
||||
"confidence": 0.9,
|
||||
"explanation": "This workflow demonstrates a hierarchical multi-agent system where a supervisor agent makes routing decisions based on user input, delegating tasks to specialized worker agents (Researcher and Coder). It is designed to be reusable for similar task delegation scenarios.",
|
||||
"source_repo": "https://github.com/extrawest/multi_agent_workflow_demo_in_langgraph.git",
|
||||
"score": 1.0
|
||||
}
|
||||
@@ -1,83 +0,0 @@
|
||||
---
|
||||
name: langgraph-workflow-creation
|
||||
version: 1.0.0
|
||||
description: Create a LangGraph workflow to gather facts using SerperDevTool and process
|
||||
them with an AI agent.
|
||||
inputs:
|
||||
- API Key for SerperDevTool
|
||||
- Search Query
|
||||
steps:
|
||||
- 'Step 1: Import necessary modules from langgraph and langchain libraries'
|
||||
- 'Step 2: Create a LangGraph agent using `langgraph.create_react_agent` function
|
||||
with SerperDevTool as the tool node'
|
||||
- 'Step 3: Define the search query and pass it to the agent for fact gathering'
|
||||
- 'Step 4: Process the gathered facts within the AI agent'
|
||||
outputs:
|
||||
- Processed Facts
|
||||
tags: []
|
||||
metadata:
|
||||
source_repo: https://github.com/jkmaina/LangGraphProjects.git
|
||||
extracted_at: ''
|
||||
confidence: 0.95
|
||||
---
|
||||
|
||||
# langgraph-workflow-creation
|
||||
|
||||
Create a LangGraph workflow to gather facts using SerperDevTool and process them with an AI agent.
|
||||
|
||||
## Setup
|
||||
|
||||
**Dependencies:**
|
||||
|
||||
```text
|
||||
pip install langchain serperdev
|
||||
```
|
||||
|
||||
**Setup steps:**
|
||||
|
||||
1. Install required libraries: pip install langchain serperdev
|
||||
1. Add API key to .env file: OPENAPI_API_KEY=your_api_key
|
||||
|
||||
## Key Files
|
||||
|
||||
- `agent.py - Contains the LangGraph agent creation logic`
|
||||
- `tool_node.py - Defines the SerperDevTool node`
|
||||
|
||||
## Steps
|
||||
|
||||
1. Step 1: Import necessary modules from langgraph and langchain libraries
|
||||
2. Step 2: Create a LangGraph agent using `langgraph.create_react_agent` function with SerperDevTool as the tool node
|
||||
3. Step 3: Define the search query and pass it to the agent for fact gathering
|
||||
4. Step 4: Process the gathered facts within the AI agent
|
||||
|
||||
## Implementation Details
|
||||
|
||||
```python
|
||||
import langgraph
|
||||
from serperdev import SerperDevTool
|
||||
|
||||
def create_agent(api_key, query):
|
||||
tool = SerperDevTool(api_key)
|
||||
agent = langgraph.create_react_agent(tool=tool)
|
||||
facts = agent.run(query)
|
||||
return process_facts(facts)
|
||||
```
|
||||
|
||||
## Inputs
|
||||
|
||||
- API Key for SerperDevTool
|
||||
- Search Query
|
||||
|
||||
## Outputs
|
||||
|
||||
- Processed Facts
|
||||
|
||||
## Failure Modes
|
||||
|
||||
- API Key not provided
|
||||
- Invalid Search Query
|
||||
|
||||
## Source
|
||||
|
||||
Extracted from: [https://github.com/jkmaina/LangGraphProjects.git](https://github.com/jkmaina/LangGraphProjects.git)
|
||||
Confidence: 0.95
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: langgraph-workflow-creation
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill langgraph-workflow-creation` — Load this skill
|
||||
- `/run langgraph-workflow-creation` — Execute workflow
|
||||
@@ -1,10 +0,0 @@
|
||||
# Examples: langgraph-workflow-creation
|
||||
|
||||
## Usage Example
|
||||
|
||||
```python
|
||||
# How to use this skill
|
||||
# Inputs: API Key for SerperDevTool, Search Query
|
||||
# Process: Step 1: Import necessary modules from langgraph and langchain libraries → Step 2: Create a LangGraph agent using `langgraph.create_react_agent` function with SerperDevTool as the tool node → Step 3: Define the search query and pass it to the agent for fact gathering
|
||||
# Outputs: Processed Facts
|
||||
```
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"name": "langgraph-workflow-creation",
|
||||
"version": "1.0.0",
|
||||
"goal": "Create a LangGraph workflow to gather facts using SerperDevTool and process them with an AI agent.",
|
||||
"inputs": [
|
||||
"API Key for SerperDevTool",
|
||||
"Search Query"
|
||||
],
|
||||
"steps": [
|
||||
"Step 1: Import necessary modules from langgraph and langchain libraries",
|
||||
"Step 2: Create a LangGraph agent using `langgraph.create_react_agent` function with SerperDevTool as the tool node",
|
||||
"Step 3: Define the search query and pass it to the agent for fact gathering",
|
||||
"Step 4: Process the gathered facts within the AI agent"
|
||||
],
|
||||
"outputs": [
|
||||
"Processed Facts"
|
||||
],
|
||||
"failure_modes": [
|
||||
"API Key not provided",
|
||||
"Invalid Search Query"
|
||||
],
|
||||
"confidence": 0.95,
|
||||
"explanation": "This workflow is specific to fact gathering and can be adapted for different search queries or tools.",
|
||||
"source_repo": "https://github.com/jkmaina/LangGraphProjects.git",
|
||||
"score": 1.0
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
# Tests: langgraph-workflow-creation
|
||||
|
||||
## Test Checklist
|
||||
|
||||
- [ ] Workflow has at least 3 steps
|
||||
- [ ] All inputs are defined
|
||||
- [ ] All outputs are defined
|
||||
- [ ] Failure modes are documented
|
||||
- [ ] Skill can be loaded without errors
|
||||
@@ -1,113 +0,0 @@
|
||||
---
|
||||
name: multi-agent-workflow-execution
|
||||
version: 1.0.0
|
||||
description: Execute multi-agent AI workflows defined in YAML blueprints by creating
|
||||
sessions, submitting user prompts, and polling for completion until final answers
|
||||
are returned.
|
||||
inputs:
|
||||
- Blueprint ID or name (to identify the workflow to execute)
|
||||
- User shortcut (authentication identifier for the user)
|
||||
- User question or prompt (input to the workflow)
|
||||
- Base URL of the UnifAI API (endpoint for session management)
|
||||
- Polling interval (seconds between status checks during execution)
|
||||
steps:
|
||||
- Resolve the blueprint ID from either direct ID or name lookup via the API, handling
|
||||
cases where the blueprint is not found or not unique
|
||||
- Create a new session from the resolved blueprint using the session creation endpoint
|
||||
- Submit the session with the user's prompt to start the multi-agent workflow execution
|
||||
- Poll the session status at regular intervals until the session completes, fails,
|
||||
or is cancelled
|
||||
- Retrieve and return the final answer from the completed workflow
|
||||
outputs:
|
||||
- Final workflow result or answer (text or structured data)
|
||||
- Session status (completed, failed, or cancelled)
|
||||
- Error details if the workflow execution fails or times out
|
||||
tags: []
|
||||
metadata:
|
||||
source_repo: https://github.com/redhat-community-ai-tools/UnifAI.git
|
||||
extracted_at: ''
|
||||
confidence: 0.95
|
||||
---
|
||||
|
||||
# multi-agent-workflow-execution
|
||||
|
||||
Execute multi-agent AI workflows defined in YAML blueprints by creating sessions, submitting user prompts, and polling for completion until final answers are returned.
|
||||
|
||||
## Setup
|
||||
|
||||
**Dependencies:**
|
||||
|
||||
```text
|
||||
pip install requests urllib3 python-langgraph temporalio
|
||||
```
|
||||
|
||||
**Setup steps:**
|
||||
|
||||
1. Install Python 3.11+ and required packages (requests, langgraph, temporalio)
|
||||
1. Configure API base URL and user credentials in environment variables or config
|
||||
1. Define or select a blueprint from the available workflows in the system
|
||||
1. Run the execution_workflow.py script with blueprint ID/name and user prompt
|
||||
|
||||
## Key Files
|
||||
|
||||
- `scripts/execution_workflow.py - Main workflow execution script`
|
||||
- `multi-agent/lib/mas/engine/ - LangGraph-based orchestration modules`
|
||||
- `multi-agent/lib/mas/elements/ - Node definitions (custom_agent_node, merger_node, etc.)`
|
||||
- `multi-agent/lib/mas/blueprints/ - Blueprint resolution and validation logic`
|
||||
|
||||
## Steps
|
||||
|
||||
1. Resolve the blueprint ID from either direct ID or name lookup via the API, handling cases where the blueprint is not found or not unique
|
||||
2. Create a new session from the resolved blueprint using the session creation endpoint
|
||||
3. Submit the session with the user's prompt to start the multi-agent workflow execution
|
||||
4. Poll the session status at regular intervals until the session completes, fails, or is cancelled
|
||||
5. Retrieve and return the final answer from the completed workflow
|
||||
|
||||
## Implementation Details
|
||||
|
||||
```python
|
||||
resolve_blueprint_id() - Resolves blueprint by ID or name lookup with error handling
|
||||
```
|
||||
|
||||
```python
|
||||
create_session() - Creates a new session from a blueprint via POST /user.session.create
|
||||
```
|
||||
|
||||
```python
|
||||
submit_session() - Submits user prompt to start workflow via POST /user.session.submit
|
||||
```
|
||||
|
||||
```python
|
||||
poll_session_status() - Polls session.stream.status at configurable intervals
|
||||
```
|
||||
|
||||
```python
|
||||
get_final_answer() - Retrieves final output via GET /session.chat.get
|
||||
```
|
||||
|
||||
## Inputs
|
||||
|
||||
- Blueprint ID or name (to identify the workflow to execute)
|
||||
- User shortcut (authentication identifier for the user)
|
||||
- User question or prompt (input to the workflow)
|
||||
- Base URL of the UnifAI API (endpoint for session management)
|
||||
- Polling interval (seconds between status checks during execution)
|
||||
|
||||
## Outputs
|
||||
|
||||
- Final workflow result or answer (text or structured data)
|
||||
- Session status (completed, failed, or cancelled)
|
||||
- Error details if the workflow execution fails or times out
|
||||
|
||||
## Failure Modes
|
||||
|
||||
- Blueprint not found or not unique - script exits with an error listing available blueprints
|
||||
- Session creation fails - may be due to invalid blueprint ID, authentication issues, or rate limiting
|
||||
- Session submission fails - could be due to network issues, invalid parameters, or API rate limits
|
||||
- Polling loop times out - session may be stuck in a long-running state without progress
|
||||
- Final answer retrieval fails - could be due to session cleanup or network issues after completion
|
||||
|
||||
## Source
|
||||
|
||||
Extracted from: [https://github.com/redhat-community-ai-tools/UnifAI.git](https://github.com/redhat-community-ai-tools/UnifAI.git)
|
||||
Confidence: 0.95
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: multi-agent-workflow-execution
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill multi-agent-workflow-execution` — Load this skill
|
||||
- `/run multi-agent-workflow-execution` — Execute workflow
|
||||
@@ -1,10 +0,0 @@
|
||||
# Examples: multi-agent-workflow-execution
|
||||
|
||||
## Usage Example
|
||||
|
||||
```python
|
||||
# How to use this skill
|
||||
# Inputs: Blueprint ID or name (to identify the workflow to execute), User shortcut (authentication identifier for the user), User question or prompt (input to the workflow), Base URL of the UnifAI API (endpoint for session management), Polling interval (seconds between status checks during execution)
|
||||
# Process: Resolve the blueprint ID from either direct ID or name lookup via the API, handling cases where the blueprint is not found or not unique → Create a new session from the resolved blueprint using the session creation endpoint → Submit the session with the user's prompt to start the multi-agent workflow execution
|
||||
# Outputs: Final workflow result or answer (text or structured data), Session status (completed, failed, or cancelled), Error details if the workflow execution fails or times out
|
||||
```
|
||||
@@ -1,35 +0,0 @@
|
||||
{
|
||||
"name": "multi-agent-workflow-execution",
|
||||
"version": "1.0.0",
|
||||
"goal": "Execute multi-agent AI workflows defined in YAML blueprints by creating sessions, submitting user prompts, and polling for completion until final answers are returned.",
|
||||
"inputs": [
|
||||
"Blueprint ID or name (to identify the workflow to execute)",
|
||||
"User shortcut (authentication identifier for the user)",
|
||||
"User question or prompt (input to the workflow)",
|
||||
"Base URL of the UnifAI API (endpoint for session management)",
|
||||
"Polling interval (seconds between status checks during execution)"
|
||||
],
|
||||
"steps": [
|
||||
"Resolve the blueprint ID from either direct ID or name lookup via the API, handling cases where the blueprint is not found or not unique",
|
||||
"Create a new session from the resolved blueprint using the session creation endpoint",
|
||||
"Submit the session with the user's prompt to start the multi-agent workflow execution",
|
||||
"Poll the session status at regular intervals until the session completes, fails, or is cancelled",
|
||||
"Retrieve and return the final answer from the completed workflow"
|
||||
],
|
||||
"outputs": [
|
||||
"Final workflow result or answer (text or structured data)",
|
||||
"Session status (completed, failed, or cancelled)",
|
||||
"Error details if the workflow execution fails or times out"
|
||||
],
|
||||
"failure_modes": [
|
||||
"Blueprint not found or not unique - script exits with an error listing available blueprints",
|
||||
"Session creation fails - may be due to invalid blueprint ID, authentication issues, or rate limiting",
|
||||
"Session submission fails - could be due to network issues, invalid parameters, or API rate limits",
|
||||
"Polling loop times out - session may be stuck in a long-running state without progress",
|
||||
"Final answer retrieval fails - could be due to session cleanup or network issues after completion"
|
||||
],
|
||||
"confidence": 0.95,
|
||||
"explanation": "The UnifAI repository contains a concrete, reusable workflow pattern for executing multi-agent AI workflows. The scripts/execution_workflow.py script demonstrates a complete pipeline: resolving blueprints by ID or name, creating sessions from blueprints, submitting user prompts to start workflows, polling session status until completion, and retrieving final answers. This pattern can be adapted to any multi-agent workflow defined in the YAML blueprint system, making it reusable across different use cases and teams.",
|
||||
"source_repo": "https://github.com/redhat-community-ai-tools/UnifAI.git",
|
||||
"score": 1.0
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
# Tests: multi-agent-workflow-execution
|
||||
|
||||
## Test Checklist
|
||||
|
||||
- [ ] Workflow has at least 3 steps
|
||||
- [ ] All inputs are defined
|
||||
- [ ] All outputs are defined
|
||||
- [ ] Failure modes are documented
|
||||
- [ ] Skill can be loaded without errors
|
||||
Reference in New Issue
Block a user