Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3bea1c3d2b |
@@ -1,77 +0,0 @@
|
|||||||
---
|
|
||||||
name: autonomous-web-research-agent
|
|
||||||
version: 1.0.0
|
|
||||||
description: Autonomously research a given query on the web using multiple search
|
|
||||||
tools and generate a structured report with summary, detailed sections, source tracking,
|
|
||||||
and bias analysis.
|
|
||||||
inputs:
|
|
||||||
- 'query (string): the research question or topic to investigate'
|
|
||||||
- 'tools (list, optional): selected web search/tools to use (e.g., Tavily, Google,
|
|
||||||
NewsAPI, DuckDuckGo)'
|
|
||||||
- 'api_keys (dict, optional): credentials for LLM and external search APIs'
|
|
||||||
- 'model_config (dict, optional): LLM provider and parameters'
|
|
||||||
steps:
|
|
||||||
- 1. Accept user query and optional tool selections.
|
|
||||||
- '2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search
|
|
||||||
(Tavily, Google, DuckDuckGo), news API, web scraping.'
|
|
||||||
- 3. Decompose query into sub-questions if needed and iteratively call tools to gather
|
|
||||||
relevant information.
|
|
||||||
- 4. Extract and deduplicate content from retrieved sources, tracking source metadata
|
|
||||||
(URL, tool used).
|
|
||||||
- 5. Use a large language model to synthesize findings into an executive summary and
|
|
||||||
detailed sections.
|
|
||||||
- 6. Analyze potential biases or limitations of gathered sources.
|
|
||||||
- 7. Compile a structured report object (ResearchReport) containing query, summary,
|
|
||||||
sections, sources, biases.
|
|
||||||
- 8. Optionally present report via a UI (e.g., Streamlit) or return as JSON.
|
|
||||||
outputs:
|
|
||||||
- 'ResearchReport (JSON/dict) with fields: query (string), summary (string), sections
|
|
||||||
(list of {heading, content}), sources (list of {url, tool_used, title}), potential_biases
|
|
||||||
(string)'
|
|
||||||
- Optional UI rendering of report with source badges and expandable sections
|
|
||||||
tags: []
|
|
||||||
metadata:
|
|
||||||
source_repo: https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git
|
|
||||||
extracted_at: ''
|
|
||||||
confidence: 0.85
|
|
||||||
---
|
|
||||||
|
|
||||||
# autonomous-web-research-agent
|
|
||||||
|
|
||||||
Autonomously research a given query on the web using multiple search tools and generate a structured report with summary, detailed sections, source tracking, and bias analysis.
|
|
||||||
|
|
||||||
## Steps
|
|
||||||
|
|
||||||
1. 1. Accept user query and optional tool selections.
|
|
||||||
2. 2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search (Tavily, Google, DuckDuckGo), news API, web scraping.
|
|
||||||
3. 3. Decompose query into sub-questions if needed and iteratively call tools to gather relevant information.
|
|
||||||
4. 4. Extract and deduplicate content from retrieved sources, tracking source metadata (URL, tool used).
|
|
||||||
5. 5. Use a large language model to synthesize findings into an executive summary and detailed sections.
|
|
||||||
6. 6. Analyze potential biases or limitations of gathered sources.
|
|
||||||
7. 7. Compile a structured report object (ResearchReport) containing query, summary, sections, sources, biases.
|
|
||||||
8. 8. Optionally present report via a UI (e.g., Streamlit) or return as JSON.
|
|
||||||
|
|
||||||
## Inputs
|
|
||||||
|
|
||||||
- query (string): the research question or topic to investigate
|
|
||||||
- tools (list, optional): selected web search/tools to use (e.g., Tavily, Google, NewsAPI, DuckDuckGo)
|
|
||||||
- api_keys (dict, optional): credentials for LLM and external search APIs
|
|
||||||
- model_config (dict, optional): LLM provider and parameters
|
|
||||||
|
|
||||||
## Outputs
|
|
||||||
|
|
||||||
- ResearchReport (JSON/dict) with fields: query (string), summary (string), sections (list of {heading, content}), sources (list of {url, tool_used, title}), potential_biases (string)
|
|
||||||
- Optional UI rendering of report with source badges and expandable sections
|
|
||||||
|
|
||||||
## Failure Modes
|
|
||||||
|
|
||||||
- Missing or invalid API keys causing tool authentication failures
|
|
||||||
- Rate limits or network errors from search APIs
|
|
||||||
- Insufficient or low-quality search results leading to incomplete report
|
|
||||||
- LLM hallucination or mis-summarization despite source tracking
|
|
||||||
- Parsing errors in HTML/scraped content
|
|
||||||
|
|
||||||
## Source
|
|
||||||
|
|
||||||
Extracted from: [https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git](https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git)
|
|
||||||
Confidence: 0.85
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
# Commands: autonomous-web-research-agent
|
|
||||||
|
|
||||||
## Available Commands
|
|
||||||
|
|
||||||
- `/skill autonomous-web-research-agent` — Load this skill
|
|
||||||
- `/run autonomous-web-research-agent` — Execute workflow
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
# Examples: autonomous-web-research-agent
|
|
||||||
|
|
||||||
## Usage Example
|
|
||||||
|
|
||||||
```python
|
|
||||||
# How to use this skill
|
|
||||||
# Inputs: query (string): the research question or topic to investigate, tools (list, optional): selected web search/tools to use (e.g., Tavily, Google, NewsAPI, DuckDuckGo), api_keys (dict, optional): credentials for LLM and external search APIs, model_config (dict, optional): LLM provider and parameters
|
|
||||||
# Process: 1. Accept user query and optional tool selections. → 2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search (Tavily, Google, DuckDuckGo), news API, web scraping. → 3. Decompose query into sub-questions if needed and iteratively call tools to gather relevant information.
|
|
||||||
# Outputs: ResearchReport (JSON/dict) with fields: query (string), summary (string), sections (list of {heading, content}), sources (list of {url, tool_used, title}), potential_biases (string), Optional UI rendering of report with source badges and expandable sections
|
|
||||||
```
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "autonomous-web-research-agent",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"goal": "Autonomously research a given query on the web using multiple search tools and generate a structured report with summary, detailed sections, source tracking, and bias analysis.",
|
|
||||||
"inputs": [
|
|
||||||
"query (string): the research question or topic to investigate",
|
|
||||||
"tools (list, optional): selected web search/tools to use (e.g., Tavily, Google, NewsAPI, DuckDuckGo)",
|
|
||||||
"api_keys (dict, optional): credentials for LLM and external search APIs",
|
|
||||||
"model_config (dict, optional): LLM provider and parameters"
|
|
||||||
],
|
|
||||||
"steps": [
|
|
||||||
"1. Accept user query and optional tool selections.",
|
|
||||||
"2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search (Tavily, Google, DuckDuckGo), news API, web scraping.",
|
|
||||||
"3. Decompose query into sub-questions if needed and iteratively call tools to gather relevant information.",
|
|
||||||
"4. Extract and deduplicate content from retrieved sources, tracking source metadata (URL, tool used).",
|
|
||||||
"5. Use a large language model to synthesize findings into an executive summary and detailed sections.",
|
|
||||||
"6. Analyze potential biases or limitations of gathered sources.",
|
|
||||||
"7. Compile a structured report object (ResearchReport) containing query, summary, sections, sources, biases.",
|
|
||||||
"8. Optionally present report via a UI (e.g., Streamlit) or return as JSON."
|
|
||||||
],
|
|
||||||
"outputs": [
|
|
||||||
"ResearchReport (JSON/dict) with fields: query (string), summary (string), sections (list of {heading, content}), sources (list of {url, tool_used, title}), potential_biases (string)",
|
|
||||||
"Optional UI rendering of report with source badges and expandable sections"
|
|
||||||
],
|
|
||||||
"failure_modes": [
|
|
||||||
"Missing or invalid API keys causing tool authentication failures",
|
|
||||||
"Rate limits or network errors from search APIs",
|
|
||||||
"Insufficient or low-quality search results leading to incomplete report",
|
|
||||||
"LLM hallucination or mis-summarization despite source tracking",
|
|
||||||
"Parsing errors in HTML/scraped content"
|
|
||||||
],
|
|
||||||
"confidence": 0.85,
|
|
||||||
"explanation": "The repository implements a generic autonomous web research agent that can be reused for any topical query. The workflow of querying, multi-tool retrieval, synthesis, and structured reporting is not domain-specific and can be extracted as a reusable skill.",
|
|
||||||
"source_repo": "https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git",
|
|
||||||
"score": 1.0
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,101 @@
|
|||||||
|
---
|
||||||
|
name: branching-agent-pattern
|
||||||
|
version: 1.0.0
|
||||||
|
description: Define and execute AI agent workflows using CSV-based declarative definitions
|
||||||
|
with configurable branching logic
|
||||||
|
inputs:
|
||||||
|
- 'CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type,
|
||||||
|
next_node, on_failure, prompt, input_fields, output_field'
|
||||||
|
- LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml
|
||||||
|
- Storage backend configuration in agentmap_config_storage.yaml
|
||||||
|
steps:
|
||||||
|
- Define workflow graph in CSV with nodes representing agent steps and their connections
|
||||||
|
(next_node, on_failure)
|
||||||
|
- Configure BranchingAgent with customizable success/failure values and fallback fields
|
||||||
|
in the context dictionary
|
||||||
|
- Initialize the agent runtime with ensure_initialized() and configure execution tracking
|
||||||
|
and state adapter services
|
||||||
|
- Execute the workflow using agentmap run with appropriate inputs and monitor the
|
||||||
|
execution trace
|
||||||
|
outputs:
|
||||||
|
- Executed workflow with results stored in the specified output_field
|
||||||
|
- Detailed execution trace showing success/failure decisions at each branching point
|
||||||
|
- Updated workflow state persisted in the configured storage backend
|
||||||
|
tags: []
|
||||||
|
metadata:
|
||||||
|
source_repo: https://github.com/jwwelbor/AgentMap.git
|
||||||
|
extracted_at: ''
|
||||||
|
confidence: 0.95
|
||||||
|
---
|
||||||
|
|
||||||
|
# branching-agent-pattern
|
||||||
|
|
||||||
|
Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
**Dependencies:**
|
||||||
|
|
||||||
|
```text
|
||||||
|
pip install langgraph>=1.0.0 langchain-core>=0.3.0 pyyaml>=6.0.0 fastapi>=0.111.0 uvicorn>=0.34.3
|
||||||
|
```
|
||||||
|
|
||||||
|
**Setup steps:**
|
||||||
|
|
||||||
|
1. Install AgentMap: pip install agentmap[all]
|
||||||
|
1. Configure llm providers in agentmap_config.yaml (OpenAI, Anthropic, Google models)
|
||||||
|
1. Create CSV workflow files with graph definitions
|
||||||
|
1. Initialize runtime with ensure_initialized()
|
||||||
|
1. Run workflow with agentmap run <csv_file> --pretty
|
||||||
|
|
||||||
|
## Key Files
|
||||||
|
|
||||||
|
- `agentmap_config.yaml - Main configuration with LLM and storage settings`
|
||||||
|
- `agentmap_config_storage.yaml - Storage backend configuration`
|
||||||
|
- `hello_world.csv - Sample workflow demonstrating basic agent chain`
|
||||||
|
- `examples/host_integration/custom_agents.py - Custom agent implementations with host service integration`
|
||||||
|
|
||||||
|
## Steps
|
||||||
|
|
||||||
|
1. Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure)
|
||||||
|
2. Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary
|
||||||
|
3. Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services
|
||||||
|
4. Execute the workflow using agentmap run with appropriate inputs and monitor the execution trace
|
||||||
|
|
||||||
|
## Implementation Details
|
||||||
|
|
||||||
|
```python
|
||||||
|
CSV format: graph_name,node_name,agent_type,next_node,on_failure,prompt,input_fields,output_field
|
||||||
|
```
|
||||||
|
|
||||||
|
```python
|
||||||
|
BranchingAgent context example: {'input_fields': ['success'], 'output_field': 'result', 'success_values': ['PASSED', 'COMPLETED']}
|
||||||
|
```
|
||||||
|
|
||||||
|
```python
|
||||||
|
Execution command: agentmap run hello_world.csv --pretty
|
||||||
|
```
|
||||||
|
|
||||||
|
## Inputs
|
||||||
|
|
||||||
|
- CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field
|
||||||
|
- LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml
|
||||||
|
- Storage backend configuration in agentmap_config_storage.yaml
|
||||||
|
|
||||||
|
## Outputs
|
||||||
|
|
||||||
|
- Executed workflow with results stored in the specified output_field
|
||||||
|
- Detailed execution trace showing success/failure decisions at each branching point
|
||||||
|
- Updated workflow state persisted in the configured storage backend
|
||||||
|
|
||||||
|
## Failure Modes
|
||||||
|
|
||||||
|
- Invalid CSV format causing parsing errors during workflow loading
|
||||||
|
- Missing or misconfigured LLM provider settings leading to execution failures
|
||||||
|
- Storage backend unavailable or misconfigured preventing workflow persistence
|
||||||
|
- Agent execution timeout due to long-running operations or infinite loops
|
||||||
|
|
||||||
|
## Source
|
||||||
|
|
||||||
|
Extracted from: [https://github.com/jwwelbor/AgentMap.git](https://github.com/jwwelbor/AgentMap.git)
|
||||||
|
Confidence: 0.95
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
# Commands: branching-agent-pattern
|
||||||
|
|
||||||
|
## Available Commands
|
||||||
|
|
||||||
|
- `/skill branching-agent-pattern` — Load this skill
|
||||||
|
- `/run branching-agent-pattern` — Execute workflow
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
# Examples: branching-agent-pattern
|
||||||
|
|
||||||
|
## Usage Example
|
||||||
|
|
||||||
|
```python
|
||||||
|
# How to use this skill
|
||||||
|
# Inputs: CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field, LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml, Storage backend configuration in agentmap_config_storage.yaml
|
||||||
|
# Process: Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure) → Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary → Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services
|
||||||
|
# Outputs: Executed workflow with results stored in the specified output_field, Detailed execution trace showing success/failure decisions at each branching point, Updated workflow state persisted in the configured storage backend
|
||||||
|
```
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"name": "branching-agent-pattern",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"goal": "Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic",
|
||||||
|
"inputs": [
|
||||||
|
"CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field",
|
||||||
|
"LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml",
|
||||||
|
"Storage backend configuration in agentmap_config_storage.yaml"
|
||||||
|
],
|
||||||
|
"steps": [
|
||||||
|
"Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure)",
|
||||||
|
"Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary",
|
||||||
|
"Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services",
|
||||||
|
"Execute the workflow using agentmap run with appropriate inputs and monitor the execution trace"
|
||||||
|
],
|
||||||
|
"outputs": [
|
||||||
|
"Executed workflow with results stored in the specified output_field",
|
||||||
|
"Detailed execution trace showing success/failure decisions at each branching point",
|
||||||
|
"Updated workflow state persisted in the configured storage backend"
|
||||||
|
],
|
||||||
|
"failure_modes": [
|
||||||
|
"Invalid CSV format causing parsing errors during workflow loading",
|
||||||
|
"Missing or misconfigured LLM provider settings leading to execution failures",
|
||||||
|
"Storage backend unavailable or misconfigured preventing workflow persistence",
|
||||||
|
"Agent execution timeout due to long-running operations or infinite loops"
|
||||||
|
],
|
||||||
|
"confidence": 0.95,
|
||||||
|
"explanation": "The BranchingAgent pattern provides a reusable framework for creating conditional AI workflows. The CSV-based workflow definition allows defining complex agent graphs declaratively, while the BranchingAgent handles dynamic branching based on success/failure conditions with customizable value sets. This pattern can be adapted to various use cases including task routing, error handling, and conditional execution paths across different domains.",
|
||||||
|
"source_repo": "https://github.com/jwwelbor/AgentMap.git",
|
||||||
|
"score": 1.0
|
||||||
|
}
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
# Tests: autonomous-web-research-agent
|
# Tests: branching-agent-pattern
|
||||||
|
|
||||||
## Test Checklist
|
## Test Checklist
|
||||||
|
|
||||||
Reference in New Issue
Block a user