| 工具 | 版本要求 | 干嘛的 |

第 2 课:环境搭建


准备工作

工具 版本要求 干嘛的
Python 3.10+ 写代码
Claude Code CLI 最新版 SDK 的底层引擎
Anthropic API Key 调用 Claude 模型

第一步:安装 Claude Code CLI

code
npm install -g @anthropic-ai/claude-code
claude --version

第二步:设置 API Key

code
export ANTHROPIC_API_KEY="sk-ant-你的密钥"
echo 'export ANTHROPIC_API_KEY="sk-ant-你的密钥"' >> ~/.zshrc

第三步:创建项目

python
# 创建项目目录
mkdir devops-assistant
cd devops-assistant

# 创建虚拟环境
python3 -m venv .venv
source .venv/bin/activate

# 安装 SDK
pip install claude-agent-sdk

第四步:验证安装

创建一个 test_sdk.py

code
import anyio
from claude_agent_sdk import query, AssistantMessage, TextBlock

async def main():
    async for msg in query(prompt="说一句你好"):
        if isinstance(msg, AssistantMessage):
            for block in msg.content:
                if isinstance(block, TextBlock):
                    print(f"AI 说: {block.text}")

anyio.run(main)
python
python test_sdk.py

如果看到 AI 的回复,说明一切就绪!

推荐的项目结构

python
devops-assistant/
├── .venv/                  ← Python 虚拟环境
├── main.py                 ← 主程序入口
├── tools/                  ← 自定义 MCP 工具
│   ├── __init__.py
│   ├── git_tools.py        ← Git 相关工具
│   ├── docker_tools.py     ← Docker 相关工具
│   └── test_tools.py       ← 测试相关工具
├── hooks/                  ← Hook 安全管控
│   ├── __init__.py
│   ├── safety.py           ← 安全拦截
│   └── audit.py            ← 审计日志
├── agents/                 ← Agent 定义
│   ├── __init__.py
│   ├── reviewer.py         ← 代码审查员
│   ├── tester.py           ← 测试员
│   └── deployer.py         ← 部署员
└── requirements.txt

SDK 的核心模块

安装完 SDK 后,你可以导入这些核心类:

code
# 核心函数
from claude_agent_sdk import query                    # 一次性查询
from claude_agent_sdk import ClaudeSDKClient          # 交互式会话
from claude_agent_sdk import ClaudeAgentOptions        # 配置选项

# 自定义工具
from claude_agent_sdk import tool                     # @tool 装饰器
from claude_agent_sdk import create_sdk_mcp_server    # 创建 MCP 服务器

# Agent 定义
from claude_agent_sdk import AgentDefinition          # 定义子 Agent

# 消息类型
from claude_agent_sdk import (
    AssistantMessage,    # AI 的回复
    ResultMessage,       # 最终结果(含费用)
    UserMessage,         # 用户消息
    SystemMessage,       # 系统消息
    TextBlock,           # 文本内容块
    ToolUseBlock,        # 工具调用块
    ToolResultBlock,     # 工具结果块
)

# Hook 类型
from claude_agent_sdk.types import (
    HookMatcher,         # Hook 匹配器
    HookInput,           # Hook 输入
    HookContext,         # Hook 上下文
    HookJSONOutput,      # Hook 输出
)

这些就是你整个教程会用到的"积木块"。后面每一课会详细讲每个模块。

本课小结

  • 需要 Python 3.10+、Claude Code CLI、API Key
  • pip install claude-agent-sdk 一行装好
  • SDK 提供 query、Client、MCP、Hooks、Agents 五大模块
  • 推荐按功能分目录组织代码

课后练习

  1. 成功运行 test_sdk.py
  2. 试试 python examples/quick_start.py(SDK 自带的示例)
  3. examples/ 目录下的文件名过一遍,了解都有什么示例

沿着当前专题继续,或返回课程目录重新整理阅读顺序。

返回课程目录