MAR 07, 202612 分鐘閱讀vibe coding

🤖 Claude Code 入門 101:用 AI 寫程式的正確姿勢

claudecode

一、Claude Code 是什麼?

Claude Code 不是網頁版 Claude,而是一個跑在終端機(Terminal)裡面的 AI 程式開發助手

它可以直接讀取、修改、執行你電腦上的程式碼,理解整個專案的上下文,不只是單一檔案。它還能幫你跑 build、寫文件、搜尋檔案、管理 Git,基本上你在 command line 做得到的事,它都可以幫你完成。

一句話解釋:你用自然語言告訴它你想做什麼,它幫你把整個專案改好。

不只是寫程式

雖然叫「Claude Code」,但它的能力遠不只寫程式。基本上任何你在 command line 做得到的事,它都能幫你完成:整理檔案、寫文件、分析數據、搜尋資料、管理伺服器設定等等。

如果你有用過 Claude Desktop App 裡面的 Cowork 功能,你可能會發現它跟 Claude Code 很像——因為 Cowork 本質上就是 Claude Code 跑在 Anthropic 的雲端虛擬機上,再包上圖形介面。兩者核心能力完全一樣,只是操作方式不同:Cowork 用瀏覽器點按,Claude Code 用終端機打字。

所以不要被名字裡的「Code」嚇到,就算你不寫程式,Claude Code 也是一個非常強大的自動化助手。

跟其他工具有什麼差別?

  • 最多人混淆的是跟 claude.ai 的差別claude.ai 是 chat 介面,Claude Code 算是claude.ai 的終端機工具,直接操作你的本地檔案
  • 跟 Cursor / Windsurf 的差別:Cursor 是 IDE(程式編輯器),Claude Code 是終端機工具。兩者可以搭配使用
  • 跟 GitHub Copilot 的差別:Copilot 現在也有 Agent Mode 和 Coding Agent,功能上愈來愈接近。主要差異在底層模型(Copilot 用 OpenAI / Claude / Gemini,Claude Code 用 Claude)、context 理解深度、以及生態系整合方式不同

Claude Code 的核心能力

agentic

Claude Code 背後的運作邏輯是一個 Agentic Loop(代理循環)

  1. 收集上下文:分析你的 codebase、讀檔案、理解結構
  2. 執行動作:改 code、跑指令、建檔案
  3. 驗證結果:跑 test、check build、確認修改正確

這三個步驟會自動循環,直到任務完成。你隨時可以中斷、改方向、提供額外 context。


二、哪裡可以用 Claude Code?

code-in-terminal

Claude Code 不只是 Terminal 工具,現在已經有很多地方可以使用:

平台

特色

適合誰

🖥️ Terminal CLI

最完整功能,原生體驗

Developer 日常開發

🌐 Web(claude.ai/code)

瀏覽器直接用,不用安裝

不在自己電腦、平行任務

💻 Desktop App

圖形介面、visual diff、live preview

不喜歡 Terminal 的人

📝 VS Code Extension

inline diffs、@-mentions、plan review、對話開發(類似 Cursor)

已經在用 VS Code 的人

🔧 JetBrains Plugin

支援 IntelliJ、WebStorm 等

使用 JetBrains IDE 的人

🤖 GitHub Actions

CI/CD 自動化

自動 code review、issue triage

💬 Slack

在 Slack 裡面直接使用

團隊協作

💡 新手建議:如果你對寫程式一無所知,只是想 Vibe Coding,可以直接使用 Terminal CLI 入門,功能最完整也最靈活,這是所有東西的基礎。


三、安裝前準備

系統需求

  • 作業系統:macOS 10.15+、Ubuntu 20.04+ / Debian 10+、Windows 10+(WSL 或 Git for Windows)
  • 硬體:4GB+ RAM
  • 帳號:Claude Pro / Max 訂閱,或 Anthropic Console API 帳號

⚠️ 注意:Free 帳號無法使用 Claude Code,至少需要 Pro 訂閱($20/月)

費用怎麼算?

方案

月費

Claude Code

適合

Free

$0

❌ 無法使用

Pro

$20

✅ 可使用

學習、小型專案

Max 5x

$100

✅ 完整使用

專業開發、日常重度使用

Max 20x

$200

✅ 最高優先

全職使用 Claude Code 的人

API

按用量

✅ 可使用

靈活計費,適合進階使用者

💡 新手建議:可以先用 Pro($20/月)試試看。如果每天 coding 超過 3 小時,可以考慮升級到 Max。


四、安裝步驟

macOS / Linux / WSL(推薦)

最簡單的方式,一行指令搞定,安裝後會自動更新

打開你的 Terminal,然後輸入以下指令:

terminal-curl
abap
curl -fsSL <https://claude.ai/install.sh> | bash

macOS 使用 Homebrew

如果你習慣用 Homebrew 管理軟體,也可以透過 Homebrew 安裝。

homebrew

什麼是 Homebrew? Homebrew 是 macOS 上最常用的套件管理工具,可以用一行指令安裝各種開發者工具。如果你還沒裝過 Homebrew,先執行以下指令安裝:

abap
# 安裝 Homebrew(如果你還沒有的話)
/bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh>)"

安裝完 Homebrew 之後,再安裝 Claude Code:

abap
brew install --cask claude-code

⚠️ 注意:Homebrew 安裝的版本不會自動更新,需要定期執行 brew upgrade claude-code 來手動升級。原生安裝(curl 方式)則會自動更新,對新手來說更省心。

Windows

PowerShell:

abap
irm https://claude.ai/install.ps1 | iex

CMD:

abap
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

⚠️ Windows 需要先安裝 Git for Windows,安裝完成後記得重新開啟 Terminal 讓 PATH 生效。

確認安裝成功

abap
claude --version

如果有顯示 2.1.71 (Claude Code) 即是你已經安裝成功。 (你的版本可能會跟我不一樣,重點是能顯示版本資訊)

首次啟動

打開終端機,用 cd 指令進入你的專案資料夾,然後啟動 Claude Code:

abap
# 例如你的專案放在桌面的 my-app 資料夾
cd ~/Desktop/my-app
claude

# 又或者放在 Documents 裡面
cd ~/Documents/my-project
claude

# 如果你還沒有任何專案,先建一個空資料夾
mkdir ~/Desktop/my-first-app
cd ~/Desktop/my-first-app
claude

💡 cd 是「change directory」的意思,就是切換到某個資料夾。~ 代表你的 Home 目錄(通常是 /Users/你的名字)。

第一次執行會引導你登入帳號(claude.ai 或 Anthropic Console),之後登入資訊會儲存在你的電腦裡,不需要重複登入。


五、基本操作指南

以下全部都是在Terminal操作。

claude_masked_terminal

使用範例一:從零建立一個專案

如果你完全沒有任何專案,別擔心!你可以直接讓 Claude Code 幫你從零開始建立。

先建立一個空的資料夾,然後啟動 Claude Code:

abap
# 建立一個新資料夾
mkdir my-first-project
cd my-first-project

# 啟動 Claude Code
claude

接著用自然語言告訴它你想做什麼:

abap
> 幫我建立一個簡單的 React 網站,有首頁和關於頁面

> 幫我用 Python 寫一個 Todo List 應用程式

> 幫我建立一個 Next.js 部落格專案

Claude Code 會自動幫你建立所有需要的檔案、設定好專案結構,甚至安裝必要的套件。

使用範例二:了解現有的 Codebase

如果你已經有一個專案,可以先問 Claude Code 來了解它:

abap
> what does this project do?

> 這個專案用了哪些技術?

> explain the folder structure

> 哪裡是 main entry point?

Claude Code 會自動讀取你的檔案,你不需要手動加入 context。

使用範例三:做修改

abap
> 幫我加一個深色模式切換按鈕

> add input validation to the user registration form

Claude Code 會:

  1. 找到相關的檔案
  2. 顯示建議的修改
  3. 等你批准
  4. 執行修改
💡 Claude Code 每次修改檔案都會先徵求你的同意,不會偷偷改動。你可以逐一批准,或者開啟「Accept all」模式。

常用指令速查

指令

用途

範例

claude

啟動互動模式

claude

claude "task"

執行單次任務

claude "fix the build error"

claude -p "query"

問一個問題然後退出

claude -p "explain this function"

claude -c

繼續上次對話

claude -c

claude -r

恢復之前的對話

claude -r

互動模式 Slash 指令

指令

用途

/help

查看所有指令

/clear

清除對話記錄

/compact

壓縮對話以節省 token

/cost

查看 token 用量(主要給 API 用戶,Pro/Max 訂閱用戶會顯示「已包含在訂閱內」,可改用 /stats 查看用量)

/model

切換模型(Sonnet / Opus / Haiku)

/resume

恢復之前的對話

/login

重新登入或切換帳號

exitCtrl+C

退出 Claude Code


六、常用 Workflow

🐛 Debug:修 Bug

abap
> there's a bug where users can submit empty forms - fix it

> 這個 error message 為什麼會出現?幫我追蹤一下

Claude Code 會自動定位相關程式碼、理解 context、修好之後還會跑 test 確認。

♻️ Refactor:重構程式碼

abap
> refactor the authentication module to use async/await instead of callbacks

> 幫我把這個 function 拆成幾個更小的 functions

🧪 Testing:寫測試

abap
> write unit tests for the calculator functions

> 幫我加 edge case tests,特別是 empty input 和 null values

Claude Code 會參考你現有的 test 風格和 framework 來撰寫新的 tests。

📝 Documentation:寫文件

abap
> update the README with installation instructions

> 幫我寫 API documentation for the user endpoints

🔍 Code Review:審查程式碼

abap
> review my changes and suggest improvements

> 檢查一下有沒有 security vulnerabilities

七、CLAUDE.md — 你的專案說明書

Claude Code 每次啟動都是一個全新的 context window,不會記得上一次的對話內容。要讓 Claude 在每次 session 都了解你的專案,就需要 CLAUDE.md

根據官方文件,Claude Code 有兩套互補的記憶系統:

  • CLAUDE.md:你寫給 Claude 的持久化指令
  • Auto Memory:Claude 在工作過程中自己記下的筆記(build 指令、debug 心得、架構備註、code style 偏好等)

兩者都會在每次 session 開始時自動載入。

什麼是 CLAUDE.md?

CLAUDE.md 是一個 markdown 檔案,Claude Code 啟動時會自動讀取。你可以在裡面設定 coding standards、技術決策、偏好的 library、常用指令等等。

重要觀念:CLAUDE.md 是「context(上下文)」,不是「enforced configuration(強制設定)」。Claude 會讀取並盡量遵守,但不保證 100% 執行,特別是指令模糊或互相矛盾的時候。

放在哪裡?

新手只需要知道兩個位置:

  • 專案根目錄./CLAUDE.md — 針對這個專案的規則(最常用)
  • Home 目錄~/.claude/CLAUDE.md — 你所有專案都會套用的個人偏好

如果兩邊有衝突,專案的會優先。

💡 進階用戶還可以在子目錄放各自的 CLAUDE.md、用 .claude/rules/ 做條件式規則等,但初學階段用專案根目錄的就夠了。詳見官方文件

怎麼寫好 CLAUDE.md?(官方最佳實踐)

根據官方 Best Practices,寫好 CLAUDE.md 的關鍵原則:

1. 控制長度:每個檔案目標 200 行以內

檔案太長會消耗 context window,而且 Claude 的遵守程度會下降。如果內容太多,拆分到 .claude/rules/ 或用 @path 語法引用外部檔案。

2. 結構清晰:用 markdown headers 和 bullets 分組

Claude 掃描結構的方式跟人類讀者一樣——有組織的段落比密密麻麻的文字更容易被遵守。

3. 具體明確:寫可以被驗證的指令

  • ✅「使用 2-space indentation」
  • ❌「格式寫好一點」
  • ✅「commit 前執行 npm test
  • ❌「記得測試」
  • ✅「API handlers 放在 src/api/handlers/
  • ❌「檔案放整齊」

4. 避免矛盾:兩條規則互相衝突的話,Claude 會隨機選一個

如果你在根目錄寫「用 tabs」,子目錄又寫「用 spaces」,結果會不可預測。

5. 只放「每次 session 都需要」的資訊

如果某些資訊只是偶爾需要,放在 docs/ 資料夾然後用 @docs/filename.md 引用即可,不要塞進 CLAUDE.md 浪費 token。

範例

abap
# Project: My Awesome App

## 技術棧
- Frontend: React 19 + TypeScript + Tailwind CSS v4
- Backend: Hono on Cloudflare Workers
- Database: Neon (PostgreSQL) + Drizzle ORM
- Auth: Better Auth

## 常用指令
- Build: `pnpm build`
- Test: `pnpm test`
- Lint: `pnpm lint:fix`

## Coding Standards
- 使用英文撰寫 comments
- 所有 API responses 使用 TypeScript type
- 每個 function 都要有 JSDoc
- 使用 2-space indentation

## 注意事項
- 不要使用 any type
- 優先使用 const 和 arrow functions
- Error handling 一定要做
- commit 前必須通過 lint 和 test

Auto Memory:讓 Claude 自己學習

除了你手寫的 CLAUDE.md 之外,Claude Code 還有 Auto Memory 功能(預設開啟)。Claude 會在工作過程中自動記住有用的資訊,例如你糾正過的偏好、專案特有的 build 指令等。

管理方式:

  • 輸入 /memory 查看目前載入的所有記憶檔案
  • 瀏覽和編輯 auto memory 資料夾
  • 切換 auto memory 開關
  • 如果你想手動指定 Claude 記住什麼,直接說「add this to CLAUDE.md」或「remember that...」

快速上手

  • 使用 /init 指令,Claude Code 會分析你的 codebase 自動產生一個 starter CLAUDE.md
  • 使用 /memory 指令查看目前載入了哪些記憶檔案
  • 從小而精開始,隨著使用逐步補充

💡 Pro Tip:CLAUDE.md 太長反而會被 Claude 忽略(重要規則淹沒在雜訊中)。官方建議:如果 Claude 本來就做對的事情,就不需要寫進 CLAUDE.md;或者考慮轉成 hook 來強制執行。

📚 延伸閱讀官方文件 — Store instructions and memoriesBest Practices


八、--dangerously-skip-permissions:全自動模式

這是什麼?

預設情況下,Claude Code 每次修改檔案、執行指令都會先問你「可以嗎?」。這很安全,但如果你需要讓它自動完成大量任務,每次都要按確認會很煩。

--dangerously-skip-permissions 這個 flag 會跳過所有權限確認,讓 Claude Code 全自動執行,不再逐一問你。

怎麼用?

abap
# 啟動時加上 flag
claude --dangerously-skip-permissions

# 或搭配單次任務使用
claude --dangerously-skip-permissions "幫我把所有 console.log 清掉,然後跑一次 lint"

什麼時候該用?

  • ✅ 你對專案很熟悉,確定 Claude 不會搞壞東西
  • ✅ 做批量修改(例如全專案 lint fix、rename)
  • ✅ 搭配 CI/CD 或自動化腳本使用
  • ✅ 已經有 Git commit 可以隨時 rollback

什麼時候不該用?

  • ❌ 第一次接觸一個陌生的專案
  • ❌ 正在做重要的 production 修改
  • ❌ 你不確定 Claude 會做什麼

⚠️ 重要提醒:用這個模式之前,務必先 commit 你的程式碼。萬一出問題,可以用 git checkout .git reset 回到之前的狀態。(不熟悉 Git?別擔心,之後會有獨立文章介紹 Git 基礎。)


九、給初學者的實戰技巧

✅ 說清楚你要什麼

  • ❌「幫我改一下這個功能」
  • ✅「幫我把登入頁面的錯誤訊息改成中文,目前顯示的是英文 error message」

✅ 一次做一件事

不要同時叫它做十件事。做完一件確認沒問題,再繼續下一件。

✅ 複雜任務分步驟

abap
> 1. create a new database table for user profiles
> 2. create an API endpoint to get and update user profiles
> 3. build a webpage that allows users to see and edit their information

✅ 先了解再動手

在修改程式碼之前,可以先讓 Claude 了解你的 codebase:

abap
> analyze the database schema
> 解釋一下這個 module 的架構

✅ 善用版本控制

每次讓 Claude Code 做大幅修改之前,先把目前的程式碼存一個版本。這樣改壞了可以輕鬆回復。

💡 版本控制最常用的工具是 Git,之後會有獨立篇章詳細介紹。

✅ 善用 /compact 節省 Token

對話太長會影響 Claude 的表現(因為 context window 會塞滿)。定期使用 /compact 壓縮對話,清掉已完成的討論內容。

✅ 善用快捷鍵

  • ? 查看所有 keyboard shortcuts
  • Tab 做 command completion
  • 查看 command history
  • 輸入 / 查看所有 slash commands

十、常見問題 FAQ

Q:需要會寫程式才能用嗎?

A:不需要,但懂一些基礎會更容易溝通。就算完全不會寫程式,你也可以用自然語言描述需求,Claude Code 會幫你搞定。

Q:Claude Code 支援哪些程式語言?

A:所有主流語言都支援,包括 TypeScript、Python、Rust、Go、Java、Kotlin、Swift 等。它可以讀取任何語言的程式碼。

Q:Claude Code 會不會把我的程式碼傳到雲端?

A:對話內容會傳送給 Anthropic 的 API 處理,但程式碼不會被長期儲存。詳見官方隱私政策。

Q:可以離線使用嗎?

A:不行,需要網路連線。

Q:可以用哪些 Model?

A:可以使用 Sonnet(快速、便宜)、Opus(最聰明、較貴)和 Haiku(最快、最便宜),用 /model 指令切換。建議日常使用 Sonnet,遇到複雜任務再切換到 Opus。

Q:Context window 滿了怎麼辦?

A:Claude Code 會自動 compact(壓縮),你也可以手動使用 /compact 或用 /clear 清空後重新開始。