{
  "schemaVersion": "1.0",
  "item": {
    "slug": "deep-scout",
    "name": "Deep Scout",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/JonathanJing/deep-scout",
    "canonicalUrl": "https://clawhub.ai/JonathanJing/deep-scout",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/deep-scout",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=deep-scout",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "clawhub.json",
      "config.yaml",
      "examples/openclaw-acquisition.md",
      "prompts/browser-extract.txt"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/deep-scout"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/deep-scout",
    "agentPageUrl": "https://openagent3.xyz/skills/deep-scout/agent",
    "manifestUrl": "https://openagent3.xyz/skills/deep-scout/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/deep-scout/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "deep-scout",
        "body": "Multi-stage deep intelligence pipeline (Search → Filter → Fetch → Synthesize)."
      },
      {
        "title": "1. Ask OpenClaw (Recommended)",
        "body": "Tell OpenClaw: \"Install the deep-scout skill.\" The agent will handle the installation and configuration automatically."
      },
      {
        "title": "2. Manual Installation (CLI)",
        "body": "If you prefer the terminal, run:\n\nclawhub install deep-scout"
      },
      {
        "title": "🚀 Usage",
        "body": "/deep-scout \"Your research question\" [--depth 5] [--freshness pw] [--country US] [--style report]"
      },
      {
        "title": "Options",
        "body": "FlagDefaultDescription--depth N5Number of URLs to fully fetch (1–10)--freshnesspwpd=past day, pw=past week, pm=past month, py=past year--countryUS2-letter country code for Brave search--languageen2-letter language code--search-count8Total results to collect before filtering--min-score4Minimum relevance score to keep (0–10)--stylereportreport | comparison | bullets | timeline--dimensionsautoComparison dimensions (comma-separated, for --style comparison)--output FILEstdoutWrite report to file--no-browser—Disable browser fallback--no-firecrawl—Disable Firecrawl fallback"
      },
      {
        "title": "🛠️ Pipeline — Agent Loop Instructions",
        "body": "When this skill is invoked, execute the following four-stage pipeline:"
      },
      {
        "title": "Stage 1: SEARCH",
        "body": "Call web_search with:\n\nquery: <user query>\ncount: <search_count>\ncountry: <country>\nsearch_lang: <language>\nfreshness: <freshness>\n\nCollect: title, url, snippet for each result.\nIf fewer than 3 results returned, retry with freshness: \"py\" (relaxed)."
      },
      {
        "title": "Stage 2: FILTER",
        "body": "Load prompts/filter.txt. Replace template vars:\n\n{{query}} → the user's query\n{{freshness}} → freshness param\n{{min_score}} → min_score param\n{{results_json}} → JSON array of search results\n\nCall the LLM with this prompt. Parse the returned JSON array.\nKeep only results where keep: true. Sort by score descending.\nTake top depth URLs as the fetch list.\n\nDeduplication: Max 2 results per root domain (already handled in filter prompt)."
      },
      {
        "title": "Stage 3: FETCH (Tiered Escalation)",
        "body": "For each URL in the filtered list:\n\nTier 1 — web_fetch (fast):\n\nCall web_fetch(url)\nIf content length >= 200 chars → accept, trim to max_chars_per_source\n\nTier 2 — Firecrawl (deep/JS):\n\nIf Tier 1 fails or returns < 200 chars:\n  Run: scripts/firecrawl-wrap.sh <url> <max_chars>\n  If output != \"FIRECRAWL_UNAVAILABLE\" and != \"FIRECRAWL_EMPTY\" → accept\n\nTier 3 — Browser (last resort):\n\nIf Tier 2 fails:\n  Call browser(action=\"open\", url=url)\n  Call browser(action=\"snapshot\")\n  Load prompts/browser-extract.txt, substitute {{query}} and {{max_chars_per_source}}\n  Call LLM with snapshot content + extraction prompt\n  If output != \"FETCH_FAILED:...\" → accept\n\nIf all tiers fail: Use the original snippet from Stage 1 search results. Mark as [snippet only].\n\nStore: { url: extracted_content } dict."
      },
      {
        "title": "Stage 4: SYNTHESIZE",
        "body": "Choose prompt template based on --style:\n\nreport / bullets / timeline → prompts/synthesize-report.txt\ncomparison → prompts/synthesize-comparison.txt\n\nReplace template vars:\n\n{{query}} → user query\n{{today}} → current date (YYYY-MM-DD)\n{{language}} → language param\n{{source_count}} → number of successfully fetched sources\n{{dimensions_or_auto}} → dimensions param (or \"auto\")\n{{fetched_content_blocks}} → build as:\n[Source 1] (url1)\n<content>\n---\n[Source 2] (url2)\n<content>\n\nCall LLM with the filled prompt. The output is the final report.\n\nIf --output FILE is set, write the report to that file. Otherwise, print to the channel."
      },
      {
        "title": "⚙️ Configuration",
        "body": "Defaults are in config.yaml. Override via CLI flags above."
      },
      {
        "title": "📂 Project Structure",
        "body": "skills/deep-scout/\n├── SKILL.md                     ← This file (agent instructions)\n├── config.yaml                  ← Default parameter values\n├── prompts/\n│   ├── filter.txt               ← Stage 2: relevance scoring prompt\n│   ├── synthesize-report.txt    ← Stage 4: report/bullets/timeline synthesis\n│   ├── synthesize-comparison.txt← Stage 4: comparison table synthesis\n│   └── browser-extract.txt      ← Stage 3: browser snapshot extraction\n├── scripts/\n│   ├── run.sh                   ← CLI entrypoint (emits pipeline actions)\n│   └── firecrawl-wrap.sh        ← Firecrawl CLI wrapper with fallback handling\n└── examples/\n    └── openclaw-acquisition.md  ← Example output: OpenClaw M&A intelligence"
      },
      {
        "title": "🔧 Error Handling",
        "body": "ScenarioHandlingAll fetch attempts failUse snippet from Stage 1; mark [snippet only]Search returns 0 resultsRetry with freshness: py; error if still 0Firecrawl not installedfirecrawl-wrap.sh outputs FIRECRAWL_UNAVAILABLE, skip silentlyBrowser tool unavailableSkip Tier 3; proceed with available contentLLM synthesis exceeds contextTrim sources proportionally, prioritize high-score sourcesRate limit on Brave APIWait 2s, retry once"
      },
      {
        "title": "📋 Example Outputs",
        "body": "See examples/openclaw-acquisition.md for a full sample report.\n\nDeep Scout v0.1.0 · OpenClaw Skills · clawhub: deep-scout"
      }
    ],
    "body": "deep-scout\n\nMulti-stage deep intelligence pipeline (Search → Filter → Fetch → Synthesize).\n\n🛠️ Installation\n1. Ask OpenClaw (Recommended)\n\nTell OpenClaw: \"Install the deep-scout skill.\" The agent will handle the installation and configuration automatically.\n\n2. Manual Installation (CLI)\n\nIf you prefer the terminal, run:\n\nclawhub install deep-scout\n\n🚀 Usage\n/deep-scout \"Your research question\" [--depth 5] [--freshness pw] [--country US] [--style report]\n\nOptions\nFlag\tDefault\tDescription\n--depth N\t5\tNumber of URLs to fully fetch (1–10)\n--freshness\tpw\tpd=past day, pw=past week, pm=past month, py=past year\n--country\tUS\t2-letter country code for Brave search\n--language\ten\t2-letter language code\n--search-count\t8\tTotal results to collect before filtering\n--min-score\t4\tMinimum relevance score to keep (0–10)\n--style\treport\treport | comparison | bullets | timeline\n--dimensions\tauto\tComparison dimensions (comma-separated, for --style comparison)\n--output FILE\tstdout\tWrite report to file\n--no-browser\t—\tDisable browser fallback\n--no-firecrawl\t—\tDisable Firecrawl fallback\n🛠️ Pipeline — Agent Loop Instructions\n\nWhen this skill is invoked, execute the following four-stage pipeline:\n\nStage 1: SEARCH\n\nCall web_search with:\n\nquery: <user query>\ncount: <search_count>\ncountry: <country>\nsearch_lang: <language>\nfreshness: <freshness>\n\n\nCollect: title, url, snippet for each result.\nIf fewer than 3 results returned, retry with freshness: \"py\" (relaxed).\n\nStage 2: FILTER\n\nLoad prompts/filter.txt. Replace template vars:\n\n{{query}} → the user's query\n{{freshness}} → freshness param\n{{min_score}} → min_score param\n{{results_json}} → JSON array of search results\n\nCall the LLM with this prompt. Parse the returned JSON array.\nKeep only results where keep: true. Sort by score descending.\nTake top depth URLs as the fetch list.\n\nDeduplication: Max 2 results per root domain (already handled in filter prompt).\n\nStage 3: FETCH (Tiered Escalation)\n\nFor each URL in the filtered list:\n\nTier 1 — web_fetch (fast):\n\nCall web_fetch(url)\nIf content length >= 200 chars → accept, trim to max_chars_per_source\n\n\nTier 2 — Firecrawl (deep/JS):\n\nIf Tier 1 fails or returns < 200 chars:\n  Run: scripts/firecrawl-wrap.sh <url> <max_chars>\n  If output != \"FIRECRAWL_UNAVAILABLE\" and != \"FIRECRAWL_EMPTY\" → accept\n\n\nTier 3 — Browser (last resort):\n\nIf Tier 2 fails:\n  Call browser(action=\"open\", url=url)\n  Call browser(action=\"snapshot\")\n  Load prompts/browser-extract.txt, substitute {{query}} and {{max_chars_per_source}}\n  Call LLM with snapshot content + extraction prompt\n  If output != \"FETCH_FAILED:...\" → accept\n\n\nIf all tiers fail: Use the original snippet from Stage 1 search results. Mark as [snippet only].\n\nStore: { url: extracted_content } dict.\n\nStage 4: SYNTHESIZE\n\nChoose prompt template based on --style:\n\nreport / bullets / timeline → prompts/synthesize-report.txt\ncomparison → prompts/synthesize-comparison.txt\n\nReplace template vars:\n\n{{query}} → user query\n{{today}} → current date (YYYY-MM-DD)\n{{language}} → language param\n{{source_count}} → number of successfully fetched sources\n{{dimensions_or_auto}} → dimensions param (or \"auto\")\n{{fetched_content_blocks}} → build as:\n[Source 1] (url1)\n<content>\n---\n[Source 2] (url2)\n<content>\n\n\nCall LLM with the filled prompt. The output is the final report.\n\nIf --output FILE is set, write the report to that file. Otherwise, print to the channel.\n\n⚙️ Configuration\n\nDefaults are in config.yaml. Override via CLI flags above.\n\n📂 Project Structure\nskills/deep-scout/\n├── SKILL.md                     ← This file (agent instructions)\n├── config.yaml                  ← Default parameter values\n├── prompts/\n│   ├── filter.txt               ← Stage 2: relevance scoring prompt\n│   ├── synthesize-report.txt    ← Stage 4: report/bullets/timeline synthesis\n│   ├── synthesize-comparison.txt← Stage 4: comparison table synthesis\n│   └── browser-extract.txt      ← Stage 3: browser snapshot extraction\n├── scripts/\n│   ├── run.sh                   ← CLI entrypoint (emits pipeline actions)\n│   └── firecrawl-wrap.sh        ← Firecrawl CLI wrapper with fallback handling\n└── examples/\n    └── openclaw-acquisition.md  ← Example output: OpenClaw M&A intelligence\n\n🔧 Error Handling\nScenario\tHandling\nAll fetch attempts fail\tUse snippet from Stage 1; mark [snippet only]\nSearch returns 0 results\tRetry with freshness: py; error if still 0\nFirecrawl not installed\tfirecrawl-wrap.sh outputs FIRECRAWL_UNAVAILABLE, skip silently\nBrowser tool unavailable\tSkip Tier 3; proceed with available content\nLLM synthesis exceeds context\tTrim sources proportionally, prioritize high-score sources\nRate limit on Brave API\tWait 2s, retry once\n📋 Example Outputs\n\nSee examples/openclaw-acquisition.md for a full sample report.\n\nDeep Scout v0.1.0 · OpenClaw Skills · clawhub: deep-scout"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/JonathanJing/deep-scout",
    "publisherUrl": "https://clawhub.ai/JonathanJing/deep-scout",
    "owner": "JonathanJing",
    "version": "0.1.4",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/deep-scout",
    "downloadUrl": "https://openagent3.xyz/downloads/deep-scout",
    "agentUrl": "https://openagent3.xyz/skills/deep-scout/agent",
    "manifestUrl": "https://openagent3.xyz/skills/deep-scout/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/deep-scout/agent.md"
  }
}