技術解剖 Technology Anatomy
這是建立在什麼之上?
選一個工具,然後往下拆解。看似神奇的表面,通常建立在幾個普通層次之上:協定 Protocols、API、檔案 Files、Shell、作業系統 OS,以及人的決策。
目前技術堆疊 Current Stack
Claude Code
拆解 Claude Code 如何把開發者需求轉成檔案編輯 File Edits、終端機指令 Terminal Commands,以及可驗證的程式碼變更。
Claude Code 在 Terminal 裡提供對話式介面 Interface。表面上像是在請一位資深 pair programmer 幫忙,但實際工作是透過具體操作完成:讀取檔案、搜尋程式碼、編輯文字、執行指令、檢查結果。
建立於 Built on
- 專案脈絡 Project context
- 開發者指令 Developer instructions
- 終端機 Session
啟用能力 Enables
- 程式碼探索 Codebase exploration
- 重構協助 Refactoring help
- 功能實作 Feature implementation
例子 Examples
- 請 Claude 修 bug
- 檢查 diff
- 修改後跑 tests
Agent Loop 是 Claude Code 看起來能主動工作的原因。Claude 會根據需求與 repository 狀態推理 Reasoning,選擇工具呼叫 Tool Call,取得結構化輸出後,再重複下一步,直到能解釋、修改、測試或停止。
建立於 Built on
- 語言模型 Language model
- 工具描述 Tool descriptions
- 對話歷史 Conversation history
啟用能力 Enables
- 多步驟任務 Multi-step tasks
- 錯誤復原 Error recovery
- 迭代除錯 Iterative debugging
例子 Examples
- Search → read → edit → test
- Build → inspect error → patch
與本機工具並行運作的,是大型語言模型 Large Language Model 正在做推論 Inference。它把 tokens 轉成可能的延續:解釋、計畫、程式碼修改或工具請求。外層 agent system 則讓這些預測有結構與回饋。
建立於 Built on
- Transformer model
- Context window
- Inference servers
啟用能力 Enables
- 程式碼推理 Code reasoning
- 指令遵循 Instruction following
- 工具使用規劃 Tool-use planning
例子 Examples
- Claude Sonnet
- Context tokens
- Generated patches
Claude 並不是直接「碰」你的電腦。它會要求特定 Tool Calls,例如讀取檔案、套用修改、列出搜尋結果、執行 Shell 指令。每次工具輸出又會變成下一步決策的新脈絡。
建立於 Built on
- 工具 Schema
- 執行權限 Runtime permissions
- 序列化輸出 Serialized outputs
啟用能力 Enables
- 檔案系統存取 Filesystem access
- Shell access
- 可稽核編輯 Auditable edits
例子 Examples
- Read files
- Search with rg
- Apply a patch
Claude Code 的實用性,多半來自快速協調標準開發工具。它可以檢查 repository、理解專案慣例、執行 tests、閱讀 stack trace,並用 git status 或 diff 讓變更保持可見。
建立於 Built on
- 原始碼 Source files
- 套件管理器 Package manager
- 測試工具 Test runner
- Git repository
啟用能力 Enables
- 驗證 Verification
- 理解專案的修改 Project-aware edits
- 變更審查 Change review
例子 Examples
- npm test
- git diff
- TypeScript errors
最底層是每個開發工具都依賴的 Operating System。它管理檔案、啟動 processes、處理 environment variables、執行 permissions,並把軟體連到硬體與網路。
建立於 Built on
- 核心 Kernel
- 程序模型 Process model
- 儲存 Storage
- 權限 Permissions
啟用能力 Enables
- Terminals
- Editors
- Package managers
- Development servers
例子 Examples
- Processes
- Environment variables
- File permissions
Claude Code 只有透過人的感官與行動通道,才真正變成有用的工具。你會看見串流回覆、檔案路徑、diff、test results 與 errors;你會輸入需求、調整方向、注意意外之處,並決定哪些地方需要再檢查。
建立於 Built on
- 螢幕或 Terminal 顯示
- 鍵盤或語音輸入
- 注意力與 review
啟用能力 Enables
- 閱讀生成的變更
- 引導 agent
- 在送出前抓出錯誤
例子 Examples
- 掃過一段 diff
- 輸入 follow-up prompt
- 注意到 failing test
最深的一層不是另一台 server,而是帶著任務的人。對 Claude Code 來說,這個人帶來 project goal、判斷、品味、限制條件,以及決定結果是否夠好的責任。
建立於 Built on
- 專案目標 Project goal
- 開發者判斷 Developer judgment
- 現實限制 Real-world constraints
啟用能力 Enables
- 有意義的 prompts
- 有用的 acceptance criteria
- 負責任的決策
例子 Examples
- 交付一個 feature
- 修好一個 bug
- 理解 codebase 如何運作