Python 版 Claude Code SDK 实战:从安装到自定义工具开发
claude-code-sdk-python 是专为 Claude Agent 设计的 Python 开发工具包,它让开发者能轻松将 Claude AI 助手集成到自己的应用中。这篇指南会从环境搭建讲起,一直深入到高级自定义工具的开发细节。
环境准备与安装
在开始之前,确保你的环境满足以下要求:
- Python 3.10+
- Node.js(用于运行 Claude Code CLI)
- Claude Code 2.0.0+ 版本
安装过程很简单,先在终端通过 pip 安装 SDK:
pip install claude-agent-sdk
接着全局安装 Claude Code CLI:
npm install -g @anthropic-ai/claude-code
快速上手
基础查询
最基础的用法就是发送一个查询并获取流式响应。注意这里使用了 anyio 来管理异步事件循环。
import anyio
from claude_agent_sdk import query
async def main():
async for message in query(prompt="What is 2 + 2?"):
print(message)
anyio.run(main)
如果你需要更灵活的控制,比如设置系统提示或限制对话轮数,可以使用 ClaudeAgentOptions 配置对象。
from claude_agent_sdk import query, ClaudeAgentOptions
options = ClaudeAgentOptions(
system_prompt="You are a helpful assistant",
max_turns=1
)
async for message in query(prompt="Tell me a joke", options=options):
print(message)
核心功能解析
SDK 的核心在于 query() 函数和 ClaudeSDKClient 类。前者适合简单的单次交互,后者则支持双向对话、自定义工具注册以及钩子(Hooks)机制,适合构建复杂的 Agent 应用。
内置工具的使用
要让 Claude 调用文件读写或执行命令等内置能力,需要在选项中显式声明允许的工具列表。
options = ClaudeAgentOptions(
allowed_tools=["Read", , ],
permission_mode=
)
message query(
prompt=,
options=options
):

