Community程式設計與開發github.com

earmark

透過 earmark CLI 操作一個由多個編碼代理程式共享的本地問題看板。可以作為工作者、審閱者或 PM 設定檔加入看板,領取下一個待辦問題,僅讀取變更內容,將工作移交給審閱者,將只有其他專家能處理的工作(如圖片、音訊、文案)歸檔為阻塞問題,批准或拒絕移交,以及對待辦事項進行分類和指派。當專案具有 .earmark/ 看板,或用戶提及問題、工單、待辦事項、看板、審閱佇列或 earm 時使用。

earmark 是什麼?

earmark 是一個專為 AI 代理團隊設計的本機問題看板系統。它透過一個稱為 `earmark` 的專用 CLI 工具,管理儲存在 `.earmark/` 目錄中的共享問題看板。此技能讓 AI 代理能夠以三種不同角色操作看板:**工作者**(領取並處理問題,然後移交給審閱者)、**審閱者**(驗證工作並批准或拒絕移交,或將其退回給工作者)以及 **PM**(對待辦事項進行分類、指派問題、處理被阻塞或過期的項目)。它的設計極簡且以代理為中心:所有溝通(像是移交、問題和註解)都直接寫入看板,而非透過代理之間的直接訊息傳遞。它支援 Claude Code、Codex、Grok、Agents 和 OpenCode 等多種 CLI 平台。該技能強制執行嚴格的限制,例如一次只能領取一個問題、僅讀取已變更的內容,以及絕不直接手動編輯 `.earmark/` 目錄。它還包含詳細的角色特定流程(工作者迴圈、審閱者迴圈、PM 迴圈)和結束代碼處理,以有效引導代理行為。

相容平台✓Claude Code✓Codex CLI✓Cursor✓Antigravity✓OpenCode
npx skills add https://github.com/hec-ovi/earmark-skill/tree/HEAD

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

earmark 是做什麼的?

專案的代理程式共享一個位於 .earmark/ 的議題看板,所有操作僅能透過 earmark CLI 進行。代理程式之間不會互相傳送訊息:工作、相依性和交接都記錄在看板上。輸出為適合代理程式閱讀的純文字;錯誤訊息會顯示 error: 和 hint:,指示下一步該如何處理。

開始使用

  1. earmark info。如果找不到指令:請使用此檔案旁邊的 earmark 啟動器。如果仍找不到:請要求使用者執行 uv tool install git+https://github.com/hec-ovi/earmark-skill。請勿自行安裝。
  2. earmark join <profile> --cli <claude-code|codex|grok|agy|opencode>,其中 <profile> 是使用者指定的設定檔名稱,若未指定則預設為 worker。簡報會列出您的代號、角色提示、職責範圍和處理迴圈,請遵循這些指示。如果出現 no board 的錯誤,僅在使用者要求時才執行 earmark init。
  3. 在之後的每個指令中都傳入 --as <handle> 參數,因為每次 shell 呼叫都是全新的環境。如果忘記代號,請執行 earmark team。

僅花費權杖在變更的內容上

需求指令
開始工作:領取問題及其未讀評論earmark next
查看與您相關的變更,每行一個問題earmark check
查看特定欄位或部分,一次查詢多個問題earmark show KEY [KEY…] -f status,title · -f comments --new · -f attachments
檔案(圖片、音訊、日誌)earmark attachments KEY,然後使用您自己的工具開啟列印出的路徑
特定區域,較少使用earmark topics PATH --depth 2 · earmark ls -t PATH --ready

當指令結束並顯示 · N changes for you 時,以及在處理問題之間的間隔,請執行 earmark check。切勿列出整個看板,切勿重新讀取您已看過的內容,且僅讀取您的問題所指定的程式碼。

工作者迴圈

  1. earmark next 會為您領取最佳的待辦問題,並顯示問題內容及其未讀評論。如果退出碼為 4,則跳到步驟 6。
  2. 獨自處理該問題。如果是長期工作,請每隔 30 到 60 分鐘執行一次 earmark comment KEY "<done, next>" --kind progress:這會更新您的持有租約(預設 120 分鐘);無聲的持有會失效並被其他人領取。
  3. 如果問題需要只有其他專家才能處理的項目(如圖片、音訊、文案):請執行 earmark need KEY "<what, format, where it goes>" -t <topic> [--assign <handle>]。原本的 KEY 會被擱置,並在該問題完成後回到您的 next 佇列中;然後前往步驟 1。 如果需要決策:請使用 @<handle> 執行 earmark comment KEY "<question>" --kind question;同時繼續處理您能完成的部分。 如果被看板外的事情阻塞:請執行 earmark move KEY blocked -m "<what>"。
  4. 工作完成:先交付產出物(earmark attach KEY FILE…),然後執行 earmark review KEY -m "<what changed> · <files> · <how to verify>" --next:這會移交工作並在同一呼叫中為您領取下一個問題。如果退出碼為 4,則跳到步驟 6。
  5. 被恢復的問題顯示 blocked by: KEY2 (done):請使用 earmark show KEY2 -f comments,attachments --last 3 取得其結果。
  6. earmark next --review 會領取其他人的移交(絕不會領取自己的);按以下方式進行審閱。
  7. 如果仍然收到退出碼 4:執行 earmark check 並處理需要您處理的事項(問題、拒絕)。
  8. 如果沒有剩餘工作:執行 earmark leave,然後以三行報告:完成、審閱中、待辦或阻塞。只有在被告知要保持待命時:執行 earmark wait --timeout 9m(允許 10 分鐘),然後前往步驟 1。

審閱者迴圈

  1. earmark next --review 會領取下一個移交並顯示問題內容及 handoff 註記。如果退出碼為 4:執行工作者迴圈的步驟 7 和 8。
  2. 準確驗證該註記所聲明的內容:執行其測試或步驟,閱讀每一個變更的檔案。
  3. 通過:執行 earmark approve KEY -m "<what you checked>" --next。失敗:執行 earmark reject KEY -m "<each defect: file:line, expected, actual>" --next;這會將問題退回給同一個工作者。切勿自行修復。第三次拒絕會將問題擱置,等待 PM 或擁有者處理。

PM 迴圈

  1. earmark triage:顯示未分類的待辦事項、未指派的工作、過期的持有、審閱佇列、阻塞項目、逾期事項、審閱次數耗盡的項目以及閒置的代理。從上到下處理。
  2. 塑形:執行 earmark edit KEY -t <topic> -p <priority> --type <type>,然後執行 earmark move KEY todo。 重複:執行 earmark link KEY duplicates KEY2,然後執行 earmark cancel KEY -m "duplicate of KEY2"。
  3. 根據範圍指派:執行 earmark assign KEY <handle>,將問題分配給設定檔和 CLI 最符合該工作的代理。 過期的持有:執行 earmark move KEY todo -m "<why>",然後指派。
  4. 審閱次數耗盡:澄清問題,然後重新指派、拆分(earmark new "<title>" --parent KEY)或取消。使用 earmark rank KEY --top 或 --before KEY2 對佇列進行排序。
  5. 分類清理完成:執行 earmark leave 並提供三行摘要,或像工作者迴圈步驟 8 那樣等待。

退出碼

代碼意義處理方式
1無效請求、身分、權限閱讀 hint: 並修正指令一次
2找不到檢查 key 或 topic;錯誤訊息會列出接近的匹配項
3衝突:其他人持有此項目,或版本已移動執行 earmark next 領取其他項目,或先 show 再重做
4空:無專案可領取,或等待逾時執行您的迴圈的下一個步驟
5忙碌:看板仍在鎖定中幾秒後重試同一個指令

規則

  • 一次只能持有一個已領取的問題。要放棄一個問題:執行 earmark release KEY -m "<why>"。
  • 註解用於通知,而不是聊天。僅回覆一次對您提出的問題。請勿發布感謝或確認訊息。如果兩個來回未能達成共識:將問題留給 PM 或擁有者。
  • 註解應簡短且具體:說明變更了什麼、路徑、ID(#1190)。請勿傾印日誌;應將其附加。
  • 發現超出範圍的事項:執行 earmark new "<title>" -b "<evidence>" -t <topic>;切勿順便修復。
  • 切勿編輯他人持有的問題的程式碼、欄位或狀態;應在其上發表註解。
  • 只能透過 earmark 指令操作看板,切勿直接操作 .earmark/ 目錄。

參考資料:commands.md(所有指令、標誌和輸出格式)· workflow.md(狀態、租約、next 順序、審閱流程、游標)

相關技能