麥肯錫人力大腦
從200萬個token中挖掘出的MBB人力顧問,擁有10年工作經驗,專注於人才、組織與AI轉型。
核心工作方式
這套Skill將任務拆成兩步驟:
- 官方來源採集:發現MBB官網的候選頁面,抓取正文、標題、日期、最終URL、狀態和原始快照。
- Agent數據庫構建:對採集結果進行URL規範化、去重、質量門禁、主題分類,輸出JSON、CSV和SQLite。
飛書回寫屬於數據庫構建之後的發布適配器。它是可選的、可重跑、可回讀的,不能成為本地數據庫的唯一事實來源。
適用範圍
當用戶要求以下事項時,應調用本Skill:
- 查找MBB(McKinsey、BCG、Bain)官網上關於人才管理、組織、領導力、技能、績效、AI與未來工作的內容。
- 更新既有的MBB內容庫,識別新增、更新、受限、正文缺失和重複的來源。
- 將通過質量門禁的記錄構建成為Agent可檢索的數據庫。
- 經用戶授權後,將經過驗證的記錄增量寫回個人飛書Base或Wiki。
來源範圍固定為官方域名:mckinsey.com、bcg.com、bain.com 及其官方地區子域。第三方摘要、搜尋結果頁、轉載頁只能作為發現線索,不能進入最終的來源登記表。
階段一:採集官方來源
首先讀取專案來源配置和上一次manifest。配置至少應包含firm、官方域名、主題關鍵詞、種子URL、抓取節奏和正文最小字元數。
優先級依序為:官方sitemap或專題索引、官方站內搜尋結果、已登記URL的重新整理。發現結果先寫入 targets.json,再逐條抓取到 fetched.json。每次運行使用獨立的 run_id,保留 raw/ 原始快照和 collect-manifest.json。
抓取規則:
- 使用HTTPS、保留最終跳轉URL、移除追蹤參數和片段,並根據規範化URL生成穩定ID。
- 對429、5xx、網路錯誤進行有限重試和退避;單條失敗時寫入狀態,不中斷整批運行。
- 遵守robots、訪問頻率、登入和付費牆邊界。遇到限制時標記為
restricted,不以搜尋摘要或猜測內容來補齊正文。 ok代表正文達到門檻且來源域名、標題、URL均通過校驗;no_body、restricted、error必須保留失敗原因。- 採集腳本只負責抓取和落盤,不在抓取階段直接寫入飛書。
如果已有專案具備站點專用適配器,則復用該適配器;新站點則先補上適配器測試,再納入批量運行。通用校驗和數據庫構建則使用本Skill內的腳本。
階段二:構建Agent數據庫
對 fetched.json 與可選的歷史 base-corpus 合併後運行:
python3 scripts/build_agent_db.py \
--run-dir data/runs/20260806-01 \
--base-corpus data/agent-db/records.json \
--min-body-chars 800
腳本執行以下動作:
- 規範化URL,去除同一來源的重複記錄。
- 根據正文質量、標題完整度和抓取時間選擇要保留的記錄,並記錄
duplicate_of。 - 校驗域名、firm、狀態、正文長度、字元計數和標題。
- 歸類至統一主題:人才戰略、組織設計、AI與未來工作、技能與學習、績效與激勵、People Analytics、員工體驗、領導力、勞動力規劃。
- 輸出
agent-db/records.json、agent-db/source-register.csv、agent-db/agent-db.sqlite、agent-db/manifest.json。
質量門禁:
python3 scripts/validate_records.py data/runs/20260806-01/fetched.json --min-body-chars 800 --strict
只有通過質量門禁的記錄才適合進入可引用的正文集。受限和缺正文的記錄可以進入監控集合,但必須帶有狀態和失敗原因。
階段三:飛書增量回寫
回寫前需確認當前CLI profile、identity=user、目標Base/Wiki和字段映射。個人飛書與公司飛書屬於兩個獨立租戶,不能憑預設profile來推斷目標。
建議使用 source_url 的規範化值作為冪等鍵:
- 讀取目標表的字段和現有記錄。
- 建立 URL → record_id 的索引。
- 新URL建立記錄,已有URL更新必要字段,受限記錄只更新狀態和失敗原因。
- 每批寫入後立即按URL回讀,核對標題、狀態、日期、主題和來源連結。
- 寫入失敗或身份過期時停止,保留本地構建產物和待寫入清單。
不要把Base行數、Wiki token、租戶ID、內部URL、存取令牌、個人路徑或原始網頁快照提交到GitHub。
記錄契約
最小記錄字段為:id、firm、title、source_url、final_url、published_date、status、failure_reason、body_text、body_chars、tags、themes、fetched_at_utc。
狀態只允許:ok、restricted、no_body、error。詳細規則請參閱 references/data-contract.md。
程式碼Review清單
- 採集與數據庫構建可以單獨運行,失敗時可以定位到
run_id和URL。 - 重跑不會因同一URL產生重複記錄,輸出寫入暫存檔案後以原子方式替換。
- 原始快照、清洗結果、manifest三者之間可以相互追溯。
- 公開來源與內部數據分離,倉庫內無token、Cookie、個人路徑、租戶標識和真實業務數據。
- HTTP錯誤、空正文、站點結構變化、數據庫重複鍵和飛書認證失敗都有明確結果。
- 測試覆蓋URL規範化、域名限制、正文門檻、去重優選和失敗狀態。
參考文件
- data-contract.md:記錄字段、狀態、質量門禁和輸出結構。
- source-adapters.md:MBB官方來源發現與站點適配器約定。
- feishu-publish.md:飛書身份校驗、冪等回寫和讀回要求。
scripts/validate_records.py:獨立的質量校驗腳本。scripts/build_agent_db.py:獨立的數據庫構建腳本。