Anthropic 的 2026 年 9 月 24 日活動頁介紹了 Claude Code 的程式碼現代化示範;這是活動內容,不代表任何專案都能自動完成遷移。本週先建立隔離副本與可驗證基線,再讓 Claude Code 分批修改;每一批都要檢查舊行為、測試結果和回退方式,不能把生成的程式碼直接當成可上線成果。需要 macOS 專屬建置或簽署時才準備 macOS 環境,其餘專案依自身工具鏈選擇。
這篇適合維護遺留系統、需要先盤點依賴與測試缺口的開發者。
如果你要負責遷移範圍、驗收責任或專案交付,也可以按下方流程建立團隊共用的檢查方式。
Claude Code 舊程式碼遷移:先盤點再授權修改
先確認要解決的是什麼,再決定讓工具讀取哪些檔案、執行哪些檢查。不要把「了解整個舊系統」當成第一個任務。先選一個可獨立驗收的模組,記錄它的入口、相依項目、資料格式和使用者可見行為。
動手前建立隔離副本,確認它能還原,也不會連到正式資料或正式服務。若你想並行處理不同遷移任務,可評估用 Git worktree 建立獨立工作目錄;它能把工作目錄分開,但不會自動替你處理憑證、共用測試資料或錯誤分支管理。
整理一份簡短盤點表,至少寫明:
- 遷移範圍:目標模組、入口點、呼叫它的元件,以及明確不處理的部分。
- 執行方式:建置、啟動、測試指令與所需環境變數;敏感值不要寫入共用筆記。
- 相依關係:語言工具鏈、套件、系統函式庫、資料庫或外部服務。
- 既有行為:重要輸入輸出、錯誤處理、資料格式,以及團隊已確認的業務規則。
- 驗收缺口:哪些項目有自動化測試,哪些只能由熟悉業務的人手動檢查。
測試缺失時,先定義人工驗收條件,而不是把「程式有產生、建置有通過」當成舊系統行為的證明。Anthropic 的程式碼現代化手冊可作為盤點與現代化規劃的參考;你仍須以自己的系統規則補足其中沒有涵蓋的條件。
讓首輪分析停在解釋,不要直接重寫
依Claude Code 官方安裝文件完成安裝、認證與專案啟動;再依CLI 使用參考確認實際使用方式。安裝指令、認證流程或功能若與你手上的版本不一致,先查最新官方文件,不要照抄過期命令。
第一輪只要求整理現況:程式入口在哪裡、模組如何互相呼叫、相依項目是什麼、哪些測試已存在。接著請它把發現分成「程式碼可證實」「需要團隊確認」和「目前無法判定」;凡是牽涉未文件化的業務規則,都要保留為待確認,不要讓模型補成看似合理的事實。
你也可以用專案記憶保存已核實的建置方式、程式慣例與不可碰觸的資料,再透過Claude Code 記憶文件確認適合的設定方式。記憶檔不是規格核准書:新增或修改的內容仍要由熟悉專案的人審查。
依建置目標選環境,不為遷移一律換 Mac
環境選擇要看程式要在哪裡建置、測試和交付,而不是看 Claude Code 能不能協助閱讀程式。下面的對照表可先排除不必要的環境支出。
| 選項 | 適用條件 | 主要檢查點 | 不適合的情況 |
|---|---|---|---|
| 現有開發機 | 現有作業系統已支援專案建置與測試 | 工具鏈、系統函式庫、測試資料是否一致 | 目標產物必須在另一種作業系統簽署或驗證 |
| 隔離建置環境 | 需要分開依賴、權限或測試資料 | 映像檔、套件來源、憑證與資料清理方式 | 需要依賴本機硬體或特定圖形介面功能 |
| 本地 macOS 開發機 | 團隊已有 macOS 裝置,且要做 macOS 專屬建置或測試 | Xcode 工具鏈、簽署身分、目標系統版本 | 遷移只涉及跨平台程式,且沒有 macOS 驗證要求 |
| 雲端 Mac | 短期需要 macOS 建置、簽署或相容性測試,但團隊本地沒有合適裝置 | 遠端連線權限、憑證保管、工作階段與交付方式 | 長期固定重負載,或工作必須直接接觸本機硬體 |
macOS 應是由建置目標推導出的選項,不是舊程式碼遷移的預設條件。若產物必須以 macOS 工具簽署,請核對 Apple 的 macOS 程式碼發佈簽署文件,並把簽署權限與憑證處理列入環境設計;其他作業系統的建置工作則按其工具鏈安排。
| 驗收關卡 | 建議留下的證據 | 放行條件 | 未通過時 |
|---|---|---|---|
| 範圍確認 | 目標模組、排除項目、待確認規則 | 負責人確認任務邊界 | 暫停修改,先補齊規則或縮小範圍 |
| 基線保存 | 原始建置與測試結果,或人工驗收紀錄 | 能說明修改前可觀察的行為 | 先建立可重現條件 |
| 修改檢查 | 差異、影響範圍、執行過的檢查 | 變更符合任務,無未說明的周邊修改 | 拆小任務或回退 |
| 行為驗收 | 輸入輸出比較、回歸結果、人工審查 | 關鍵業務不變量符合預期 | 修正後重跑相關檢查 |
| 交付與回復 | 提交紀錄、責任人、回退辦法 | 團隊知道如何停止或撤回部署 | 暫不進入下一階段 |
這是本文建議的五項交付證據,不是 Claude Code 的官方驗收規格。專案風險越高,越要把權限和檢查邊界寫清楚;可參考Claude Code 安全文件,並由團隊自行核對工具實際可執行的操作。
提醒:如果測試會寫入正式資料、呼叫外部服務或使用有權限的憑證,先在隔離環境中移除或替換這些連線。可使用的工具與權限,應按專案風險逐項審查,不要因為任務只是「遷移程式碼」就預設安全。
FAQ:準備、主分支與 macOS 條件
開始用 Claude Code 遷移舊專案前,要先準備哪些資料?
準備可還原的隔離副本,記下建置與測試方式、依賴、關鍵入口及已知業務規則。保存目前可重現的測試結果;若沒有自動化測試,先寫明人工驗收條件。安裝、認證與啟動方式則以 Claude Code 官方文件為準。
怎麼判斷 AI 修改沒有改變舊系統行為?
不能只看差異或編譯是否成功。比較修改前後的關鍵輸入與輸出,執行相關單元、整合及回歸測試,再由熟悉業務的人檢查例外情境。記下尚未覆蓋的行為、審查人與回退方式,才能清楚界定驗收範圍。
Claude Code 可以直接在主分支上修改遺留程式嗎?
遷移試點不建議直接修改主分支。先用隔離副本或獨立工作目錄處理單一可驗收任務,確認測試結果、程式差異和回退方式,再依團隊審查流程合併。Git worktree 能分開工作目錄,但不會取代分支管理、權限控管或資料隔離。
哪些舊程式碼遷移工作需要 macOS 環境?
專案的建置、簽署或測試若依賴 macOS 專屬工具或系統行為,就要準備能提供目標 macOS 環境的開發機或雲端 Mac。一般跨平台程式依自己的工具鏈選環境即可。若只有簽署與最終驗證需要 macOS,可只在相應階段安排這類環境。
分批實施與回歸:每次只改一個可驗收單位
把遷移拆成可單獨檢查的任務,例如先處理單一模組的介面整理,再處理依賴更新。每個任務都要說明允許修改的範圍、不可改變的行為,以及必須執行的檢查。請 Claude Code 回報變更目的和影響範圍;若改動超出約定,先停下來審查,不要把額外修改一併合入。
每批修改的勾選清單:
- [ ] 這批改動有清楚的範圍,能與其他任務分開驗收。
- [ ] 修改前的建置、測試或人工驗收基線已保存。
- [ ] 差異沒有擴及未授權模組、介面或資料格式。
- [ ] 已執行與變更相關的單元、整合或回歸檢查。
- [ ] 高風險介面、隱含規則及資料轉換已交由人工審查。
- [ ] 若行為不符預期,團隊知道要回退到哪個可確認的狀態。
舊系統的測試不完整時,請選取能代表業務風險的輸入,記錄預期輸出與例外結果,再由責任人確認。不要用生成的測試代替業務核准;自動化測試能檢查明確條件,無法自行判定未寫下來的規則。
上線後保留證據,讓下一批遷移更可控
通過一次檢查不代表整個系統已完成現代化。保留每批的提交、測試報告、人工核准、已知限制及回退方法。上線後觀察錯誤和業務異常;若發現新行為,先把它記錄並補進測試或人工檢查條件,再決定是否擴大遷移範圍。
你可以把已驗證的檢查項目整理成團隊流程,但不要把一次性模型輸出直接複製到其他程式庫。不同專案的相依、權限和業務規則可能不同,重用的是審查方法,不是未核實的結論。
若目前用個人電腦或共用伺服器做臨時建置,常見限制是工具鏈不一致、憑證與測試資料難隔離,以及 macOS 專屬驗證受本地設備排程牽制。若專案確實需要短期 macOS 建置或簽署環境,先依遠端 macOS 開發環境相關服務資訊核對能否符合目標作業系統、權限和連線需求;有具體使用疑問時可查閱Hashvps 說明中心。若你需要長期固定重負載、直接連接實體硬體,或必須完全掌握本機環境,自購 Mac 或現有設備可能更合適。選擇雲端 Mac 的理由應是專案驗收確實需要 macOS,而不是把它當成所有 Claude Code 遷移工作的前提。
為舊程式碼遷移準備獨立的雲端 Mac 環境
透過 Hashvps 租用原生 macOS 雲端 Mac,將遷移測試與日常工作環境分開,降低互相干擾。
可使用 SSH 與 VNC 遠端操作,方便執行建置、除錯及分批驗收。