MO STORIES

用 Claude Code 打造個人 AI Agent:Hooks、排程、MCP 完整教學(2026)

2026年4月1日16 MIN READ

最後更新:2026-04-04 這篇聚焦 Hooks / Scheduled Tasks / MCP。如果你是在找 Claude Code 入門教學、安裝、權限或常用指令,先讀 Claude Code 教學與實戰指南:從安裝、指令到專案工作流(2026)。 AI Agent 跟聊天機器人差在哪? 聊天機器人是「你問它答...

用 Claude Code 打造個人 AI Agent:Hooks、排程、MCP 完整教學(2026)
Cover Visual

最後更新:2026-04-04

這篇聚焦 Hooks / Scheduled Tasks / MCP。如果你是在找 Claude Code 入門教學、安裝、權限或常用指令,先讀 Claude Code 教學與實戰指南:從安裝、指令到專案工作流(2026)

AI Agent 跟聊天機器人差在哪?

聊天機器人是「你問它答」——你丟一個問題,它回一段文字,結束。AI Agent 完全不同:你給它一個目標,它自己拆解任務、執行動作、檢查結果,再決定下一步。

用台灣場景比喻:聊天機器人像超商店員,你問「有沒有茶葉蛋」它回答你。Agent 像你請的外送員——你說「幫我買午餐」,他自己查菜單、下單、取餐、送到你手上。

Agent 的運作邏輯是一個循環:

感知:讀取環境資訊(檔案、API 回傳、資料庫)
推理:根據目標判斷下一步該做什麼
行動:執行具體操作(寫檔、呼叫 API、跑指令)
回饋:檢查結果,決定要繼續還是結束

這個循環會自動跑下去,直到任務完成或遇到需要你介入的狀況。你不需要一步一步指揮它,它自己會判斷。


Claude Code 為什麼適合當 Agent 骨架

Claude Code 是 CLI 工具,直接跑在你的專案目錄裡。它天生就有 agentic loop——你下一個指令,它會自己讀檔案、搜尋程式碼、修改內容、跑終端指令、檢查 diff,全部自動串起來。

它的內建工具就是 Agent 的「手腳」:Bash 跑指令、Read 讀檔、Edit 改檔、Write 寫檔、Grep 搜內容、Glob 找檔案。加上 CLAUDE.md 當「長期記憶」、Skills 當「行為模組」,一個完整的 Agent 架構就成形了。

跟其他方案比起來:

方案 學習成本 需要自己寫框架 本地執行 內建工具
Claude Code 不用 Bash/Read/Edit/Write/Grep/Glob
LangChain 需自己接
AutoGPT 部分 有但不穩定
CrewAI 需自己定義

Claude Code 的優勢很明確:零框架程式碼、直接用、工具齊全。想深入了解基礎操作,可以先看 Claude Code 教學與實戰指南:從安裝、指令到專案工作流(2026)


Hooks:讓 Agent 自動執行規則

Hooks 是 Claude Code 的自動規則系統。你預先定義「在什麼時機、執行什麼動作」,Claude Code 會在對應的生命週期事件觸發時自動執行,不需要你手動下指令。

4 種 Hook 類型

類型 做什麼 適合場景
command 執行 shell 指令 跑 linter、格式化、部署
http 發 POST 到指定 endpoint 通知 webhook、觸發外部服務
prompt 單輪 LLM 呼叫 快速檢查、摘要產生
agent 多輪 subagent 對話 複雜子任務、需要多步推理

常用生命週期事件

事件 觸發時機
PreToolUse 工具執行前(可攔截或修改)
PostToolUse 工具執行後
UserPromptSubmit 使用者送出指令時
Notification 產生通知時
Stop Agent 結束任務時

實戰範例

① 檔案保護 Hook:禁止修改特定檔案

{
  "hooks": {
    "PreToolUse": [
      {
        "type": "command",
        "command": "if echo \"$CLAUDE_TOOL_INPUT\" | grep -q 'package-lock.json'; then echo 'BLOCK: 不要動 package-lock.json'; exit 1; fi",
        "description": "保護 lock 檔不被修改"
      }
    ]
  }
}

這個 hook 會在 Claude Code 嘗試寫入 package-lock.json 時自動攔截。關於權限控制的更多細節,參考 Claude Code 權限怎麼設?permission modes、allowlist 與安全設定完整整理(2026)

② 通知 Hook:任務完成推送 Telegram

{
  "hooks": {
    "Stop": [
      {
        "type": "http",
        "url": "https://api.telegram.org/bot<YOUR_TOKEN>/sendMessage",
        "body": {
          "chat_id": "<YOUR_CHAT_ID>",
          "text": "Claude Code 任務完成:$CLAUDE_STOP_REASON"
        },
        "description": "任務結束時推送 Telegram 通知"
      }
    ]
  }
}

搭配 Telegram 通知的完整設定,參考 Claude Code Telegram 實戰:5 個我每天在用的手機工作流(2026)

③ 格式化 Hook:Write 後自動跑 Prettier

{
  "hooks": {
    "PostToolUse": [
      {
        "type": "command",
        "command": "if [ \"$CLAUDE_TOOL_NAME\" = 'Write' ]; then npx prettier --write \"$CLAUDE_TOOL_INPUT_FILE_PATH\"; fi",
        "description": "寫檔後自動格式化"
      }
    ]
  }
}

這些設定都寫在 .claude/settings.json 裡,project 級別或 user 級別都可以。


Scheduled Tasks:讓 Agent 定時巡邏

Claude Code 支援排程任務,讓 Agent 在你指定的時間自動啟動、執行、回報。三種方式各有適用場景:

方式 執行環境 離線可跑 適合場景
Cloud Scheduled Tasks Anthropic 雲端 每日報表、PR review、定期檢查
Desktop Scheduled Tasks 本機背景 否(要開機) 本地檔案整理、本地 repo 維護
/loop Session 內 即時監控、持續輪詢 API

建立第一個排程任務

在 Claude Code 裡直接下指令就能建立:

/schedule create daily-gsc-report --cron "0 9 * * *" --prompt "讀取 GSC 報表並摘要今日排名變化,推送到 Telegram"

或者用互動方式:

① 執行 /schedule 進入排程管理
② 選擇「Create new task」
③ 設定名稱、cron 表達式、執行指令
④ 確認啟用

實戰:每天早上 9 點跑 GSC 報表推送 Telegram

{
  "taskId": "daily-gsc-report",
  "cronExpression": "0 9 * * 1-5",
  "prompt": "執行 node scripts/gsc/fetch-report.mjs 取得今日 GSC 資料,整理排名上升/下降前 10 名關鍵字,用繁體中文格式化後透過 Telegram API 推送到指定 chat_id",
  "description": "工作日早上 9 點自動產生 GSC 報表"
}

Cron 用的是本地時區,0 9 * * 1-5 就是週一到週五早上 9 點。排程任務跑完後會自動記錄執行結果,你可以用 /schedule list 查看歷史。


MCP Server:讓 Agent 連接外部世界

MCP(Model Context Protocol)是讓 Claude Code 用標準協議呼叫外部工具的機制。你可以把任何 API 包成 MCP Server,Claude Code 就能像用內建工具一樣使用它。

設定流程

# 加入一個 MCP server
claude mcp add github-mcp --command "npx @anthropic-ai/github-mcp"

# 查看已安裝的 MCP
claude mcp list

# 移除
claude mcp remove github-mcp

3 個串接範例

① GitHub MCP:直接操作 PR 和 Issue

claude mcp add github --command "npx @anthropic-ai/github-mcp" --scope project

裝好後 Claude Code 可以直接建 PR、review 程式碼、留 comment、關 issue。搭配 GitHub Actions 的用法參考 Claude Code GitHub Actions 教學:怎麼讓 @claude 幫你處理 issue 和 PR(2026)

② Notion MCP:讀寫資料庫

claude mcp add notion --command "npx @anthropic-ai/notion-mcp" --scope user

可以查詢 Notion 資料庫、新增頁面、更新屬性。適合把 Notion 當 CMS 的工作流。

③ n8n MCP:觸發自動化 Workflow

claude mcp add n8n --command "npx n8n-mcp-server" --scope project

可以列出 n8n workflow、觸發執行、查看執行結果。把 Claude Code 當 n8n 的語音遙控器。

Scope 設定

Scope 作用範圍 設定檔位置
user 所有專案共用 ~/.claude/settings.json
project 僅當前專案 .claude/settings.json

建議:通用型工具(GitHub、Notion)設 user scope,專案專屬的設 project scope。設定完用 claude mcp list 確認狀態。


Skills + CLAUDE.md:打造 Agent 的記憶層

CLAUDE.md 是專案根目錄的指令檔,Claude Code 每次啟動都會讀取。它等於 Agent 的「長期記憶」——你的品牌規範、目錄結構、常用指令都寫在這裡,Agent 每次上工都會先複習一遍。

Skills 是可重複使用的行為模組。每個 Skill 是一個 Markdown 檔案,定義了特定任務的完整流程。用 /skill-name 就能觸發。

怎麼組合

CLAUDE.md 負責「路由」——告訴 Agent 遇到什麼任務該呼叫哪個 Skill:

## Skill 路由表
| 任務類型 | Skill |
|----------|-------|
| SEO 文章 | `/seo-writer` |
| 社群發佈 | `/social-platform-automation` |
| 電子報 | `/wp-newsletter-draft-send` |

Skill 負責「深度行為」——每個 Skill 裡面定義了完整的 SOP、範本、檢查清單。

範例:品牌寫作系統

① CLAUDE.md 放語氣規則(禁用詞、句型、段落限制)
/seo-writer Skill 放完整 SEO 流程(關鍵字研究 → 大綱 → 撰寫 → Schema 標記)
/brand-guidelines Skill 放品牌語氣的完整規範

Agent 寫文章時,先讀 CLAUDE.md 確認基本規則,再載入對應 Skill 取得深度指引。這樣即使換了 session,Agent 的行為也一致。


實戰:打造「每日品牌巡檢 Agent」

把前面的零件全部組裝起來,打造一個每天早上自動巡檢的 Agent。

目標

每天早上 9 點自動:
① 檢查 GSC 排名變化(哪些關鍵字上升/下降)
② 檢查 GA4 流量異常(昨天 vs 上週同日)
③ 檢查 Notion 裡有沒有待發佈的社群貼文
④ 把巡檢報告推送到 Telegram

架構

Scheduled Task(每天 9:00 觸發)
  → MCP:讀 GSC 排名資料
  → MCP:讀 GA4 流量資料
  → MCP:查 Notion 待發貼文
  → 整理巡檢報告
  → Hook(Stop):推送 Telegram 通知

設定步驟

Step 1:確認 MCP Server 已安裝

claude mcp list
# 確認有 notion、gsc 相關的 MCP

Step 2:建立排程任務

{
  "taskId": "daily-brand-patrol",
  "cronExpression": "0 9 * * *",
  "prompt": "執行每日品牌巡檢:1) 跑 node scripts/gsc/fetch-report.mjs 取得 GSC 資料,找出排名變化超過 3 位的關鍵字;2) 跑 node website/scripts/ga4-report.mjs 取得昨天流量,跟上週同日比較;3) 查 Notion 社群資料庫中 due_date 為今天的貼文;4) 整理成巡檢報告",
  "description": "每日品牌巡檢 Agent"
}

Step 3:設定完成通知 Hook

.claude/settings.json 加入:

{
  "hooks": {
    "Stop": [
      {
        "type": "http",
        "url": "https://api.telegram.org/bot<TOKEN>/sendMessage",
        "body": {
          "chat_id": "<CHAT_ID>",
          "text": "品牌巡檢完成,請查看報告"
        }
      }
    ]
  }
}

Step 4:驗證

# 手動觸發一次測試
/schedule run daily-brand-patrol

巡檢報告會推送到你的 Telegram。手機端的完整設定,參考 Claude Code Telegram 實戰:5 個我每天在用的手機工作流(2026)


常見問題 FAQ

Hook 設好了但沒觸發?

三個地方檢查:① settings.json 的路徑是否正確(project 級在 .claude/settings.json,user 級在 ~/.claude/settings.json)② 事件名稱有沒有拼錯(大小寫敏感,是 PreToolUse 不是 pretooluse)③ command 的 exit code——回傳非 0 會被當作 hook 失敗。

Scheduled Task 排程延遲怎麼辦?

Cloud 排程會有幾分鐘的正常延遲,這是為了分散伺服器負載。Desktop 排程需要你的電腦開著且 Claude Code 在背景運行。如果延遲超過 10 分鐘,檢查 cron 表達式是否正確、網路是否穩定。

MCP Server 連不上怎麼除錯?

① 先跑 claude mcp list 確認 server 有註冊 ② 手動執行 MCP 的 command 看有沒有錯誤訊息 ③ 檢查環境變數(API key、token)是否設定 ④ 看 ~/.claude/logs/ 裡的 MCP 相關 log。

非工程師能用 Agent 嗎?

可以,但需要基本的終端操作能力(會 cd、會打指令)。Hooks 和排程的設定檔是 JSON,照範本改就好。MCP 的安裝指令也是一行搞定。門檻比寫 Python 低很多。

Claude Code Agent 跟 Claude Agent SDK 差在哪?

Claude Code 是終端工具,面向個人使用者,直接在你的專案目錄裡跑。Agent SDK 是開發框架,面向開發者,用來建構可部署的 Agent 應用程式。簡單說:你自己用選 Claude Code,要做產品選 Agent SDK。


收尾

Agent 的核心價值:從「你操作工具」變成「工具替你巡邏」。你設定好規則、排程、串接,Agent 就會每天自動執行。你只需要看報告、做決策。

Claude Code 把 Agent 的門檻壓到很低——不用學框架、不用寫 boilerplate、不用管部署。一個 CLAUDE.md、幾個 Hooks、一組排程、幾個 MCP Server,你的個人 AI Agent 就跑起來了。


參考來源


MO 編輯

關於作者 | 10+ 經驗

MO 編輯

WordPress 效能優化專家 / MO Design Studio 共同創辦人

關注設計 × 工程的平衡協作,擅長以簡潔語言說故事。專門幫已有網站的品牌做速度升級。相信好網站不用重做,只需要正確的優化。

WordPress 優化SEO 策略Headless CMS效能稽核

延伸閱讀

Newsletter

訂閱瘦生活電子報

每週一封故事信——分享如何用減法思維剔除雜訊、做對的事、過好生活。不說教,不推銷,只有真實的取捨紀錄。

我們尊重隱私,絕不發送垃圾郵件。可隨時取消訂閱。

MO DESIGN STUDIO

我們專注品牌網站設計、行銷著陸頁與整合式 CMS 流程,協助團隊打造有感的線上體驗。

返回部落格