Tutorial

How to Build a Coding Agent with Realtime GitHub Issues and Docs Search

Build a coding agent that searches GitHub issues and live docs in real time using Scavio SERP queries with site operators.

r/aiagents threads show the 2026 pattern: coding agents that cite open GitHub issues and the exact doc section in their answers. This tutorial builds that agent using Scavio's SERP with site:github.com and site:docs.* operators.

Prerequisites

  • Python 3.10+
  • A Scavio API key
  • An LLM API key (Anthropic or OpenAI)

Walkthrough

Step 1: Build a GitHub issues tool

site:github.com/ORG/REPO/issues returns live issue tracker data.

Python
import requests, os
API_KEY = os.environ['SCAVIO_API_KEY']

def github_issues(repo, query):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': f'site:github.com/{repo}/issues {query}', 'num_results': 10})
    return r.json().get('organic_results', [])

Step 2: Build a docs search tool

site:docs.prisma.io or similar constrains to the official docs.

Python
def docs_search(domain, query):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': f'site:{domain} {query}', 'num_results': 10})
    return r.json().get('organic_results', [])

Step 3: Compose an agent loop

Both tools run in parallel, results merged before answer synthesis.

Python
import anthropic
client = anthropic.Anthropic()

def research(repo, docs_domain, question):
    issues = github_issues(repo, question)
    docs = docs_search(docs_domain, question)
    context = '\n'.join([f"ISSUE: {i['title']} {i['link']}" for i in issues[:5]])
    context += '\n\n' + '\n'.join([f"DOC: {d['title']} {d['link']}" for d in docs[:5]])
    msg = client.messages.create(
        model='claude-sonnet-4-6',
        max_tokens=1024,
        messages=[{'role': 'user', 'content': f'{question}\n\n{context}'}])
    return msg.content[0].text

Step 4: Test with a real question

Point at a library and repo you know.

Python
print(research('prisma/prisma', 'prisma.io', 'why does migrate dev hang on postgres?'))

Step 5: Add a freshness filter

Prefer issues from the last 90 days.

Python
from datetime import datetime, timedelta
def recent_issues(items):
    cutoff = datetime.now() - timedelta(days=90)
    # Assume each item includes date; filter accordingly
    return items

Python Example

Python
import os, requests
API_KEY = os.environ['SCAVIO_API_KEY']

def coding_research(repo, question):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': f'site:github.com/{repo}/issues {question}'})
    return r.json().get('organic_results', [])

print(coding_research('prisma/prisma', 'migrate dev hangs'))

JavaScript Example

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
export async function codingResearch(repo, question) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query: `site:github.com/${repo}/issues ${question}` })
  });
  return (await r.json()).organic_results || [];
}

Expected Output

JSON
Agent answers with inline citations to open GitHub issues and exact doc sections. Cuts debugging time materially for known-library bugs.

Related Tutorials

Frequently Asked Questions

Most developers complete this tutorial in 15 to 30 minutes. You will need a Scavio API key (free tier works) and a working Python or JavaScript environment.

Python 3.10+. A Scavio API key. An LLM API key (Anthropic or OpenAI). A Scavio API key gives you 500 free credits per month.

Yes. The free tier includes 500 credits per month, which is more than enough to complete this tutorial and prototype a working solution.

Scavio has a native LangChain package (langchain-scavio), an MCP server, and a plain REST API that works with any HTTP client. This tutorial uses the raw REST API, but you can adapt to your framework of choice.

Start Building

Build a coding agent that searches GitHub issues and live docs in real time using Scavio SERP queries with site operators.