標籤: Claude

  • Claude 永續 Agent Warm-Cache 實戰

    Claude 永續 Agent Warm-Cache 實戰

    📌 本文重點

    • 全上下文重送會讓長期 Agent 在成本與延遲上崩盤
    • 用 Warm-Cache 三層快取可把成本壓到約 1/8
    • 短期 context + 向量庫分層記憶可兼顧長期記憶與成本
    • 嚴格工具邊界與審計是讓 Claude Agent 能上線的關鍵

    在 Discord 上跑一個長期管理 AWS 基礎設施與程式碼的 Claude Agent,如果每次請求都把 全上下文重送,你很快就會發現兩個殘酷事實:token 費用爆炸延遲高到用不下去。實測數據來看,透過 Warm-Cache + 分層記憶架構,可以把成本壓到原本的 1/8 左右,P95 latency 也從 10+ 秒壓到 3 秒內,而且邏輯與安全性更可控。

    💡 關鍵: 透過結構化快取與記憶分層設計,可以同時把成本壓到約 1/8,並把 P95 延遲從 10 秒級降到 3 秒內,讓長期 Agent 實際可用。


    重點說明

    1. 為什麼「全上下文重送」會崩盤?

    典型實作:

    • 每個 Discord 訊息 → 直接呼叫 /v1/messages
    • 完整對話歷史 + 工具定義 + 系統提示 一起丟進去

    問題:

    1. token 費用幾乎線性成長:對話越長,每次重送的 tokens 越多,長期 Agent 變成「每句話都在重付歷史學費」。
    2. 延遲被序列化成本綁死:100K context 每次 encode / decode 都是固定開銷,沒做 cache 再快的模型也救不了。
    3. 易爆 context:聊久一點就逼近上限,被系統自動截斷,Agent 出現「金魚記憶」。

    結論:永續 Agent 若不做 Prompt Caching,本質上不具備經濟可行性。

    💡 關鍵: 對長期 Agent 而言,不做 Prompt Caching 意味著 token 成本和延遲會隨時間線性惡化,最終失去經濟可行性。


    2. Warm-Cache 三層設計:工具、系統提示、歷史

    核心想法:把「幾乎不變」的部分從請求中抽出來,讓 Claude 的 Prompt Caching 真正生效,同時在你自己的系統再加一層 cache。

    三層結構:

    1. 工具定義層(Tools Cache)
    2. 例如 AWS 管理、Git 操作、MemPalace 查詢等工具定義
    3. 穩定的 ID + 版本號 來標記(例如 aws_tools:v3
    4. 實作:

      • 本地用 JSON 檔TypeScript enum 管理
      • 對 Claude 端利用 prompt_cache_key(概念上,可用 system prompt 方式固定)
    5. 系統提示層(System Prompt Cache)

    6. 定義 Agent 的角色、邊界、倫理規則(例如只能操作 Private VPC 而非公網)
    7. 變動頻率低,但會跟版本、環境(staging/prod)綁定
    8. 推薦:用 template + 版本號,例如 discord_infra_agent:v5

    9. 歷史記錄層(Conversation Cache)

    10. 只快取「近期對話 + 工具呼叫結果」的短期記憶
    11. 長期記憶丟給向量庫(MemPalace / 自建 Milvus / PGvector),避免塞爆 context
    12. 每個 channel / user 維護一個 sliding window,例如最近 30 則訊息

    典型資料結構(TypeScript):

    type CacheKey = string; // e.g. "tools:aws:v3", "sys:discord_agent:v5"
    
    interface WarmCacheEntry {
      version: string;
      contentHash: string;
      serialized: string;   // 已處理過、可直接拼進 messages 的 JSON 字串
      updatedAt: number;
    }
    
    class WarmCache {
      private store = new Map<CacheKey, WarmCacheEntry>();
    
      get(key: CacheKey): WarmCacheEntry | undefined {
        return this.store.get(key);
      }
    
      set(key: CacheKey, entry: WarmCacheEntry) {
        this.store.set(key, entry);
      }
    }
    

    版本管理與失效策略:

    • 工具或系統提示改版 → 直接 變更 version(v3v4,讓舊 cache 自然失效
    • 每次啟動時計算一遍 contentHash,若 hash 改變但 version 沒變,log 出警告避免「隱性分叉」

    3. 長期記憶:MemPalace + 短期上下文的分層設計

    要讓 Agent 在 Discord 長期「記得」你的 AWS 結構、服務慣例,又不把所有東西塞進 context,做法是:

    1. 短期記憶(Context Window)
    2. Warm-Cache 上的歷史層,只保留最近 N 回合(例如 30)
    3. 專門服務「連續對話」與「工具呼叫之前的局部上下文」

    4. 長期記憶(向量庫 / MemPalace)

    5. 把:
      • 專案 README
      • 關鍵 AWS 架構說明
      • 常見 Runbook / SOP
    6. 全部 embed 成向量,存進 MemPalace / 其他向量庫

    7. 查詢流程:

    8. 使用者問問題 →

    9. 先以「channel + user + 問題」做 embedding,去 MemPalace 找 Top-K 相關記憶片段
    10. 把這些片段壓縮後,丟進當次 system 或 user message 的前置 context

    簡單 Python 記憶層(SQLite + 向量庫 ID)示意:

    import sqlite3
    
    conn = sqlite3.connect("memory.db")
    cur = conn.cursor()
    
    cur.execute("""
    CREATE TABLE IF NOT EXISTS long_term_memory (
      id INTEGER PRIMARY KEY,
      user_id TEXT,
      channel_id TEXT,
      vector_id TEXT,   -- 真正的向量存在 MemPalace / pgvector
      summary TEXT,
      created_at INTEGER
    );
    """)
    
    # 檢索時:先從 MemPalace 拿相關 vector_id,再 join 回 summary
    

    好處:

    • context 永遠保持在一個可以預估的上限
    • 記憶可審計、可搜索,而不是全埋在 opaque 的 token 流裡

    實作範例

    1. Node.js:Claude Warm-Cache middleware

    以下是假想的 middleware,包裝 /v1/messages 呼叫,示意如何組合三層快取與向量記憶:

    import { claudeClient } from "./claude";
    import { WarmCache } from "./warmCache";
    import { fetchMemories } from "./memPalace";
    
    const cache = new WarmCache();
    
    export async function handleDiscordMessage(ctx: {
      channelId: string;
      userId: string;
      message: string;
      history: any[]; // 最近 N 則對話
    }) {
      const toolsKey = "tools:aws:v3";
      const sysKey = "sys:discord_infra_agent:v5";
    
      const tools = cache.get(toolsKey) ?? buildAndCacheTools(toolsKey);
      const systemPrompt = cache.get(sysKey) ?? buildAndCacheSystem(sysKey);
    
      const longTerm = await fetchMemories(ctx.userId, ctx.channelId, ctx.message);
    
      const messages = [
        { role: "system", content: systemPrompt.serialized },
        { role: "user", content: buildUserContent(ctx.message, longTerm) },
        ...ctx.history
      ];
    
      const res = await claudeClient.messages.create({
        model: "claude-3.7-sonnet",
        max_tokens: 1024,
        tools: JSON.parse(tools.serialized),
        messages
      });
    
      return res;
    }
    

    關鍵點:

    • toolssystemPrompt 都是快取後的 序列化結果,避免每請求重組
    • history 控制在固定長度,長期記憶透過 fetchMemories 注入

    2. Claude 系統 Prompt 模板(安全與邊界)

    你是一個在 Discord 裡專門協助管理 AWS 基礎設施與程式碼庫的 Agent。
    
    嚴格規則:
    - 只能透過提供的工具存取資源,禁止自行連線外部網路。
    - 所有操作必須限制在指定的 AWS Account 與 VPC,禁止新增具有公開網路權限的資源。
    - 若使用者要求執行具破壞性的操作(刪庫、清 bucket、關閉整個叢集),必須:
      1. 先以自然語言解釋風險與影響。
      2. 要求使用者提供明確確認字串(例如 "CONFIRM_DELETE_PROD")。
      3. 仍應優先建議更安全的替代方案。
    
    審計要求:
    - 對每一次工具呼叫,以簡潔 JSON 描述操作意圖與參數,方便後續寫入 audit log。
    

    3. Redis-based 歷史快取(短期記憶)

    import redis
    import json
    
    r = redis.Redis(host="localhost", port=6379, db=0)
    
    HISTORY_LIMIT = 30
    
    def push_history(channel_id: str, message: dict):
      key = f"history:{channel_id}"
      r.lpush(key, json.dumps(message))
      r.ltrim(key, 0, HISTORY_LIMIT - 1)
    
    def get_history(channel_id: str):
      key = f"history:{channel_id}"
      return [json.loads(x) for x in r.lrange(key, 0, -1)][::-1]
    

    建議與注意事項

    1. 監控:請求數、token、P95 latency 要一起看

    至少打三個 metrics:

    • token_usage_total:區分 prompt / completion / cache-hit
    • request_latency_ms:P50 / P95 / P99,分 model / route
    • tool_invocation_count:看 Agent 是否頻繁誤用工具

    優化策略:

    • 發現 P95 延遲高但 token 不高 → 多半是工具 / 外部 API 慢
    • 發現 token 緩慢上升 → 歷史快取 window 太大、向量記憶注入過多

    2. MCP / 工具設計:少而精 + 嚴格邊界

    • 像 PullMD 那樣,利用 MCP 把「HTML 轉 Markdown」這種重複工作下沉到工具層,避免讓 LLM 直接吃原始 HTML,token 省很大。
    • 工具要:
    • 明確輸入輸出 schema
    • 在私有網路中運行(Docker / Kubernetes namespace)
    • 只開最小必要權限(IAM 最小權限 + security group 限制)

    3. 避免「刪庫跑路」:幾個實務守則

    1. 只給「建議權」不給「直接執行權」 在 production
    2. 例如:Agent 只能產生 Terraform / CloudFormation patch,由人類 review + apply。
    3. 所有破壞性操作都經過雙重 gate:
    4. system prompt 要求二次確認
    5. backend 還要檢查「環境 + 操作類型」,prod 一律走人工流程
    6. 完整審計 log:
    7. 記錄:使用者指令、模型輸出、工具參數、執行結果
    8. 存在 append-only storage(CloudWatch Logs / Loki / S3 + Object Lock)

    4. 部署拓撲:限制在私有網路

    • Discord Bot → Gateway → Agent 後端(VPC 內)→ MCP 工具(同 VPC)
    • 往外只有到 Claude API + 向量庫(若是 SaaS) 的 egress
    • 不讓 Agent 直接 hit 公網,避免「自己 curl 一個 random script 來跑」這類事故

    總結:

    • Warm-Cache 三層快取(工具、系統、歷史)+ 分層記憶(短期 context + MemPalace 長期記憶),可以在實戰中穩定做到 成本 ≈ 1/8、P95 latency < 3s
    • 關鍵不是「多堆一點 GPU」,而是把「一次性 prompt」變成「可重用的結構」,再加上嚴格邊界與審計,讓你的 Claude 永續 Agent 真正能上 production。

    把上面的 middleware + Redis + SQLite/向量庫實作搬進你的客服 bot、infra bot 或內部 Copilot,大部分情況下只需要換掉工具與系統 prompt,就能直接開始省錢又提速。

    🚀 你現在可以做的事

    • 在現有 Discord / Slack Bot 中,先實作一層 Warm-Cache,把工具定義與系統提示抽出並版本化
    • 建一個最小可行的向量庫(MemPalace 或 pgvector),將 README、架構文件與 Runbook 全部 embed 進去
    • 為 production 環境補上系統 prompt 邊界、工具權限縮減與審計 log pipeline,驗證一條完整安全鏈路
  • 用 Claude 直接操控 Photoshop、Blender

    用 Claude 直接操控 Photoshop、Blender

    📌 本文重點

    • Claude 透過 MCP 直接遠端操作 Blender / Photoshop / Ableton
    • 文字或語音就能生成場景、批次改圖與拉編曲草稿
    • 適合接案設計、3D 新手與小工作室提升產能
    • AI 負責「動手」、人類負責審核與最後決策

    用一句話講完:Claude 現在可以直接「動手幫你點 Photoshop、拉 Blender、調 Ableton」,把原本要慢慢點選單的操作變成一句話完成。

    文中提到的功能,來自 Anthropic 官方的 Claude 連接器(connectors / MCP),可參考:官方介紹The Verge 報導


    核心功能:先搞懂 MCP / Connector 是什麼

    先用白話講:

    • MCP(Model Context Protocol):一個「統一插頭」,讓 Claude 能安全地跟電腦上的軟體溝通。
    • Connector(連接器):插上這個「插頭」的具體線,比如 Blender 連接器、Photoshop 連接器、Ableton 連接器。

    你在 Claude 視窗打字(或用語音),它就會透過這些連接器,去幫你在軟體裡做事:

    不是教你怎麼點,而是直接幫你點。

    💡 關鍵: MCP 就像一個標準插頭,讓同一個 Claude 可以安全地「代操作」多種專業軟體,而不用每套軟體各自學一次指令。

    下面分軟體看可以做什麼,對應你可以立刻試的操作。


    1. 在 Blender 裡:從「文字」變成「場景」

    已知可做到的事(參考 Blender MCP 討論):

    • 用一句話生成低模場景
    • 自動清理 3D 掃描(減面、去雜訊、重新擺正)
    • 批次改物件、材質、節點
    • 調燈光、相機與渲染設定

    你可以直接試:

    中文範例

    「請用 Blender 連接器幫我:
    1. 建一個低多邊形海灘場景,有海水、沙灘、幾棵椰子樹和夕陽光線。
    2. 幫場景加三個鏡頭角度,並各渲染一張 1080p 圖片。
    完成後把相機位置和燈光設定整理成註解寫在場景裡。」

    English prompt

    “Using the Blender connector: create a low poly beach scene with palm trees and warm sunset lighting. Set up three different camera angles and render 1080p images for each. Add comments in the scene explaining the camera and lighting setup so I can learn from it.”

    如果你有 3D 掃描模型(例如 KIRI Engine 匯出的 .obj):

    「我已經在 Blender 開了一個場景,裡面有一個植被很多的 3D 掃描模型:
    – 幫我移除空中漂浮的碎片、把面數降低但保留大形體。
    – 調整模型讓主要主體正立,放在世界原點附近。
    – 加一套簡單三點打光並渲染 1 張預覽圖。」


    2. 在 Photoshop(或 Adobe 系列):用文字批次改圖

    依據 The Verge 報導,Claude 的 Adobe 連接器可以:

    • 建立新檔、開啟指定檔案
    • 新增 / 重新命名 / 隱藏圖層
    • 批次套用濾鏡、調整顏色
    • 幫你把繁瑣的重複動作寫成動作 / 腳本風格流程

    你可以直接試:

    「使用 Photoshop 連接器,幫我開啟這個專案檔:branding_master.psd
    1. 找出所有 LOGO 圖層,統一命名規則為 logo/版本名稱
    2. 把所有社群貼文尺寸的畫板,輸出為 1200×1200 PNG,背景保持透明,存到桌面的 export/social 資料夾。」

    再試一個批次調色:

    “Use the Adobe Photoshop connector to:
    – Duplicate the current file.
    – Create a new adjustment layer that slightly increases contrast and saturation for social media.
    – Apply it only to layers tagged as product shots and export them as high-quality JPGs in a new social_tuned folder.”

    💡 關鍵: 透過 Photoshop 連接器,原本要手動點選數十次的批次輸出與調色,可在一個指令裡一次完成,省下大量重複勞動。


    3. 在 Ableton:用語音/文字拉出編曲草稿

    根據官方說明,Ableton 連接器可以:

    • 建立 MIDI clip、放進不同 track
    • 調整節奏、loop 長度
    • 插入預設樂器和效果器

    你可以直接試:

    「用 Ableton 連接器幫我建立一個 120 BPM 的 lo‑fi 草稿:
    – 4 小節鼓組 loop、4 小節貝斯循環、8 小節和弦鋪底。
    – 風格接近 chillhop,請幫我選擇合適的內建音色。
    – 完成後 loop 成 90 秒,並匯出一個 MP3 demo。」


    常見連接器對照表

    名稱 核心功能 免費方案 / 價格狀況* 適合誰
    Blender Connector 生成低模場景、清理掃描、批次改物件 Blender 本身免費;Claude 需帳號 3D 新手、接案 3D 設計、技術美術
    Adobe Connector 控制 Photoshop / Illustrator 等操作 需 Adobe 訂閱+Claude 帳號 視覺設計、品牌設計、社群素材製作者
    Ableton Connector 建立 clip、調 tempo、插入樂器與效果 需 Ableton 授權+Claude 帳號 音樂製作人、Podcast / 影片配樂創作者

    *實際價格依 Anthropic / 各軟體官方方案為準。

    💡 關鍵: 軟體本身的授權費用照舊,只要多一個 Claude 帳號,就能把同一套 AI 工作流套用到 3D、平面與音樂三種不同領域。


    適合誰用:三種典型工作流

    1. 接案設計師:快速出 2–3 套草稿

    痛點:提案時間永遠不夠,客戶只看得見「改幾版」的速度。

    可以這樣用:

    • 在 Photoshop 連接器裡,讓 Claude 幫你:
    • 批次換配色(品牌 A / B / C)
    • 自動重排文案位置產生幾個版型
    • 一次輸出多尺寸(FB、IG、Story)

    示範提示詞:

    「我有一套活動主視覺 PSD,請用 Photoshop 連接器幫我:
    1. 複製成三個版本:藍色科技感、綠色環保感、紅色節慶感。
    2. 每個版本輸出 1920×1080 與 1080×1080 各一張 JPG,壓縮適合網路使用。」


    2. 3D 新手:用語音完成原本要學幾週的操作

    痛點:從「什麼是 Modifier」到「會做一個完整場景」中間的學習斷層很大。

    把 Claude 當成 3D 技術長:

    • 讓它先幫你生成場景
    • 再請它用註解方式教你每一步為什麼這樣做

    示範提示詞:

    「用 Blender 連接器幫我做一個簡單的『賽博朋克風格房間』:
    – 包含牆壁、桌子、椅子、一扇窗戶和幾個霓虹燈招牌。
    – 每做完一步,請在場景中用 Text 或註解標出用到的 Modifier / Node,並用給初學者看的方式解釋。」

    這種用法不是要你完全不學,而是先讓你有東西可以拆解和模仿


    3. 小工作室:把重複性建模與場景調整交給 AI

    痛點:案子多、人手少,很多時間浪費在「一點點改動但要改很多檔」。

    可以把 Claude 當「批次處理工程師」:

    • 批量改 20 個產品模型的尺寸或命名規則
    • 為一整批場景統一燈光風格
    • 自動加上 Render Layer、AOV 等技術設定

    示範提示詞:

    “Using the Blender connector, go through all objects whose name starts with prod_:
    1. Uniformly scale them so their longest dimension is 1.5m.
    2. Apply scale and center them on the ground plane.
    3. Set up a consistent three-point lighting rig and a 4K render preset for turntable animations.”


    怎麼開始:一個晚上跑完第一個 AI + Blender / Photoshop 專案

    步驟 1:安裝 Claude 桌面版

    1. 到 Anthropic 官網下載桌面版 Claude(目前支援 macOS / Windows):https://www.anthropic.com
    2. 用你的帳號登入(有地區或方案限制時,依官方最新說明為準)。

    步驟 2:在 Claude 內啟用連接器

    1. 打開 Claude 桌面版,找到 Connectors / 連接器 目錄(通常在側邊欄或設定中)。
    2. 在列表中找到:
    3. Blender Connector / Blender MCP
    4. Adobe / Photoshop Connector
    5. Ableton Connector
    6. 按「啟用」或「Add」,依提示授權存取你的軟體(可能會需要:
    7. 安裝一個 Blender 外掛
    8. 在 Adobe / Ableton 裡允許外部控制 / API)
    9. 確認 Claude 視窗中可以看到類似「Blender 連接器已可用」的訊息。

    步驟 3:建立你的第一個專案流程

    建議你照這個順序玩一輪,一個晚上夠用:

    1. Blender:生成一個低模場景
    2. 在 Claude 打:
      > 「請使用 Blender 連接器,從空白場景幫我建立一個低多邊形咖啡廳內部,並渲染一張 1920×1080 圖。」

    3. Photoshop:接手做後製

    4. 把剛剛渲染圖匯入 Photoshop 專案。
    5. 在 Claude 裡說:
      > 「用 Photoshop 連接器,幫我在這張圖上加上柔和的暗角與暖色調色,並加一個簡單的標題排版。」

    6. Ableton(選擇性):做一小段配樂 Demo

    7. 在 Claude 中下指令,讓它用 Ableton 連接器做 30–60 秒的 BGM 草稿。

    做到這裡,你就完成了:

    一個 Blender 場景 → Photoshop 調整 → Ableton 配樂的「全 AI 代操」小專案。


    實用安全界線:哪些步驟一定要人工檢查?

    AI 可以幫忙「動手」,但這幾件事建議你一定要自己看過:

    1. 3D 模型結構
    2. 工程用途(3D 列印、製造)時,一定要檢查:尺寸、厚度、是否有穿模、布林是否正常。
    3. 可參考這篇完全用 Claude 建模樹莓派外殼的例子,但作者也強調自己有做實體驗證:Raspberry Pi 外殼實例

    4. 美術風格與品牌一致性

    5. Photoshop 產出的調色與排版,只是起點,仍要你自己調校成符合品牌指引的版本。

    6. 版權與素材來源

    7. 若 Claude 幫你拉進外部素材(字型、圖片、音樂 loop),要確認授權是否可商用。

    8. 效能與檔案體積

    9. 大型場景、4K 貼圖、複雜節點:請注意電腦吃不吃得下,必要時指示 Claude:
      > 「請優先考慮效能,把貼圖解析度、粒子數量控制在中等。」

    只要把 AI 當成「會操作軟體的助手」,而不是「最終負責人」,就能在安全範圍內,把重複操作、初稿生成通通丟給它處理。


    行動建議總結:

    1. 今晚先安裝 Claude 桌面版+啟用 Blender 連接器。
    2. 用文中範例 prompt 做出第一個低模場景,再丟到 Photoshop 做一版海報。
    3. 每做完一個步驟,就要求 Claude 把操作邏輯寫成註解,順便當學習筆記。

    跑完一輪,你就會開始習慣:

    「我負責決定要做什麼,Claude 負責幫我在 Blender / Photoshop / Ableton 裡動手做。」


    🚀 你現在可以做的事

    • 到 Anthropic 官網下載 Claude 桌面版,並在設定中啟用至少一個你常用軟體的連接器
    • 挑本文任一範例提示詞,實際在 Blender 或 Photoshop 中跑完一個完整小任務
    • 在每次 Claude 操作後,手動檢查成果並要求它生成「操作說明註解」,累積成自己的工作流模板
  • 把 VS Code 變成自動寫程式助手:cline 實戰

    把 VS Code 變成自動寫程式助手:cline 實戰

    📌 本文重點

    • cline 是裝在 VS Code 裡的自主程式碼 Agent
    • 可批次改檔、跑指令、查文件,但每步都需授權
    • 搭配版本控制與測試,可成為安全的半自動 pair programmer

    cline 要解決的問題很直接:讓一個「在你本機 IDE 裡跑的自主程式碼 Agent」,幫你改檔、跑指令、查文件,但所有動作都要你按下同意鍵才會執行。

    專案連結:github.com/cline/cline


    cline 是什麼?一句話定位

    cline = 安裝在 VS Code 裡的自主程式碼 Agent,可以:

    • 建立 / 編輯專案檔案
    • 執行終端機指令(build、test、lint 等)
    • 啟動瀏覽器幫你查文件
    • 但每一步都會先列出具體操作,等你按「允許」才真的動手

    它的定位不是「幫你寫一個函式就結束」的 Copilot,而是能帶著你一步步完成一個功能或重構任務的半自動 pair programmer


    核心功能:它到底能幹嘛?

    1. 批次改檔、搭 scaffold

    適合情境

    • 重構一個舊專案,把同樣的 pattern 套到多個檔案
    • 快速搭一個新專案的骨架(資料夾結構、基本檔案)

    你可以這樣用:

    1. 在 VS Code 裡打開專案資料夾。
    2. 開啟 cline 面板,輸入指令,例如:

      幫我把 src/ 底下所有 React class component 改成 function component,並保留原本 props 型別。

    3. cline 會:
    4. 先掃專案,列出會動到的檔案
    5. 給你一份「變更計畫」與 diff 預覽
    6. 每個檔案修改前都問你要不要執行

    效果:一次性重構多個檔案,但仍保留「你是 code review 者」的掌控感。

    💡 關鍵: 用 cline 做批次重構時,每個變更都先 review,再執行,可以同時兼顧效率與安全。

    2. 查 bug、跑測試、看 log

    適合情境

    • 接手別人寫的遺留專案
    • 單元測試一堆紅字懶得一個個追

    操作步驟:

    1. 把錯誤訊息貼給 cline,例如:

      Jest 測試 UserService 全掛了,請找出原因並修正。

    2. cline 會:
    3. 根據錯誤訊息定位到相關檔案
    4. 提出一個修正方案(含預計修改的檔案列表)
    5. 要你確認後才修改
    6. 自動幫你呼叫 npm testpnpm test,再讀測試結果

    你可以要求它:

    每一次修正只改一小步,測試通過後再進下一步。

    這樣你就得到一個測試驅動的 AI 助手,不會一次改爆整個 codebase。

    3. 幫你查文件、Google / Docs 查詢

    cline 內建「用瀏覽器查資料」的能力(具體依你設定的模型與工具支援而定),常見用法:

    • 不熟的框架 API
    • 某個 CLI 旗標
    • 某個錯誤碼

    例子:

    有一段 webpack 設定報 deprecated 警告,請幫我找到官方文件,並提供對應的 config 調整建議,改動前先給我 diff。

    cline 會:

    1. 打開瀏覽器工具查官方文件
    2. 摘要關鍵片段
    3. 提出「建議改法 + diff」
    4. 再次問你要不要套用

    關鍵點:所有網頁行為和檔案修改,都會顯示在面板上,必須經你同意。


    安全設計:每一步都要你確認

    agent 工具最怕兩件事:

    • 誤刪 / 誤改檔案
    • 執行奇怪的 shell 指令

    cline 的設計剛好反過來:

    • 每次改檔會顯示 diff,你可以逐行檢查
    • 每次跑指令會顯示 完整命令,例如 rm -rf 這種你一看就會擋
    • 每次讀/寫新檔案,會明確說明路徑

    使用時務必做到:

    • 只把權限給當前專案資料夾
    • 不要在有機敏資料(憑證、prod config)的 repo 直接放手讓它改
    • 先在一個「測試用 repo」練習上述流程

    💡 關鍵: 把 cline 當成需要你簽名才能動手的助手,用「授權前必看 diff / 指令」這個習慣來降低風險。


    適合誰用?三種常見場景

    1. 中小專案重構 / 遺留專案接手

    典型痛點:

    • 接手一個 1–3 年歷史的 Node / Django 專案
    • 設計不統一,命名風格混亂
    • 文件過時

    cline 可以幫你:

    • 產生一份「現有結構地圖」:掃描目錄,生成 docs/ARCHITECTURE.md
    • 逐步統一命名規則(例如全部改用 camelCase)
    • 把散落在 code 的註解整理成文件

    行動建議:

    1. 開一個新 branch(例如 refactor/with-cline)。
    2. 讓 cline 先生成「重構計畫」,內容包含:
    3. 優先修哪些模組
    4. 預計拆出哪些共用函式
    5. 需要補哪些測試
    6. 你確認計畫後,再讓它照計畫一項項執行。

    2. 日常重複開發工作

    常見重複工作:

    • 每次新專案都要搭一套相同骨架
    • CRUD api 的樣板重複貼
    • 測試檔案格式一樣,只是名字和 case 不同

    cline 的價值在於:

    • 把這些「手很痠的工作」變成一段腳本
    • 你只要給它「任務描述 + 確認」,不用自己一檔檔複製

    建議做法:

    • 為你的團隊定義一份「標準專案骨架」描述,像:

      對新的 React 專案:使用 Vite、設定 ESLint + Prettier、建立 src/components, src/hooks, src/pages 目錄,並生成基本範例檔案。

    • 之後每一次開新 repo 直接把這段 prompt 丟給 cline,讓它自動完成。

    3. 半自動 pair programming(搭配本地 / 雲端模型)

    在 Reddit 上有不少人分享,把本地模型(例如 Qwen3.6 35B)搭配 agent 框架(如 little-coder、PI Coding Agent),透過「plan-first」工作流,讓本地模型在 Polyglot benchmark 上接近雲端模型表現。

    參考:
    Qwen3.6-35B + little-coder 實測
    PI Coding Agent + Qwen3.6 35B 實戰心得

    cline 做的是類似事情:

    • 把「計畫 → 分解任務 → 執行」這套流程搬進 IDE
    • 你可以接雲端模型(例如 Claude、OpenAI),也可以接本地模型(透過 OpenAI 相容 API)

    這樣你得到的是一個永遠不搶鍵盤、每步先跟你報告的 pair programmer。


    跟其他 VS Code Agent 工具怎麼選?

    名稱 核心功能 免費方案 適合誰
    cline (GitHub) 單一自主程式碼 Agent,內建檔案操作、終端機、瀏覽器,強調「每步需授權」 工具本身開源;需自備模型 API(金鑰可用免費額度) 想要在現有 VS Code 工作流中加一個安全的半自動助手
    Roo Code (GitHub) 多 Agent 協作,模擬「一整個開發團隊」,支援自動化測試、部署 開源;同樣需自備模型 API 想要嘗試多代理協作、較複雜工作流的進階使用者
    claude-context (GitHub) 把整個 codebase 變成 Claude 的上下文(MCP 工具) 開源;需有 Claude 帳號 重度使用 Claude Code,希望提升大專案上下文理解的人

    如果你只是想讓自己的 IDE 多一個「會聽話的 AI 助手」,cline 的上手成本最低。

    💡 關鍵: 已有模型 API 的使用者,只要裝好 cline,就能用很低成本把 IDE 升級成具備自主能力的開發環境。


    怎麼開始?最快上手路徑

    步驟一:安裝 cline

    最簡單方式是從 VS Code Extension 安裝:

    1. 打開 VS Code 的 Extensions 面板。
    2. 搜尋 cline,作者為 cline
    3. 點選 Install。

    也可以從 GitHub 直接找到相關安裝說明:https://github.com/cline/cline

    (若未來提供 npm/CLI 版本,可以在 README 看到詳細指引。)

    步驟二:連接你的模型 API

    cline 不自帶模型,你需要自己準備一個:

    常見選項:

    • Claude(Anthropic)
    • OpenAI
    • 本地模型(透過 OpenAI 相容 API,如 Ollama、自架伺服器)

    設定方式(概念流程):

    1. 在 cline 設定面板填入:
    2. API Base URL(例如 https://api.openai.com/v1 或你的本地 endpoint)
    3. API Key
    4. 模型名稱(例如 gpt-4.1claude-3.5、或你自訂的本地模型名)
    5. 測試一個簡單 prompt:

      嗨,幫我列出這個專案的主要資料夾結構。

    6. 確認能讀到檔案與回覆,表示連線成功。

    步驟三:直接可用的「plan-first」工作流程 Prompt

    下面這段可以直接複製,當成你和 cline 的標準開場白,每次要做較大的變更都先貼一次:

    你是一個在 VS Code 裡運行的程式碼 Agent,請嚴格遵守以下工作流程:
    
    1. 先閱讀專案的主要檔案與目錄,理解目前架構。
    2. 針對我提出的需求,先幫我:
       - 列出最多 5 個澄清問題(如果有疑慮)。
       - 擬一份分步計畫(Step 1, Step 2...),每步不超過 2–3 個具體修改。
    3. 把這份計畫寫成 `TODO.md` 放在專案根目錄,內容包含:
       - 任務描述
       - 預計修改檔案清單
       - 預計需要執行的指令(例如 test、build)。
    4. 在我明確回覆「同意計畫」之前,不要修改任何程式碼。
    5. 執行時:
       - 每次只完成 `TODO.md` 中的一個步驟。
       - 修改前先顯示預期變更與影響檔案。
       - 修改後自動幫我執行對應測試指令(若有),並總結結果。
    6. 任務結束後,更新 `TODO.md`(標記完成項目),並用要點方式總結你做了什麼。
    
    請先確認你理解上述流程,然後問我:這次要你幫忙的任務是什麼?
    

    有了這個「plan-first」腳本,你可以避免 Agent 一上來就亂改,先把計畫談好再動手。


    風險控管與實務建議

    最後幾個實際上很重要、但容易被忽略的點:

    • 權限只開專案資料夾:不要在整個 ~/ 或公司共用資料夾上跑;只針對單一 repo。
    • 先在測試 repo 試玩:隨便開一個 new repo,隨便寫一些 demo code,先讓 cline 練習跑 2–3 個任務,熟悉它的行為再用在正式專案。
    • 搭配版本控制:每個大任務都在新 branch 上跑,結束後自己再做一次 diff review。
    • 敏感資訊避免暴露:若你用雲端模型,注意不要讓它讀到含憑證 / 密鑰的設定檔,必要時把這些檔案加入 .gitignore 和 cline 的忽略清單。

    只要這幾個基本安全習慣有做到,cline 就可以很自然地變成你日常開發裡的「安全自動化助手」,從重構到寫測試,幫你把那些重複又耗時間的工作交給 Agent 處理。

    🚀 你現在可以做的事

    • 打開 VS Code 安裝 cline 擴充套件,並在一個測試用 repo 裡試跑 1–2 個小任務
    • 準備好你的模型 API(金鑰與 API Base URL),在 cline 設定面板完成連線測試
    • 建立一個標準的「plan-first」prompt 檔案,之後在每個新專案開頭都先貼給 cline 使用
  • IFTTT MCP:讓 Claude 幫你跑腿自動化

    IFTTT MCP:讓 Claude 幫你跑腿自動化

    📌 本文重點

    • IFTTT MCP 讓 Claude 真正「動手」操作 1000+ App
    • 用自然語言就能設定 Trigger、任務與權限
    • 先從 Gmail → Claude 摘要 → Notion 的簡單流程開始

    一句話定位:IFTTT MCP 就是「IFTTT 版 AI Agent」——讓 Claude 幫你在 1000+ 服務間跑腿,自動處理信件、文件、任務與通知。

    入口:IFTTT 產品頁(含 MCP 介紹)
    https://www.producthunt.com/products/ifttt


    核心功能:把 Claude 變成「會點 App 的助理」

    1. 基於 MCP,讓 LLM 真的「動手做事」

    一般聊天機器人只會給你文字建議;IFTTT MCP + Claude 的組合,是讓 Claude 透過 Model Context Protocol(MCP),直接去操作 IFTTT 已整合的 1000+ 服務:

    • Gmail、Outlook
    • Slack、Teams
    • Notion、Google Docs、Trello
    • Twitter/X、Facebook Page、Instagram(透過對應 App)

    可行動的具體效果:

    • 不是「教你怎麼回信」,而是幫你先讀信、標註、分類
    • 不是「建議你整理會議重點」,而是幫你寫好摘要塞進 Notion 或 Google Docs
    • 不是「提醒你看 Slack」,而是把 Slack 重點整理成一封 Email 寄給你

    你要做的行動:

    • 腦中先列出「我每天重複做、又不需要太多判斷力」的任務,例如:
    • 看客服信件、貼 Label
    • 把 Slack 重要訊息集中在一個地方
    • 把社群留言變成待辦
    • 接下來就用 IFTTT MCP,把這些交給 Claude + IFTTT 處理。

    2. 使用者在 IFTTT MCP 介面上能做什麼?

    你不用寫程式,但要會設定三件事:觸發條件、自然語言任務描述、權限

    (1)設定觸發條件(Trigger)

    在 IFTTT 介面裡,你可以用類似「IF This Then That」的方式決定:

    • 什麼時候 Claude 要被叫出來:
    • 新的 Gmail 收到、且主旨含「客服」
    • 某個 Slack 頻道有新訊息
    • Notion 資料庫新增一行
    • 每天早上 9 點定時

    行動建議:

    • 先挑 一個入口 App 當 Trigger,例如 Gmail 或 Slack,先做一條最簡單的自動化。

    (2)用自然語言描述要 Claude 做什麼

    接著你會看到類似「讓 Claude 做這件事」的欄位,你只需要用人話寫清楚:

    • 要它讀什麼:例如「請閱讀這封新來的 Gmail 內容」
    • 要它產生什麼:例如「生成 3 行內的中文摘要,附上 3 個關鍵標籤」
    • 要它輸出的格式:例如「用 JSON 回傳:{summary: ..., tags: [...]}」或「輸出純文字段落」

    行動建議:

    • 第一次先寫非常具體的指令,例如:

      請閱讀這封信件內容,判斷是否為客服詢問。若是,寫出:1 段 100 字內摘要 + 3 個標籤(如:退款、帳號問題、技術問題)。只用繁體中文回答。

    (3)權限管理:決定 Claude 能碰到什麼

    IFTTT MCP 會要求你授權:

    • 哪些 App 可以被用在這個 workflow
    • 可以讀哪些資料(例如哪一個 Gmail 帳號、哪個 Notion 資料庫)

    行動建議:

    • 第一次只授權「測試用」資料:
    • 新開一個 Gmail Label 只放測試信
    • 新建一個 Notion 資料庫專門給自動化寫入
    • 確認流程正常後,再慢慢擴大範圍。

    3. 典型自動化範例(辦公族版)

    以下三個工作場景,你可以幾乎照抄設定:

    範例一:客服信件由 Claude 先讀、標註、整理到 Notion

    流程:

    1. Trigger:Gmail 收到新信,且寄到 support@你的網域
    2. Claude 任務:
    3. 讀信內容
    4. 判斷是詢問、抱怨、錯信、垃圾信
    5. 摘要重點、抽出客戶名稱、公司、需求類型
    6. Action:
    7. IFTTT 把 Claude 輸出的摘要寫入 Notion 資料庫一行
    8. 同時在 Gmail 加上對應 Label(例如「退款」「技術問題」)。

    實際效果:

    • 你每天只要看 Notion 看板,就能看到「已分類好的客服案件」。
    • Gmail 信箱只負責收信,不再是你分類的戰場。

    範例二:每天自動總結 Slack 頻道討論寄到 Email

    流程:

    1. Trigger:每天 18:00 定時。
    2. Claude 任務:
    3. 拉取當天某個 Slack 頻道訊息
    4. 產生「今日重點摘要 + 代辦清單」
    5. Action:IFTTT 把內容寄到你的工作 Email。

    適合:

    • 經理、PM、不常盯 Slack 的主管。

    範例三:社群新留言自動整理成待辦表

    流程:

    1. Trigger:Facebook Page 或 Twitter/X 有新留言或提及。
    2. Claude 任務:
    3. 判斷是否為需要回覆/需要跟進的內容
    4. 抽出「用戶問題」「優先度」「建議回覆方向」
    5. Action:寫入 Notion 或 Trello(建立一張卡片)。

    實際效果:

    • 你每天只要在 Notion 或 Trello 看「待回覆留言清單」,不用一則一則在社群裡翻。

    💡 關鍵: 把「先讀、先分類、先整理」這 80% 的機械流程交給 Claude,人只處理剩下最有價值的 20%。


    適合誰用?

    針對辦公族,可以直接對號入座:

    • 客服 / CS 團隊:先由 Claude 做信件初篩與標註,你只處理「真的需要人工判斷」的 20%。
    • PM / 專案經理:把 Slack、Email、會議紀錄集中到 Notion、Trello,由 Claude 做第一輪摘要與任務拆解。
    • 行銷 / 社群小編:把分散在 IG、Facebook、X 的互動整理成待辦清單與報表。
    • Freelancer / 顧問:固定時間自動整理客戶往來信件、專案進度簡報稿。

    行動建議:

    • 先挑 一個你每天重複 10 次以上 的任務,問自己:
    • 這個任務有沒有明確規則?
    • 給一個夠聰明的助理說明,他能做 80% 嗎?
    • 如果答案是「可以」,就值得用 IFTTT MCP 做一條 workflow 試試。

    💡 關鍵: 每天重複 10 次以上、規則清楚的任務,往往是最適合先被自動化、也最容易看出效益的部分。


    怎麼開始:新手入門 Demo(Gmail → Claude 摘要 → Notion)

    以下是一條最簡單、最好理解的 workflow,實際上線大概 15–30 分鐘。

    💡 關鍵: 先用 15–30 分鐘做出一條跑得動的簡單流程,比花幾小時規劃複雜架構更重要。

    步驟 1:開通 IFTTT MCP

    1. 註冊或登入 IFTTT 帳號:https://ifttt.com
    2. 在服務或探索頁面搜尋「Claude」「MCP」關鍵字,找到帶有 MCP 整合的 Claude 相關服務(實際名稱可能會微調,以 IFTTT 介面為準)。
    3. 啟用該服務,點選「Connect」並同意條款。

    步驟 2:把 Claude 帳號 / 金鑰接進 IFTTT

    1. 在 IFTTT 的 Claude 服務設定頁面,按「Connect」。
    2. 系統會要求:
    3. 登入你的 Claude 帳號,或
    4. 填入 API Key(如果 IFTTT 走 API 金鑰方式)。
    5. 完成授權後,IFTTT 就能代表你呼叫 Claude,執行 MCP workflow。

    行動建議:

    • 如果你公司有統一的 Claude 帳號,先跟 IT / 資安確認使用範圍,避免用個人帳號處理公司敏感資料。

    步驟 3:建立 Gmail → Claude → Notion 的簡單流程

    1. 在 IFTTT 點選「Create」,新增一個 Applet / Workflow。
    2. 設定 Trigger(This):
    3. 選擇 Gmail 服務 → New email in inbox with search
    4. 搜尋條件輸入:label:auto-summary(你可以先在 Gmail 建這個 Label,手動拉幾封信進來當測試)。
    5. 設定 Claude 步驟:
    6. 加一個 Action,選擇 Claude(MCP)服務。
    7. 在指令欄輸入:
      > 請閱讀這封 Gmail 的主旨與內文,寫出:\n1. 兩段以內的中文摘要(每段不超過 80 字)\n2. 三個關鍵標籤(用逗號分隔)\n3. 若有明確待辦事項,幫我用清單列出。\n請用 Markdown 格式輸出:\n# 摘要\n…\n\n# 標籤\n…\n\n# 待辦\n- …
    8. 設定 Notion 寫入:
    9. 再加一個 Action,選擇 Notion 服務 → Create a database item
    10. 選擇一個你事先建好的「Email 摘要」資料庫,欄位可包含:標題、內容、日期、標籤。
    11. 把 Claude 的輸出對應到 Notion 的內容欄位,標題可用 Gmail 主旨。

    完成後,每當你把一封 Gmail 加上 auto-summary Label,就會觸發:

    • Claude 讀信 → 產出摘要 → IFTTT 寫進 Notion。

    步驟 4:疊加條件、加入更多服務

    最簡單流程跑起來後,可以這樣升級:

    • 加條件
    • 只有當信件收件人包含「support@」時才觸發。
    • 信件主旨含「退款」「無法登入」時,標記為高優先。
    • 加服務
    • 讓 IFTTT 再多一步,把高優先案件同步到 Slack 頻道 ping 客服團隊。
    • 每天自動把當天所有 Notion 中的客服摘要,再請 Claude 生一份「客服日報」,寄給主管。

    行動建議:

    • 每次只加「一個小功能」,例如:多一個條件、多一個 Action。
      不要一次做超複雜 workflow,比較容易除錯,也比較看得出效益。

    小結

    如果你:

    • 不想寫後端、又想讓 AI 幫你動手去各種 App 裡跑腿;
    • 每天被 Email、Slack、社群訊息淹沒;

    那就先從一條 Gmail → Claude 摘要 → Notion 開始,體驗一次「讓 AI 幫你整理世界」的感覺,再慢慢把你的整個工作日,拆成一條條 IFTTT MCP 自動化流程。

    🚀 你現在可以做的事

    • 去 IFTTT 搜尋「Claude」「MCP」,實際啟用一次 Claude 相關服務
    • 在 Gmail 建立 auto-summary Label,挑 3 封信做為第一批測試樣本
    • 在 Notion 建一個「Email 摘要」資料庫,照文中步驟串起第一條 workflow
  • 用 Claude Cookbooks 做出你的第一個 AI 小工具

    用 Claude Cookbooks 做出你的第一個 AI 小工具

    📌 本文重點

    • Claude Cookbooks 是一套可直接照抄的實戰 Notebook
    • 非工程師可當高級提示模板庫直接用
    • 工程師可快速接 API 做聊天機器人與 RAG 助手
    • 最快五步就能跑出自己的 AI 小工具

    用一句話說清楚:Claude Cookbooks 是一套「Claude 實戰菜單」,照著 Notebook 抄一遍,你今天就能做出自己的聊天機器人、文件助手或程式碼助手。

    原始專案連結:👉 anthropics/claude-cookbooks


    核心功能:這套「菜單」可以幫你做什麼?

    1. 清楚的 Repo 結構:先選你要的「菜」

    進到 GitHub 專案後,你大致會看到這幾類資料夾(名稱可能會略有調整,但概念相近):

    • notebooks/:主要範例,都用 Jupyter Notebook 寫好
    • basic_examples/:最簡單的對話、提示工程示範
    • tools_and_workflows/:工具呼叫、工作流程自動化
    • rag/:RAG(檢索增強生成),用你自己的文件做問答
    • agents/ 或類似資料夾:多步驟任務、小型 Agent 範例

    可以做的事,對應你能採取的行動:

    • 如果你完全沒寫過程式 → 先看標題含有 conversationprompting 的 Notebook,當成「高級版提示語模板」,直接複製到 Claude 網頁版使用。
    • 如果你會一點 Python → 跑 basic_examples 裡的 Notebook,先確認你能成功打出第一個 API 回應。
    • 如果你想做內部工具或 Agent → 從 tools_and_workflowsrag 開始,把範例裡的「假資料」換成你公司的文件或 API。

    2. Notebook 類型:從聊天到自動化,一路拆給你

    Cookbooks 裡的 Notebook 大致可以分成四類,每一類都可以直接改成你的專案:

    1. 對話 / 提示工程 Notebook
    2. 示範怎麼寫系統提示(system prompt)、角色設定、回覆風格控制。
    3. 行動:把裡面的 system prompt 複製出來,替換成你的場景,例如:

      • 把「你是一位友善的 AI 助手」改成「你是一位專門回答退貨政策的客服人員」。
    4. 工具調用(Tool Use)Notebook

    5. 示範怎麼讓 Claude 主動呼叫你定義好的函式,例如查訂單、算報表。
    6. 行動:照著 Notebook 裡的結構定義一個簡單工具:

      python
      def get_order_status(order_id: str) -> dict:
      # TODO: 這裡先寫死假資料,之後再接真的 DB
      return {"order_id": order_id, "status": "shipped"}

      然後讓 Claude 根據使用者輸入決定要不要呼叫這個工具。

    7. RAG(文件問答)Notebook

    8. 示範怎麼把 PDF、Markdown、內網文件先「切片 + 向量化」,再讓 Claude 根據搜尋結果回答。
    9. 行動:先不管效果好不好,拿一份你真的會用到的文件(公司 FAQ、課程教材)丟進範例 Notebook,看能不能成功問出答案。

    10. 工作流程自動化 / Agent Notebook

    11. 示範多步驟流程,例如:解析需求 → 查資料 → 產出報告 → 修稿。
    12. 行動:把裡面的流程步驟改成你的工作,例如「整理每日客服問題 → 匯總成報表」。

    💡 關鍵: 這些 Notebook 的真正價值在於「可直接照抄運行」,先跑出結果再改一兩行,就能快速變成你的專案雛形。

    這些 Notebook 的重點不是「看懂內部原理」,而是先照抄跑出結果,再從中挑一兩行改成自己的業務語句


    3. 拿 Cookbooks 當提示工程與 API 練習教材

    你可以把整個 repo 當成一套免費教材:

    • 練提示工程
    • 每次只做一件事:挑一個 Notebook,只改 system prompt,觀察回覆差異。
    • 練習把「模糊指令」改成「具體條件」,例如:

      • 從「請你幫我改寫」改成「請幫我改寫成 300 字以內、用條列式、適合放在 EDM 裡」。
    • 練 API 使用

    • 大多數 Notebook 只需要你把 api_key 換成自己的,就能跑起來。
    • 把官方文件 + Cookbooks Notebook 打開對照看,很快就能理解 messagestools 等欄位用法。

    適合誰用:非工程師、工程師都能上手

    1. 非工程師:直接拿 Prompt 模板做你的專屬助手

    你不用會 Python,也能從 Cookbooks 撈出超實用的提示模板:

    適合的場景與行動:

    • 客服:
    • 找對話範例 Notebook,看 system prompt 區塊,改成:
      • 「你是某某品牌的客服,回答只能根據以下政策文件,不要自己杜撰。」
    • 把這串 prompt 複製到 Claude 官網或任何支援 Claude 的聊天界面使用。

    • 教學 / 內訓:

    • 找「教學型」prompt(通常會強調分步驟解釋),改成你的主題:

      • 例如從「解釋 Python 基礎」改成「解釋公司新制度給新進同仁」。
    • 內容產生:

    • 使用「內容規劃」「格式控制」相關的 prompt,限制輸出格式,例如:
      • 「每篇貼文必須含有標題、三個重點、CTA 一句。」

    你可以完全忽略程式碼,只把 Notebook 當作「可複製的提示語範本庫」。


    2. 工程師:照範例接後端、做簡單 Agent 或內部工具

    如果你會基本的 JavaScript / Python,Cookbooks 就是現成腳手架:

    • 接後端 API
    • 參考工具調用 Notebook,把你現有的 REST API 包成一個 tool,讓 Claude 負責決定何時呼叫。

    • 做簡單 Agent

    • 用工作流程 Notebook,把「找資料 → 分析 → 生報告」這種流程拆成數個函式,交給模型逐步完成。

    • 配合其他工具

    • 例如搭配 gsd-build/get-shit-done 這類 meta-prompting 框架,把你在 Cookbooks 練出來的 prompt 模板,包成可重用的規格驅動開發模組。

    怎麼開始:5 步跑出你的第一個 AI 小工具

    以下示範用「本機 + 最實用 Notebook」的最短上手路徑。

    步驟 0:準備一支 Claude API Key

    1. 前往 Anthropic 官方平台(依區域而定,通常是 Anthropic Console)。
    2. 建立帳號,進入 API 區域,建立一支 API Key。
    3. 暫存好這串金鑰,等等要寫進環境變數或 Notebook。

    步驟 1:Fork 專案 + 下載到本機

    1. 打開 repo:https://github.com/anthropics/claude-cookbooks
    2. 右上角點選 Fork,建立自己的副本,方便之後修改。
    3. 在終端機輸入:

    bash
    git clone https://github.com/<你的帳號>/claude-cookbooks.git
    cd claude-cookbooks

    如果你不想在本機操作,也可以直接用雲端 Notebook(例如 GitHub Codespaces、Colab)打開 repo,步驟類似,只是不用 git clone


    步驟 2:安裝環境 + 設定 API Key

    1. 建議建立虛擬環境:

    bash
    python -m venv venv
    source venv/bin/activate # Windows 用 venv\Scripts\activate

    1. 安裝依賴(專案內通常有 requirements.txtpyproject.toml):

    bash
    pip install -r requirements.txt

    1. 設定環境變數(以 macOS / Linux 為例):

    bash
    export ANTHROPIC_API_KEY="你的_API_Key"

    Windows PowerShell 則是:

    powershell
    setx ANTHROPIC_API_KEY "你的_API_Key"

    💡 關鍵: 只要正確設定 ANTHROPIC_API_KEY 環境變數,大部分 Notebook 幾乎「零修改」就能直接跑起來。


    步驟 3:啟動 Jupyter Notebook

    在專案根目錄啟動:

    jupyter notebook
    

    瀏覽器會打開一個頁面,看到專案檔案結構,接下來只要點進想學的 Notebook 即可。


    實戰示範 1:照抄一個「聊天機器人」 Notebook

    以一個最簡單的對話 Notebook 為例(名稱可能類似 basic_chat.ipynb):

    1. 打開 Notebook,找到這幾段:
    2. 匯入套件(通常是 from anthropic import Anthropic
    3. 建立 client:client = Anthropic()
    4. 呼叫模型的程式碼:

      python
      response = client.messages.create(
      model="claude-3-5-sonnet-latest",
      max_tokens=256,
      messages=[
      {"role": "user", "content": "你好,幫我想三個 IG 貼文主題"}
      ],
      )
      print(response.content[0].text)

    5. 直接執行所有 Cell,確認能拿到一段回覆。

    6. 第一個客製化改動
    7. messages 改成你要的 system + user:

      python
      messages=[
      {
      "role": "system",
      "content": "你是一位專門幫新創品牌寫社群貼文的內容策劃,回覆一律用繁體中文,語氣自然口語。"
      },
      {
      "role": "user",
      "content": "我們是做手沖咖啡器材的,幫我想三個 IG 貼文主題。"
      }
      ]

    8. 再跑一次,這就是你的第一個「內容策劃小幫手」。

    延伸修改方向:

    • 把 user input 改成 input(),讓程式變成簡單的 CLI 聊天機器人。
    • 限制輸出格式:要求 Claude 回傳 JSON,方便之後接到前端或自動排程工具。

    實戰示範 2:照抄一個「文件助手」 RAG Notebook

    找一個 RAG 相關 Notebook(例如 basic_rag.ipynb),你可以這樣照做:

    1. 找到「載入文件」的 Cell,把原來的 sample text 改成你自己的 FAQ 或產品說明。
    2. 跟著 Notebook 步驟做:
    3. 切分文件 → 建立向量索引 → 根據提問檢索相關片段。
    4. 在最後呼叫 Claude 的地方,確認有把「檢索結果」放進 prompt 裡,例如:

    “`python
    prompt = f”””
    根據以下文件內容回答使用者問題,如果文件裡沒有答案,就老實說不知道:

    {retrieved_chunks}

    問題:{user_question}
    “””
    “`

    1. 執行後,你就得到一個最簡單版的「文件問答助手」。

    延伸修改方向:

    • 把檔案來源改成公司內部 SOP 或 Notion 匯出的 Markdown。
    • 在回覆前加上一段「引用來源」,列出這次回答用到哪些文件標題。

    小結:先抄,再改,最後變成你的專屬 Cookbooks

    使用 Claude Cookbooks 有一個簡單心法:

    1. 先選一個最貼近你需求的 Notebook(聊天 / 文件 / 工具調用)。
    2. 照著跑一次,不改任何東西,只確認能成功呼叫 API。
    3. 從 system prompt 開始改成你的場景,再逐步替換資料來源、工具函式。

    💡 關鍵: 當你能順手改兩三個 Notebook,你實際上已經掌握提示設計、API 呼叫與簡單 Agent 的完整流程。

    當你能順手改兩三個 Notebook,你實際上已經會:

    • 寫出能穩定工作的提示語
    • 呼叫 Claude API,做出自己的 AI 小工具
    • 把文件、後端 API、工作流程接進來,做出簡單 Agent

    接下來,你就可以把自己的版本再 push 回 GitHub,變成「你公司的 Claude Cookbooks」。


    🚀 你現在可以做的事

    • 打開 anthropics/claude-cookbooks,先挑一個最貼近你需求的 Notebook
    • 依照文中步驟設定 ANTHROPIC_API_KEY,完整跑通一個聊天或 RAG 範例
    • 把其中一個 Notebook 的 system prompt 改成你的實際場景,存成你自己的第一個 Cookbooks 版本