Community寫作與編輯github.com

xingbiyun-afk/requirements-docs-viewer

在應用內提供「需求文件閱讀入口/檢視器」時使用:將現有需求文件接入頁面入口,進行文件映射、建置期複製、目錄/正文/搜尋、歷史章節過濾、懶載入與生產暴露面處理。僅負責閱讀入口實作,不負責文件撰寫(撰寫請見 prd-rule-authoring)。

requirements-docs-viewer 是什麼?

這個技能專注於在應用程式內部建立一個需求文件的閱讀入口(檢視器),讓開發者、產品經理與測試人員能直接在當前頁面查閱對應的 Markdown 文件,無需切換到外部編輯器。它透過文件映射表將頁面路由與文件路徑綁定,在建置期間將文件複製到產物目錄,並確保雙向校驗(缺失或孤立的文件會導致建置失敗)。閱讀入口採用懶載入機制,僅在開啟抽屜或面板時才請求文件與建立搜尋索引,避免影響首屏效能。為了安全與內容管控,它會過濾「更新記錄/更新日誌」等歷史章節,並針對生產環境提供建置排除或路徑鑑權兩種防護選項。測試部分包含映射完整性、歷史章節不顯示、搜尋結果上下文保持(保留關鍵詞、滾動位置與高亮)以及覆蓋層級的可見性斷言。此技能不處理文件撰寫或協作編輯,確保與文件撰寫技能(如 prd-rule-authoring)完全解耦。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/xingbiyun-afk/requirements-skills/tree/HEAD/requirements-docs-viewer

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

頁面內需求文件閱讀入口(檢視器)

目標

把專案裡已經存在的需求文件接入產品介面,讓使用者在當前頁面直接查閱對應說明;同時保證入口不拖慢首屏、不洩露歷史內容、不在生產環境意外暴露內部文件。

與文件撰寫的邊界

  • 本技能只負責閱讀入口的實作:入口位置、文件映射、建置複製、渲染、搜尋、懶載入、錯誤狀態、生產暴露面、測試與走查。
  • 文件內容由 prd-rule-authoring 或任何來源提供;本技能不規定文件必須怎麼寫,也不要求專案必須使用 prd-rule-authoring。
  • 兩者互不依賴:沒有閱讀入口的專案也應產出需求文件;有閱讀入口也不改變文件的撰寫規則。
  • 唯一耦合面是「文件目錄 + Markdown 約定」:路徑、標題、可渲染語法。約定寫在專案配置中,不寫死在技能裡。

何時使用

  • 產品/開發/測試希望「在當前頁面直接看規則」,避免分屏查 MD;
  • 已有成體系的 Markdown 需求文件,需要唯讀展示;
  • 需要把內部文件接入交付演示,但必須控制生產可見性。

不適用:線上編輯/協作評論、文件審批流程、全文檢索服務化、權限分級閱讀(可後續擴展,不在最小實作內)。

閱讀順序

檔案何時讀
references/integration-design.md設計入口/建置/映射/懶載入時
references/rendering-and-search.md渲染受限 MD、歷史章節過濾、搜尋時
references/acceptance-checklist.md測試、走查與驗收時
references/ops-and-governance.md生產暴露面、文件更新與發佈流程時

最小實作清單

  1. 入口:只在有文件映射的頁面顯示;無映射不渲染(不留死按鈕);入口本身零文件載入。
  2. 來源:文件源為倉庫內 Markdown(或等價靜態檔案);建置期複製到產物目錄;建置時做產物↔映射雙向校驗(缺失/孤兒即建置失敗)。
  3. 映射:路由/頁面 → 文件路徑的註冊表為唯一映射源;文件樹按模組分組;模組級文件單獨標識。
  4. 載入:抽屜/面板打開後才請求文件;首次打開載入當前文件;搜尋索引在打開後空閒建立;不得啟動時預載文件。
  5. 渲染:受限 Markdown 渲染(標題/段落/列表/表格/程式碼/引用/分隔線/連結);全部 HTML 轉義,只輸出白名單標籤;中文/括號檔名分段 URL 編碼;適配子路徑部署;標題錨點 slug 做 HTML/URL 危險字元(<>&"')安全化,錨點生成單一出口(目錄/正文/搜尋/定位共用)。
  6. 閱讀器規則:只展示最新說明——不渲染「更新記錄/更新日誌」章節(含其內容),目錄與搜尋同步排除;如來源文件含歷史快照註記,按專案約定過濾或由文件作者不寫。
  7. 互動:目錄點擊定位、動作頁可按章節提示預設定位、全域關鍵字搜尋(按文件分組、當前頁命中置頂、片段去 Markdown 噪音)與跳轉、錯誤狀態與重試、關閉。搜尋結果導航上下文:點擊命中只切換正文,不清空搜尋詞/結果列表;保留結果區滾動位置;命中項高亮(穩定 key,至少包含文件+錨點+標題,必要時加片段區分同章節多條);提供明確的「清空搜尋」入口恢復文件樹;從文件樹打開文件時清空搜尋;不重建索引。紅線:目錄若吸頂或展開列表常駐正文上方,點擊定位必須按覆蓋高度偏移防遮擋;自動化用遮擋級斷言(toBeVisible 不判遮擋)。吸頂摺疊目錄、滾動補償等升級形態細節見 references/integration-design.md §7。
  8. 生產暴露面:入口開關只控制按鈕,不保護靜態文件;生產必須二選一:建置排除文件目錄,或對文件路徑加鑑權(寫入生產接入門禁)。
  9. 測試:映射完整性、建置產物一致性、歷史章節不顯示、懶載入零預載、搜尋與跳轉、搜尋結果上下文保持(關鍵詞/結果/滾動位置保留、連續命中、清空恢復樹、高亮唯一、不重建索引)、錯誤狀態;目錄/定位補遮擋級斷言(toBeVisible 不判遮擋);滾動恢復斷言對 clamp 容忍,不要求像素級絕對相等;可見瀏覽器走查並歸檔證據(截圖與最終行為一致)。

邊界

  • 不改業務頁面行為、選單/路由業務值、Mock 資料;只加閱讀入口與文件資產鏈路。
  • 不引入第三方重型 MD 渲染依賴;渲染器受限、可測試、可轉義。
  • 不把「文件撰寫規範」寫進本技能;不把「入口實作細節」寫進文件撰寫技能。
  • 真實權限、生產部署與鑑權方式以專案門禁為準;Mock/演示通過不等於生產已防護。

交付說明

入口位置與可見條件、文件來源與映射、建置複製與校驗、渲染與歷史過濾、懶載入與搜尋、錯誤狀態、生產暴露面處理、測試與走查證據、未覆蓋項。

相關技能