iT邦幫忙

2025 iThome 鐵人賽

DAY 16
2
自我挑戰組

攔截記憶碼:每日一小時記錄技術學習系列 第 16

Day 15 - Claude Agent SDK:打造你的專屬 AI Agent

  • 分享至 

  • xImage
  •  

攔截源頭

  • 發現管道:Anthropic 官方開發文件 / 工程部落格
  • 攔截文章:Building agents with the Claude Agent SDK
  • 攔截原因:我對 Agent 架構很有興趣,市面上很多框架可選,但若能使用官方 SDK,無論在相容性、維護性、更新支援上都更有保障。看到 Claude 官方推出的 Agent SDK,就立刻覺得值得深入研究並納入記錄。

技術初探

安裝與 SDK 選項

根據官方文檔,Claude Agent SDK 有 Python 與 TypeScript 版本可選,以支援不同應用場景:前端/Node.js 應用用 TypeScript SDK,後端/數據科學/腳本類型則可選 Python SDK。

# 例如 TypeScript 版本
npm install @anthropic-ai/claude-agent-sdk

為什麼選用 Claude Agent SDK

官方文件列出幾個核心優勢:

  • Context 管理:自動壓縮與管理對話背景,以避免超出模型上下文限制。 
  • 豐富工具生態:內建支援檔案操作、代碼執行、網路搜尋,並可擴展通過 MCP(Model Context Protocol)加入自訂工具。 
  • 精細權限控制:可設定 allowedTools、disallowedTools、permissionMode,控制 agent 可以使用哪些工具。 
  • 生產級要素:內建錯誤處理、session 管理、監控支持、Prompt 快取與效能優化。 
  • 與 Claude 從屬功能整合:支援 Subagents、Hooks、Slash Commands、CLAUDE.md 記憶體上下文等功能,都與 Claude Code 原有架構一致。 

核心概念

  • System Prompts(系統提示):定義這個 agent 的角色、專長、風格。 
  • 工具許可 (Tool Permissions):用 allowedTools 或 disallowedTools 來控制 agent 工具訪問權,決定哪些工具可以調用。 
  • Model Context Protocol (MCP):這是擴展 agent 的關鍵接口,允許你連接資料庫、API、外部服務等,讓 agent 能跨系統操作。 
  • 文件 & 功能整合:包括 Subagents(子 agent)、Hooks(事件鉤子)、Slash Commands、記憶體檔案 (CLAUDE.md) 等。這些功能讓 agent 更像一個可擴展的平台。

實戰使用

Hello World

from anthropic import Anthropic
from anthropic.agents import Tool

client = Anthropic()

def add(a: int, b: int) -> int:
    return a + b

tool = Tool(
    name="add_numbers",
    description="計算兩個整數的加總",
    func=add
)

agent = client.agents.create(
    name="math-agent",
    tools=[tool],
)

response = agent.run("請幫我計算 123 + 456")
print(response)

Claude Agent SDK 會自動分析該任務是否需要調用工具,並調用 add_numbers 工具後把結果回傳。

複雜應用

可以定義多個工具(例如 Web 搜索、資料庫讀寫、檔案解析等),讓 agent 根據上下文自動選擇或並行呼叫工具,最終整合回覆。這樣就不必自己寫 chain 或 orchestration 邏輯。

與 semtools 結合

可以把 semtools 定義為 agent 的工具之一,讓 Claude Agent SDK 調用 semtools 的 parse / search / 文件操作能力。這樣,你的 agent 就能在同一體系下同時用官方 SDK 和社群工具,打造更強的混合型 Agent。

記憶碼摘要

技術:Claude Agent SDK  
分類:AI Agent 框架 / 官方 SDK  
難度:⭐⭐⭐☆☆(1-5 顆星)  
實用度:⭐⭐⭐⭐⭐(1-5 顆星)  
一句話:官方推出的 SDK,讓你用 Claude 快速建立能調用工具的智能 Agent  
適用情境:你想打造 Claude 原生 Agent,並且支援工具調用與自動決策時  

結語

在優化、結合官方文件後,我對 Claude Agent SDK 的理解變得更清晰。它不是僅僅一個 wrapper,而是一整套針對 Agent 的完整架構:有 context 管理、工具管理、安全權限、擴充接口等。

對我來說,它的最大價值是「官方支持」與「高整合性」:你用的每個工具、每段提示、每個功能都跟 Claude 底層緊密相連,不必擔心版本差異或相容性問題。

附錄

今天 anthropic 官方 還出了一個酷功能: Imagine with Claude

目前還在試用版,身為 Max 忠實用戶,立馬就來用用看,目前用起來心得是有一個虛擬視窗讓你可以跟AI對話讓他直接生成你想要的任何可能的東西,真的是非常厲害~

https://ithelp.ithome.com.tw/upload/images/20250930/20149301B8fCw4fOxQ.png


上一篇
Day 14 - semtools :LLM 的語義工具箱
下一篇
Day 16 - Claude Code × Google Cloud Vertex AI 串接實戰指南
系列文
攔截記憶碼:每日一小時記錄技術學習18
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言