Skip to content
cccskills
FreePublished on GitHub

github-deep-research

Multi-round deep research on any GitHub repo via API.

The English summary is being prepared. Showing the original description.

Works withGitHub
See how to install

Files included (1)

  • SKILL.md4.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

GitHub Deep Research

Multi-round research combining GitHub API, web_search, and browse_page to produce comprehensive markdown reports on any GitHub repository.

Poirot note: The original deer-flow skill uses a bundled scripts/github_api.py helper. Poirot doesn't bundle that script, so this version uses bash with curl to the GitHub API directly + gh CLI when available.

When to Use

  • User provides a GitHub repository URL
  • User asks for comprehensive analysis, timeline reconstruction, competitive analysis, or in-depth investigation of an open source project
  • User wants to understand a project's architecture, history, or community

Research Workflow

  • Round 1: GitHub API (repo metadata, README, file tree, contributors, commits)
  • Round 2: Discovery (web search for overview, competitors)
  • Round 3: Deep Investigation (architecture, timeline, community sentiment)
  • Round 4: Deep Dive (commit history, issues/PRs for feature evolution)

Round 1 — GitHub API

Setup

# Resolve owner/repo from remote URL
REMOTE_URL=$(git remote get-url origin 2>/dev/null || echo "")
# Or user provides owner/repo directly
OWNER="owner"
REPO="repo"

Repo metadata via curl

# Repo summary
curl -s "https://api.github.com/repos/$OWNER/$REPO" | python3 -c "
import sys, json
r = json.load(sys.stdin)
print(f'Name: {r[\"full_name\"]}')
print(f'Description: {r[\"description\"]}')
print(f'Stars: {r[\"stargazers_count\"]}')
print(f'Forks: {r[\"forks_count\"]}')
print(f'Language: {r[\"language\"]}')
print(f'License: {r.get(\"license\",{}).get(\"spdx_id\",\"N/A\")}')
print(f'Created: {r[\"created_at\"][:10]}')
print(f'Updated: {r[\"updated_at\"][:10]}')
"

# README
curl -s "https://api.github.com/repos/$OWNER/$REPO/readme" | python3 -c "
import sys, json, base64
r = json.load(sys.stdin)
print(base64.b64decode(r['content']).decode('utf-8'))
"

# Recent commits
curl -s "https://api.github.com/repos/$OWNER/$REPO/commits?per_page=10" | python3 -c "
import sys, json
for c in json.load(sys.stdin):
    print(f'{c[\"sha\"][:7]} {c[\"commit\"][\"author\"][\"date\"][:10]} {c[\"commit\"][\"message\"].splitlines()[0][:80]}')
"

# Languages
curl -s "https://api.github.com/repos/$OWNER/$REPO/languages"

# Contributors
curl -s "https://api.github.com/repos/$OWNER/$REPO/contributors?per_page=10" | python3 -c "
import sys, json
for c in json.load(sys.stdin):
    print(f'{c[\"login\"]:20s} {c[\"contributions\"]} commits')
"

Via gh CLI (if available)

gh repo view $OWNER/$REPO
gh api repos/$OWNER/$REPO/commits --paginate | head -50

Round 2 — Discovery (3-5 web_search)

  • Get overview and identify key terms
  • Find official website/docs
  • Identify main players/competitors

Round 3 — Deep Investigation (5-10 web_search + browse_page)

  • Technical architecture details
  • Timeline of key events
  • Community sentiment
  • Use browse_page on valuable URLs for full content

Round 4 — Deep Dive

  • Analyze commit history for timeline
  • Review issues/PRs for feature evolution
  • Check contributor activity

Report Structure

  1. Metadata Block — Date, confidence level, subject
  2. Executive Summary — 2-3 sentence overview with key metrics
  3. Chronological Timeline — Phased breakdown with dates
  4. Key Analysis Sections — Topic-specific deep dives
  5. Metrics & Comparisons — Tables, growth charts
  6. Strengths & Weaknesses — Balanced assessment
  7. Sources — Categorized references
  8. Confidence Assessment — Claims by confidence level

Confidence Scoring

ConfidenceCriteria
High (90%+)Official docs, GitHub data, multiple corroborating sources
Medium (70-89%)Single reliable source, recent articles
Low (50-69%)Social media, unverified claims, outdated info

Citation Format

Always include inline citations: [citation:Title](URL) immediately after each claim from external sources.

Output

Save report as: .poirot/outputs/research_{topic}_{YYYYMMDD}.md

Best Practices

  1. Start with official sources — Repo, docs, company blog
  2. Verify dates from commits/PRs — More reliable than articles
  3. Triangulate claims — 2+ independent sources
  4. Note conflicting info — Don't hide contradictions
  5. Distinguish fact vs opinion — Label speculation clearly
  6. Always include inline citations

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Structured peer-review of academic papers.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

Dark-themed SVG architecture/cloud/infra diagrams as HTML.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

arxiv

Free

Search arXiv papers by keyword, author, category, or ID.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

Monitor blogs and RSS/Atom feeds via blogwatcher-cli.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

Onboarding conversation to generate a user profile.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

Generate charts: select type, extract data, render image.

The English summary is being prepared. Showing the original description.

HezaoHezao/poirot251Updated Jul 29, 2026

See all skills by HezaoHezao

Report a problem with this skill