Communitygithub.com

Prompt-Motion/ReaReverse

從固定的 Git 歷史記錄中準備或重寫 REA 版本更新日誌和 GitHub 發行說明,包含經過驗證的貢獻者致謝以及 Release Please 同步。

ReaReverse 是什麼?

此技能專為 REA(Release Engineering Automation)版本管理而設計,旨在從固定的 Git 歷史記錄中準備或重寫版本更新日誌與 GitHub 發行說明。它支援在 Cursor、Claude Code 和 Codex 等 AI 代理平台上使用,提供完整的貢獻者歸因與 Release Please 同步功能。技能運作流程包含三個階段:首先透過 `inventory` 命令擷取完整的 Git 歷史記錄、關聯的 PR、提交作者/共同作者以及確認的結案議題與回報者,並生成貢獻清單;接著根據清單重新撰寫 `CHANGELOG.md` 中最新版本的 `## [VERSION]` 區段,將變更分類為 Highlights、Changes、Fixes 與 BREAKING CHANGES,並為每個貢獻添加 GitHub 連結與人類作者致謝(排除機器人與已知代理帳號);最後透過 `rea:release-notes-finalized` 標籤凍結發行 PR 的機器人更新,儲存耐久性貢獻清單至 `docs/releases/VERSION.contributions.json`,並使用檢查器與渲染器驗證更新後的發行說明主體,確保所有變更皆符合版本發布規範。此技能不授權合併、標記或發布,僅負責準備與驗證發行說明。

相容平台✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/Prompt-Motion/ReaReverse/tree/HEAD/.agents/skills/rea-changelog-update

在你喜歡的 AI 中提問

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

說明文件

REA 版本更新日誌更新

用於發行說明準備與貢獻者歸因。請閱讀儲存庫根目錄下的 docs/releasing.md 以了解發布權威資訊與現有的檢查點。此技能負責準備說明;它不授權合併、標記或發布。

在撰寫正文前的清點

擷取完整的歷史記錄與標籤。從發行 PR 的 基礎分支 上的 .release-please-manifest.json 中選取已發布的基準標籤,並將該分支的確切 SHA 固定為編輯目標。REA 標籤格式為 rea-agents-VERSION。使用建議的版本(包含其預發布後綴);不要更改 always-bump-minor 策略以模仿 OpenClaw 的日曆版本。

node scripts/release-notes.mjs inventory \
  --repository morluto/rea --base rea-agents-PREVIOUS \
  --target FULL_BASE_BRANCH_SHA --version VERSION \
  --manifest /tmp/rea-VERSION.contributions.json
node scripts/release-notes.mjs record \
  --manifest /tmp/rea-VERSION.contributions.json \
  --summary \
  --output /tmp/rea-VERSION.record.md

請閱讀清單,而不僅僅是現有的機器人草稿。它包含側分支提交、GitHub 關聯的 PR(其合併提交在範圍內)、提交作者/共同作者,以及已確認的結案議題及其回報者。GitHub 連接會進行分頁處理。網路錯誤會中斷生成;恢復後請重新執行至新的輸出檔案。現有的輸出檔案絕不會被覆蓋。

未解析的提交身分會以名稱/電子郵件與 user: null 保留;絕不要猜測使用者代號,也不要以合併者作為替代來致謝。報告會保留未知部分。這是一個經過審查的中繼資料快照,並非獨立證明某個人類撰寫了修補程式。對於未歸屬的身分、非典型的合併策略、回溯移植、還原或 GitHub 未關聯的參考,請檢查來源 PR 與差異,並回報此限制。目前的收集器使用已確認的 PR 結案關係來給予議題回報者信用;未關聯的議題提及不會自動獲得信用。不要聲稱僅清點過的作品在還原後仍然出貨。

為使用者撰寫並保留信用

僅重寫 CHANGELOG.md 中最新的 ## [VERSION] 區段,保留其版本/日期/連結標題。使用單行 Markdown 列表項目,放在以下標題下:

  • ### Highlights:幾個定義版本的使用者成果;小型版本無配額限制。
  • ### Changes:功能與有意義的行為變更。
  • ### Fixes:可靠性、正確性、相容性與安全性修復。
  • ### ⚠ BREAKING CHANGES:適當時保留,並附上遷移方式以及現有檢查點驗證器要求的原始 PR/提交參考。

按分析師工作流程或使用者影響對相關工作進行分組。以簡短、具體的條目解釋最終行為。Highlights 總結了版本內容;避免在 Changes 中重複其完整描述。內部清理、測試、CI 與例行文件原則上僅應放在出處檔案中。在做出宣稱前,請閱讀有歧義的 PR/差異。區分模擬提供者檢查與真實提供者驗證。

在公開說明中為每個代表的貢獻提供一次信用,並附上其連結以及 Thanks @...,致謝其經過驗證的人類作者、已知的共同作者,以及已確認的結案議題回報者。分組時將所有這些信用保留在同一行。當 Highlights、詳細條目或遷移參考了相同工作時,將其致謝放在其中一個條目中,而不是全部。包含議題連結。直接提交的項目攜帶提交連結與已知的人類信用。排除 GitHub 機器人與已知的代理帳號。REA 觀察到的 Anthropic、Cursor 與 Codex 共同作者尾碼解析為 @claude、@cursoragent 與 @codex,其 GitHub 類型為 User;信用政策排除它們,同時保留其中繼資料。應 REA 維護者要求,省略 @morluto 的自我致謝,同時在清單中保留作者身分。其他人類貢獻者仍符合資格。對於跨儲存庫的參考,請使用明確的 GitHub 連結以避免模糊的 #NNN 編號。未知的使用者代號保持未知;它們不是捏造的信用。

在版本結尾附加生成的 record --summary 出處連結(逐字)。連結的清單說明了每個發現的範圍內 PR 與直接貢獻,包括從正文中省略的內部工作。請勿將完整的 record 輸出貼到公開說明中:這會重複致謝並遮蔽使用者可見的變更。完整的記錄仍可供審查。請勿手動編輯生成的信用以通過驗證。當產品歷史變更時,請重新整理清單;僅修正正文可以重複使用快照。

使用 Release Please 完成最終處理

在更改即時發行 PR 之前,請獲得對該 PR 更新的授權。本地準備與驗證可以獨立進行。

  1. 在選定的開放發行 PR 之前,添加 rea:release-notes-finalized 標籤 編輯其分支/正文。主要提案推送會尊重此標籤。這是 我們的工作流程防護機制,而非 Release Please 的 autorelease: snooze 機制。 正在進行中的提案必須在編輯前完成。請勿在已最終確定的說明上發起手動準備。

  2. 在該發行分支上,將審查過的清單儲存為 docs/releases/VERSION.contributions.json。這是耐久的公開版本 出處記錄,而非臨時規劃檔案。請勿添加憑證或本地 環境傾印。保持現有版本工件一致。

  3. 執行現有的檢查點驗證器與新的檢查器:

    node scripts/release-notes.mjs check \
      --manifest docs/releases/VERSION.contributions.json
    node scripts/release-notes.mjs render \
      --manifest docs/releases/VERSION.contributions.json \
      --output /tmp/rea-VERSION.notes.md
    

    檢查器支援內聯 PR 正文(包含其周圍的中繼資料), 最高可達 GitHub 的 65,536 字元限制。如果說明過長,它會失敗而非 截斷信用;Release Please 的溢位連結正文未整合。

  4. 使用渲染出的區段更新發行 PR 正文,同時保留其 Release Please 頁首/頁尾以及元件/版本結構。使用正文 檔案進行 gh pr edit --body-file;僅更改 CHANGELOG.md 不會 更改 Release Please 的發行正文。僅推送授權的變更。

  5. 重新擷取 PR 正文至檔案並執行 check --pr-body FILE。審查 完整的差異並等待當前的 CI。發布前會再次檢查正文。 在發布過程中避免進一步編輯正文。

最終確定標籤會凍結機器人更新,但不會凍結 main 分支。在清點目標之後的新產品 變更需要重新整理說明後才能發布。 工作流程會檢查目標的祖先關係,並且只允許在該目標之後的 發布中繼資料路徑。它還要求清點目標等於審查過的 合併的第一個父節點,因此 intervening main 提交需要新的清點。 也請審查允許的發布中繼資料路徑內的差異:路徑防護並不能 證明套件依賴項/腳本編輯僅是版本變更。 要恢復自動提案,請移除最終確定標籤並讓機器人 重新產生;預期編輯變更將被取代。

沒有貢獻清單的現有版本會保留其當前的 發布路徑。請勿重新標記或重新發布套件以更正版本正文。

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

相關技能