專案報告 — 決策等級的實體研究
可攜性: 需要
WebSearch+WebFetch、Node.js 及docx套件,並可選用bash_tool+curl來存取免費 API(SEC EDGAR、GitHub、ProPublica)。BYOK MCP(LinkedIn、Crunchbase、Apollo、Pitchbook、SimilarWeb)為選用增強功能。原生支援 Claude Code CLI。
非通用框架 — 差異化核心
這項技能是帶有假設測試的決策等級實體研究。它拒絕執行「告訴我關於微軟的事」。每次調用都會強制使用者在 Q4 階段陳述其假設,以便專案報告測試而非確認該假設。
使用情境範例:
「我週二要跟微軟簡報。我的假設是他們正在將 AI 支出整合到自家的 Foundry 平台。請驗證或反駁,並根據你的發現提供三個對話切入點。」
而非:
「告訴我關於微軟的事。」
強制性的 Q4 — 假設問題 — 是非通用框架的核心。跳過它,這項技能只會產出維基百科摘要。
請參閱 references/hypothesis_testing_discipline.md 以了解正式規範。
代理誠信規則(研究套件公約)
根據 PR #657 審計鎖定,逐字不變。
- 執行紀律: 序列化搜尋呼叫。WebSearch + WebFetch 的速率限制比 Consensus 寬鬆,但仍需遵守 1 個查詢/秒的禮儀。在進行下一個呼叫前,確認已收到回應。
- 來源紀律: 僅引用本次工作階段工具呼叫所回傳的來源。維基百科 / 訓練知識標記為
[背景資訊 — 引用前請驗證],並排除在主要發現計數之外。 - 三重計數追蹤: 已發送查詢數 / 已接收來源數 / 已引用來源數。此外,還有專屬於此專案報告的逐層細分(主要 / 次要 / 第三級)。所有數據均顯示在審計日誌中。
- 重試策略: 失敗後 → 等待 3 秒 → 重試一次 → 記錄日誌。連續 3 次失敗後:停止並提醒使用者。
- 來源可靠性分級: 每個引用都標記為主要(官方、SEC、法院記錄)/ 次要(主流新聞、行業媒體)/ 第三級(部落格、論壇)。DOCX 會在每個標記上顯示其等級。
階段 1:盤問式輸入(6 個強制性問題,一次一個)
Q1(根本問題)— 主體身分
主體是誰?請提供確切名稱,如果是公司,請提供網站或 LinkedIn 網址。如果是個人,請提供其 LinkedIn 網址或唯一識別碼(公司關聯 + 職位)。
為什麼我要問: 去歧義化。有 47 個 John Smith。有三家公司叫「Atlas」。我需要一個具體的實體來進行研究。
如果使用者僅提供名稱,請追問第二個識別碼。拒絕在模糊名稱上繼續進行。
Q2(取決於 Q1)— 主體類型
這是哪種類型的主體?請選擇一個:個人 / 公司 / 非營利組織 / 政府機構 / 其他。
為什麼我要問: 不同的主體類型適用不同的來源矩陣。對於個人,我會檢查 LinkedIn、GitHub、Scholar、新聞;對於公司,我會檢查 SEC EDGAR(如果是上市公司)、Crunchbase、新聞、GitHub(若是科技組織);對於非營利組織,我會在 ProPublica 上檢查 990 表格。
強制選擇。「其他」需要一行描述。
Q3(取決於 Q2)— 目的
你正在為哪種情況做準備?請選擇一個:
- 銷售會議 / 合作簡報
- 投資盡職調查
- 收購盡職調查
- 新聞報導 / 盡職調查
- 工作面試準備
- 競爭情報
- 個人背景審查(約會、招聘、商業夥伴)
- 其他(請說明)
為什麼我要問: 目的決定了切入角度、深度和紅旗敏感度。銷售準備需要對話切入點。投資盡職調查需要成長訊號。個人背景審查需要謹慎的敏感邊界。
Q4(取決於 Q3)— 假設 — 強制性
你最初的假設是什麼?你已經相信關於這個主體的什麼,以及你想驗證或反駁什麼?
為什麼我要問: 這是關鍵問題。一份只確認你已經相信之事的專案報告是毫無價值的。透過事先陳述你的假設,我可以同時搜尋支持它的證據以及可能反駁它的證據 — 並提供一個你實際上可以使用的判決。
範例:
- 「我相信微軟正在將 AI 支出整合到第一方 Foundry。請驗證或反駁。」
- 「我認為這位 CEO 力不從心 — 講了太多 TAM,但沒有實際進展。測試這個想法。」
- 「我認為這個非營利組織的管理費用比例有問題。檢查 990 表格。」
- 「我認為這個人技術能力足以勝任 CTO 角色。請驗證。」
強制性。 如果使用者說「我沒有假設」,請推回一次:「那麼猜一個。先承諾一個你之後可以更新的立場。專案報告需要一個假設來測試,否則它只是一個通用簡介,無法幫助你做決定。」
如果仍然拒絕:回退到隱性假設「我能找到最令人驚訝的事情是什麼?」,並在審計日誌中標記此回退。
這個問題是非通用框架的核心。跳過它,這項技能就變成維基百科摘要。
Q5(取決於 Q3)— 深度
時間範圍:5 分鐘簡報還是 15 分鐘決策等級專案報告?
為什麼我要問: 簡報模式最多約 10 次搜尋,並跳過網絡和聲譽分析。決策等級則會對每個部分進行更深入的調查。根據你在這個決策中的利害關係來選擇。
強制選擇。
Q6(僅在 Q3 ∈ {新聞報導, 個人背景審查} 時詢問)— 敏感事項
有什麼敏感事項需要排除?例如:個人醫療資訊、家庭細節、政治歷史,或特定禁止提及的主題?
為什麼我要問: 某些研究情境有道德約束。我寧可事先知道,也不要揭露你永遠不會分享的事情。
跳過銷售/投資/收購/競爭情報(低敏感度);在新聞報導/個人背景審查(高敏感度)時詢問。
停止條件: 在 Q6(或根據依賴關係提前跳過)之後,確認並開始階段 2。階段 2 開始後,絕不重新開啟輸入階段。
階段 2:主體去歧義化
在階段 3 之前,將主體解析為特定實體:
- 對於個人:確認 LinkedIn 網址或(雇主 + 職位 + 城市)
- 對於公司:確認網域或(法定名稱 + 註冊管轄地)
- 對於非營利組織:確認 EIN 或(法定名稱 + 州)
- 對於政府機構:確認官方 .gov 網址
如果在 Q1 推回後仍然模糊:暫停並重新詢問 Q1,並提供去歧義化的識別碼。拒絕繼續進行。
階段 3:來源矩陣選擇
根據 Q2 的主體類型路由。完整規範請參閱 references/subject_type_source_matrix.md。
個人
- LinkedIn(手動獲取或使用 LinkedIn MCP(如果 BYOK))
- 個人網站
- Twitter/X(速率限制;優雅降級)
- GitHub(如果主體為技術人員)
- Google Scholar(如果為學術人士)
- 新聞(WebSearch + WebFetch)
- 會議演講記錄、Podcast(WebSearch)
公司
- 官方網站(關於我們、領導層、新聞、職涯)
- SEC EDGAR(免費 API;上市公司的 10-K、10-Q、8-K 表格)
- Crunchbase 免費層級(或 Crunchbase MCP(如果 BYOK))
- 新聞(WebSearch + WebFetch)
- GitHub(針對科技組織)
- Glassdoor + Comparably(聲譽;若爬蟲被封鎖則優雅降級)
- LinkedIn 公司頁面
非營利組織
- ProPublica Nonprofit Explorer(免費;990 表格)
- 官方網站
- 新聞
- GuideStar(如果可以存取)
政府機構
- 官方 .gov 網站
- 新聞
- ProPublica(針對聯邦機構)
如果已連接付費 MCP(Apollo、Pitchbook、SimilarWeb),請使用它們,但在審計日誌中將發現標記為 BYOK 來源。
階段 4:假設驅動的搜尋
階段 4 的每次搜尋都必須分類為:
- 支持證據(確認假設),或
- 反駁證據(會推翻假設)
≥30% 的搜尋預算分配給反駁查詢。 透過 scripts/disconfirming_evidence_balance.py 強制執行。
以「微軟正在將 AI 支出整合到 Foundry」的假設為例:
- 支持:「Microsoft Foundry adoption 2026」、「Microsoft AI infrastructure consolidation」
- 反駁:「Microsoft OpenAI deal renegotiation」、「Microsoft AI vendor diversification」、「Microsoft third-party model partnerships 2026」
這就是讓專案報告達到決策等級而非確認偏誤的原因。
對於每次搜尋:
- 透過
citation_tracker.py記錄,並分類(支持 / 反駁) - 對每個結果網址套用
source_tier_classifier.py的來源等級
階段 5:12 個月活動時間軸
預設時間軸為 12 個月;基礎身分資訊則可追溯到更久以前。
類別:
- 新聞(收購、招聘、離職、產品發布)
- 募資輪次 / 財務事件
- 爭議 / 法律事件
- 公開聲明 / 策略轉變
依時間倒序排列。每個項目都有超連結並標記等級。
階段 6:網絡 + 聲譽訊號
網絡
- 公司: 投資者(進/出)、客戶(指名)、合作夥伴
- 個人: 共同創辦人、顧問、導師、雇主、董事會職位
- 非營利組織: 資助者、董事會、領導層
5-10 個項目,按與假設的關聯性排序。
聲譽
- 新聞中的聲譽(最近 12 個月)
- 公司的 Glassdoor 評分(整體評分 + 3 則具代表性評論)
- 個人的同儕提及
- 警告:聲譽數據帶有雜訊;請據此分級。
階段 7:紅旗警示
呈現但不要聳人聽聞:
- 訴訟(法院記錄 → 主要等級)
- 監管行動(SEC、DOJ、機構行動 → 主要)
- 異常離職(關鍵人員在 90 天內離職)
- 財務訊號(10-K 表格中的持續經營疑慮 → 主要)
- 聲譽打擊(持續的負面報導 → 次要)
每個旗標都有分級。 等級會出現在 DOCX 中每個旗標旁邊。
階段 8:對話切入點生成
3-5 個具體切入點,根據實際發現,而非通用話題。
完整規範請參閱 references/conversation_hook_quality.md。
| ❌ 通用 | ✅ 根據發現 |
|---|---|
| 「問問他們的路線圖」 | 「提到他們最近收購了 [X] — 這表明他們正在投資垂直領域 Y。建議說法:'看到 [X] 的公告了 — 這如何改變你在 Y 方面的路線圖?'」 |
| 「問問招聘情況」 | 「他們的工程副總裁 3 週前離職了(LinkedIn)。建議說法:'我注意到 [姓名] 離開了 — 工程領導團隊有什麼計畫?'」 |
| 「談談他們的價值觀」 | 「他們上週更新了定價頁面(他們的官方網站)。建議說法:'看到定價調整了 — 是什麼驅動了這個變化?'」 |
每個切入點:
- 切入點(一句話)
- 其所依據的發現(附超連結和等級)
- 建議說法(使用者可以調整的逐字措辭)
階段 9:DOCX 生成(9 個部分)
透過 Node.js + docx 函式庫。
- 執行摘要 — 一段落:他們是誰 + 為什麼重要 + 對假設的判決(支持 / 部分支持 / 反駁 / 無結論) + 3 個你應該知道的事實。
- 身分事實表 — 成立/出生日期、地點、規模/階段、現任職位、主要關聯。所有儲存格均有來源;懸浮文字顯示等級。
- 假設測試 — 使用者假設的逐字敘述。支持證據(3-5 個項目,附超連結引用)。反駁證據(3-5 個項目,附超連結引用)。判決段落(2-3 句話解釋權重)。
- 12 個月活動時間軸 — 新聞、募資、招聘、離職、產品發布、爭議。依時間倒序。每個項目都有超連結。
- 網絡訊號 — 合作者 / 投資者 / 關聯人士。5-10 個項目,按與假設的關聯性排序。
- 聲譽訊號 — 新聞中的聲譽、公司的 Glassdoor 評分、個人的同儕提及。警告:聲譽數據帶有雜訊。
- 紅旗 + 隱藏模式 — 訴訟、監管行動、異常離職、財務訊號、聲譽打擊。已分級。
- 對話切入點 — 3-5 個根據發現的具體切入點。每個:切入點 + 發現 + 建議說法。
- 來源來源與審計日誌 — 每個來源的清單及其等級。搜尋摘要表格(#、查詢、分類、回傳的來源數、引用的來源數)。三個計數 + 逐層計數。失敗的搜尋。BYOK-MCP 使用標記。
樣式
正文字體 Arial 12pt,標題為海軍藍 (#1a3a5c),表格標題為淺藍色 (#e8f0f8),紅旗標記為紅色,對話切入點標記為綠色。
超連結模式
new ExternalHyperlink({
link: "https://...",
children: [new TextRun({ text: title, style: "Hyperlink" })],
});
階段 10:交付
- 儲存:
<output-dir>/dossier_<entity-slug>_<YYYY-MM-DD>.docx - 聊天摘要:檔案路徑 + 對假設的判決 + 審計計數 + 等級細分 + 使用的 BYOK MCP(如有)
- 驗證:使用
python3 -c "import zipfile,sys; zipfile.ZipFile(sys.argv[1]).testzip()" <docx>檢查 ZIP 完整性(無輸出表示完整),然後確認必要的部分存在
工具
| 腳本 | 角色 |
|---|---|
scripts/citation_tracker.py | 三重計數審計 + 支持/反駁分類 + 來源等級標記,儲存於 ~/.dossier_sessions/<session>.json |
scripts/disconfirming_evidence_balance.py | 驗證 ≥30% 的搜尋預算分配給反駁查詢;如有偏誤則發出警告 |
scripts/source_tier_classifier.py | 透過網域啟發式將 URL 分類為主要 / 次要 / 第三級 |
參考資料
references/hypothesis_testing_discipline.md— ≥30% 規則 + 決策等級 vs 百科全書式(7+ 個來源)references/subject_type_source_matrix.md— 個人/公司/非營利組織/政府來源矩陣(7+ 個來源)references/conversation_hook_quality.md— 根據發現的切入點紀律(7+ 個來源)
錯誤處理
| 失敗情況 | 行為 |
|---|---|
| 主體名稱模糊 | 拒絕繼續進行。重新詢問 Q1,並要求提供去歧義化的識別碼。 |
| 使用者拒絕陳述假設 | 推回一次。如果仍然拒絕,回退到「我能找到最令人驚訝的事情是什麼?」的隱性假設。在審計中標記。 |
| 主體完全沒有公開足跡 | 返回所發現的任何內容,並在摘要中標記「低可見度」。 |