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 raintree-technology/docpull --skill docpull-researchgit clone --depth 1 https://github.com/raintree-technology/docpullWrote 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/raintree-technology/docpull/docpull-research)<a href="https://agentmods.dev/skills/raintree-technology/docpull/docpull-research"><img src="https://agentmods.dev/badge/skills/raintree-technology/docpull/docpull-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/raintree-technology/docpull/docpull-research"><img src="https://agentmods.dev/badge/skills/raintree-technology/docpull/docpull-research.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00115 | $0.01206 |
| Opus 5.5 | $0.00046 | $0.00482 |
| Sonnet 5.5 | $0.00023 | $0.00241 |
| Haiku 4.5 | $0.00012 | $0.00121 |
Grade A, and why
docpull-research scanned grade A with 0 findings 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 76 lines — stays where its author put it; the contents beside it link to each section on GitHub.
docpull research
Ground library/framework, API, vendor, product, and website answers in fetched source material instead of training-data recall. The cost of one grep_docs call is ~50 ms; the cost of giving a confidently wrong answer about a fast-moving source is much higher.
When to use this skill
Activate when the user's question names a specific library, framework, SDK, API surface, vendor, product page, or website - especially:
- Fast-moving libraries where training-data drift is likely: Next.js (App Router), Pydantic v2, LangChain, FastAPI, Anthropic SDK, OpenAI SDK, Drizzle, Prisma, Tailwind v4+, Vercel AI SDK.
- Version-specific questions ("how does X work in [library] v[N]").
- Pasted documentation, blog, vendor, product, or source URLs the user wants explained or referenced.
- Code the user is actively writing against a library, where wrong signatures will cost them debugging time.
Do NOT activate for:
- General programming questions ("what's a closure", "explain async/await").
- The user's own codebase — that's what Read/Grep are for.
- Highly stable, well-known stdlib APIs (Python
os, JavaScriptArray.prototype). - Clarifying questions where the answer is trivial from context.
Workflow
1. Check what's already cached
Always start with list_indexed. It's free and tells you which libraries you can search immediately without fetching.
list_indexed() → ["fastapi (3d ago)", "react (12h ago)", ...]
2. If the source/library is cached -> search it
Use grep_docs with a focused regex. The source is already on disk, so this is a local search:
grep_docs(library="fastapi", pattern="dependency injection", limit=10, context=2)
If you want more context around a hit, use read_doc(library, path, line_start, line_end).
3. If the source/library is NOT cached -> decide whether to fetch
- Built-in alias (the source appears in
list_sources()): callensure_docs(source="<alias>"). This crawls and indexes the whole source. ~10-30s for typical sites. - Pasted documentation or source URL: call
fetch_url(url=...)if you only need one static/server-rendered page. For a whole source site you don't have an alias for, tell the user to run/web-add <URL>(or the older/docs-add <URL>alias) so docpull can register and crawl it; the MCPfetch_urlis single-page only. - No alias, user didn't paste a URL: ask the user once whether they'd like to add the source, and what URL should be used. Don't fetch speculatively.
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 · 76 lines · 115 tokens per session scan A a8d645a06822
docpull-research is a skill published in the GitHub repository raintree-technology/docpull (29 stars, last pushed yesterday), licensed MIT. It adds 115 tokens to every session and 1,206 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
doc-generator
Auto-generate API reference documentation from Python code.
api-documentation
Patterns and templates for creating comprehensive API documentation using OpenAPI/Swagger, AsyncAPI, and manual documentation approaches. Use this skill whenever the user wants to document REST endpoints, generate or improve an OpenAPI spec, create Swagger docs, document WebSocket/event-driven APIs with AsyncAPI…
agent-creator
Create custom AI subagents with proper plugin structure, persona generation, and companion routing skills.
api-documentation-generator
Generate comprehensive, developer-friendly API documentation from code, including endpoints, parameters, examples, and best practices.
API Documentation Generator
AI-powered API documentation generation tool that auto-generates comprehensive API docs from source code, including OpenAPI/Swagger specs, Postman collections, and markdown documentation with examples and authentication details.
mem0-test-integration
Verify a Mem0 integration produced by /mem0-integrate. Runs in the same workspace on the same branch (loose coupling) — installs dependencies, runs the repo's native test suite, then exercises a real end-to-end smoke flow against the user's API key. Produces a scorecard. TRIGGER when: user has just run /mem0-integrate…