首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 归档 标签 关于

GitHub 热门项目: claude-agent-sdk-python

2026-07-26 1 阅读 约7分钟阅读 GitHub Trending
分享:
字号:
GitHub 项目:claude-agent-sdk-python 仓库地址:https://github.com/anthropics/claude-agent-sdk-python 星级:7728 | 作者:人类学 项目描述:暂无描述 =================================================== 自述文件内容: # 适用于 Python 的 Claude Agent SDK Claude Agent 的 Python SDK。有关更多信息,请参阅 [Claude Agent SDK 文档](https://platform.claude.com/docs/en/agent-sdk/python)。 ## 安装 ````bash pip 安装 claude-agent-sdk ```` **先决条件:** -Python 3.10+ **注意:** Claude Code CLI 自动与软件包捆绑在一起 - 无需单独安装!默认情况下,SDK 将使用捆绑的 CLI。如果您更喜欢使用系统范围的安装或特定版本,您可以: - 单独安装 Claude Code:`curl -fsSL https://claude.ai/install.sh | bash` - 指定自定义路径:`ClaudeAgentOptions(cli_path="/path/to/claude")` ## 快速入门 ````蟒蛇 导入任何 从 claude_agent_sdk 导入查询 异步 def main(): 查询中的消息异步(提示=“2 + 2 是什么?”): 打印(消息) anyio.run(主要) ```` ## 基本用法:query() `query()` 是一个用于查询 Claude Code 的异步函数。它返回响应消息的“AsyncIterator”。请参阅[src/claude_agent_sdk/query.py](src/claude_agent_sdk/query.py)。 ````蟒蛇 从 claude_agent_sdk 导入查询、ClaudeAgentOptions、AssistantMessage、TextBlock # 简单查询 查询中的消息异步(提示=“Hello Claude”): if isinstance(消息, AssistantMessage): 对于 message.content 中的块: if isinstance(块, TextBlock): 打印(块.文本) # 有选项 选项 = ClaudeAgentOptions( system_prompt="你是一个有用的助手", 最大匝数=1 ) 查询中的消息异步(提示=“告诉我一个笑话”,选项=选项): 打印(消息) ```` ### 使用工具 默认情况下,Claude 可以访问完整的 [Claude Code 工具集](https://code.claude.com/docs/en/settings#tools-available-to-claude)(读取、写入、编辑、Bash 等)。 “allowed_tools”是一个权限白名单:列出的工具会自动批准,未列出的工具则由“permission_mode”和“can_use_tool”决定。它不会从 Claude 的工具集中删除工具。要阻止特定工具,请使用“disallowed_tools”。有关完整的评估顺序,请参阅[权限指南](https://platform.claude.com/docs/en/agent-sdk/permissions)。 ````蟒蛇 选项 = ClaudeAgentOptions( allowed_tools=["Read", "Write", "Bash"], # 自动批准这些工具 permission_mode='acceptEdits' # 自动接受文件编辑 ) 查询中的消息异步( 提示=“创建hello.py文件”, 选项=选项 ): # 处理工具的使用和结果 通过 ```` ### 工作目录 ````蟒蛇 从 pathlib 导入路径 选项 = ClaudeAgentOptions( cwd="/path/to/project" # 或 Path("/path/to/project") ) ```` ## ClaudeSDK客户端 `ClaudeSDKClient` 支持与 Claude 的双向交互式对话 代码。请参阅[src/claude_agent_sdk/client.py](src/claude_agent_sdk/client.py)。 与“query()”不同,“ClaudeSDKClient”还启用了**自定义工具**和**钩子**,两者都可以定义为Python函数。 ### 自定义工具(作为进程内 SDK MCP 服务器) 一个*
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱