Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add aretw0/agents-lab --skill source-researchgit clone --depth 1 https://github.com/aretw0/agents-labWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/aretw0/agents-lab/source-research)<a href="https://agentmods.dev/skills/aretw0/agents-lab/source-research"><img src="https://agentmods.dev/badge/skills/aretw0/agents-lab/source-research/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/aretw0/agents-lab/source-research"><img src="https://agentmods.dev/badge/skills/aretw0/agents-lab/source-research.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00071 | $0.02394 |
| Opus 5.5 | $0.00028 | $0.00958 |
| Sonnet 5.5 | $0.00014 | $0.00479 |
| Haiku 4.5 | $0.00007 | $0.00239 |
Grade A, and why
source-research scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- `curl`, `wget`, `python requests`, `r.jina.ai` mirrors How it starts
The opening of the file, as written. The whole thing — 234 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Source Research
Answer questions about open-source libraries by finding evidence with GitHub permalinks. Every claim backed by actual code.
Execution Model
Pi executes tool calls sequentially, even when you emit multiple calls in one turn. But batching independent calls in a single turn still saves LLM round-trips (~5-10s each). Use these patterns:
| Pattern | When | Actually parallel? |
|---|---|---|
| Batch tool calls in one turn | Independent ops (web_search + fetch_content + read) | No, but saves round-trips |
fetch_content({ urls: [...] }) |
Multiple URLs to fetch | Yes (3 concurrent) |
Bash with & + wait |
Multiple git/gh commands | Yes (OS-level) |
Step 1: Classify the Request
Before doing anything, classify the request to pick the right research strategy.
| Type | Trigger | Primary Approach |
|---|---|---|
| Conceptual | "How do I use X?", "Best practice for Y?" | web_search + fetch_content (README/docs) |
| Implementation | "How does X implement Y?", "Show me the source" | fetch_content (clone) + code search |
| Context/History | "Why was this changed?", "History of X?" | git log + git blame + issue/PR search |
| Interactive Browser Ops | "open/navigate/click/fill/login" on a live site | web-browser (CDP) |
| Comprehensive | Complex or ambiguous requests, "deep dive" | All of the above |
Routing Policy (Web)
Use this routing policy to avoid overlap and keep behavior deterministic:
- Interactive intent (open tab, click, fill form, login, inspect dynamic UI)
- Use
web-browserskill first (CDP scripts inskills/web-browser/scripts). - Do not replace with plain
bashscraping unless the browser path fails.
- Use
- Search / extraction intent (find sources, read docs/pages, summarize content)
- Use
web_searchand/orfetch_content.
- Use
- Source-code evidence intent (implementation details with permalinks)
- Use
fetch_contentclone +bash/readin repo + permalink construction.
- Use
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 234 lines · 71 tokens per session scan A b5ecbb0fa890
source-research is a skill published in the GitHub repository aretw0/agents-lab (11 stars, last pushed 3mo ago), licensed MIT. It adds 71 tokens to every session and 2,394 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
mcp-scripting
Read before writing mcpScript code. Covers tool discovery, the shape of call results (including JSON returned as text), and script limits.
gpt-image-gen
MUST read before generating images. Prompt-crafting guide for gpt-image-2.5 covering tool routing (native imagegeneration server tool vs the generateimage tool), model and quality selection, prompt structure, exact text rendering, reference-image editing, transparent assets, output formats, and multi-turn refinement.
tmux-manual-qa
Run a single manual tmux-based QA scenario for the todo continuation feature against the real CLI (./pi-test.sh) in an interactive TUI. Captures scrollback, asserts deterministic pass/fail count markers, and cleans up test fixtures. Use only for the manual-qa milestone features.
release-notes
Write release notes for a tagged release — a business-impact summary of what changed for the user, plus a thanks section naming every contributor whose commits are in the release. Short by construction.
review-this-branch
Run the nohuman review gate (fresh-session adversarial reviewer + tamper guard) over the current branch or a GitHub pull request, with no server, no database, and no onboarding, and relay the pass/fail checklist.
pi-package-sandbox-test
Use when verifying that published Pi packages install and load for normal users, including pi.dev package compatibility checks, release validation, Daytona sandbox tests, and package installability audits.