一个 AI 驱动的命令行工具,能帮你自动审查代码、跑测试、分析日志、管理部署,而且你能精确控制它"什么能做、什么不能做"。

第 1 课:这个助手能干嘛?


一句话概括

一个 AI 驱动的命令行工具,能帮你自动审查代码、跑测试、分析日志、管理部署,而且你能精确控制它"什么能做、什么不能做"。

它能解决什么问题?

做开发运维的同学,每天的工作充满了重复劳动:

code
日常工作:
  ✅ 代码审查 —— 看 PR、找 bug、提建议
  ✅ 跑测试 —— 执行测试、分析失败原因
  ✅ 看日志 —— 在几百行日志里找错误
  ✅ 配置管理 —— 检查配置文件有没有问题
  ✅ 部署操作 —— 跑部署脚本、验证部署结果
  ✅ 健康检查 —— 检查服务是否正常运行

这些事情,AI 都能帮你做。但有一个关键问题:AI 直接操作服务器,你放心吗?

不放心。所以这个助手的核心不只是"让 AI 干活",还有"让 AI 安全地干活"。

五大核心能力

graph TD A["DevOps AI 助手"] --> B["能力 1:一键自动化(query)"] A --> C["能力 2:自定义工具(MCP Server)"] A --> D["能力 3:安全管控(Hooks)"] A --> E["能力 4:交互式调试(ClaudeSDKClient)"] A --> F["能力 5:多角色协作(Agents)"] B --> B1["帮我跑一下测试 → AI 执行 pytest 并分析结果"] C --> C1["把你的内部 API 包装成 AI 可以调用的工具"] D --> D1["拦截 rm -rf、记录所有操作、自动审批安全命令"] E --> E1["像和同事聊天一样:看看日志 → 帮我修一下"] F --> F1["代码审查员 + 测试员 + 部署员并行工作"]

使用场景举例

场景一:CI/CD 自动化

bash
# 一行代码,AI 帮你跑完整个 CI 流程
async for msg in query(
    prompt="跑一下测试,如果全部通过就生成部署包",
    options=ClaudeAgentOptions(
        allowed_tools=["Bash", "Read", "Write"],
        system_prompt="你是 CI/CD 助手..."
    )
):
    print(msg)

场景二:代码审查

code
# 定义一个代码审查 Agent
options = ClaudeAgentOptions(
    agents={
        "code-reviewer": AgentDefinition(
            description="审查代码质量",
            prompt="你是代码审查专家,检查 bug、性能、安全问题...",
            tools=["Read", "Grep"],
            model="sonnet",
        )
    }
)

场景三:安全运维

code
# 用 Hook 拦截危险命令
async def safety_hook(input_data, tool_use_id, context):
    command = input_data["tool_input"].get("command", "")
    if "rm -rf" in command:
        return {"hookSpecificOutput": {
            "hookEventName": "PreToolUse",
            "permissionDecision": "deny",
            "permissionDecisionReason": "危险命令已拦截"
        }}
    return {}

SDK 能力地图

Claude Agent SDK (Python) 提供了五大模块,每个模块对应一课:

graph TD Q["query() — 第 3 课:一次性任务"] --- Q1["简单、高效、适合脚本"] T["@tool + MCP Server — 第 4 课:自定义工具"] --- T1["把任何 Python 函数变成 AI 的工具"] H["Hooks — 第 5 课:安全管控"] --- H1["拦截、审计、自动审批"] C["ClaudeSDKClient — 第 6 课:交互式会话"] --- C1["多轮对话、权限升级、文件回滚"] AG["AgentDefinition — 第 7 课:多 Agent"] --- AG1["角色分工、并行执行、协同工作"]

这套教程和前面的有什么不同?

前面的教程(智能研究、文档工厂、Excel 工具)主要讲的是用 AI 生成内容——搜索信息、写代码、生成文件。

这套教程讲的是用 AI 执行操作——跑命令、改配置、做部署。这带来了一个核心挑战:

code
生成内容(之前):AI 写错了,大不了重写
执行操作(现在):AI 操作错了,可能删库跑路

所以这套教程的重点不只是"怎么让 AI 干活"
更重要的是"怎么让 AI 安全地干活"

这就是为什么 Hooks(安全管控)和权限系统在这套教程里占了很大篇幅。

本课小结

  • DevOps 助手能自动化代码审查、测试、日志分析、部署等开发运维工作
  • SDK 提供五大核心能力:query、MCP、Hooks、Client、Agents
  • 核心挑战:不只是让 AI 干活,还要让 AI 安全地干活
  • 用 Python 编写,适合和现有 DevOps 工具链集成

课后思考

想想你团队里哪些日常工作最适合 AI 来做?有哪些操作需要"人工确认"才能执行?


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

返回课程目录