neo-harness-project · diff

v1.0.0 to v1.0.0

12 added, 5 removed. Audit A to A.

---
name: neo-harness-project
description: >
當使用者要求盤點目前專案並建立、重建或補強完整 Harness 工程環境時使用此技能,
包含專案知識地圖、架構文件、持久化計畫、驗證入口及依證據選用的工程治理資產;
不用於只建立單一 AGENTS.md 或一般功能開發。
license: MIT
metadata:
version: "1.0.0"
type: "project-harness-generator"
---
# Project Harness Builder
根據目前專案的實際設計建立可閱讀、可驗證、可恢復的工程環境。不要把固定技術棧或理想架構套進專案,也不要建立沒有真實檢查能力的空殼。
## 邊界
- 本技能處理整個專案的 Harness 盤點與跨檔案建置。
- 若需求只處理 `AGENTS.md`,改用 `neo-harness`。
- 不新增使用者未要求的第三方依賴、服務、部署或外部連線。
- 技能內容與產出必須保持供應商中立,不得提及任何特定模型供應商、產品、套件族、官方網址或供應商專屬中繼資料。
- 若必要專案事實無法在遵守中立要求下準確記錄,停止相關產出並回報衝突;不得刪減或改寫事實來假裝合規。
## 必要流程
### 1. 盤點,不寫入
- 先讀取專案規範、版本控制狀態、根目錄、套件與建置設定、測試、CI、文件、主要入口及現有 Harness 資產。所有命令都必須從可驗證的設定或文件取得,不可憑技術棧猜測。
+ 先讀取專案規範、版本控制狀態、根目錄、套件與建置設定、測試、CI、文件、主要入口及現有 Harness 資產,包含 `docs/scripts.md` 與 `docs/exec-plans/` 的既有檔案。所有命令都必須從可驗證的設定或文件取得,不可憑技術棧猜測。
盤點時必須閱讀 [專案評估模型](references/project-assessment.md),以來源證據判定成熟度與缺口。未知資訊標成「未知」,不要補成理想狀態。
### 2. 選擇產出
閱讀 [資產選擇矩陣](references/artifact-selection.md),將每個候選路徑分類為:
- `create`:路徑不存在,且已有足夠證據建立。
- `update`:保留有效內容並補齊缺口。
- `rebuild`:現有內容與已確認目標衝突,需重建。
- `skip`:沒有需求或證據,不建立。
- `blocked`:缺少關鍵事實或違反中立要求。
- 核心知識與計畫資產預設納入;CI、架構檢查、執行環境、可觀測性與持續清理只在矩陣條件成立時納入。
+ 核心知識、命令清單與計畫資產預設納入;CI、架構檢查、執行環境、可觀測性與持續清理只在矩陣條件成立時納入。
### 3. 提供寫入預覽
修改前先向使用者提供:
1. 專案證據與成熟度。
2. 精確目標路徑及 `create`、`update`、`rebuild`、`skip` 或 `blocked` 動作。
3. 每項動作的事實依據與內容摘要。
4. 既有檔案衝突、驗證命令與失敗復原方式。
等待使用者明確確認全部或指定路徑。初始的「建立 Harness」要求不等於對未知重建清單的確認;預覽前不得寫入。
### 4. 依確認內容產生
寫入前閱讀 [產生、驗證與復原](references/generation-validation.md)。使用 [核心模板](assets/templates/) 作為結構起點,依專案事實改寫並移除所有模板標記;不得直接複製未完成模板。
- 使用與目前專案一致的命名、工具與文件語言;無法判定語言時採用使用者語言。
- 只修改預覽中已確認的精確路徑。
- `rebuild` 必須保留仍正確的專案事實,並確保可從版本控制或已報告的暫存快照復原。
- 空的執行計畫目錄使用最小追蹤檔保存,不填入虛構計畫。
+ - 新建立的執行計畫檔名必須使用 `YYYYMMDDHHmmss_<原計畫檔名>.md`;時間戳取建立當下執行環境的本地時間,從 `active` 移至 `completed` 時保留原時間戳。
+ - 既有未加時間戳的計畫不批次改名;更新既有計畫時沿用原檔名。
+ - `docs/scripts.md` 必須是只含 `指令`、`用途` 兩欄的 Markdown table,收錄所有可由專案設定或文件驗證的命令;沒有可驗證命令時只保留空表頭。
+ - 沒有可驗證的統一驗證命令時,從 `AGENTS.md` 移除統一驗證命令與相應完成條件,不保留模板標記。
- 規則可被機器可靠判斷時,優先使用既有工具形成可執行檢查;否則保留為明確文件規則。
### 5. 閉環驗證
1. 確認所有建立或重建的檔案都在已確認清單中。
2. 檢查文件連結、命令、路徑、架構描述及模板標記。
- 3. 執行專案原有快速檢查與新增的統一驗證入口。
- 4. 失敗時閱讀完整錯誤、修正根因並重跑。
- 5. 回報實際產出、未解缺口、命令與結果;沒有通過證據不得宣告完成。
+ 3. 驗證新計畫檔名的時間戳格式,以及 `docs/scripts.md` 的兩欄 Markdown table 格式。
+ 4. 執行專案原有快速檢查與新增的統一驗證入口。
+ 5. 失敗時閱讀完整錯誤、修正根因並重跑。
+ 6. 回報實際產出、未解缺口、命令與結果;沒有通過證據不得宣告完成。
## 完成條件
- 核心資產可由新工作階段只靠目前專案找到必要知識、限制與驗證方法。
+ - `docs/scripts.md` 提供完整且可追溯的專案命令清單。
+ - 新建立的計畫檔案可依時間戳前綴排序,且計畫生命週期移動不改變前綴。
- 所有命令均可追溯到專案設定且可實際執行。
- 沒有假成功命令、未完成模板、虛構架構或未經確認的重建。
- 條件式資產都有專案證據,未選用項目都有可說明的原因。
- 產出保持供應商中立,且驗證結果與剩餘缺口已交付。