?? 在 Trae 中復(fù)刻 Kiro Spec 體驗(yàn):Spec 驅(qū)動(dòng)開發(fā)的初步實(shí)踐
你是否體驗(yàn)過 Kiro Spec?那種“思考先行,編碼在后”的流暢編程體驗(yàn)?
在 AI 輔助編程的時(shí)代,我們經(jīng)常遇到的問題不是 AI 寫不出代碼,而是 AI?寫不對(duì)代碼。一旦項(xiàng)目稍微復(fù)雜一點(diǎn),AI 就容易丟失上下文、產(chǎn)生幻覺,或者寫出一堆邏輯不自洽的“屎山”。
核心原因在于:我們跳過了軟件工程中最重要的一環(huán) —— 設(shè)計(jì)。
今天,我想分享如何在?Trae IDE?中,通過一套?Spec-Driven Development (SDD)?trae 規(guī)則提示詞,實(shí)現(xiàn) Kiro 中的 spec 編程體驗(yàn)。這不僅僅是一個(gè)工具,更是一種讓 AI 變身“高級(jí)架構(gòu)師”的開發(fā)范式。
?? 核心理念:Spec-Driven Development (SDD)
在 Kiro spec 模式中,AI 不會(huì)一上來就寫代碼,而是先寫 Spec。在 Trae 中,我們通過?TraeSpec?規(guī)則提示詞,將這一流程標(biāo)準(zhǔn)化為三個(gè)核心步驟:
Requirements (需求):明確“我們要解決什么問題”。
Design (設(shè)計(jì)):規(guī)劃“我們該如何解決”。
Tasks (任務(wù)):拆解“我們需要做哪些具體步驟”。
這看似繁瑣,實(shí)則是磨刀不誤砍柴工。通過這三步,我們?yōu)?AI 構(gòu)建了一個(gè)無比清晰的上下文環(huán)境,讓后續(xù)的編碼變成一種確定性的執(zhí)行,而不是“抽卡式”的嘗試。
??? 準(zhǔn)備工作:一鍵設(shè)置 Trae rules
為了讓這套流程在 Trae 中無縫運(yùn)行,我開發(fā)了一套自動(dòng)化工具?TraeSpec。它能幫你一鍵將 Spec 規(guī)則提示詞注入到任何項(xiàng)目中。
獲取工具與源碼:
你可以從 GitHub 倉庫獲取最新的?TraeSpec?工具包。如果這個(gè)項(xiàng)目對(duì)你有啟發(fā),歡迎點(diǎn)個(gè)?Star??? 支持一下!
GitHub 地址:https://github.com/ylubi/traeSpec
快速開始:下載traeSpec 后,進(jìn)入traeSpec目錄,運(yùn)行腳本?.\trae_spec.ps1?或者?.\trae_spec.sh。
初始化項(xiàng)目規(guī)范:
只需在終端運(yùn)行一條命令,即可讓當(dāng)前項(xiàng)目支持 SDD 開發(fā)流程:
.\trae_spec.ps1 --path .\temp\snakeX

圖1:TraeSpec 工具在終端中運(yùn)行初始化命令
???截圖提示 1:展示在 Trae 終端中運(yùn)行命令,以及運(yùn)行后?.trae/rules/?目錄下生成的?requirements_spec.md?等文件的結(jié)構(gòu)。

圖2:snakeX 項(xiàng)目初始化后的 .trae/rules 目錄結(jié)構(gòu)
?? 實(shí)戰(zhàn)演示:從 0 到 1 的編程體驗(yàn)
讓我們看看在 Trae 中,這套流程是如何運(yùn)轉(zhuǎn)的。
第一步:需求分析 (Requirements)
當(dāng)你告訴 Trae “我想做一個(gè)貪吃蛇游戲”時(shí),它不會(huì)直接給你甩代碼,而是會(huì)根據(jù)?requirements_spec.md?的指引,先生成一份詳細(xì)的?requirements.md。
這份文檔包含:
用戶故事:明確誰在用,用什么功能。
驗(yàn)收標(biāo)準(zhǔn):明確什么樣的功能才算合格(Given-When-Then)。
術(shù)語表:統(tǒng)一項(xiàng)目中的專業(yè)術(shù)語。
體驗(yàn)感受:你會(huì)感覺 AI 真的在聽你說話,并且在幫你梳理思路,甚至指出你沒想到的邊緣情況。

圖3:Trae 根據(jù) requirements_spec.md 生成的需求文檔
???截圖提示 2:展示 Trae 生成的?requirements.md?文件內(nèi)容預(yù)覽。
第二步:系統(tǒng)設(shè)計(jì) (Design)
確認(rèn)需求無誤后(由于不是trae原生功能,可能沒有確認(rèn)過程),Trae 會(huì)讀取?design_spec.md,生成架構(gòu)設(shè)計(jì)文檔?design.md。
這里包含:
架構(gòu)圖:Mermaid 流程圖或 ASCII 架構(gòu)圖。
接口定義:核心類的方法簽名、參數(shù)類型。
數(shù)據(jù)流向:數(shù)據(jù)如何在組件間傳遞。
體驗(yàn)感受:這是最震撼的一步。AI 變身架構(gòu)師,為你規(guī)劃好每一塊積木。此時(shí)還沒寫一行代碼,但你已經(jīng)知道項(xiàng)目長什么樣了。

圖4:Trae 根據(jù) design_spec.md 生成的系統(tǒng)設(shè)計(jì)文檔
???截圖提示 3:展示 Trae 生成的?design.md。
第三步:任務(wù)拆解 (Tasks)
有了設(shè)計(jì)圖,Trae 會(huì)根據(jù)?tasks_spec.md?將工作拆解為一個(gè)個(gè)可執(zhí)行的原子任務(wù),生成?tasks.md。
每個(gè)任務(wù)都有明確的?[ ]?狀態(tài)標(biāo)記。
每個(gè)任務(wù)都關(guān)聯(lián)了具體的?需求編號(hào)。
嚴(yán)格的依賴順序。
體驗(yàn)感受:復(fù)雜的項(xiàng)目瞬間變成了清晰的 To-Do List。你不再焦慮"從哪下手",只需要看著列表一個(gè)個(gè)劃鉤。

圖5:Trae 根據(jù) tasks_spec.md 生成的任務(wù)列表文檔
???截圖提示 4:展示?tasks.md?文件,顯示清晰的任務(wù)列表和?[ ]?狀態(tài)框。
第四步:自動(dòng)化編碼 (Coding)
最后,Trae 開始執(zhí)行任務(wù)。它會(huì)讀取?tasks.md,將狀態(tài)改為?[-]?(進(jìn)行中),寫完代碼后改為?[x]?(已完成)。
最關(guān)鍵的是:因?yàn)橛辛饲叭降匿亯|,AI 寫出的代碼準(zhǔn)確率極高。它知道每個(gè)函數(shù)應(yīng)該叫什么(Design 里定義了),知道要滿足什么條件(Requirements 里寫了)。

圖6:Trae 在編輯代碼的界面,側(cè)邊欄顯示任務(wù)狀態(tài)更新
???截圖提示 5:展示?tasks.md,展示任務(wù)狀態(tài)
?? 總結(jié)
通過在 Trae 中引入這套 Spec-Driven Development 流程,我們獲得的不僅僅是代碼,更是一種掌控感。
不再有幻覺:Spec 就是 AI 的錨點(diǎn)。
不再有屎山:Design 階段已經(jīng)規(guī)避了架構(gòu)風(fēng)險(xiǎn)。
不再有迷茫:Tasks 列表指引著每一步方向。
這就是 Trae + SDD 帶來的極致編程體驗(yàn)。如果你也想體驗(yàn)這種“結(jié)對(duì)編程”的快感,不妨試試將?TraeSpec?引入你的工作流。
?? 參與社區(qū)
TraeSpec?是一個(gè)開源項(xiàng)目,我們歡迎任何形式的貢獻(xiàn):
提交 Issue:如果你在使用中遇到 Bug 或有好的建議。
貢獻(xiàn)代碼:如果你想改進(jìn)現(xiàn)有的 Spec 規(guī)則提示詞或增加新功能。
分享案例:如果你用這套流程做出了酷炫的項(xiàng)目,歡迎在 GitHub Discussion 中分享!
再次感謝你的閱讀,我們 GitHub 見!??
本文由 Trae AI 輔助編寫