Community研究與資料分析github.com

TheElephantCoder/research-first

寫程式前先查資料,用於功能開發、錯誤修復或任何涉及非瑣碎程式碼的任務。

research-first 是什麼?

這項技能「Research First」要求開發者在執行任何非瑣碎的編輯或寫入動作之前,先進行研究與規劃,以減少推測與重工。它支援所有AI代理平台,包括Claude Code、Cursor和Codex。技能定義了四個步驟:首先,在`research/findings/`目錄下檢查或建立主題研究檔案,並引用來源或撰寫簡易重現腳本來驗證假設;其次,根據研究結果建立`research/plans/`目錄下的計畫檔案,列出受影響檔案與測試方案;第三步,將計畫提交給使用者核准,避免未經確認的程式碼變更;最後,實作並驗證,執行測試與基準檢查,並同步記憶以便後續會話沿用。這項技能特別適合跨多個檔案的修改、API呼叫或引入新依賴的狀況,能顯著提升開發效率與程式碼正確性。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/TheElephantCoder/agent-harness/tree/main/skills/research-first

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

寫程式前先研究

不要根據你「以為」的 API 來寫程式。先確認。

在進行任何非瑣碎的 edit 或 write 之前,你需要先做以下步驟:

1. 研究:research/findings/<topic>.md

  • 先檢查 research/findings/ 目錄。如果有人已經研究過該主題,直接重複使用。
  • 然後搜尋程式碼庫。如果需要外部文件,再進行網路搜尋。搜尋時請使用年份 2026,以便取得最新的文件。
  • 引用你找到的內容。如果文件不存在,撰寫一個小型重現腳本來驗證假設。
  • 將結果儲存到 research/findings/<slug>.md,這樣下次工作階段就不需要重做。

範本:

# 研究發現:<主題>

日期:2026-09-04
來源:[url, url]
現有程式碼:`path:line`:我們發現的內容

## 結論

建議方法:...
替代方案:...
風險:...

2. 計劃:research/plans/<task>.md

# 計劃:<任務>

研究:research/findings/<topic>.md
方法:...
需要變更的檔案:[列表]
測試:...
回退方案:...

3. 核准

向使用者顯示計劃。在使用者確認之前不要開始撰寫程式碼。對於非常小的單一檔案編輯,自動核准機制可能會讓你通過。

4. 實作與驗證

建立計劃、執行測試、執行 harness bench --quick,然後執行 harness memory sync,以便下次工作階段記住哪些方法有效。

備註

  • 如果研究結果已經存在,不要重新做。
  • 從檔案中讀取事實,不要猜測。如果發現的內容與你預期的矛盾,請明確指出並信任檔案內容。
  • 完成後,根據實際有效的做法更新研究結果。

不要這樣做

  • 在 read 或 grep 之前進行 edit
  • 猜測 API 簽章
  • 因為「這個改動很小」而跳過計劃,但實際上你會觸及 3 個以上的檔案

Individual skills in this repo

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

相關技能