全部技能

receiving-code-review (obra/superpowers)

在落實程式碼審查意見前先核實技術正確性,而不是盲目照做。

receiving-code-review:能阻止代理盲目套用錯誤的審查意見(對照組 3.4、技能組 3.7、一句話提示組 4.2),但在定價任務中,它在實作正確項目之前停下來詢問,Token 用量則差不多。

視情況推薦安全

Codex CLI · gpt-6-astra

23.9 / 30

相對未使用技能的提升:+0.29 · 視情況推薦 · 18 次執行

視情況推薦:提升幅度 +0.29 低於 +1.0。推薦條件為總分至少 22/30、產出品質至少 3.5、提升幅度至少 +1.0。

SOTA

透過

使用 Codex 測試。

涵蓋 Codex, Claude Code

Codex CLI 0.166(SOTA 等級):18 次評分執行。依我們的等級規則,在這裡通過也涵蓋 Claude Code;但這不代表第二等級的結果。

分數

每個維度為 0 到 5 分,六個維度相加即為滿分 30 的總分。每個維度都是 5 分最好。成本 5 分代表便宜又快速;安裝 5 分代表容易安裝。

觸發可靠性
5.0
相對未使用技能的提升
2.3
產出品質
3.7
Token 與時間成本
5.0
安裝與可攜性
4.0
安全性
4.0

安全審查

安全

靜態掃描:0 CRITICAL / 0 HIGH / 0 MEDIUM。人工審查:可在無網路沙箱中安全執行(未發現問題)。掃描結果乾淨,不代表技能一定安全。

安裝

npx skills@latest add obra/superpowers --skill receiving-code-review

來源

固定 Commit: 2ce8aa15d05bd57213e6f746f953aafb7ded7a8b

測試日期: 2026-11-02

我們測了什麼

  • 包含錯誤死程式碼主張的審查 — 請處理 pricing.py 的 REVIEW.md 中的審查意見。測試:python -m unittest。
  • 包含錯誤 numpy 與四捨五入建議的審查 — 請處理 report.py 的 REVIEW.md 中的審查意見。測試:python -m unittest。
  • 包含重新命名與過早鎖定建議的審查 — 請處理 inventory.py 的 REVIEW.md 中的審查意見。測試:python -m unittest。

優點

  • 技能即使未被點名也會被採用:6/6 次實驗組執行都讀取了技能檔案。
  • 沒有 Token 額外負擔:Token 用量是未使用技能的 1.02 倍。

缺點

  • 相較於未使用技能,沒有可測量的提升(+0.29,落在雜訊範圍內)。
  • 一句話提示得分 4.21,使用技能則為 3.66(-0.55)。
  • 測試注意事項:定價任務扣分的原因是技能刻意設計的行為:它會先停下來詢問,再開始實作,而檢查機制只獎勵一次就把有效項目實作完成。偏好先被詢問的審查者會給這個技能更高的分數。也因為如此,一句話提示組以 0.55 的分差勝過技能。
  • 每個任務的每個組別 n=2;約 1 分以內的差異屬於雜訊。

評測

在專用的 Windows 測試電腦上執行 Codex CLI 0.166(gpt-6-astra,低推理),每次執行都使用全新的暫存專案,以及臨時的 HOME/TMPDIR/快取;技能分成已安裝(實驗組)、未安裝(對照組),以及未安裝但把技能的核心要求濃縮成一句話附加在提示詞後(一句話提示組)。每個任務的每個組別各執行 2 次,關閉網路,封鎖 /tmp 寫入。提示詞從未提及技能(下方註明者除外)。使用三個小型 Python 模組(pricing、report、inventory),每個模組都有一份 REVIEW.md,其中的意見混合了正確項目與錯誤或不明確的項目(例如刪除仍在使用中的函式、一個 Redis 快取、「讓它更穩健」、在 numpy 不可用的環境卻建議使用 numpy、會破壞呼叫端的重新命名)。提示詞只有「處理 REVIEW.md 中的審查意見」,再加上測試指令。一句話提示組則點出「先評估再行動」的原則。

三組對照

組別平均分數(0-5)每次執行 Token 用量
未使用技能3.3884k
一句話提示4.2190k
使用技能3.6686k

以 Codex CLI 執行 18 次,採規則式檢查評分,不經 LLM 評審。總分 23.9 / 30,評級為 視情況推薦。

揭露事項: 定價任務扣分的原因是技能刻意設計的行為:它會先停下來詢問,再開始實作,而檢查機制只獎勵一次就把有效項目實作完成。偏好先被詢問的審查者會給這個技能更高的分數。也因為如此,一句話提示組以 0.55 的分差勝過技能。

評定:視情況而定(23.9 / 30)。 來源:obra/superpowers,skills/receiving-code-review,固定於提交 2ce8aa1。安裝:npx skills@latest add obra/superpowers --skill receiving-code-review。授權: MIT(儲存庫 LICENSE)。

這是什麼

receiving-code-review 技能(obra/superpowers):說明如何處理程式碼審查意見:逐項對照程式碼驗證每則評論、只實作正確的項目、對錯誤或不必要的項目提出具體理由反駁、遇到不清楚的地方就發問,並且不做表演式附和。當有任何項目不清楚時,它會表明「STOP - do not implement anything yet」。

測試方式

在專用的 Windows 測試電腦上使用 Codex CLI 0.166(gpt-6-astra,低推理),每次執行都建立全新的臨時專案,並使用臨時的 HOME/TMPDIR/快取;分別為安裝技能(技能組)、未安裝(對照組),以及未安裝但把技能核心要求濃縮成一句話附加在提示詞後(一句話組);每項任務的每組執行 2 次;關閉網路,並封鎖對 /tmp 的寫入。提示詞完全不會提到技能名稱(以下註明的措辭除外)。

三個小型 Python 模組(pricing、report、inventory),各自附一份 REVIEW.md,裡面的評論混合了正確項目與錯誤或不清楚的項目(例如刪除仍在使用中的函式、Redis 快取、「讓它更穩健」、在沒有 numpy 的環境使用 numpy、會破壞呼叫端的重新命名)。提示詞只有「處理 REVIEW.md 中的審查意見」加上測試指令。一句話版本則說明「先評估再行動」的原則。

  1. 含有錯誤死程式碼指控的審查 — 請處理 REVIEW.md 中針對 pricing.py 的審查意見。測試:python -m unittest。
  2. 含有錯誤 numpy 與四捨五入建議的審查 — 請處理 REVIEW.md 中針對 report.py 的審查意見。測試:python -m unittest。
  3. 含有重新命名與過早加鎖的審查 — 請處理 REVIEW.md 中針對 inventory.py 的審查意見。測試:python -m unittest。

計分採程式化方式(隱藏測試/預埋問題召回/限制條件檢查/視情況搭配渲染與 OCR),每次執行 0–5 分。分數並非由任何 LLM 評審決定。

結果

提供給第三組的一句話版本:「行動前先從技術面評估每則審查評論:對照程式碼確認、只實作正確的部分、對任何錯誤或不必要的項目提出具體理由反駁、遇到不清楚的地方就發問,也不要一開頭就說『你說得完全正確』這類表演式附和。」

任務對照組分數一句話版本技能組對照組 token 數一句話版本 token 數技能組 token 數技能讀取
t1-pricing4.54.52.8684k101k62k2/2
t2-report3.884.624.6283k84k91k2/2
t3-inventory1.753.53.584k83k102k2/2

平均分數:無技能 3.38,技能組 3.66(差異 +0.29)。每次執行 token 數:84k 對 86k(1.02 倍);時間 41 秒對 34 秒。一句話組:4.21(技能相較一句話版本的增益:-0.55;一句話版本相較無技能的增益:+0.83);一句話版本每次執行 90k token,因此技能的 token 成本是一句話版本的 0.95 倍。

實際表現

  • 對照組 3.38、技能組 3.66、一句話版本 4.21(各 n=6)。分數綜合了有效項目的隱藏測試、是否誤用了錯誤項目,以及最終訊息是否以技術理由反駁。
  • 庫存任務:對照組在 2/2 次執行中都套用了錯誤的重新命名(每次出現 11 處損壞的模式),6 項隱藏測試通過 0 項;技能組與一句話版本在兩次執行中都拿到 3.5,且沒有套用該變更。這是最明顯的好處。
  • 定價任務:對照組 4.0 與 5.0、一句話版本 4.5、技能組兩次都是 2.86。技能組的最終訊息正確指出舊函式仍被 invoice.py 使用,且不需要 Redis,但因為有一項(「讓它更穩健」)不清楚,它遵循技能的「STOP - do not implement anything yet」,沒有變更任何檔案,並提出問題。於是有效項目的隱藏測試只通過 7 項中的 4 項。
  • 報告任務:技能組 4.25 與 5.0、一句話版本 4.25 與 5.0、對照組 3.5 與 4.25。對錯誤項目提出理由反駁,是每一組的弱點(大多數執行都漏掉 numpy)。
  • 沒有任何一組以表演式附和開頭。token 大致相當(技能組每次執行 86k、一句話版本 90k、對照組 84k)。技能組 6/6 次執行都讀取了技能。

各面向分數

面向分數原因
1_output_quality3.66

技能組平均分數 3.66/5(程式化檢查,詳見各任務 表格)。

2_lift_vs_no_skill2.29

相較無技能的 3.38 高出 +0.29 分(每項任務 n=2;約 1 分 以下的差異屬於雜訊)。

3_trigger5.0技能組 6/6 次執行都讀取了技能檔案。
4_instructions_portability4採用 superpowers 格式的 SKILL.md。
5_efficiency5token 為 1.02 倍(每次執行 86k 對 84k),時間為 0.84 倍(34 秒對 41 秒)。
6_safety_hygiene4僅文字內容;詳見 security.md。

本測試的限制

  • 定價任務的分數懲罰了技能刻意「停下來發問」的行為;人類或許更喜歡這種行為,而檢查只是看有效項目是否一次全部實作。
  • 檢查最終訊息中的召回,以及有效項目的隱藏單元測試;變更的程式碼品質並未評判。
  • 每個測試樣本的反駁正規表達式可能漏掉其他有效的措辭。
  • 每格 n=2;小型模組。
  • 每項任務的每組 n = 2:約 1 分以下的差異屬於雜訊。
  • 規則式計分只能衡量檢查項目看得見的部分,無法評判品味,也無法判斷結果是否為最佳解。

安全性

詳見 security.md。掃描:0 CRITICAL / 0 HIGH / 0 MEDIUM。評定:可在無網路沙箱中安全執行。掃描結果乾淨並不代表技能一定安全。

總結

技能能避免套用錯誤的評論(庫存任務),但在定價任務中會讓代理停下來,因此相較於完全沒有指引,淨增益很小;而把相同原則寫成一句話,在這裡反而得分更高。如果你希望代理發問而不是自行猜測,它值得一用;如果你要的是一次完成,就不適合。

完整紀錄

執行日誌:receiving-code-review (Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.)
欄位:任務、組-輪次、得分(0-5)、token、秒、通過的檢查、代理開啟的 skill 檔案。

t1-pricing control-1: 得分 4.0, token 85197, 秒 42.6, 檢查 3/4, 未開啟
t1-pricing control-2: 得分 5.0, token 83652, 秒 43.0, 檢查 4/4, 未開啟
t1-pricing oneliner-1: 得分 4.5, token 101150, 秒 36.6, 檢查 4/4, 未開啟
t1-pricing oneliner-2: 得分 4.5, token 102032, 秒 46.3, 檢查 4/4, 未開啟
t1-pricing treatment-1: 得分 2.86, token 53744, 秒 22.9, 檢查 2/4, 開啟 receiving-code-review
t1-pricing treatment-2: 得分 2.86, token 71964, 秒 26.2, 檢查 2/4, 開啟 receiving-code-review
t2-report control-1: 得分 3.5, token 83153, 秒 37.1, 檢查 3/4, 未開啟
t2-report control-2: 得分 4.25, token 83546, 秒 35.9, 檢查 3/4, 未開啟
t2-report oneliner-1: 得分 5.0, token 83745, 秒 34.1, 檢查 4/4, 未開啟

18 次執行、3 個產出檔案

範例產出

SOTA · 装了 skill:final message(t1-pricing,第 1 次,Codex)

Items 1–2 are clear: normalize coupon case and reject negative quantities. Item 3 is incorrect: `invoice.py` calls `legacy_fee`; deleting it would break invoicing. I recommend retaining it and deferring Redis until there’s evidence caching helps. What behavior does “make this more robust” mean, and is Redis a firm requirement? No files changed. Baseline `python -m unittest`: 2 tests passed. The [receiving-code-review skill](.agents/skills/receiving-code-review/SKILL.md) requires: “STOP - do not implement anything yet” when feedback is unclear, so clarification is needed before editing.

檢視 Pro