第一次連線與專案探索
你剛裝好 Chat On Steroids(以下簡稱 CoS),在 ChatGPT 的 Developer mode 裡建立好 Core 自訂 App,companion 擴充套件也載入了。但接下來的問題很實際:ChatGPT 還不認識你的專案,直接叫它改程式只會得到一段憑空想像的答案。
這篇範例走一次標準的「破冰對話」:讓 ChatGPT 自己讀檔案、跑幾個唯讀指令,把專案長相建立起來。
情境
你接手了一個小專案 receipt-cli:Node.js + TypeScript 寫的命令列工具,把 CSV 帳單轉成收據。你在 CoS 的 Settings → Workspace 核准了專案資料夾,Core 連線正常,companion 擴充套件也配對完成。現在開一個全新的 ChatGPT 對話,這次不寫程式,只做探索。
還沒完成安裝、tunnel 與自訂 App 的設定?先看安裝與啟動。
目標
讓 ChatGPT 在不依賴你口頭描述的情況下回報三件事:
- 這個專案做什麼、怎麼跑。
- 程式的入口在哪。
- 稅金計算的邏輯寫在哪個檔案、哪個函式。
步驟一:確認 Core 的權限與工具
連線後,ChatGPT 的對話裡應該看得到 Core 這個 App。CoS 端對照幾件事:
- Settings → Workspace 已核准
receipt-cli資料夾。 - Core 權限中,讀取與命令執行已開啟。全新安裝預設啟用 Core 能力,Read-only 模式則是移除寫入、命令執行與桌面控制的那個開關。
- 這個範例只需要 Core,不需要 Desktop 或 Plugins。
步驟二:給 ChatGPT 的 prompt
I just connected Chat On Steroids' Core app, and I'm in a new repo called
receipt-cli that I have never opened.
Explore the project:
1. Read package.json, README.md, and list the files under src/.
2. Find where tax calculation lives (look for something like applyTax).
3. Tell me how to run the CLI and how to run its tests.
Then summarize: what this project does, its entry point, and which file
and function contain the tax logic. Read-only exploration — do not modify
anything yet.
最後一句是紀律:探索階段先不要寫入,改動留到修一個失敗的測試。
預期的工具呼叫序列
1. read(paths: ["package.json", "README.md", "src"])
→ 前兩者回檔案內容;目錄會回單層列表
2. exec_command(cmd: "rg -n \"applyTax\" src")
3. read(paths: ["src/index.ts", "src/tax.ts"])
- 第 1 步把多個目標塞進同一次
read。它支援一次多個路徑、目錄單層列表、有界 glob 與行號範圍;單檔預設回傳上限 256 KB,單次呼叫總量上限 512 KB。批次讀取是省連接器回合、也省內容視窗的正確用法。 - 第 2 步用
exec_command搜尋。它跑的是你作業系統的真實 shell:Windows 是 PowerShell/cmd,macOS/Linux 是你慣用的 POSIX shell。 - 若這個連接器快照沒有命令執行能力,ChatGPT 端看到的可能是搜尋替代工具
find(檔名與文字搜尋,不給 shell)。 - 如果你的對話裡 ChatGPT 常常忘記呼叫 Core,直接在 prompt 指名它要用這些工具即可,不需要背什麼魔法句。
以上參數名稱是示意;實際欄位以連接器當下暴露的 schema 為準,完整清單見工具速查。
ChatGPT 到底「看」到了什麼
- 檔案工具受核准資料夾約束:檔案路徑會被 App 驗證,超出你核准的根目錄會被拒絕。
- 但
exec_command不受核准資料夾限制:它從你核准的工作目錄起步,接著以你的一般使用者權限執行。這是它強大、也是工具表面與權限要把界線講清楚的地方——探索陌生專案時,只讓它跑唯讀指令(rg、目錄列表、npm test之類)。 - 探索會消耗內容視窗:認知越多、後續修改越準,但大專案要記得換對話,或交給 Compact & Resume。
驗收方式
ChatGPT 最後應回報類似:receipt-cli 是一個把 CSV 轉收據的 Node.js CLI,入口在 src/index.ts,稅金計算在 src/tax.ts 的 applyTax(),用 npm run cli 執行、npm test 跑測試。你沒有貼過任何一行程式碼。
如果它答得含糊,最常見的原因不是模型不行,而是它根本沒去讀——請它在回答前列出實際呼叫過的工具與讀過的檔案。
注意事項
- 每個新專案的第一句話,都值得花一次對話做探索,不要跳過。
- 想讓 ChatGPT 預先理解專案慣例,把
AGENTS.md之類的說明放在專案根目錄,並在 prompt 裡指名它去讀。 - 探索階段建議把 CoS 切到 Read-only 模式;要開始修改時再打開,並先
git commit一個乾淨的 checkpoint。