Communitygithub.com

adamjali/explain

深入剖析 GitHub 儲存庫、即時網站/產品、競爭對手、數據產品、演算法/計算器、概念或任何主題。啟動並行研究與探索代理,為即時產品驅動真實瀏覽器,將計算器反向工程為可執行且經過驗證的程式碼,並儲存完整文件集。

explain 是什麼?

此技能提供一個可以深入解釋任何主題的 AI 代理,包括程式碼儲存庫、即時網站、競爭對手、計算器、概念和整個市場格局。它會根據主題類型自動選擇兩種模式:模式 A 適用於儲存庫和概念(使用並行代理進行研究與探索),模式 B 適用於即時產品和競爭對手(使用結構化工作流程、真實瀏覽器捕捉與反向工程)。技能的核心原則包括為計算器生成可執行、經過驗證的參考實作、大量使用視覺化圖表與表格,以及將結果儲存到 `~/.claude/explanations/`。它還內建了確認閘道、範圍邊界(明確禁止繞過驗證碼或提交使用者資料)以及用於乾淨結束的清理提示。此技能支援 Claude Code 等平台,並且可以從使用者的「解釋」、「深入分析」、「分解」、「反向工程」或「分析競爭對手」等請求中觸發。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/adamjali/claude-skills/tree/HEAD/plugins/explain

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

<essential_principles>

技能運作方式

兩種模式,根據主題自動路由(請見路由表):

  • 模式 A — 儲存庫 / 概念 / 文件(低成本路徑):研究 → 複製(若是儲存庫)→ 探索 → 綜合 → 輸出。鬆散的並行代理即可勝任。
  • 模式 B — 即時網路產品 / 競爭對手 / 數據產品 / 演算法 / 市場格局(完整流程):偵察 → 確認 → 工作流程協調的深度探查 → 真實瀏覽器捕捉 → 反向工程為經過驗證的程式碼 → 綜合。請閱讀 @references/competitor-teardown.md 並依循操作。

主題類型路由

主題訊號模式主幹流程
GitHub 儲存庫github.comA複製 + 探索代理
概念 / 技術無網址A研究代理
文件 / 靜態網站網址,資訊型A研究 + WebFetch
即時產品 / 應用程式 / SaaS / 競爭對手網址為產品;「競爭對手/深入剖析/比較我們與他們/他們如何做到」B瀏覽器 + 工作流程 + 每個主題的結構化綱要
計算器 / 估計器 / 預測器 / 定價 / 排名需要破解的公式/演算法B即時探測網格 → 可執行的參考實作 → 驗證
整個市場格局「找出所有其他同領域產品 / 參與者」B命名空間發現 → 深入剖析「是」集合

決定性規則:如果一個網址同時是產品也包含文件,則預設為 B — 偵察階段的成本很低,如果沒有需要深入剖析的內容,可以降級為 A。

執行規則

  1. 正確的工具規模:模式 A = 並行 Task/Agent 呼叫。模式 B = 一旦有 3 個以上主題或多階段工作,則使用 Workflow 工具(管道、結構化輸出綱要、恢復功能)。
  2. 先接地,再確認:模式 B 在進行昂貴的深入分析前,會先進行廉價的偵察階段 + 確認閘道(範圍 + 探查邊界 + 瀏覽器)— 除非使用者已明確要求「完整流程 / 深入分析 / 所有細節」。
  3. 將任何計算器/演算法反向工程為可執行且經過驗證的程式碼;以權威的真實數據為基準進行測試,而非競爭對手自己的說法。
  4. 視覺化豐富:每個主要概念都需包含圖表或表格。
  5. 雙重輸出:在對話中顯示執行摘要 + 檔案索引;將完整文件集儲存至 ~/.claude/explanations/<日期>_<縮寫標題>/。
  6. 具有彈性:大型模式 B 研究以後台 Workflow 方式執行;逐步保留工件;若被截斷則可恢復 (resumeFromRunId)。
  7. 清理:完成後主動詢問是否刪除已複製的儲存庫 / 已儲存的檔案。 </essential_principles>

<scope_boundary>

模式 B 探查邊界(負載關鍵 — 在進行任何即時探測前請先閱讀)

在公開表面上進行競爭性探查是合法且正常的。完整規則請見 @references/competitor-teardown.md。不變原則:

  • 允許:公開頁面/資產、公開 OpenAPI//docs、公開 JS 套件、對公開端點進行適度的禮貌性網格請求(約 15-40 次,低速率)以推導公式、標頭指紋識別、WHOIS/DNS。
  • 禁止:繞過 CAPTCHA / 機器人挑戰、繞過驗證、大量收集整個資料集(僅可取樣)、進行壓力測試、或呼叫管理/變動/破壞性端點(可記錄它們,但不要呼叫)。觀察暴露點;切勿利用它們。絕不將使用者的真實資料提交到競爭對手的表單中。如果不確定,就不要做 — 並說明原因。 </scope_boundary>

<intake_gate>

<no_context_handler> 如果 $ARGUMENTS 為空: → 使用 AskUserQuestion:

  • 標題:「解釋」
  • 問題:「您希望我解釋什麼?」
  • 選項:
    • 「GitHub 儲存庫」 - 從 GitHub 分析程式碼庫
    • 「網站或文件」 - 了解網站、文件或 API
    • 「競爭對手 / 即時產品 / 市場格局」 - 深入剖析即時產品、將計算器反向工程,或繪製完整的競爭空間圖 (模式 B)
    • 「概念或技術」 - 解釋概念、框架或工具

然後進行 context_analysis。 </no_context_handler>

<context_analysis> 分析 $ARGUMENTS 以提取:

  • 類型:GitHub 儲存庫、網站、概念或其他
  • 網址/主題:要解釋的特定內容
  • 隱含目標:學習如何使用?評估?了解架構?貢獻?

自動偵測類型:

  • 包含 github.com → GitHub 儲存庫 (模式 A)
  • 模式 B 訊號 → 「競爭對手」、「深入剖析」、「反向工程」、「比較我們與他們」、「他們如何做到」、「找出所有其他產品」、或一個指向產品/應用程式/計算器的網址 → 模式 B
  • 包含 http(資訊型/文件)→ 網站 (模式 A)
  • 其他情況 → 概念 (模式 A) </context_analysis>

<initial_questions> 僅在確有必要時使用 AskUserQuestion(最多 2-3 個問題):

目標(如果不明確):

  • 「您的目標是什麼?」選項:
    • 「了解其運作方式」 - 架構、流程、實作
    • 「評估是否採用」 - 優缺點、替代方案、是否適合我的需求
    • 「學習如何使用」 - 設定、API、入門指南
    • 「學習如何貢獻」 - 程式碼庫結構、開發流程

重點(如果是廣泛主題):

  • 「有特別想聚焦的部分嗎?」選項:
    • 「全部」 - 完整的全面分析
    • 「僅架構」 - 高層次結構和模式
    • 「特定功能」 - 某個特定面向(請指定)

背景(如果有幫助):

  • 「您的技術程度?」選項:
    • 「非技術背景」 - 從基本原理開始,使用類比解釋
    • 「有技術背景,但對這個領域不熟悉」 - 跳過基礎,專注於特定細節
    • 「專家」 - 深入技術層面,假設已具備相關知識 </initial_questions>

<decision_gate> 在獲得回答後,使用 AskUserQuestion (模式 A):

  • 問題:「準備好開始深入分析了嗎?」
  • 選項:
    • 「是,開始吧」 - 開始多階段分析
    • 「先問更多問題」 - 我有需要釐清的事項
    • 「讓我補充背景資訊」 - 我想提供更多細節

模式 B 會以 B2 階段(快照 + 範圍 + 探查邊界 + 開始/深度/瀏覽器)取代此閘道 — 不要同時詢問;B2 是深入剖析的唯一權威閘道。 </decision_gate>

</intake_gate>

模式選擇

執行 <intake_gate>,然後根據主題類型表進行路由。模式 B(即時產品 / 競爭對手 / 數據產品 / 計算器 / 市場格局)→ 載入 @references/competitor-teardown.md 並依循其偵察 → 確認 → 深入 → 綜合流程(骨架如下)。模式 A(儲存庫 / 概念 / 文件)→ 執行以下的第 1 至第 7 階段。

模式 B — 即時產品 / 競爭對手 / 數據產品深入剖析

完整腳本請見 references/competitor-teardown.md。骨架:

  • B0 接地:檢查記憶體 + ~/.claude/explanations/ 中是否有先前的分析;若有則延伸,不要重做。
  • B1 偵察:每個目標分配一個輕量的被動探查代理 (WebFetch + 標頭 + WebSearch) → 接地快照 + 判斷哪些需要瀏覽器。
  • B2 確認閘道:呈現快照 + 範圍 + 探查邊界 (<scope_boundary>);使用 AskUserQuestion 確認開始/深度/瀏覽器 — 僅在使用者已明確要求「深入分析 / 完整流程」時跳過。
  • B3 深度探查 (Workflow):每個主題一個結構化代理,全部共享每個主題的綱要(在參考文件中)。預設使用 pipeline();較大的輸出拆分到磁碟。
  • B4 瀏覽器 (Claude-in-Chrome):捕捉載入時的網路活動、渲染 SPA、透過輸入網格即時探測估算器、安全標頭、付費牆/驗證副本 — 在邊界內(不繞過 CAPTCHA/驗證、不呼叫可變動端點、絕不提交使用者的資料)。邊進行邊儲存捕捉結果。
  • B5 反向工程:每個計算器 → 可執行的 TypeScript 參考實作 → 與即時網格驗證 → 與權威真實數據進行基準測試。
  • B6 命名空間(如果「還有其他嗎?」):DNS+curl+搜尋候選網域、分類、找出運營商集群、標記防禦性購買網域、僅深入剖析真正不同的「是」集合。
  • B7 綜合:展開綜合代理 → DETAILED-<縮寫標題>.md ×N + ESTIMATORS.md + COMPARISON.md(包含數據完整性 + 運營商集群章節)+ REPLICATION-BLUEPRINT.md + ARCHITECTURE.md + NAMESPACE.md + SOURCES-*.md + SUMMARY.md(執行摘要 + 檔案索引)。然後執行第 7 階段的輸出/清理。

模式 A — 儲存庫 / 概念 / 文件

第 1 階段:並行網路研究(5 個研究代理)

在單一訊息中同時啟動所有:

Task(subagent_type="general-purpose", prompt="研究 [主題]:它是什麼?誰製作的?何時?為什麼?")
Task(subagent_type="general-purpose", prompt="研究 [主題]:技術棧、架構、關鍵技術")
Task(subagent_type="general-purpose", prompt="研究 [主題]:文章、評論、社群討論、意見")
Task(subagent_type="general-purpose", prompt="研究 [主題]:替代方案、比較、何時該用/不該用")
Task(subagent_type="general-purpose", prompt="研究 [主題]:文件、教學、入門指南")

第 2 階段:複製儲存庫(如果是 GitHub)

REPO_DIR=~/.claude/explanations/$(date +%Y%m%d_%H%M%S)_$(basename [URL] .git)
git clone [URL] $REPO_DIR
cd $REPO_DIR

第 3 階段:並行程式碼庫探索(6 個探索代理)

在單一訊息中同時啟動所有,設定 thoroughness="very thorough":

Task(subagent_type="Explore", prompt="架構:整體結構、模組、它們之間的關係")
Task(subagent_type="Explore", prompt="進入點:主要檔案、CLI、API 端點、如何啟動")
Task(subagent_type="Explore", prompt="核心邏輯:關鍵演算法、模式、抽象")
Task(subagent_type="Explore", prompt="設定:設定檔、環境、擴充點")
Task(subagent_type="Explore", prompt="依賴關係:關鍵套件、整合、外部服務")
Task(subagent_type="Explore", prompt="測試與品質:測試模式、覆蓋率、CI/CD")

第 4 階段:並行 Claude Code 背景(2-3 個通用代理)

如果與 Claude/AI/代理相關:

Task(subagent_type="general-purpose", prompt="解釋理解此內容所需的相關 Claude Code 概念")
Task(subagent_type="general-purpose", prompt="如果適用,與 Claude 工具/SDK 比較")

第 5 階段:中途檢查(如果複雜)

如果發現結果顯示複雜性,使用 AskUserQuestion:

  • 「我發現了 [X]。您希望我專注於某個特定部分嗎?」
  • 根據發現結果提供選項

第 6 階段:綜合

將所有發現結果組合成全面的解釋,包含:

  1. 開場類比(非技術性比較)
  2. 它是什麼(1-2 句話)
  3. 架構圖(ASCII)
  4. 運作方式(逐步說明並附圖)
  5. 關鍵元件表格(名稱、用途、運作方式)
  6. 特別之處(差異化因素)
  7. 功能列表(它能做什麼)
  8. 比較表格(與替代方案比較)
  9. 技術深度探討(實作細節)
  10. 陷阱與考量事項

第 7 階段:輸出

在對話中顯示

包含所有視覺元素的完整格式化解釋。

儲存為檔案

OUTPUT_DIR=~/.claude/explanations/$(date +%Y%m%d_%H%M%S)_[主題-縮寫標題]
mkdir -p $OUTPUT_DIR

# 儲存檔案:
# $OUTPUT_DIR/SUMMARY.md - 快速參考(30 秒版本)
# $OUTPUT_DIR/DETAILED.md - 完整分析
# $OUTPUT_DIR/ARCHITECTURE.md - 所有圖表
# $OUTPUT_DIR/COMPARISON.md - 替代方案分析

後續追蹤

顯示後,提問:

  • 「您想深入探索哪個面向?」
  • 「對我的解釋有任何問題嗎?」
  • 鼓勵後續提問

清理

使用 AskUserQuestion 進行清理(如果兩者都適用則合併):

如果已複製儲存庫:

  • 問題:「刪除已複製的儲存庫?」
  • 選項:
    • 「是,刪除它」 - 自動移除 $REPO_DIR
    • 「不,保留它」 - 顯示路徑:「儲存庫保留在:$REPO_DIR」

如果是:rm -rf $REPO_DIR 如果否:顯示路徑供手動存取

總是(解釋檔案):

  • 問題:「刪除已儲存的解釋檔案?」
  • 選項:
    • 「是,刪除它們」 - 自動移除 $OUTPUT_DIR
    • 「不,保留它們」 - 顯示路徑:「解釋檔案儲存在:$OUTPUT_DIR」

如果是:rm -rf $OUTPUT_DIR 如果否:顯示路徑供手動存取

合併問題(如果同時有儲存庫和檔案):

  • 問題:「分析完成。您想清理哪些項目?」
  • 選項:
    • 「刪除儲存庫和解釋檔案」
    • 「僅刪除儲存庫,保留解釋檔案」
    • 「僅刪除解釋檔案,保留儲存庫」
    • 「全部保留」

根據選擇執行刪除,並為任何保留的項目顯示路徑。

<visual_formats>

標準圖表格式

架構:

┌─────────────┐     ┌─────────────┐
│  元件 A     │────►│  元件 B     │
└─────────────┘     └─────────────┘

流程:

開始 → 步驟 1 → 步驟 2 → 決策?
                            ├─ 是 → 路徑 A
                            └─ 否 → 路徑 B

比較表格:

| 面向       | 選項 A   | 選項 B   | 勝出者 |
|------------|----------|----------|--------|
| 速度       | 快       | 慢       | A      |

元件分解:

┌──────────────────────────────────────┐
│           系統名稱                   │
├──────────────────────────────────────┤
│ ┌────────┐ ┌────────┐ ┌────────┐    │
│ │模組 A  │ │模組 B  │ │模組 C  │    │
│ └───┬────┘ └───┬────┘ └───┬────┘    │
│     └──────────┴──────────┘         │
│            共享層                    │
└──────────────────────────────────────┘

</visual_formats>

<success_criteria>

成功標準

兩種模式:

  • 在開始前已提問釐清問題 / 接地;路由到正確的模式
  • 為每個主要概念產生視覺圖表;包含可重現的技術深度
  • 在對話中顯示執行摘要,並將文件集儲存至檔案
  • 提供後續追蹤 + 清理;尊重使用者保留/刪除的選擇

模式 B(即時產品 / 競爭對手 / 數據產品 / 市場格局)另外:

  • 已完成偵察階段 + 確認閘道(或遵循明確的「深入分析」要求)並說明了探查邊界
  • 嚴格遵守邊界:未繞過 CAPTCHA/驗證、未大量收集資料、未呼叫可變動/管理端點、從未提交使用者的資料;觀察暴露點但未利用
  • 在 3 個以上主題/多階段時,使用 Workflow 工具並搭配共享的每個主題綱要;保留工件;對截斷有彈性(可恢復)
  • 對每個計算器進行即時探測,並提供一個與觀察輸出完全匹配(N/N)的、可執行的參考實作,並與權威真實數據進行基準測試
  • 對於市場格局:發現完整的命名空間、對每個進行分類、找出運營商集群、標記防禦性購買網域、僅深入剖析不同的項目
  • 綜合報告包含數據完整性章節 + 運營商集群章節 </success_criteria>

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能