🚀 在 VS Code 中

Copilot 下一步編輯建議 (預覽)

2025 年 2 月 12 日,作者:Brigit MurtaughBurke Holland

我們很高興宣布,在此 Visual Studio Code 版本中,GitHub Copilot 不只推出一項,而是三項預覽功能

  1. 下一步編輯建議
  2. Copilot 編輯的代理人模式
  3. 願景

在這篇文章中,我們將深入探討「下一步編輯建議」,並看看編輯器中 AI 驅動程式碼完成功能的下一個演進。

下一步編輯建議 (NES)

GitHub Copilot 程式碼完成功能 (也稱為幽靈文字) 非常擅長自動完成。使用 GitHub Copilot 最令人驚豔的感受之一,就是當它建議的代码是您腦海中所想的,甚至您還沒要求它。但大多數的程式碼編寫活動都涉及編輯現有程式碼,就像編寫新程式碼一樣多。完成功能也能處理現有程式碼,這是一個自然的下一步。

我們稱之為下一步編輯建議,或簡稱 NES。是的,當我們看到這個縮寫時,也會感到懷舊的遊戲機氛圍。

開始使用 NES

若要開始使用 Copilot NES,請先啟用 VS Code 設定 github.copilot.nextEditSuggestions.enabled

就像完成功能一樣,您只需要開始編寫程式碼,就能開始從 NES 取得建議!

當您看到編輯建議時,請使用 Tab 鍵導覽至該建議,然後再次使用 Tab 鍵接受它。忘記手動搜尋相關檔案或參考。Copilot NES 會持續追蹤您的下一個相關編輯!

裝訂邊中的箭頭表示有可用的編輯建議。將滑鼠游標停留在箭頭上方,以瀏覽編輯建議選單,其中包含鍵盤快速鍵和設定組態

NES gutter menu expanded

已捲動超過該編輯建議?箭頭會提示您下一個編輯建議的位置,並根據您在檔案中的位置向上或向下指向

NES with arrow directions changing

建議可以跨越單一符號、整行或多行,具體取決於潛在變更的範圍。

注意

重新載入 VS Code,讓更新的設定生效。

如果您是 Copilot Business 或 Enterprise 使用者,除了在編輯器中設定 github.copilot.nextEditSuggestions.enabled 之外,貴組織的系統管理員也必須選擇加入使用 Copilot「編輯器預覽功能」。

您可以深入瞭解管理組織中 Copilot 的原則

範例情境

當您進行可能會在整個檔案或專案中連鎖變更時,Copilot NES 是您的 AI 夥伴,您會在各種情境中看到它的優勢。

捕捉和更正錯誤: 錯誤是編寫程式碼的自然組成部分,而 Copilot NES 可以協助捕捉錯誤 (有時甚至在您意識到錯誤之前!)。

NES 可協助處理小錯誤,例如錯字 - 也許您編碼速度很快,並且處於專注狀態,然後您寫了 conts 而不是 const

NES 也可以協助處理更具挑戰性的邏輯錯誤,例如反轉的三元運算式

我們的開發團隊一直在 NES 上進行自我託管,我們的一位工程師在我們將此部落格文章組合在一起時,回憶起他第一次使用 NES 的「啊哈!」時刻之一。他正在編寫類似 if (something !== 'a' || something !== 'b') 的條件。NES 發現此陳述式永遠會評估為 true (感謝德摩根定律!),並建議將 || 替換為 && 以使程式碼有效

變更意圖: Copilot NES 建議的變更與意圖的變更一致。例如,將類別從 Point 變更為 Point3D 會導致建議在類別定義和距離計算中新增 z 變數

使用新加入的變數或邏輯: Copilot NES 可協助您使用剛加入的新程式碼。這可能是小變更,例如在實際方法中呼叫新的方法參數。

也可能更複雜:如果您在 VS Code 擴充功能的 extension.ts 中新增了新命令,NES 會先建議清理 extension.ts 中的命令。然後當您開啟 package.json 時,NES 會建議也註冊該命令

重構: 如果您使用新的名稱或命名模式,Copilot NES 會建議以類似方式更新後續程式碼

請閱讀我們的完整 NES 文件,以取得更多資訊和情境,因為我們會擴展 NES 體驗。

分享您的意見反應

Copilot NES 正快速發展,我們迫不及待想透過 我們的儲存庫 中的問題取得您的意見反應 – 這對於改善體驗至關重要。

請務必使用 VS Code InsidersGitHub Copilot Chat 擴充功能的預先發行版本,以取得所有最新功能和修正。取得有關如何安裝擴充功能預先發行版本的更多詳細資訊。

您可以閱讀我們的完整 NES 文件,以取得更多資訊和情境,因為我們會擴展 NES 體驗。

我們對 AI 的下一步感到興奮,Copilot 可以預測您接下來想做什麼 - 最好的提示是您不必撰寫的提示。我們希望您也感到興奮,並期待看到您建置的成果!

代理人模式

自上週的 VS Code Insiders 版本以來,GitHub Copilot 編輯現在具有代理人模式的選項。

Copilot 編輯中的代理人模式能夠反覆運算自己的程式碼 - 自動辨識錯誤並修正錯誤、執行完成要求任務所需的任何終端機命令,以及透過自我修復功能解決執行階段錯誤。GitHub Copilot 現在不僅可以執行使用者要求的工作,還可以推斷所有未指定且也需要完成的其他工作,才能使主要請求正常運作。

我們看到了 GitHub Copilot 代理人模式的巨大潛力。它每天都在變得更好,但我們想盡快將它交到您手中。請關注此空間,瞭解未來幾週的重大變更和改進,因為我們會改進體驗,並在您試用時分享您的意見反應 (今天在 VS Code Insiders 中,很快就會在 VS Code Stable 中推出)。

您可以在我們的文件中閱讀有關代理人模式的更多資訊。

願景

此版本的 VS Code Insiders 也為 GitHub Copilot 帶來視覺支援。

您可能需要一遍又一遍地將您所看到的內容翻譯成 Copilot 的描述,這可能會令人沮喪。當使用使用者介面或詢問如何在編輯器中設定某些內容時,尤其如此。現在,您可以將螢幕擷取畫面附加到提示中,以便 Copilot 可以準確地看到您所看到的內容。您可以...

  • 從剪貼簿貼上
  • 從 [檔案總管] 檢視拖放影像
  • 附加目前 VS Code 視窗的螢幕擷取畫面 (選取 [附加] > [螢幕擷取畫面視窗])

這啟用了各種情境...

  • 將模型提供給 Copilot,以便它可以產生 UI 程式碼。
  • 提供不正確介面的螢幕擷取畫面,以便 Copilot 可以協助您修正版面配置。
  • 為 HTML 和 Markdown 中的影像產生替代文字
  • 提供錯誤的螢幕擷取畫面

視覺功能今天在 VS Code Insiders 中運作,並且對所有人開放。目前唯一支援的模型是 GPT 4o,並且正在開發對其他模型的支援。目前,支援的影像類型為 JPEG/JPG、PNG、GIF 和 WEBP。

新年新 Copilot

我們對 Copilot 作為 AI 配對程式設計師有宏偉的計畫,它不僅免費提供給所有人,而且不斷突破 AI 可以實現的界限,以徹底加速您的生產力和幸福感。

我們從未停止改進 VS Code 本身,因此請查看我們最近的版本資訊,以瞭解所有全新的優點。我們堅定地確保您擁有最佳版本的程式碼編輯器和最佳的 AI 配對程式設計師。

我們知道 AI 世界的發展日新月異,因此請務必在 X/Bluesky/LinkedIn 上關注我們,我們會讓您輕鬆掌握所有最新和最棒的 Copilot 功能。

祝您編碼愉快!

Brigit 和 Burke