Claude 程式碼 SDK
概述
使用 Claude Code SDK 建立自訂 AI 代理
SDK 選項
Claude Code SDK 提供多種形式以適應不同的使用情境:
- 無頭模式 - 用於 CLI 腳本和自動化
- TypeScript SDK - 用於 Node.js 和網頁應用程式
- Python SDK - 用於 Python 應用程式和資料科學
為什麼使用 Claude Code SDK?
建立在支援 Claude Code 的代理框架之上,Claude Code SDK 提供了建立生產就緒代理所需的所有構建模組:
- 優化的 Claude 整合:自動提示快取和效能優化
- 豐富的工具生態系統:檔案操作、程式碼執行、網頁搜尋和 MCP 擴展性
- 進階權限:對代理能力的細粒度控制
- 生產必需品:內建錯誤處理、會話管理和監控
您可以使用 SDK 建立什麼?
以下是您可以建立的一些代理類型範例:
編程代理:
- 診斷和修復生產問題的 SRE 代理
- 審核程式碼漏洞的安全審查機器人
- 分類事件的值班工程助手
- 執行風格和最佳實踐的程式碼審查代理
商業代理:
- 審查合約和合規性的法律助手
- 分析報告和預測的財務顧問
- 解決技術問題的客戶支援代理
- 為行銷團隊提供的內容創作助手
核心概念
身份驗證
對於基本身份驗證,請從 Anthropic Console 取得 Anthropic API 金鑰並設定 ANTHROPIC_API_KEY
環境變數。
SDK 也支援透過第三方 API 提供商進行身份驗證:
- Amazon Bedrock:設定
CLAUDE_CODE_USE_BEDROCK=1
環境變數並配置 AWS 憑證 - Google Vertex AI:設定
CLAUDE_CODE_USE_VERTEX=1
環境變數並配置 Google Cloud 憑證
有關第三方提供商的詳細配置說明,請參閱 Amazon Bedrock 和 Google Vertex AI 文件。
完整的 Claude Code 功能支援
SDK 提供對 Claude Code 中所有預設功能的存取,利用相同的基於檔案系統的配置:
- 子代理:啟動儲存為 Markdown 檔案的專門代理,位於
./.claude/agents/
- 鉤子:執行在
./.claude/settings.json
中配置的自訂命令,回應工具事件 - 斜線命令:使用定義為 Markdown 檔案的自訂命令,位於
./.claude/commands/
- 記憶 (CLAUDE.md):透過
CLAUDE.md
檔案維護專案上下文,提供持久的指令和上下文
這些功能透過從相同的檔案系統位置讀取,與其 Claude Code 對應功能的工作方式完全相同。
系統提示
系統提示定義您的代理的角色、專業知識和行為。這是您指定要建立什麼類型代理的地方。
工具權限
使用細粒度權限控制您的代理可以使用哪些工具:
allowedTools
- 明確允許特定工具disallowedTools
- 阻止特定工具permissionMode
- 設定整體權限策略
模型上下文協定 (MCP)
透過 MCP 伺服器使用自訂工具和整合來擴展您的代理。這允許您連接到資料庫、API 和其他外部服務。
相關資源
- CLI 參考 - 完整的 CLI 文件
- GitHub Actions 整合 - 自動化您的 GitHub 工作流程
- MCP 文件 - 使用自訂工具擴展 Claude
- 常見工作流程 - 逐步指南
- 疑難排解 - 常見問題和解決方案