第一步:生成需求文檔 (Requirements):首先,Kiro會(huì)生成一份詳細(xì)的需求文檔,清晰定義用戶故事和驗(yàn)收標(biāo)準(zhǔn)。上圖中,我讓他開(kāi)發(fā)一個(gè)內(nèi)容聚合網(wǎng)站,它提到要有添加和管理新聞源的功能。如果發(fā)現(xiàn)不完善或者錯(cuò)誤的部分,也可以直接修改。
第二步:生成設(shè)計(jì)文檔 (Design):基于需求,Kiro會(huì)創(chuàng)建包含API接口、數(shù)據(jù)庫(kù)結(jié)構(gòu)、技術(shù)架構(gòu)等細(xì)節(jié)的設(shè)計(jì)文檔。這里提到,前端要用React,后端用Node.Js,會(huì)規(guī)劃很多技術(shù)細(xì)節(jié)。
第三步:生成任務(wù)列表 (Todo List):隨后,它會(huì)將設(shè)計(jì)方案拆解成一個(gè)個(gè)具體的、可執(zhí)行的開(kāi)發(fā)任務(wù)。確認(rèn)沒(méi)問(wèn)題之后,模型會(huì)自動(dòng)完成開(kāi)發(fā)和測(cè)試,通過(guò)測(cè)試之后會(huì)在這里顯示任務(wù)已完成,如果有問(wèn)題也會(huì)自動(dòng)修復(fù)。
在整個(gè)開(kāi)發(fā)過(guò)程中,每一個(gè)環(huán)節(jié)的輸出都清晰可見(jiàn)。開(kāi)發(fā)者可以隨時(shí)在右側(cè)的模型對(duì)話框中與Claude模型交互,審查、修改、確認(rèn)、回退每一步的進(jìn)展,所見(jiàn)即所得,能確保AI的每一步行動(dòng)都按預(yù)想和規(guī)劃的來(lái)。
最重要的是,在開(kāi)發(fā)過(guò)程中Kiro會(huì)通過(guò)規(guī)范的文檔自動(dòng)記錄中間過(guò)程,這樣可以避免因?yàn)榻换ミ^(guò)程過(guò)長(zhǎng),模型可能遺忘需求的問(wèn)題,也可以在很長(zhǎng)的時(shí)間跨度后,繼續(xù)開(kāi)發(fā)此前已經(jīng)在開(kāi)發(fā)的項(xiàng)目。
這種更透明、更可控的流程,讓開(kāi)發(fā)者從被動(dòng)的結(jié)果接收者變?yōu)榱酥鲃?dòng)的過(guò)程掌控者,讓AI開(kāi)發(fā)變成真正變成生產(chǎn)力。
Kiro還將一些最佳工程最佳實(shí)踐融入AI開(kāi)發(fā)
Kiro作為一個(gè)基于VSCodium(VS Code開(kāi)源版)的IDE,亞馬遜云科技為它集成了一系列可以提升開(kāi)發(fā)效率,提高代碼質(zhì)量的實(shí)用功能。
第一個(gè)叫Agent Steering(智能體指令規(guī)范)
它可以對(duì)編程智能體的行為進(jìn)行規(guī)則指引。比如,一些企業(yè)要求使用統(tǒng)一的命名規(guī)則,要使用某些開(kāi)發(fā)語(yǔ)言、類庫(kù),或者對(duì)安全和性能方面有一些要求。它在開(kāi)發(fā)過(guò)程中能時(shí)刻注意到這些開(kāi)發(fā)規(guī)范,然后開(kāi)發(fā)出更統(tǒng)一和規(guī)范的代碼。
這些規(guī)則不需要手動(dòng)創(chuàng)建。開(kāi)發(fā)者可以打開(kāi)已有項(xiàng)目,點(diǎn)擊生成Agent Steering,就會(huì)根據(jù)已有代碼自動(dòng)創(chuàng)建這些指引規(guī)則。生成的Product概覽、Structure結(jié)構(gòu)與Tag標(biāo)簽三個(gè)文件,不僅能規(guī)范后續(xù)開(kāi)發(fā),也能讓新加入的開(kāi)發(fā)者快速熟悉項(xiàng)目。很實(shí)用吧!
第二個(gè),它集成了MCP來(lái)擴(kuò)展能力邊界
SPEC規(guī)范編程某種程度上也算是基于文檔的編程。為了放大這一優(yōu)勢(shì),它支持MCP來(lái)擴(kuò)展能力。比如,可以連接到Jira等外部項(xiàng)目管理系統(tǒng),自動(dòng)拉取用戶故事,并將其轉(zhuǎn)化為結(jié)構(gòu)化的需求、設(shè)計(jì)文檔和任務(wù)列表。
第三個(gè),Agent Hooks可以自動(dòng)化瑣碎的規(guī)定動(dòng)作
在軟件開(kāi)發(fā)中,有大量重復(fù)且容易遺漏的工作。比如,更新完源代碼之后還必須要更新技術(shù)文檔。絕大部分開(kāi)發(fā)者不情愿做的事情,Kiro的“Hooks”(鉤子)都可以自動(dòng)將這些操作老老實(shí)實(shí)的完成。
設(shè)定規(guī)則后,一些目錄下的源代碼發(fā)生變動(dòng),就自動(dòng)為其生成單元測(cè)試,或者當(dāng)國(guó)際化項(xiàng)目/locales目錄下的語(yǔ)言文件被修改時(shí),自動(dòng)觸發(fā)翻譯流程。
此外,利用這個(gè)Hooks鉤子功能,開(kāi)發(fā)者還可以自動(dòng)Review代碼,也能用它來(lái)自動(dòng)生成單元測(cè)試,這些重復(fù)性高的瑣碎功能都能交給Hooks鉤子來(lái)實(shí)現(xiàn)。
這種機(jī)制將開(kāi)發(fā)者從繁瑣的重復(fù)勞動(dòng)中解放出來(lái),開(kāi)發(fā)者怎能不愛(ài)?
Kiro,是真正有生產(chǎn)力的開(kāi)發(fā)工具
Kiro作為一個(gè)原生構(gòu)建的IDE,提供了更深度、更一體化的體驗(yàn)。它將亞馬遜多年積累的龐大軟件開(kāi)發(fā)實(shí)踐經(jīng)驗(yàn)沉淀下來(lái),用AI的方式重新封裝,可以解決開(kāi)發(fā)中最核心的工程化問(wèn)題。
Kiro通過(guò)“規(guī)范驅(qū)動(dòng)”的核心理念,解決了AI開(kāi)發(fā)的確定性和可控性難題,讓AI真正成為開(kāi)發(fā)者在構(gòu)建生產(chǎn)級(jí)應(yīng)用時(shí)值得信賴的、高效的合作伙伴。對(duì)于追求更高開(kāi)發(fā)效率和最終產(chǎn)品質(zhì)量的團(tuán)隊(duì)而言,Kiro無(wú)疑提供了一個(gè)好的答案。
目前美中不足的是,由于慕名前來(lái)的開(kāi)發(fā)者太多,Kiro已經(jīng)開(kāi)啟了排隊(duì)模式,最早下載登錄Kiro的用戶已經(jīng)美美的用上了。
有意思的是,亞馬遜官方也很大氣,目前的預(yù)覽版Kiro不僅支持免費(fèi)試用,而且不用配置網(wǎng)絡(luò)環(huán)境,立馬就能跟最強(qiáng)編程大模型Claude暢聊。實(shí)在是找不到續(xù)費(fèi)別的AI編程工具的理由了。