高鐵上2小時(shí)寫完2萬行代碼?作者親測(cè)把ClaudeCode當(dāng)「命令行搭子」:5步流程(項(xiàng)目記憶→PRD→計(jì)劃→編碼→測(cè)試)讓bug減半、效率翻倍,并附指令速查表,小白也能10分鐘上手。
這兩天去上海參加飛書的未來無限大會(huì),為了讓路上的時(shí)間過的快一點(diǎn),我就一直在用claudecode寫代碼。
正好最近把claudecode的使用邏輯重新梳理了一下,終于能夠跟它一起高效作業(yè)了。
這次在高鐵上我就是用兩個(gè)claudecode一起干活,效率比我之前用cursor+claudecode混合開發(fā)提升了一倍以上,“提示詞管理助手”2.0版本的開發(fā)還算順利,預(yù)計(jì)下周就可以正式發(fā)布出來了。
這兩天有很多朋友問我claudecode怎么用,正好我用“提示詞管理助手”2.0版本開發(fā)的案例,跟大家分享一下我和claudecoding協(xié)作的方法論,如何讓claudecode成為高效開發(fā)的AI搭子。
之前用cursor做AI編程的時(shí)候,整體流程是以下三步:1.寫prd文檔,方便AI了解這次要開發(fā)的所有內(nèi)容2.AI寫代碼,基于prd文檔和AI一起肝這次開發(fā)的內(nèi)容(主要是點(diǎn)擊accept)3.測(cè)試反饋,把AI開發(fā)完的產(chǎn)品測(cè)試反饋問題給它,讓它進(jìn)行修復(fù)
用這個(gè)流程做產(chǎn)品開發(fā)在寫些腳本和代碼量低的時(shí)候其實(shí)是很舒服的,AI一會(huì)就把產(chǎn)品給你搞出來了,而且效果還非常不錯(cuò)。
我在剛開始做提示詞管理助手的時(shí)候,也就叨咕了1個(gè)多小時(shí)就把第一版做出來了,AI在低代碼量狀態(tài)下開發(fā)是很快的。
但項(xiàng)目一旦變大,AI寫代碼的bug率就大大提升了,我分析下來主要原因在于:AI壓根不了解你的項(xiàng)目,它是真的“干中學(xué)”。
這就好比我們找一個(gè)程序員來幫我們優(yōu)化已有的代碼,它不去了解這個(gè)代碼倉到底是什么,不了解每一個(gè)文件存放的位置,它拿到一個(gè)需求后立馬開始準(zhǔn)備干活。
那代碼質(zhì)量能用才怪。。。
因此我在cursor中開發(fā)都是先讓AI定位本次需求涉及的文件,然后基于這些文件讓它做功能升級(jí)或者迭代,這樣稍微的把cursor寫代碼的故障率降了一下。
就是有點(diǎn)廢人,人得隨時(shí)盯著所有的項(xiàng)目,AI也不能自主進(jìn)行作業(yè),要么bug真的飆到滿天飛。
那到了和claudecode協(xié)作干活的時(shí)候,得益于它自身的功能升級(jí),我把流程升級(jí)了一下:
1.讓AI寫項(xiàng)目文檔,claude.md文檔是它全局的記憶,寫好了AI對(duì)項(xiàng)目的理解整個(gè)開發(fā)過程都在,不會(huì)丟
2.寫prd文檔,方便AI了解這次要開發(fā)的所有內(nèi)容
3.做具體的開發(fā)計(jì)劃,精確到要優(yōu)化哪些文檔,本次優(yōu)化分幾個(gè)階段
4.AI寫代碼,基于prd文檔和AI一起肝這次開發(fā)的內(nèi)容
5.測(cè)試反饋,把AI開發(fā)完的產(chǎn)品測(cè)試反饋問題給它,讓它進(jìn)行修復(fù)
主要是加了項(xiàng)目文檔和開發(fā)計(jì)劃兩個(gè)流程,目的都是為了給AI更多的上下文信息,從而降低AI寫代碼的bug率。
接下來我通過“提示詞管理助手”的案例給大家演示這套流程的開發(fā)效果,帶大家一步步跑一遍,看看如何用claudecode高效干活。
為了方便大家更好地理解ClaudeCode中用到的指令,我和AI一起整理了一份ClaudeCode指令速查寶典(https://t16jzwqrzjx.feishu.cn/wiki/E4Rbw3vpBikNLbknNKOc7GtYnqd?from=from_copylink),把常用指令的含義都做了解釋,它可以幫助你快速了解claudecode各種指令的含義。
第一步:讓AI寫項(xiàng)目文檔
進(jìn)入項(xiàng)目第一步就是讓AI寫項(xiàng)目文件,這里用到的是/init指令,只需要確認(rèn)它會(huì)自己去瀏覽項(xiàng)目然后生成一個(gè)claude.md的文檔。
我給大家抽取一個(gè)模塊看看claude.md梳理的多么細(xì),它會(huì)把你的核心架構(gòu)都拆解好記錄下來,它知道每一個(gè)文件夾的作用和存放位置。
claude.md文檔是全局中claudecode都會(huì)應(yīng)用的,相當(dāng)于cursor的系統(tǒng)規(guī)則一樣。
它的作用是給AI更多的上下文,讓AI更好的了解項(xiàng)目進(jìn)行項(xiàng)目開發(fā)。
/init不僅僅只是初始化用的,每次完成一個(gè)版本迭代后,也可以運(yùn)行/init,這個(gè)時(shí)候它會(huì)自動(dòng)更新claude.md文檔,把開發(fā)的內(nèi)容加進(jìn)來。
我自己的開發(fā)習(xí)慣是:每完成一個(gè)版本的開發(fā),做一次GitHub的保存,然后運(yùn)行一次/init。
第二步:寫prd文檔
第二步就是寫prd文檔,這塊之前在“小白AI編程指南”里列舉了提示詞和案例,在這個(gè)文章中我就不展開講了。
在這里主要跟大家分享一下,如何和claudecode高效的討論需求。
通過建立claude.md文檔,讓claudecode對(duì)項(xiàng)目十分了解,它已經(jīng)知道了我這個(gè)項(xiàng)目的核心邏輯、文件結(jié)構(gòu)、模塊功能,和它討論是一件十分高效的事情。
紅色部分是我提出的需求,我們可以看到AI是基于claude.md文檔,然后去閱讀整體系統(tǒng),最后給到我一個(gè)它自己的思考,這種討論會(huì)非常符合真正的開發(fā)場(chǎng)景,能夠很快的落地下去。
它先給我潑了一盆冷水,然后又給到我三套不同的漸進(jìn)式方案;最后它自己思考了一會(huì)告訴我建議從方案1開始,并且給到我詳細(xì)的邏輯和原因。
Claudecode在討論需求能夠得到這么好的效果,對(duì)項(xiàng)目的理解起著至關(guān)重要的作用。
第三步:做具體的開發(fā)計(jì)劃
第三步就是和claudecode一起制定計(jì)劃,在這里我們要先講一下claudecode的三種作業(yè)模式。
Claudecode支持三種作業(yè)模式,分別是default(默認(rèn)模式)、plan(計(jì)劃模式)、Auto-accept(干活模式),剛才我和claudecode的對(duì)話是默認(rèn)模式,只需要按住shift+tab即可進(jìn)行模式的切換。
左下角顯示plan就代表切換到計(jì)劃模式了,讓我們沿著剛才的方案1來做個(gè)開發(fā)計(jì)劃。
Claudecode做計(jì)劃的第一步依舊是去看代碼,詳細(xì)的了解已有代碼庫到底是什么樣的。
然后它會(huì)給到用戶一個(gè)詳細(xì)的自己計(jì)劃開發(fā)這個(gè)需求的計(jì)劃。
看到這份計(jì)劃我就充滿了信心,最起碼AI把每一塊都想到了,那它干活的效果自然會(huì)很好。
這里如果想接受計(jì)劃就選擇yes,不想接受就選擇no,繼續(xù)討論計(jì)劃就行了。
第四步:AI寫代碼
在確認(rèn)了計(jì)劃之后就進(jìn)入了第四步,讓AI干活進(jìn)行寫代碼,這個(gè)環(huán)節(jié)我們就可以直接掛機(jī)了,等著AI寫完了切回來看看就行了。
這塊連accept都不用點(diǎn)了,AI會(huì)自己全部干完,人類只需要測(cè)試反饋。
第五步:測(cè)試反饋問題
第五步就是測(cè)試反饋問題,這塊有一個(gè)需要注意的點(diǎn)是,因?yàn)閏laudecode用的是命令行工具,我們沒法貼圖進(jìn)來。
所以截圖需要我們先保存到文件夾里,然后再通過@這個(gè)圖片名稱,才能給claudecode反饋bug,稍微麻煩一點(diǎn)點(diǎn)。
這五步看完了,想必大家應(yīng)該能夠理解,為啥我說用claudecode能夠把編程效率提升了一倍。
Claudecode給予了AI更多的上下文,基于這項(xiàng)能力,我優(yōu)化了自己和AI協(xié)作的流程,從而完成效率的提升。
和AI的協(xié)作能力,是毋庸置疑AI浪潮下最重要的事情。
跟大家聊了這么多claudecode提升效率的事情,我想在文章最后跟大家聊一點(diǎn)關(guān)于使用claudecode的恐懼問題。
最近很多朋友被我?guī)У娜ビ胏laudecode,他們其實(shí)跟我在用claudecode之前都有一個(gè)問題,它是一個(gè)命令行工具,我真的能夠用明白嗎?
Claudecode剛出來的時(shí)候,白術(shù)跟我興沖沖的分享,他和小排老師都很快用上了claudecode寫點(diǎn),我當(dāng)時(shí)第一反應(yīng)是,這是個(gè)命令行工具,我可能用不明白。
所以我過了一個(gè)多月才真正去用claudecode,我也很害怕去體驗(yàn)一個(gè)新產(chǎn)品。
用過之后才發(fā)現(xiàn),這不就是個(gè)命令行版的chatbot嘛,它和網(wǎng)頁版claude最大的區(qū)別就是它放在了終端里。
我們忘掉所有的指令,忘掉命令行這個(gè)事情,會(huì)發(fā)現(xiàn)它就是一個(gè)聊天機(jī)器人,只不過這個(gè)聊天機(jī)器人可以寫代碼,功能更多更強(qiáng)大而已。
當(dāng)我跟大家說這是個(gè)命令行工具時(shí),大家天然很抗拒;但我們把它當(dāng)作chatbot來看待的時(shí)候,大家就都樂意去上手體驗(yàn)一下,覺得蠻好玩的。
所以我想,你不要把它當(dāng)作一個(gè)非常專業(yè)的程序員開發(fā)者工具去對(duì)待,你就把它當(dāng)大號(hào)的豆包AI編程就行了。
最后我想說:別把ClaudeCode想得太復(fù)雜,也別先把自己擋在門外。
黃歷中的“黃道吉日”是什么意思?
天牢黑道,鎮(zhèn)神星,陰人用事皆吉,其余都不利|——。玄武:內(nèi)小人盜賊暗害--。玄武黑道,天獄星,君子用之吉,小人用之兇,忌詞訟博戲_。勾陳:口舌牽連。勾陳黑道,地獄星,此時(shí)所作一切事,有始無終,先喜后悲,不利攸往;起造安葬,犯此不利。十二神煞有兇有吉,所主事物不同,所以在選吉日的時(shí)候要“以事為經(jīng),以神為緯”。選擇吉日要因事而起,根據(jù)所辦事情 有網(wǎng)友表示,不收就不收,還陰人家,什么叫了解到對(duì)方真實(shí)數(shù)據(jù),沒有操守!另一位網(wǎng)友表示,喜茶CEO能說這話,那我就徹底、完全、堅(jiān)決放棄喝喜茶——。還有網(wǎng)友表示,不買就算了,摸了人家的底,看了人家的商業(yè)數(shù)據(jù),就說這樣的話,不太地道吧||。有著名財(cái)經(jīng)大V都表示,(喜茶聶云宸這不是)相親完,公開在村里說女好了吧!民間故事:老財(cái)主六十壽終,走陰人卻說他還能活三年,判官:沒錯(cuò)