Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 28b0c483b8 |
@@ -0,0 +1,77 @@
|
||||
---
|
||||
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
|
||||
@@ -0,0 +1,6 @@
|
||||
# Commands: autonomous-web-research-agent
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill autonomous-web-research-agent` — Load this skill
|
||||
- `/run autonomous-web-research-agent` — Execute workflow
|
||||
@@ -0,0 +1,10 @@
|
||||
# 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
|
||||
```
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Tests: text-concatenation
|
||||
# Tests: autonomous-web-research-agent
|
||||
|
||||
## Test Checklist
|
||||
|
||||
@@ -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
|
||||
@@ -1,6 +0,0 @@
|
||||
# Commands: text-concatenation
|
||||
|
||||
## Available Commands
|
||||
|
||||
- `/skill text-concatenation` — Load this skill
|
||||
- `/run text-concatenation` — Execute workflow
|
||||
@@ -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
|
||||
```
|
||||
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user