跳至主要內容
Aurikle
AI與系統Aurikle

JetBrains AI 和 GitHub Copilot 怎麼選

在 JetBrains AI Assistant 與 GitHub Copilot 之間選擇,先看團隊已經打開的編輯器、差異在哪裡審查、指令由誰核准。現行說明裡,Copilot 的 agent mode 已列在 JetBrains IDE,JetBrains 也把 Copilot 寫成 AI Assistant 裡的第三方代理。兩份說明都沒有給出排名,選擇寫在流程上。

目錄
  1. 從已經打開的編輯器寫起
  2. AI Assistant 在 JetBrains IDE 裡做什麼
  3. Copilot 在 JetBrains 裡怎麼接上
  4. Copilot 自己的 agent mode 與 plan mode
  5. 審查、核准與排除檔案
  6. 按流程怎麼選
  7. 什麼時候先不要選
對應服務客製軟件、網站與應用程式閱讀這篇

從已經打開的編輯器寫起

先記下同事日常打開的是哪一個編輯器。對得上這個編輯器的入口才進入短名單:差異留在哪裡審查、終端指令由誰核准、哪些路徑必須排除。三項未寫明,就還不到比較產品的時候。

若團隊已經用 客製軟件、網站與應用程式 的方式交付,工具要能把差異留在既有審查裡。編輯器換了,審查的人與主分支的規則仍是原來那一套。Cursor 與 Copilot 的對照見 Cursor 和 GitHub Copilot 怎麼選,本文只處理已經在用 JetBrains IDE 的團隊,以及 Copilot 跨編輯器的入口。

AI Assistant 在 JetBrains IDE 裡做什麼

現行 About AI Assistant 把 AI Assistant 寫成整合在 JetBrains IDE 裡的一組 AI 功能與程式代理。該頁列出的能力包括:依目前情境問答的 AI Chat、可跨檔處理多步驟任務的程式代理、在編輯器裡依自然語言產生或更新程式以及行內完成與下一處修改建議、解釋程式與重構建議,以及產生文件、單元測試、提交說明與拉取請求摘要。

同一頁列出可安裝的 IDE:CLion、DataGrip、DataSpell、GoLand、IntelliJ IDEA、PhpStorm、PyCharm、Rider、RubyMine、RustRover、WebStorm。該頁並寫明 Android Studio 與 ReSharper 也可使用,但這份說明只涵蓋 JetBrains IDE。啟用方式包括 JetBrains AI 訂閱、自備 API 金鑰、用供應商帳號授權已整合的代理,或安裝外部程式代理。該頁沒有刊登日期,以上依現行說明。頁面上另有選取模型的步驟,本文不比較模型。

Copilot 在 JetBrains 裡怎麼接上

現行 JetBrains 說明中的 GitHub Copilot 把 GitHub Copilot 寫成可在 AI Assistant 中使用的第三方程式代理。啟用只能透過 GitHub 帳號的 OAuth,JetBrains AI 訂閱或自備金鑰不能代替;即使已經在用 JetBrains AI,仍要另外登入 GitHub。該頁寫明它不沿用 AI Assistant 的 `.aiignore`,列在 `.aiignore` 裡的檔案仍可能被 GitHub Copilot 處理;它也不在 Remote Development 工作階段中運作,因為遠端環境無法開啟瀏覽器完成 GitHub 登入。

同一頁寫明,自動情境開啟時,每一則請求附上目前打開的檔案,以及該檔中選取的文字。其他打開的檔案、最近編輯的檔案與更廣的專案情境不會自動附上,要用 `@` 另外附上。操作模式有三種:Agent 可讀寫檔案並執行指令;Plan 為唯讀,先給出結構化計畫再改動;Autopilot 會連續做完多步驟,步驟之間不暫停等人輸入。該頁寫明 Autopilot 管的是步驟之間是否暫停:除非打開 Allow All,即使在 Autopilot,需要權限的動作仍會先請求核准。Allow All 打開後,使用工具、存取路徑或開啟網址都不再逐次詢問;該頁寫明此設定須謹慎,因為代理可在未經核准下動作,可能造成資料遺失或安全問題。關閉時可選 Allow once、Always allow 或 Deny。該頁並寫明,GitHub Copilot 從專案根目錄的 `AGENTS.md` 與 `CLAUDE.md` 讀取指示,這些檔案可以放進版本庫。

Copilot 自己的 agent mode 與 plan mode

現行 在 IDE 中使用 agent mode 寫明:agent mode 接下高層任務,自行決定改哪些檔案、作出編輯,並在需要時執行指令,直到任務完成。你審查變更;預設要先核准指令才會執行。管理員或編輯器設定可以允許部分指令自動執行。該頁寫明可用於 Visual Studio Code、Visual Studio、JetBrains IDE、Xcode 與 Eclipse。若模式選單裡看不到 Agent,可能是企業或組織管理員已對 IDE 關閉 agent mode。同一頁寫明,每一則提示都會消耗 GitHub AI Credits。本文不引用點數單價或方案金額。該頁沒有刊登日期。

現行 在 IDE 中使用 plan mode 寫明:計畫代理用唯讀工具研究任務,在你核准之前不改程式。核准後可以 Start Implementation 轉入 agent mode,或 Open in Editor 把計畫存成 Markdown。該頁寫明可用於 Visual Studio Code、JetBrains IDE、Xcode 與 Eclipse,目前不可用於 Visual Studio。該頁在部分編輯器的說明中註明,plan mode 目前為公開預覽,內容可能變更。

審查、核准與排除檔案

採用前記下三項:差異由誰審查、哪些指令必須停下來等人、哪些路徑即使寫進 `.aiignore` 仍可能被 Copilot 讀到。第三項來自 JetBrains 對 Copilot 的說明:`.aiignore` 對 GitHub Copilot 不生效。秘密與憑證要另有排除做法。目錄怎麼劃,見 AI 程式工具如何接到既有程式庫。

Allow All,以及 GitHub 說明裡「允許部分指令自動執行」,是兩份現行說明中放寬核准的開關。預設保持逐次核准。會安裝依賴、推送遠端、改資料庫或刪檔的指令,不放進自動執行。人核准時要看到完整指令。

按流程怎麼選

團隊日常已經在上述 JetBrains IDE 裡工作,而且審查就在這個 IDE 的差異裡完成:從 AI Assistant 的 Chat、編輯器內協助與程式代理寫起。若要在同一個 IDE 裡改用 GitHub Copilot,按 JetBrains 的說明另外完成 GitHub 登入,並把 `.aiignore` 不生效、Remote Development 無法啟用這兩件事寫進採用紀錄。你實際打開的是 AI Assistant 裡的 Copilot,還是 Copilot Chat 自己的 agent mode,要寫明,因為兩份說明的核准開關不同。

團隊日常在 Visual Studio Code、Visual Studio、Xcode 或 Eclipse:按 GitHub 的 agent mode 說明使用。該頁的清單裡也包括 JetBrains IDE。需要先看計畫再改程式時,plan mode 的頁面寫明 Visual Studio 目前沒有這個模式。本文不把任一組合寫成較優。自動完成與代理怎麼分開用,見 AI 程式代理和自動完成有什麼分別。

什麼時候先不要選

審查人、指令核准與排除目錄都還沒寫明時,先不要把任一代理接到會改主分支的程式庫。先補這三項。只在已經打開的檔案裡改一小段,可以留在編輯器內的完成建議,不必先開代理。

本文不給出速度、缺陷或授權金額的比較。JetBrains 與 GitHub 的上述頁面都沒有刊登日期,引文依現行官方說明。沒有貴司自己的審查紀錄之前,用「編輯器是否就是團隊已經在用的那一個、差異有沒有進審查、指令有沒有按規定核准」來檢查選擇是否在按流程走。

相關筆記