nimble-web-expert
Installation
SKILL.md
Nimble Web Expert
Web extraction, search, and URL discovery using the Nimble CLI. Returns clean structured data from any website.
User request: $ARGUMENTS
Core principles
- Route by intent first (see Analyze & Route for the full decision model). Named site with a matching Extraction Template + a direct item to look up → run the template. Site with no template, or a need that requires discovery/reasoning across pages → a Web Search Agent. One-off single URL →
nimble extract. Raw results to work from ("find pages/articles about…") →nimble search; a synthesized deliverable (report, brief, comparison, recommendation) → a Web Search Agent. Discover/crawl URLs →nimble mapornimble crawl. - Web Search Agent runs: pick a run mode before building the command. Default to named create-or-reuse —
nimble agents run --agent-name <stable-name>— so a repeat session lands on the same agent.agents:runs createis the explicit-agent-ID route only and requires--agent-id.references/nimble-agents/reference.mdhas the mode table,use_caselocking, and the one-timeskilloverride. - One command → present results → done. Run once, show the data immediately as a table. Do NOT experiment, loop, or write Python to parse output.
- Multiple inputs → always parallel. 2+ URLs/keywords/ASINs →
&+wait. 6–20 →xargs -P. 20+ → Python asyncio script. Seereferences/batch-patterns.md. - Escalate render tiers silently. Tier 1 → 2 → 3 → … without asking. Surface a decision only when all tiers fail and investigation tools are needed.
- Never answer from training data. Live prices, current news, today's listings → always fetch via Nimble. If unavailable, say so.
- AskUserQuestion at every meaningful choice. Header ≤12 chars, 2–4 options, label 1–5 words, recommended option first. Never present choices as numbered prose.
- Save all outputs to
.nimble/. Never leave extraction results in memory only. - Verify the connection BEFORE working — don't fire a data call and react to the error. With bash,
nimble --version+NIMBLE_API_KEYconfirms the CLI path; otherwise run one read-onlymcp__plugin_nimble_nimble__nimble_agents_listprobe. Success = connected; an auth/not-connected error or a response containing an OAuth authorization URL = not connected. - No working CLI and no connected MCP → stop. Do not fall back to WebFetch, WebSearch, curl, or
dangerouslyDisableSandbox. If the plugin is installed but the connector isn't connected (typical Cowork / claude.ai), surface the verbatim connect steps fromrules/setup.mdand stop; if no plugin at all, follow the install flow inrules/setup.md. - If a tool hands back an OAuth "Authorize" link instead of data, present it exactly as given and stop. Never invent a "paste the URL back" / "I'll complete the connection" step — none exists — and never claim tools "will activate" then call them in the same turn. Wait for the user to authorize, then retry or re-probe.