工程師的鋼鐵人裝甲:GitHub Copilot、Cursor、Cline 的推薦用法

文章目錄(9 節)

適合對象

先簡單介紹一下我的背景,讓大家可以判斷這篇文章是否適合你。我程式開發經驗約 10 年,主要使用 JavaScript 進行前後端開發,也使用 Flutter 開發 Android 和 iOS APP。

這篇文章適合:

正在研究各家 AI 輔助開發的工程師

想了解哪款工具適合。

有一定經驗的工程師

分享我的做法給你參考,或者你也可以給我反饋。

工具總覽與版本資訊(2025/02/12)

因為工具迭代速度很快,可能下個月這篇就沒用了QQ,先提供簡單整理以及我目前使用的版本

IDEAI 輔助工具訂閱方案與價格我主要使用的模型版本資訊
VS Code insider Free 版本1.98.0-insider (Universal)
 GitHub Copilot月付 10 美金Claude 3.5 Sonnet版本1.270.1372
 Cline按使用量付費或利用 Copilot API 免費使用Claude 3.5 Sonnet
偶爾試試o3-mini or o1
版本3.3.1
CursorCursor月付 20 美金( 500 次 高級 API 次數)Claude 3.5 Sonnet版本0.45.11

各家工具的功能與價格可能隨時更新,請以官方最新資訊為準。

先說結論:我的工作流

  • 主力開發、功能複雜時主要使用 Cursor,但要注意一個月 API 500 次的限制。
  • 修 Bug 或小調整時 → 用 Cline,利用 Copilot API 省下 Cursor 的使用次數。
  • 如果 Cline 也達到 Copilot API 限制等下一個可用時段,或者乾脆休息一下
  • 每完成一個小功能 → 打開 VS Code Insider,用 Copilot 生成 commit log 上去。

如果想知道 Copilot API 何時可用 → 在 VS Code 裡隨便呼叫一次 Copilot,它會告訴你解鎖時間。

GitHub Copilot:CP 值的代言人

AI 輔助開發啟蒙

我最早使用 GitHub Copilot,它剛推出時的 自動補全功能 就像工業革命一樣,讓開發效率瞬間提升。

隨著功能的更新,我開始用 Copilot 來問問題、讓它產生程式碼,然後複製貼上,掌握了和 AI 提需求的技巧後,我幾乎沒再上過 stackOverflow 查資料。

此時工程師們的日常已經改變:

以前

從網路上 Google 然後複製貼上

現在

變成問 Copilot 然後複製貼上

沒想到 Copilot Edit 出來後就連複製貼上都懶了…

Copilot Edit

這個功能你只需要描述需求,Copilot 就會根據完整的程式碼上下文,快速在多個檔案中修改,然後你就是檢查、審核修改、通過修改,不用再複製貼上,感覺很像在給 AI 做 code review

Github Copilot Edit 介面
Github Copilot Edit 介面

Copilot Edit vs. Cursor Composer

如果你不太清楚各家功能的名字,你可以這樣記

Github Copilot 的 Edit = Cursor 的 Composer = Cline

Cursor 的 Composer 其實比較早出來,Composer 推出後我就有試用了,體驗完後忍了兩個禮拜試用(那時候試用還有 500 次 API 次數,超佛),試用完就刷卡了,爽了一陣子都快要考慮把 Github Copilot 訂閱停了,Copilot Edit 就推出了。

但這裡有一個很大的問題:Copilot Edit 的速度非常慢

cursor的composer介面
cursor的composer介面

當你要修改某段程式碼時:

重新生成整個檔案

Copilot Edit 的做法像是 重新生成整個檔案,所以如果這個檔案很長,你就會等超久。

只生成要改的部分

Cursor Composer 的做法是 只生成需要修改的部分,然後去比對你的檔案然後修改,這樣的速度快很多。

先試 diff,失敗才重寫

Cline 也有類似的機制,速度和 Cursor 差不多,他會說他要用 replace_in_file 工具來修改檔案,但有時他會有 bug,replace_in_file 工具會失效,我感覺是要修改的檔案經過編輯,和它暫存的檔案內容不同,此時已經無法用程式去比對,這時他就會說他要用 write_to_file 工具,那就是又從頭生成程式碼,然後再寫入檔案,就會很慢,而且要是生成的程式碼太長,還會失敗,失敗後他又從頭生成又太長失敗,一直看他鬼打牆,如果是 call api 的話,錢包就會哭

Cline 跳出 Diff Edit Failed 的錯誤提示
Cline 的 replace_in_file 對不上檔案時就會跳這個,然後重試
三家改檔案的機制對照 同樣是修改一段程式碼:Copilot Edit 重新生成整個檔案,檔案越長等越久;Cursor Composer 只生成需要修改的部分,比對後再改,速度快很多;Cline 用 replace_in_file,工具失效時退回 write_to_file 從頭生成,太長就失敗,然後一直鬼打牆。 一直鬼打牆 要修改一段程式碼 Copilot Edit 重新生成整個檔案 速度非常慢 檔案越長、等越久 Cursor Composer 只生成需要修改的部分 速度快很多 比對你的檔案然後修改 Cline replace_in_file 工具失效就退回 write_to_file

左右滑動看完整內容

同樣一個修改需求,三家的做法不同,快慢差別就在這裡

所以如果是要快速修改一段程式碼,Cursor 快又舒服,Cline 不要太難的工作體驗和 Cursor 差不多,兩個都比 Copilot 好,不過這個功能也不是多難的事,相信很快 Copilot 也會有這個功能。

還有一個 Roo code

補充:我的大大朋友說,近期又有一個新的工具 Roo code,看起來是從 Cline 分支出來的,在處理大型或複雜修改上表現得更為穩定,我還沒用過(快要學不動了)有興趣的朋友可以關注相關動態。

Git Commit Message 自動生成

Copilot 也是有別家沒有的優勢,他有 Git 版控提交(commit message)自動生成 的功能。這點在 Cursor 上也有,不過 Copilot 可以自訂 Prompt 指令

VS Code 原始檔控制面板上的 commit message 自動生成按鈕
VS Code 原始檔控制面板,訊息欄右邊那顆星星就是自動生成

為什麼這很重要?

如果你希望 commit 訊息更清楚、有結構,讓團隊更容易理解每次變更,可以參考這個網站Conventional Commits ,這是一個 commit 的規範文件,你可以把這個標準 直接寫進 Copilot 的 Prompt 指令裡,讓它每次產生的 commit 描述都符合規範。這對於團隊開發、版本管理來說是一個很棒的提升,而我們也不用再去背 commit 規範,不然每次都亂寫。

Cursor:開發體驗最佳,但有使用次數限制

當我開始使用 Cursor,最讓我驚艷的是 Composer 功能,因為它能夠 自動處理多個檔案的修改,不需要我手動複製貼上,這大幅減少了開發過程中的「手工活」。

Cursor 的自動補全:比 Copilot 更「懂」你在幹嘛

相較於 Copilot 透過「預測」來補全程式碼,Cursor 更像是「理解」我現在的開發情境,並主動提供相關建議。例如在調整 UI 時:

痛點:一次要改一堆小地方

當我修改樣式時,我通常會直接手動調整,因為畫面可以馬上看到變化。但如果是一次要調整一堆小地方,可能需要同時修改多個地方(例如 class、margin、padding),然後其實又懶得跟 AI 說清楚。

Cursor:自動推測,按 Tab 就好

在這種情境下,Cursor 會自動推測出哪些地方應該一起修改,並主動彈出推薦補全,我只需要按下 Tab 就能一次性修改所有相關內容。

Cursor 訂閱方案的使用次數限制

Cursor 的訂閱方案是 每月 20 美元,包含 500 次 API 使用額度。我有時候 半個月就用完了

Cursor 設定頁的用量統計
Cursor 設定頁的用量統計,高級模型額度用掉多少一眼就知道

我的解法是:

主力開發 → Cursor

如果是主力開發、較複雜的功能,就優先用 Cursor。

修 Bug、小調整 → Cline

如果只是修 Bug、調整小功能,就用 Cline,因為 Cline 現在可以 免費使用 Copilot API(後面會講)。

Cline:體驗絲滑,現在還能用 Copilot API!

Cline 是我一個大大朋友推薦的,基於大大推薦,我也是馬上試用。他有一個部分,我不知道算不算缺點:他沒有自動補全功能,不過我真的覺得沒有那麼嚴重,反正你叫 AI 補也是一樣。

不過如果你是使用 Github Copilot + Cline的方案(下面會提到),你就能使用到 Github Copilot 的自動補全功能,不然你也可以用 continue.dev 來做自動補全,也是免費

VS Code 延伸模組市集裡的 Cline
VS Code 延伸模組市集裡的 Cline,衍生的分支版本也一大排

最早使用 Cline 時,它的特點:

VS Code Extension

它是一個 VS Code Extension,不像 Cursor 需要獨立安裝,有些人就是不想再安裝應用程式。

自己選模型 Provider

可以自己選擇 AI 模型的 provider(例如 OpenAI、anthropic、甚至本地端的 AI 模型)。

使用者付費,錢包會哭

但缺點是使用者付費,根據你呼叫的 API 次數你自行付費。Cline 還會在每次你呼叫的任務上告訴你花了多少摳摳,因為是依使用量付費,所以我也不知道會花多少錢,所以我就註冊了 anthropic 帳號,想說那我就 Claude 3.5 Sonnet 爽爽用,結果第一個月還沒結束我就花了 30鎂,比 Cursor + Copilot 加起來還貴!我就乖乖回去用 Cursor 的 Claude 3.5 Sonnet 了。

Cline 顯示單次 API Request 花費 0.1319 美金
問個問題就花了 NT 3 元

Cline 最新功能:免費使用 Copilot API

不過,Cline 最近推出了一個新的功能,讓它又復活了。它現在可以:

接 VS Code LM API Provider

使用 VS Code LM API Provider,等於說你只要有訂閱 GitHub Copilot,就可以用 Cline 來呼叫 GitHub Copilot 的模型額度,Claude 3.5 Sonnet、o1、o3-mini 都能用。

不用另外付 API 的錢

這樣一來,就不用額外付 API 的錢,但是 GitHub Copilot 也是有使用限制。不過如果達到使用限制,我就跳回去 Cursor,等一下就能繼續用 Cline 了。

體驗還比原生的好

等於用 GitHub Copilot API,但體驗比 GitHub Copilot 還好(體驗更絲滑、產生速度更快)。

Cline 設定裡把 API Provider 選成 VS Code LM API
Cline 設定裡把 API Provider 選成 VS Code LM API,模型選 copilot - claude-3.5-sonnet

Cline 的自動修復功能(但要小心 API 使用量)

Cline 另一個有趣的功能是你可以 Auto-approve 檔案讀取、編輯等操作,它的運作方式就像是:

  1. 你下指令

    你輸入一個指令,讓 AI 生成程式碼,編輯你的檔案,然後自動存檔。

  2. 它自己檢查

    它會自動檢查存檔的檔案的結果,如果發現問題,會自動再呼叫 API 修正,再存檔。

  3. 重複到它覺得可以

    這個過程可能會重複多次,直到 AI 覺得沒問題了。

這功能聽起來很強,但有個問題:

額度一下子就燒光

每一次修正都會額外呼叫 API,所以如果 Cline 在背景一直自動檢查、修復,可能一下子就用掉大量的 API 額度。如果 Copilot API 使用額度滿了,你就得等下一個時段才能繼續用。

它不會一次修到位

Cline 不會一次修到位,它通常會分步驟或拆分細節去處理。順利的話他在跑,你去泡個咖啡回來就好了;不順利的話會一直鬼打牆,刪了剛剛修的,又修成剛剛被刪的。

保護荷包

在 Cline 設定中調整 max_request 參數,確保 API 請求不會超過上限,避免連續調用導致額度耗盡

Cline 設定中的 Max Requests 欄位
Cline 設定裡的 Max Requests,把自動連續呼叫的次數壓住

回到一開始,我的工作流:

  1. 主力開發、功能複雜時

    主要使用 Cursor,但要注意一個月 API 500 次的限制。

  2. 修 Bug 或小調整時

    → 用 Cline,利用 Copilot API 省下 Cursor 的使用次數。

  3. 如果 Cline 也達到 Copilot API 限制

    等下一個可用時段,或者乾脆休息一下

    如果想知道 Copilot API 何時可用 → 在 VS Code 裡隨便呼叫一次 Copilot,它會告訴你解鎖時間。

  4. 每完成一個小功能

    → 打開 VS Code Insider,用 Copilot 生成 commit log 上去。

三個工具的分工工作流 開工後先判斷任務屬於哪一類:功能複雜的主力開發走 Cursor,一個月有 500 次 API 額度;修 Bug、小調整走 Cline,借用 GitHub Copilot 的 API 免費使用。Cline 的額度也滿了就等下一個可用時段或休息一下,解鎖後再回到 Cline。兩條路徑每完成一個小功能,都回到 VS Code Insider 用 Copilot 生成 commit log。 功能複雜 修 Bug、小調整 額度也滿了 解鎖後再回來 完成一個小功能 開工 任務屬於哪一類? Cursor 開發體驗最佳 一個月 500 次 API 額度 Cline 借用 Copilot API 免費 省下 Cursor 的次數 等下一個可用時段 或者乾脆休息一下 VS Code Insider + Copilot 生成 commit log 上去

左右滑動看完整內容

三個工具怎麼分工:複雜的給 Cursor、零碎的給 Cline、commit 交給 Copilot

真心推薦

這套組合拳的成本

這套組合拳的成本 = Cursor 20鎂 + Github Copilot 10鎂

如果你還沒體驗過,Github Copilot + Cline 你可以先試試,本篇我沒有說太多如何使用 AI 的技巧,如果你想知道基本操作技巧,推薦 Will 保哥的課程《GitHub Copilot 進階開發實戰

也在此感謝我的大大朋友 Wayne Wang,分享給我這些工具資訊

我的預設 Prompt 設定

以下是我預設給 AI 的 Prompt ,供大家參考,也歡迎分享你的指令給我

我的預設 Prompt 指令 英文為主的行為規範,最後兩條指定加註解與繁體中文
DO NOT GIVE ME HIGH LEVEL SHIT, IF I ASK FOR FIX OR EXPLANATION, I WANT ACTUAL CODE OR EXPLANATION!!! I DON'T WANT "Here's how you can blablabla"
- Be casual unless otherwise specified
- Be terse
- Suggest solutions that I didn't think about—anticipate my needs
- Treat me as an expert
- Be accurate and thorough
- Give the answer immediately. Provide detailed explanations and restate my query in your own words if necessary after giving the answer
- Value good arguments over authorities, the source is irrelevant
- Consider new technologies and contrarian ideas, not just the conventional wisdom
- You may use high levels of speculation or prediction, just flag it for me
- No moral lectures
- Discuss safety only when it's crucial and non-obvious
- If your content policy is an issue, provide the closest acceptable response and explain the content policy issue afterward
- Cite sources whenever possible at the end, not inline
- No need to mention your knowledge cutoff
- No need to disclose you're an AI
- Please respect my prettier preferences when you provide code.
- Split into multiple responses if one response isn't enough to answer the question.
- 替生成的程式碼加上註解方便閱讀理解
- Always respond in 繁體中文

留言