01 · Claude Code 是什麼
解釋 Claude Code 為什麼不是聊天框,而是能進入本機專案、讀檔案、改程式碼、跑命令並圍繞任務規劃的程式設計 Agent。
翔宇拆了一圈 AI 程式設計工具,原本以為差距在模型能力。追到底才發現,真正改變體驗的是一個樸素到不起眼的設計決定——AI 住在哪裡。想通這一點,Skills、MCP、Agent Teams 這些功能全都順理成章了。——翔宇
這一篇用 14 分鐘換什麼:把 Claude Code 從另一種聊天框重新理解成住進你電腦裡的 coding agent。讀透之後,後面 11 篇裡的每一個名詞——CLAUDE.md、上下文、Skills、SubAgents、MCP、Hooks——都會自動連成一個系統,不再零散。
1. 一個你可能沒注意的動作
你在寫程式碼,遇到一個看不懂的報錯。
接下來你做了一件事——你可能太熟悉以至於根本沒注意自己在做:把報錯資訊複製了,切到瀏覽器,開啟 ChatGPT,貼上進去。
ChatGPT 給了解釋。你覺得有道理,但它說我需要看一下你的程式碼。你回到編輯器,複製了那個函式,切回瀏覽器貼上。它又問呼叫這個函式的地方。你翻了另一個檔案,複製,貼上。它再問資料庫表結構。你嘆了口氣,又去找。
來回七八次,四十分鐘。
這個過程裡,你充當了一個角色——搬運工。在兩個視窗之間來回搬運資訊:從編輯器搬到瀏覽器,從瀏覽器搬回編輯器。
停下來想一個問題:你的程式碼就在你電腦上。AI 為什麼不能自己去看?
2. 把所有表面現象剝掉,只剩一個問題
如果問 ChatGPT 寫程式碼為什麼不夠順暢,十個人裡有八個會說:它理解力不夠、它寫的程式碼跑不通、它不瞭解最新的框架。
這些都是真實的痛點。但我們做一個思維實驗:假設明天 ChatGPT 升級了,變得和世界頂級程式設計師一樣聰明。程式碼寫得完美,理解力超強,最新的框架全知道。
你還是得把程式碼複製出來給它看。它還是不知道你的專案有哪些檔案。你還是不能讓它幫你跑一下 npm test。
智力翻了十倍,但你當搬運工的那四十分鐘——一分鐘都沒少。
關鍵點:我們習慣把所有問題歸結為 AI 不夠聰明。但有一類問題和智力無關——再聰明的人,如果被關在隔壁房間只能靠你傳紙條溝通,效率也快不起來。
這個思維實驗指向一件事:AI 夠不到你的程式碼。
它沒有眼睛去看你的檔案。它沒有手去改你的程式碼。它沒有腳去跑你的命令。它被困在瀏覽器的一個文本框裡,唯一的資訊來源就是你貼上進去的那些文字。
就像一個外科醫生再厲害,如果他在電話裡指揮你給自己做手術,效果也好不到哪去。瓶頸從來不是他的醫術,是他不在手術室裡。
這是 AI 輔助程式設計最底層的一個位置問題,不是智力問題。
3. 把 AI 搬到你的電腦裡
理解了瓶頸在位置,解決方案就很自然了——把 AI 從瀏覽器搬到你的電腦裡。
這就是 Claude Code 做的事。一句話講完:它是一個住進你電腦裡的 AI 程式設計 agent(智慧代理)。
它跑在哪裡?最經典的形態是終端——也就是你電腦上輸入文字命令的那個視窗。但 Claude Code 不止終端,從 2026 年開始它支援 5 個入口(Terminal CLI / VS Code / JetBrains / Desktop app / Web),共用同一套引擎,CLAUDE.md 和 MCP 配置跨入口生效。詳細差異在本篇 §7 展開。
位置變了,會發生什麼?看這張對比圖。
flowchart LR
subgraph Before["💬 瀏覽器聊天框時代"]
U1["👤 你"]
AI1["🤖 ChatGPT<br/>住在瀏覽器裡"]
Code1["📁 你的程式碼<br/>在你電腦上"]
U1 -->|複製貼上| AI1
AI1 -->|給你建議| U1
U1 -.->|手動搬運| Code1
Code1 -.->|再手動搬運| U1
end
subgraph After["💻 Claude Code 時代"]
U2["👤 你"]
AI2["🤖 Claude Code<br/>住在你電腦上"]
Code2["📁 你的程式碼"]
Term["⚡ 終端 / 命令"]
U2 -->|自然語言指令| AI2
AI2 -->|直接讀| Code2
AI2 -->|直接改| Code2
AI2 -->|直接跑| Term
end
style Before fill:#fee2e2,stroke:#ef4444
style After fill:#dcfce7,stroke:#22c55e
style AI2 fill:#dcfce7,stroke:#22c55e,stroke-width:2px
住進你電腦裡這五個字看起來很普通,但它引發了一連串變化——四件 ChatGPT 永遠做不到的事:
它能看你的檔案
不是你貼一個片段給它——是它自己開啟你的目錄,把需要的檔案都讀一遍。
回到那個登入報錯的場景。你說一句登入功能報錯了。它不會問你要程式碼——它自己去找路由檔案、控制器、資料庫模型、認證中介軟體,把整條鏈路看一遍。你省掉了來回貼上的七八個回合。它一次能看多少?這個問題留給 02 · 一次能看多少程式碼 拆。
它能改你的程式碼
你說把 userName 改成 userId。它找到所有用到這個變數的地方——可能散落在十幾個檔案裡——全部改完。你在編輯器裡就能看到檔案變了。不是給你一段程式碼讓你自己替換,是它來動手。
它能執行命令
安裝依賴、跑測試、啟動服務、提交程式碼——你用自然語言說,它在終端裡執行。你說裝 Prisma 然後建立使用者表,它跑 npm install、寫 schema、執行遷移。不是告訴你步驟,是它動手。
它能自己規劃
這一點最容易被低估。你說重構這個模組,它不會只改一行。它會想:先讀哪些檔案?依賴關係怎麼處理?改完哪些測試可能受影響?然後制定計劃,逐步執行,最後跑測試驗證。你可以隨時叫停,也可以讓它跑完。
四件事合在一起——看檔案、改程式碼、跑命令、自主規劃——AI 從隔壁房間的顧問變成了坐在你旁邊的搭檔。
反向驗證:這四件事為什麼 ChatGPT 那種網頁端永遠做不到?因為瀏覽器有沙箱(sandbox = 瀏覽器對指令碼的安全圍欄)—— 網頁裡的 JavaScript 出於安全考慮,不能任意讀你硬碟檔案、不能跑系統命令、不能呼叫本地 Python。這是瀏覽器在設計層面就堵死的能力,不是哪天網頁升級就能突破的。Claude Code 不在瀏覽器裡,不受這個約束——所以才能做到這四件事。位置不一樣,許可權邊界根本不一樣。
回到開頭那個登入 bug 的場景。在 Claude Code 裡,那 40 分鐘會變成這樣:
👤 你:登入功能報錯了,錯誤密碼後頁面空白。
🤖 Claude Code:(自己讀 5 個檔案:src/auth/login.js、controllers/auth.ts、models/user.ts、middleware/auth.ts、schema.prisma)
問題在 login.js:42——錯誤密碼時拋了 throw 但前端沒接住。我修一下並加測試 (改完,跑了 3 個測試 case 全過)。要 commit 嗎?
七八輪貼上變成 1 輪對話。不是 AI 變聰明了,是 AI 終於在手術室裡了。
4. 一個位置決定,長出整個功能生態
後面你會遇到一系列功能名詞:Skills、SubAgents、Agent Teams、MCP、Hooks、CLAUDE.md。初看像一堆互不相關的東西。但它們全都是從 AI 住在你電腦裡這個根基上長出來的。
flowchart TB
Root["🏠 AI 住在你電腦裡<br/>(位置就是根因)"]
subgraph FS["📁 檔案系統能力"]
F1[CLAUDE.md 長期記憶]
F2[".claude/skills 工作流檔案"]
F3[上下文看完整專案]
end
subgraph Exec["⚡ 命令執行能力"]
E1[Hooks 自動跑指令碼]
E2[SubAgents 派分身]
E3[多 Agent 並行]
end
subgraph Net["🌐 本地程序能力"]
N1[MCP 接外部服務]
N2["資料庫 / GitHub / Slack"]
N3[瀏覽器自動化]
end
subgraph Tool["🛠️ 你的工具箱"]
T1["Python / FFmpeg / Git"]
T2[任何 CLI]
T3[裝什麼用什麼]
end
Root --> FS
Root --> Exec
Root --> Net
Root --> Tool
style Root fill:#dcfce7,stroke:#22c55e,stroke-width:3px
style FS fill:#fef3c7,stroke:#f59e0b
style Exec fill:#dbeafe,stroke:#3b82f6
style Net fill:#f3e8ff,stroke:#a855f7
style Tool fill:#fee2e2,stroke:#ef4444
每一個分支都有同一個前提:AI 住在你電腦裡。如果 AI 還在瀏覽器,這些功能一個都做不了。
CLAUDE.md
專案長期記憶,每次啟動自動讀。能做到是因為 AI 能讀你磁碟上的檔案。
🛠️ Skills
把工作流寫成檔案,需要時自動載入。能做到是因為它能讀檔案並按需檢索。
👥 SubAgents
派出分身做子任務,獨立工作後彙總。能做到是因為分身也住在你電腦上。
🌐 MCP
接 GitHub、資料庫、Slack 等外部服務。能做到是因為它在你電腦上跑本地程序,可以發起網路請求。
🪝 Hooks
在特定操作前後自動執行你預設指令碼。能做到是因為它能在你電腦上執行 Shell 命令。
底層邏輯:位置不是一個孤立的技術細節——它是整個 Claude Code 功能生態的根基。後面每篇教程拆解的每個功能,你都會看到同一條線索:因為 AI 在你電腦上,所以它能 XXX。理解了根基,枝葉自然生長。
5. 你的電腦能做什麼 = Claude Code 能做什麼
你可能會有一個直覺:Claude Code 是寫程式碼的工具。
它的核心能力其實更寬——是在你的電腦上執行任務。寫程式碼只是其中一種。
| 你電腦上有什麼 | Claude Code 就能做什麼 | 實際場景 |
|---|---|---|
| Python | 資料分析、指令碼自動化、生成圖表 | 處理 Excel、爬資料、出報表 |
| FFmpeg | 影片轉碼、音訊提取、字幕處理 | 剪影片、做字幕 |
| Whisper | 語音轉文字 | 把會議錄音轉筆記 |
| Playwright | 操作瀏覽器、填表單、截圖 | 自動化測試、批次爬取 |
| Git | 提交程式碼、解決衝突、建立 PR | 日常版本控制 |
| 任何 CLI 工具 | 能在終端跑的它都能調 | kubectl、docker、AWS CLI 等 |
它的能力邊界 = 你電腦的能力邊界 + MCP(Model Context Protocol,模型上下文協議)連線的外部服務。MCP 怎麼連,09 · 怎麼連外部服務 會拆。
當然有限制:它不能直接操作滑鼠鍵盤(除了透過 Playwright 間接操作瀏覽器),不能看你的螢幕截圖(除非你主動給它),執行命令前會先徵求你同意(安全設計,11 · 該給 AI 多少許可權 會講)。
打個比方:Claude Code 像你僱了一個什麼都願意學的實習生,他坐在你的工位上。你桌上有什麼工具,他就能用什麼——螺絲刀、萬用表、顯微鏡,不挑。他的能力上限不取決於他自己,取決於你的工具箱。當然,他幹活比你快得多,因為他每秒能讀幾萬行文字。
6. 三個模型,一條原則
Claude Code 背後有三組模型可選。你可能會想:選最強的不就完了?
做一個類比:你出門買個早餐——會開車去嗎?大多數人不會,走路 5 分鐘的事開車反而更慢(還得找停車位)。但如果你要去 200 公里外的城市,走路就不現實了。
選模型的邏輯一樣:用最小夠用的那個。
| 模型別名 | 一句話定位 | 什麼時候用 | 當前預設指向 |
|---|---|---|---|
haiku | 走路——快、近、零成本 | 簡單問答、格式轉換 | Haiku 最新版 |
sonnet | 開車——日常通勤首選 | 絕大多數編碼任務 | Sonnet 4.6(Anthropic API) |
opus | 飛機——長途才用 | 複雜架構、深度除錯 | Opus 4.7(Anthropic API,需 v2.1.111+) |
opusplan | 飛機+車——plan 期 opus,執行期 sonnet | 想要 opus 思考、sonnet 執行 | 自動切換 |
best | 自動跟最強 | 不想自己選 | 當前等同 opus |
事實基準(2026-05 最新):Anthropic API 上 opus 解析為 Opus 4.7,sonnet 解析為 Sonnet 4.6。Bedrock / Vertex / Foundry 上的別名指向略有滯後(詳見 https://code.claude.com/docs/en/model-config)。
想鎖版本就用全名(如 claude-opus-4-7),不鎖就用別名跟隨官方推薦。
預設掛 sonnet。遇到搞不定的複雜問題切 opus。簡單到不用動腦子的活切 haiku 省錢。
新手常見的錯配:剛上手就把所有任務都開 opus,結果兩個問題——一是費用快速膨脹(opus 是 sonnet 的 5 倍貴),二是簡單任務被過度推理汙染(opus 會順手給出"是否需要重構整個模組"的建議,新手照著改反而引入風險)。判斷方式跟早餐 vs 長途一樣:走路能到的別開車。
深入一步:effort 思考深度
Opus 4.7、Opus 4.6、Sonnet 4.6 都支援 effort 引數(思考深度)。
- Opus 4.7:5 檔
low / medium / high / xhigh / max,預設xhigh。 - Opus 4.6 / Sonnet 4.6:4 檔
low / medium / high / max(無xhigh),預設high。
同一個模型,讓它快速掃一眼(low)或仔細想想(xhigh),token 成本能差幾倍。
effort 背後的快思考 vs 慢思考哲學,05 · AI 怎麼決定想多深 會展開。這裡先知道有這個開關就夠了。
7. 5 個入口,位置程度不一樣
Claude Code 當前有 5 個入口,但住在哪裡程度不一樣。理解這個差異,對後面許可權和雲端任務章節會有幫助。
Terminal CLI
位置定位:100% 本地
關鍵特徵:主戰場,許可權最深、自動化最強。能讀你磁碟任何檔案、跑任何 CLI 命令。
適合:日常程式設計、CI 整合、指令碼化批次任務。
IDE 擴充套件
位置定位:本地(嵌入 IDE)
關鍵特徵:跟編輯器檢視深度整合(inline diff、@-mention、command palette)。VS Code / Cursor / JetBrains 都支援。
適合:邊寫邊問、看著 diff 改、需要視覺化對比。
Desktop App
位置定位:本地(獨立桌面程序)
關鍵特徵:多會話並行、視覺化 diff 審閱、定時任務(schedule)。macOS / Windows 都有。
適合:同時跑多個 Agent、長任務監控、定時跑 PR review。
Web
位置定位:遠端(Anthropic 雲端容器)
關鍵特徵:長任務非同步跑,電腦關機也在跑;不直接接你電腦檔案,讀的是它自己 clone 的專案副本。
適合:扔一個超長任務後去喝咖啡、不想本地跑、移動端啟動。
移動 / 遠端
位置定位:遠端轉發
關鍵特徵:iOS App、Remote Control、Slack / Discord 等 Channels 把任務路由到電腦端會話或雲端會話。
適合:地鐵上發任務、晚上手機看進度、外網時讓家裡電腦幹活。
關鍵區分:前 3 個真正住在你電腦裡,後 2 個是雲端的 Claude Code。你電腦關機時雲端能繼續,但讀不到你磁碟檔案。
這件事不影響本篇對位置的理解:核心仍然是有一個能直接操作程式碼檔案 + 跑命令的現場,無非這個現場可以是你的電腦,也可以是 Anthropic 雲端的臨時容器。
5 個入口怎麼選——一句話決策:
| 你正在做什麼 | 選哪個入口 |
|---|---|
| 日常程式設計、需要操作本地儲存庫 | Terminal CLI(最強許可權) |
| 邊寫邊問、想看 inline diff | IDE 擴充套件 |
| 同時跑多個 Agent、長任務監控 | Desktop App |
| 扔超長任務後去喝咖啡、本地不在家 | Web(雲端容器,讀不到你磁碟) |
| 地鐵上 / 手機端發任務 | 移動 / 遠端(路由到電腦或雲端) |
8. 檢驗你真懂了嗎
費曼說,檢驗你是不是真的理解一件事,試試能不能解釋給朋友聽。
| # | 試著用自己的話回答 | 對應章節 |
|---|---|---|
| 1 | 有人說 AI 程式設計工具選最聰明的就行——你能反駁嗎?論據是什麼? | §2 思維實驗 |
| 2 | 不用術語,用買早餐 / 修水管這種類比能講清 Claude Code 的核心設計決定嗎? | §3 把 AI 搬到電腦裡 |
| 3 | 動手題 ⭐:現在開啟終端,讓 Claude Code 完成"列出當前專案所有 .md 檔案,按行數從大到小排序,告訴我前 3 個分別講什麼"。這一個任務裡你能數出幾個只有"AI 住在你電腦裡"才做得到的動作?提示:至少 3 個。 | §4 功能生態 |
過關標準:能用一句話說清——Claude Code 改變體驗的不是模型變聰明,而是 AI 從瀏覽器搬到了你電腦裡——所以它能看檔案、改程式碼、跑命令、自主規劃。
📖 本篇術語速查表
| 英文 / 縮寫 | 中文 | 一句話解釋 |
|---|---|---|
| agent | 智慧代理 | 能圍繞目標自主使用上下文、工具、反饋迴圈的 AI 系統 |
| coding agent | 程式設計智慧代理 | 面向程式設計任務的 agent,Claude Code 是典型代表 |
| token | 詞元 | 模型讀 / 寫文本的最小單位,1 箇中文字大約 2 token |
| context window | 上下文視窗 | 一次對話裡 AI 能同時看到的資訊總量,詳見 02 篇 |
| CLAUDE.md | 專案記憶檔案 | 寫給 Claude 的長期指令,每次啟動自動讀,詳見 03 篇 |
| Skills | 技能檔案 | 把工作流寫成檔案,Claude 按需載入,詳見 06 篇 |
| SubAgents | 子代理 / 分身 | 主 Claude 派出去做子任務的獨立工作單元,詳見 07 篇 |
| MCP | Model Context Protocol,模型上下文協議 | Agent 接外部工具的標準協議,詳見 09 篇 |
| Hooks | 鉤子 | 操作前後自動執行的指令碼,詳見 10 篇 |
| effort | 思考深度 | 控制模型在每步上花多少 token 思考,詳見 05 篇 |
官方資料
- Claude Code 官方文件
- Model configuration(模型別名、effort、extended context 全部以此為準)
- What's new(版本更新和能力變更)
- Claude Models overview(具體模型 ID 與版本號)
接下來去哪
➡️ 02 · 一次能看多少程式碼
上下文視窗不是記憶,是當前工作臺。看 AI 在工作臺被堆滿後會發生什麼。
03 · 怎麼記住你的習慣
上下文是一次性的,但專案知識需要跨會話保留。CLAUDE.md + Auto Memory 雙軌記憶系統。
09 · 怎麼連外部服務(可跳讀)
MCP 解決手不夠長的問題,讓 Claude 接資料庫、瀏覽器、GitHub 等外部服務。
11 · 該給 AI 多少許可權(可跳讀)
許可權不是越大越好,也不是越小越安全;要按風險分層。
不用按順序全讀。挑你最好奇的那條線走就行——每篇開頭都會標註需要先讀哪篇。