聞樂 發(fā)自 凹非寺
量子位 | 公眾號 QbitAI
蘋果開發(fā)者自曝用AI開發(fā)應(yīng)用程序,Claude含量95%
事情是這樣的,一位蘋果開發(fā)者最新發(fā)布了一款用于調(diào)試MCP服務(wù)器的原生macOS應(yīng)用Context
一款幾乎完全由Claude Code構(gòu)建的應(yīng)用程序。
作者indragiek從2008年就開始為Mac開發(fā)軟件。
這次,他的目標是使用Apple的SwiftUI框架,打造一款在macOS平臺上使用起來很順手且實用的開發(fā)者工具。
與以往不同的是,Claude Code承擔(dān)了Context項目95%的工作量,indragiek聲稱:
在這個20000行代碼的項目中,我親手編寫的代碼估計不到1000行。
“工程師”Claude也是好起來了,能給蘋果打工(doge)。
調(diào)侃歸調(diào)侃,下面讓我們來“學(xué)習(xí)”一下這位開發(fā)者是怎么用Claude的。
蘋果開發(fā)者教你“馴服”Claude
作為一名經(jīng)驗豐富的工程師,Indragie像許多同行一樣,擁有一個“爛尾項目”list。
盡管能夠構(gòu)建項目原型,但最后20%的交付工作往往耗費巨大時間和精力,導(dǎo)致項目擱置。
所以,他已經(jīng)6年未能成功發(fā)布任何一個副項目。
在今年2月,他開始嘗試用Claude Code輔助完成項目,不過最后Claude幾乎幫他完成了所有工作。
Claude以“Agent循環(huán)”為開發(fā)核心,僅通過一個簡單的文本框來輸入提示詞,這直接 “取代”了作為VS Code分支的傳統(tǒng)IDE。
在實際開發(fā)過程中,Claude能夠定位并閱讀項目中的現(xiàn)有源代碼、理解代碼風(fēng)格和設(shè)計模式、閱讀提供的額外文檔、生成測試驗證、編譯程序并運行測試,并根據(jù)編譯和測試失敗進行迭代修復(fù)等。
經(jīng)Indragie反饋稱,在Swift和SwiftUI的使用上,Claude在Swift 5.5之前的版本上表現(xiàn)更出色,尤其在是在SwiftUI方面。
它能夠生成準確但可能不夠美觀的UI代碼,但美觀的問題可以通過迭代改善。
就像Indragie提到的那樣,直接在文本框輸入:讓它更美觀。
于是就得到了這樣的效果:
重點來了!
對于Swift Concurrency等重大變化和新舊API的選擇上,Claude有時會“拿捏不準”。
于是Indragie創(chuàng)建一個包含使用現(xiàn)代API基本說明的CLAUDE.md文件,可以讓Claude避免常見的“陷阱”。
Indragie強調(diào)“上下文工程”很重要,他采用了“預(yù)設(shè)Agent”的方法實現(xiàn)Claude的效能最大化。
他發(fā)現(xiàn),雖然模型擁有200k tokens的上下文窗口,但模型的性能會隨著上下文窗口的使用增加而下降,且“壓縮”機制可能導(dǎo)致重要的細節(jié)被丟失。
為此,他采用了“預(yù)設(shè)Agent”的方法,讓Agent預(yù)先閱讀額外的上下文(如 CLAUDE.md文件、特定文檔或源代碼)來提高輸出質(zhì)量。
Claude還需要詳細的需求規(guī)格說明
語音、打字等任何輸入方式都可以,不過Indragie稱自己更喜歡打字~
先打開擴展思考模式是關(guān)鍵!
為了避免Claude盲目地直接進入實現(xiàn)階段而導(dǎo)致結(jié)果質(zhì)量不佳,Indragie會要求Claude先使用其它的擴展思考模式并 “制定計劃”。
通過使用“think”<“think hard”<“think harder”<“ultrathink”等關(guān)鍵詞,可以激活Claude的不同級別擴展思考,其中“ultrathink”消耗的token最多但能產(chǎn)生最佳結(jié)果。
Claude能夠獨立驅(qū)動反饋循環(huán),使其能夠進行更改、測試并收集失敗原因的上下文。
所以,Indragie建議設(shè)置有效的反饋循環(huán)——構(gòu)建、測試、修復(fù)錯誤、修復(fù)用戶體驗。
他使用了XcodeBuildMCP來簡化構(gòu)建和運行應(yīng)用的問題,不過,對于需要用戶交互才會觸發(fā)的Bug或UX問題,仍然需要手動提供日志或截圖。
除了編寫代碼,Indragie還發(fā)現(xiàn)Claude Code作為一個通用模型,能完成的不止編碼任務(wù)。還包括編輯文案、規(guī)劃功能等。
他認為最有用的一個是生成逼真的模擬數(shù)據(jù),這大大加速了UI原型的開發(fā)和功能驗證,尤其在沒有真實數(shù)據(jù)的情況下。
Indragie還發(fā)現(xiàn)構(gòu)建高質(zhì)量的自動化幾乎是
他讓Claude編寫了一個2000行的Python發(fā)布腳本,該腳本能檢查環(huán)境、生成更新日志、生成Sparkle appcast(描述macOS應(yīng)用程序的更新信息的XML文件)、發(fā)布到GitHub并上傳調(diào)試等。
在腳本完成后,他使用了一個簡單的單行提示詞來美化CLI輸出,最終得到了這個效果:
一番教學(xué)之后,Indragie意識到自己使用的主要工具只有兩個:Claude Code和GitHub Desktop。
于是,他認為未來的IDE將會非常不同,源代碼編輯器可能不再是IDE的核心,它們將專注于幫助開發(fā)者預(yù)設(shè)Agent的上下文并設(shè)置對Agent至關(guān)重要的反饋循環(huán)
成功發(fā)布Context應(yīng)用后,Indragie興奮地表示:
對我而言,這個過程中最令人興奮的事情不是我所構(gòu)建的應(yīng)用,而是我現(xiàn)在能夠再次滿足我的編程欲望并發(fā)布精良的副項目。這就像我每天多出了5個小時,而我付出的代價只是每月200美元。
One More Thing
據(jù)Claude Code公布的數(shù)據(jù),自今年2月份上線以來,它已經(jīng)被11.5萬開發(fā)者使用,并且在單周內(nèi)處理了1.95億行代碼。
假設(shè)Claude code是一個初級工程師,這些數(shù)據(jù)意味著它的年收入可達1.3億美元。
1億美元年薪的風(fēng)也算是吹到了Claude~
項目地址:https://github.com/indragiek/Context
[1]https://www.indragie.com/blog/i-shipped-a-macos-app-built-entirely-by-claude-code
[2]https://news.ycombinator.com/item?id=44481286
[3]https://x.com/deedydas/status/1941683553361854710
— 完 —
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.