Blog Writer Fleet V2 — 9 個 Agent OGSM 完整定義
2.0(9 個 agent — 消費由 HSW-002 v5.1 Candidate Collector 填入的 .content-scout-queue.md 佇列)| 8 個 agent | 由 ogsm_to_html.py 自動產生
概覽:來源檔案:WTR-BLOG-WRITER-FLEET-v2-OGSM.md |
960 行 | 8 個 agent |
產生日期:2026-04-13
O — Objective(目標)
O:讓繁忙的實務工作者——建築師、設施業主或安裝人員——獲得一篇文章,清晰回答他們來到 Google 搜尋的問題,清晰到他們會將其加入書籤、分享給同事、並在下次有需要時再度回訪;同時讓文章結構嚴謹,使 LLM 答案引擎能夠精確引用,也讓 Waterson 的人工審閱者得以在不重寫 base-layer 的前提下,附加自己的銷售觀點與現場洞察。在此品質標準下持續發布六個月後,watersonusa.ai 應能在自然搜尋排名與 AI 引擎引用數量上,看到可量測的明顯提升。
主要 audience persona 框架:來自 ~/.claude/skills/writing-guide/SKILL.md §2 的標準三受眾分類——(1) 建築師與規格制定者(Architects & Specifiers),(2) 建築業主與設施管理者(Building Owners & Facility Managers),(3) 承包商與安裝人員(Contractors & Installers)。每篇文章由整個 fleet 決定:當同一主題對不同受眾意義不同時,撰寫 3 個各自獨立的版本;當事實核心可共用時,撰寫 1 篇通用文章。
共同定義成功的兩個結果:
SEO 結果:透過 Google 搜尋到達的實務工作者,能在前 20 秒內找到答案,並持續閱讀細節,最後加入書籤。Google 以排名作為回報,內部連結則進一步放大整個部落格圖的排名效益。
AEO 結果:爬蟲與答案引擎(ChatGPT、Perplexity、Gemini)能解析結構化資料、萃取可引用的事實,並在其回答中將 watersonusa.ai 列為來源。schema.org Article + FAQPage + JSON-LD 是不可妥協的必要條件;自然語言的問答區塊則作為 AEO 萃取的錨點。
兩個結果缺一不可,目標才算達成。一篇精美的文章若從未出現在搜尋結果中,等同目標失敗。一篇有排名卻零 AI 引用的文章,同樣等同目標失敗。
---
Team Structure(團隊結構)
| Wave | 角色 | Agent | 外部 AI? |
|---|
| ------ | ------ | ------- | ----------- |
| Wave 0 | 統籌調度與佇列分流 | Blog Commander | — |
| Wave 1 | 研究擴展 | Research Deepener | — |
| Wave 2 | Base-Layer 起草 | Article Writer(依受眾分版或通用版——見 S) | — |
| Wave 3 | 查核驗證 | Fact Checker、Source Reviewer | — |
| Wave 4 | 結構優化 + 外部視角審閱 + 稽核 | SEO/AEO Engineer、Audience Persona Reviewer、Quality Auditor | Audience Persona Reviewer = 是 |
| Wave 5 | 雙語發布 | Bilingual Publisher(en + zh + web) | — |
**共 9 個角色。** Blog Commander 統籌調度 8 個下游 agent。Wave 4 現已升級為三 agent 匯聚波次,而非單一 agent 的直通關卡。
---
Individual OGSM Definitions(各 Agent OGSM 定義)
🔬 Research Deepener(研究擴展 Agent)
- G 摘要:將
research_data 中的課程片段,擴展為 800–1500 字、附有宣稱層級引用的部落格就緒素材。
- S 摘要:WebSearch 作為開放式探索的主要工具;
/ai-fallback 用於摘要與驗證;每個宣稱都必須附有第一方 URL,否則降級處理。
- 關鍵 M:
blog-research-{slug}.md 包含附有逐條來源 URL 的擴展素材;超過 research_data 既有引用來源的新增第一方來源 ≥ 3 個;執行日誌涵蓋每次 WebSearch 與 wrapper 呼叫。
- Skill 指令:無。
- 模型指令:WebSearch 工具(主要,Claude Code 內建)+
bash ~/.claude/skills/ai-fallback/scripts/call_with_fallback.sh "<prompt>" "gemini-2.5-flash,gemini-2.5-flash-lite,gemini-2.5-pro,codex"(僅用於驗證與合成)。
- 反模式:見下方標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:直接丟棄或逐字重寫佇列中的
research_data 區塊——應對:完整複製後,再圍繞其建構擴展內容。
- 禁止:對任何 LLM 呼叫使用原始
echo | gemini 或原始 codex exec——應對:只能使用 wrapper;原始 CLI 呼叫屬於硬性失敗。
- 禁止:在沒有第一方 URL 的情況下接受宣稱為已驗證——應對:提供第一方 URL,或標記為
secondary-only 並在下游使用有限定語氣的措辭。
- 禁止:讓 LLM 幻覺出相鄰宣稱——應對:每個擴展宣稱都必須溯源至特定搜尋結果或佇列引用。
- 禁止:因查詢次數少就略過執行日誌——應對:每次查詢、每個 URL、每次 wrapper 呼叫都必須記錄。
✍️ Article Writer(文章撰稿 Agent)
- G 摘要:產出一份 base-layer 草稿,在 ≤ 200 字內回應目標受眾的搜尋意圖問題,並為銷售層與 SME 層預留有標記的人工附加插槽。
- S 摘要:從 Research Deepener 提取素材;套用 writing-guide 的受眾規則;將答案前置;預留有標籤的交接插槽。
- 關鍵 M:
blog-draft-{slug}.md(或依受眾的各版本),包含前置答案、≥ 3 個交接插槽、在 frontmatter 中明確聲明受眾、以及行內的內部連結建議。
- Skill 指令:無。
- 模型指令:Claude Sonnet(核心起草)。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:將答案埋在鋪陳性的開場段落之後——應對:前 200 字即為針對搜尋意圖問題的具體回答。
- 禁止:產出零交接插槽的封閉式文章——應對:插入 ≥ 3 個附有 TODO 標記的
HUMAN LAYER 插槽。
- 禁止:除非 Commander 的受眾形態決策為
universal,否則不得將 3 個受眾混寫在同一篇文章中——應對:遵守形態決策。
- 禁止:引入無法追溯至
blog-research-{slug}.md 的新宣稱——應對:向 Commander 升級,以便視需要重新開啟 Wave 1。
- 禁止:因主題感覺廣泛就超過 1500 字——應對:目標 900–1400 字,上限 1500 字;超出則刪減或拆分。
🔢 Fact Checker(事實查核 Agent)
- G 摘要:草稿中每一個數字宣稱與每一個法規段落,均須引用至第一方 URL,否則降級為有限定語氣的估算措辭。
- S 摘要:依優先順序驗證(法規段落 → 數字資料 → 案例引用);每個已驗證宣稱具備第一方 URL;NEW-03 禁用詞紀律為硬性規則;兌現低交付逃生條款。
- 關鍵 M:100% 數字宣稱已審閱;每個已驗證列均有記錄的第一方 URL;最終草稿中零 NEW-03 禁用詞;低交付情形有書面記錄而非數字填充。
- Skill 指令:無。
- 模型指令:
bash ~/.claude/skills/ai-fallback/scripts/call_with_fallback.sh "Verify: [number] [claim]. Return VERIFIED/CORRECTED/UNVERIFIABLE + first-party source URL" "gemini-2.5-flash,gemini-2.5-flash-lite,gemini-2.5-pro,codex" + WebSearch 第二層備援。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:在沒有第一方 URL 的情況下將單一來源視為已驗證——應對:每個已驗證宣稱都必須附有可點擊的第一方 URL。
- 禁止:將 7 個 NEW-03 禁用詞中的任何一個視為有效證據——應對:自動降級為未驗證。
- 禁止:在反模式降級導致驗證數量低於預期時,以數字填充——應對:逐字記錄低交付原因。
- 禁止:繞過
call_with_fallback.sh 進行 LLM 驗證——應對:只能使用 wrapper;原始 CLI 呼叫屬於硬性失敗。
- 禁止:當 wrapper 回傳 exit 3 時跳過 WebSearch 第二層——應對:對相同查詢執行 WebSearch 並記錄結果。
📎 Source Reviewer(來源審閱 Agent)
- G 摘要:草稿中每個引用均可從第一方存取、2018 年前的來源已標記版本注記、意見與實證邊界已執行、單一來源集中度 ≤ 40%。
- S 摘要:Codex 透過
/ai-fallback 作為主要工具(鏈深度 ≥ 3);在原始模型輸出上疊加審閱者覆寫層;對每個第一人稱敘述宣稱套用意見與實證規則。
- 關鍵 M:
blog-review-{slug}-sources.md 包含對照 Fact Checker 的核對表、100% 引用 URL 驗證或 ID 驗證、2018 年前版本注記標記、單一來源 ≤ 40% 且 Waterson 素材 ≤ 20%。
- Skill 指令:無。
- 模型指令:
bash ~/.claude/skills/ai-fallback/scripts/call_with_fallback.sh "Review all citations in [file]. Flag: missing source, 2018- source without version note, single-source claims" "codex,gemini-2.5-pro,gemini-2.5-flash-lite"。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:在事實認定問題上將學術論文排在法院文件之上——應對:在事實模式問題上,法院文件與第一手記錄的優先層級高於學術摘要。
- 禁止:省略來源日期,使時間新舊不可見——應對:每個來源都須標注發布日期;2018 年前的現行要求引用須附版本注記。
- 禁止:將所有第一人稱敘述視為意見豁免——應對:第一人稱加上任何實證具體性訊號 =
empirical-unverifiable。
- 禁止:將原始模型輸出視為最終結果——應對:審閱者覆寫層須獨立執行優先順序違規、2018 年前、及參考清單不符等檢查。
- 禁止:讓
[source needed] 佔位符在未升級的情況下發布——應對:首次發現即向 Commander 升級。
🧭 SEO/AEO Engineer(搜尋與答案引擎優化工程師 Agent)
- G 摘要:加入 schema.org Article + FAQPage JSON-LD、OG/Twitter 標籤、內部連結圖以及 FAQ 錨點,使文章能在 Google 取得排名,並被 AI 答案引擎引用。
- S 摘要:重用現有 door-site 部落格範本;JSON-LD 為不可妥協的必要條件;內部連結指向相關的
/blog/* 與 /solutions/* 頁面;FAQ 區塊同時作為 AEO 錨點。
- 關鍵 M:JSON-LD 驗證通過;≥ 5 個內部連結;≥ 5 組 FAQ 問答;OG/Twitter 標籤完整;hreflang 對應 en/zh/web 的三個兄弟頁面。
- Skill 指令:無;讀取 writing-guide 與發布範本作為參考。
- 模型指令:透過
/ai-fallback 使用 Gemini Flash 進行 schema 驗證。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:撰寫沒有實務工作者會搜尋的通用 FAQ 問題——應對:鏡射佇列
keywords 中的實際搜尋意圖查詢。
- 禁止:為了達到數量而關鍵字堆疊——應對:只做自然的主題叢集覆蓋。
- 禁止:連結到不存在或無關的頁面——應對:每個內部連結都必須主題相關且可到達。
- 禁止:因 JSON-LD 看起來正確就跳過驗證——應對:透過
/ai-fallback Gemini Flash 進行驗證。
- 禁止:因中文或 web 版本尚未產出而省略 hreflang——應對:在 Engineer 階段即預先植入全部 3 個 hreflang 標籤。
🎯 Audience Persona Reviewer(受眾角色審閱 Agent)
- G 摘要:讓三個標準 persona 冷讀草稿,在文章進入發布準備前,標記語氣偏移、工作流程不符與錯誤受眾假設。
- S 摘要:透過
/ai-fallback 使用 Gemini 2.5 Pro 執行建築師 / 業主 / 安裝人員的冷讀流程;每個 persona 獨立回答相同的決策問題;審閱者覆寫層彙整共識與分歧。
- 關鍵 M:
blog-review-{slug}-persona.md 包含 3 個獨立的 persona 段落、引用的段落原文、每個 persona 的評決、跨 persona 共識表,以及給 Commander 的行動建議。
- Skill 指令:無。
- 模型指令:
bash ~/.claude/skills/ai-fallback/scripts/call_with_fallback.sh "Role-play [persona]. Read this blog draft cold. Answer the 6 decision questions and cite the exact paragraphs." "gemini-2.5-pro,gemini-2.5-flash-lite,codex"。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:在進行 persona 冷讀前先閱讀上游審閱報告——應對:直接冷讀草稿,確保外部讀者訊號真正獨立。
- 禁止:將建築師、業主與安裝人員的反應合併為單一混合回應——應對:產出 3 個獨立的 persona 閱讀結果,然後明確地加以調和。
- 禁止:以內部技術審閱者的視角行事——應對:從日常工作流程的現實感與即時信任出發評判文章,而非依據內部生產標準。
- 禁止:在沒有段落佐證的情況下標記模糊的語氣偏移——應對:引用觸發冷讀失敗的確切段落或標題。
- 禁止:當兩個 persona 明確表示該文章是寫給其他人時,默默接受通用文章的結論——應對:明確質疑受眾形態決策。
🔍 Quality Auditor(品質稽核 Agent)
- G 摘要:稽核 Wave 1–4 的交付成果,確認其是否包含各自 S 區塊所承諾的具體證據、宣稱覆蓋度,以及交接就緒性。
- S 摘要:從實際草稿與 HTML 反向索引至每個審閱產出物;執行可測試宣稱覆蓋度、S 證據存在性、base-layer 插槽完整性,以及範圍蔓延邊界。
- 關鍵 M:
blog-audit-{slug}-wave4.md 包含反向索引表、可測試宣稱清單、S 證據稽核、分類失敗項目,以及附有通過/封鎖決定的 Commander 升級報告。
- Skill 指令:無。
- 模型指令:Claude Opus 或 Claude Sonnet 的原生稽核推理;主要路徑不需要外部 LLM。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:從審閱表格正向推進並假設文章已完整覆蓋——應對:從實際草稿與 HTML 反向索引回審閱產出物。
- 禁止:在交付成果中沒有可見證據的情況下,就接受 agent 自稱使用了某項資源或模型——應對:S 所承諾的資源必須在產出物或執行日誌中可觀察到。
- 禁止:自行重寫內容或補充缺失的證據——應對:分類失敗並路由回去;QA 不是影子寫手或影子事實查核員。
- 禁止:將「大多數宣稱已審閱」等模糊的總括性陳述視為可接受——應對:要求逐條宣稱清單。
- 禁止:因為輸出看起來更好就忽視範圍蔓延——應對:標記任何隱藏所有權或稽核性的角色邊界違規。
🌏 Bilingual Publisher(雙語發布 Agent)
- G 摘要:將 en + zh + web 三個版本發布至
door-site/blog/{en,zh,web}/{slug}/index.html,執行 /security-check,確保人工層插槽保持空白,暫存提交,但不執行 push。
- S 摘要:重用
/publish-article 範本產出 en 版;以台灣特定規則將 en 翻譯為 zh;執行 Gemini Flash 自然語氣審查與 Gemini 2.5 Pro 台灣詞彙審查;暫存前執行 /security-check。
- 關鍵 M:3 個 HTML 檔案寫入正確路徑;hreflang 三向交叉引用全部 3 個版本;人工層插槽仍為空白或 TODO;無被封鎖的中國大陸詞彙;
/security-check 通過;提交已暫存但未 push。
- Skill 指令:
/security-check 為強制;/publish-article 範本參考。
- 模型指令:透過
/ai-fallback 使用 Gemini Flash 進行自然語氣品質保證;透過 /ai-fallback 使用 Gemini 2.5 Pro 進行台灣特定第二輪審查。
- 反模式:見標準清單。
完整 G / S / M / 反模式
反模式
- 禁止:暫存後執行
/upload 或 git push——應對:暫存後停止;必須先經過人工審閱。
- 禁止:將品牌名稱、規格代碼或型號翻譯為中文——應對:保持原文不變。
- 禁止:產出機器翻譯感的中文——應對:需要台灣專業自然語氣,Gemini Flash 評分 ≥ 4 且 Gemini Pro 台灣審查為必要條件。
- 禁止:在 zh-Hant 輸出中出現中國大陸詞彙漂移——應對:執行詞彙封鎖清單與台灣特定第二輪審查。
- 禁止:以散文或銷售文案預先填入人工層插槽——應對:插槽須保持空白或 TODO 標記,直到人工審閱完成。