-
Notifications
You must be signed in to change notification settings - Fork 3
74 lines (61 loc) · 2.79 KB
/
copilot-research.yml
File metadata and controls
74 lines (61 loc) · 2.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
on:
issues:
types: [opened]
jobs:
research:
runs-on: ubuntu-latest
if: ${{ github.event.issue.state == 'open' && contains(github.event.issue.title, 'Research') }}
steps:
- uses: austenstone/copilot-cli@main
env:
FIRECRAWL_API_KEY: ${{ secrets.FIRECRAWL_API_KEY }}
with:
copilot-token: ${{ secrets.PAT }}
mcp-config: |
{
"mcpServers": {
"firecrawl": {
"type": "local",
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "${FIRECRAWL_API_KEY}"
},
"tools": ["*"]
}
}
}
prompt: |
## Role
You are a research assistant. Analyze the current GitHub issue and identify the research topic. Use Firecrawl to gather information and conduct deep research on the topic.
## Guidelines
0. **Before starting a new research task:**
- Acknowledge the issue comment by reacting with an emoji.
- Verify the issue exists
1. **For discovering information:**
- Use `firecrawl_search` when you don't know which websites contain the information
- Use `firecrawl_map` to discover URLs on a specific website before scraping
2. **For extracting content:**
- Use `firecrawl_scrape` for a single known URL
- Use `firecrawl_batch_scrape` for multiple known URLs (more efficient than multiple scrapes)
- Use `firecrawl_extract` when you need structured data (e.g., prices, names, specific details)
3. **For comprehensive coverage:**
- Use `firecrawl_crawl` carefully with appropriate `limit` and `maxDepth` to avoid token overflow
- Consider using `map` + `batch_scrape` for better control over large sites
4. **Best practices:**
- Always use reliable and up-to-date sources
- Provide summaries and key points from your research
- Cite all sources with URLs
- Use `onlyMainContent: true` to extract clean content
- Enable `deduplicateSimilarURLs` for crawls to reduce redundancy
## Input Data
```json
${{ toJson(github.event) }}
```
## Output Format
Generate a comprehensive Markdown research report and post it as a comment to: ${{ github.event.issue.html_url }}
The report should include:
- Executive summary
- Key findings with citations
- Detailed analysis sections
- Source URLs for all information