plugins/indexandria/skills/doc-search/SKILL.md
Crawl web documentation into context for accurate, up-to-date coding assistance. Supports quick single-page lookups and deep multi-page indexing with search.
npx skillsauth add alicankiraz1/indexandria doc-searchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You have access to Indexandria's MCP tools for pulling web documentation into the conversation. Nothing is stored on disk — all content lives in memory for the session.
crawl_docsBest for 1-15 pages. Content goes directly into context.
crawl_docs("https://react.dev/reference/react/useEffect", depth=1)
Use when:
index_docs + get_indexed_page + search_indexedBest for 20-100 pages. Crawls everything into memory, returns a compact index. You then selectively retrieve only the pages you need.
# Step 1: Index the docs (returns a table of contents, not full content)
index_docs("https://fastapi.tiangolo.com/tutorial/", depth=2, max_pages=50)
# Step 2: Search for what you need
search_indexed("OAuth2")
# Step 3: Read the relevant pages
get_indexed_page([12, 15])
Use when:
| Scenario | Mode | Example |
|----------|------|---------|
| Single API/hook/function | Quick, depth=1 | crawl_docs("https://react.dev/reference/react/useEffect") |
| One tutorial page | Quick, depth=1 | crawl_docs("https://fastapi.tiangolo.com/tutorial/first-steps/", depth=1) |
| Tutorial section with subpages | Quick, depth=2 | crawl_docs("https://docs.python.org/3/tutorial/classes.html") |
| Full framework docs | Deep | index_docs("https://fastapi.tiangolo.com/tutorial/", max_pages=60) |
| Large API reference | Deep + patterns | index_docs("https://react.dev/reference/", include_patterns=["*/reference/*"]) |
| Unknown docs structure | Deep, low pages | index_docs(url, max_pages=30) then browse the index |
When you have indexed documentation, follow this pattern before writing implementation code:
Search before implementing. Before writing code that uses a library API, call search_indexed for the specific function, class, or pattern you need. Do not rely on memory — the docs are right there.
Read the relevant pages. Use get_indexed_page to pull in the full content of pages that match your search. Read them carefully.
Verify parameters and return types. If the docs specify exact parameter names, types, or return values, use them as written. Do not guess.
Re-search when unsure. If mid-implementation you are unsure about a behavior, call search_indexed again rather than making assumptions.
crawl_docs(url, depth=2, max_pages=15, include_patterns=None, exclude_patterns=None)Crawl and return content directly. Output capped at ~110 KB.
index_docs(url, depth=2, max_pages=50, include_patterns=None, exclude_patterns=None)Crawl up to 100 pages into memory. Returns a compact index table (page number, title, headings). Pages stay in memory until the next index_docs call or session end.
get_indexed_page(page_numbers)Retrieve full content of specific pages by number (1-based). Example: get_indexed_page([1, 5, 12]). Output capped at ~110 KB — request fewer pages if hitting the limit.
search_indexed(query, max_results=10)Case-insensitive keyword search across all indexed pages. Returns matching snippets with page numbers and context. Use results to decide which pages to read fully.
include_patterns to stay within a docs section: ["*/reference/*"]depth=1 when you only need a single page.index_docs replaces the previous index.User: "Build a FastAPI app with OAuth2 and JWT authentication"
1. index_docs("https://fastapi.tiangolo.com/tutorial/", depth=2, max_pages=60)
→ Returns index: 45 pages covering tutorial sections
2. search_indexed("OAuth2")
→ Matches: Page 23 (Security - OAuth2), Page 24 (OAuth2 with JWT)
3. get_indexed_page([23, 24])
→ Full content of OAuth2 tutorial pages
4. search_indexed("dependency injection")
→ Matches: Page 8 (Dependencies), Page 9 (Dependencies in path operations)
5. get_indexed_page([8, 9])
→ Full content of dependency injection pages
6. Write the implementation using the docs as reference
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.
development
Run, watch, debug, and extend OpenClaw QA testing with qa-lab and qa-channel. Use when Codex needs to execute the repo-backed QA suite, inspect live QA artifacts, debug failing scenarios, add new QA scenarios, or explain the OpenClaw QA workflow. Prefer the live OpenAI lane with regular openai/gpt-5.4 in fast mode; do not use gpt-5.4-pro or gpt-5.4-mini unless the user explicitly overrides that policy.
development
End-to-end Parallels smoke, upgrade, and rerun workflow for OpenClaw across macOS, Windows, and Linux guests. Use when Codex needs to run, rerun, debug, or interpret VM-based install, onboarding, gateway smoke tests, latest-release-to-main upgrade checks, fresh snapshot retests, or optional Discord roundtrip verification under Parallels.