npx claudepluginhub ai-builder-team/ai-builder-plugin-marketplace --plugin mThis skill is limited to using the following tools:
You have been given the following research request:
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
You have been given the following research request:
$ARGUMENTS
Analyze the request, choose the appropriate mode, and run the command. Then synthesize results for the user.
--scrape--ask--research--reason--deep--searchDefault to --research when unsure. Do NOT use --deep unless the user explicitly asks for exhaustive/deep coverage (it's the slowest and most expensive mode).
uv run --directory ~/.claude python scripts/web_research.py --<mode> "$ARGUMENTS"
IMPORTANT: Always use --directory ~/.claude so uv finds the pyproject.toml with aiohttp dependency.
If the initial results include source URLs that look highly relevant and the answer feels incomplete, follow up by scraping up to 4 of the most promising URLs. Run scrapes in parallel where possible.
Budget: Maximum 10 research/ask/reason calls, with up to 4 scrapes per research call to read the most relevant sources in full. Synthesize what you have once you've exhausted useful leads or hit the limit.
After gathering results, write a clear summary for the user. Include source URLs at the end. Do NOT make additional API calls after synthesizing.
| Mode | Perplexity Model | Purpose | Cost |
|---|---|---|---|
--ask | sonar | Quick fact with AI answer | Low |
--search | (direct search) | Ranked results, no AI synthesis | Low |
--research | sonar-pro | AI combines multiple sources | Medium |
--reason | sonar-reasoning-pro | Chain-of-thought analysis | High |
--deep | sonar-deep-research | Exhaustive multi-source research | Very High |
--scrape | (firecrawl) | Fetch full page content from URL | Low |
--search)| Parameter | Description |
|---|---|
--max-results N | Number of results (1-20, default: 10) |
--recency | Filter: day, week, month, year |
--domains | Limit to specific domains |
--scrape)IMPORTANT: --scrape takes ONLY a URL. Do NOT pass additional query text after the URL -- it will cause an argparse error.
# Correct:
uv run --directory ~/.claude python scripts/web_research.py --scrape "https://example.com/page"
# WRONG (will fail):
uv run --directory ~/.claude python scripts/web_research.py --scrape "https://example.com/page" "tell me about X"
| Parameter | Description |
|---|---|
--format | markdown, html, text (default: markdown) |
--full-page | Include sidebars/nav (default: main content only) |
| Parameter | Description |
|---|---|
--model | Override Perplexity model selection |
PERPLEXITY_API_KEY — for search/ask/research/reason/deep modesFIRECRAWL_API_KEY — for scrape modeBoth loaded from environment or ~/.claude/.env.