Claude Code SDK 完整指南

Claude Code SDK 完整指南

嗨,朋友你好,我是是诗康妈咪。致力于探索如何把AI应用于普通人生活的方方面面。
今天给大家继续分享claude code使用的方法——Claude Code SDK 完整指南。

Claude Code SDK 支持将 Claude Code 作为子进程运行,提供了一种构建 AI 驱动的编码助手和工具的方法,利用 Claude 的能力。

SDK 可用于命令行、TypeScript 和 Python 使用。

要使用 Claude Code SDK,我们建议创建一个专用的 API 密钥:

Claude Code SDK 允许您在应用程序中以非交互模式使用 Claude Code。

以下是命令行 SDK 的一些基本示例:

 
 

TypeScript SDK 包含在 NPM 上的主要  包中:

 
 

TypeScript SDK 接受命令行 SDK 支持的所有参数,以及:

参数
描述
默认值
中止控制器
当前工作目录
要使用的 JavaScript 运行时
在 Node.js 中运行时为 
,在 Bun 中运行时为 
传递给可执行文件的参数
Claude Code 可执行文件的路径
与 
 一起提供的可执行文件

Python SDK 在 PyPI 上作为  提供:

 
 

先决条件:

基本使用:

 
 

Python SDK 通过  类接受命令行 SDK 支持的所有参数:

 
 

下面的文档使用命令行 SDK 作为示例,但也可以与 TypeScript 和 Python SDK 一起使用。

对于多轮对话,您可以恢复对话或从最近的会话继续:

 
 

您可以提供自定义系统提示来指导 Claude 的行为:

 
 

您还可以将指令附加到默认系统提示:

 
 

模型上下文协议(MCP)允许您使用来自外部服务器的附加工具和资源扩展 Claude Code。使用  标志,您可以加载提供专门功能的 MCP 服务器,如数据库访问、API 集成或自定义工具。

创建一个包含您的 MCP 服务器的 JSON 配置文件:

 
 

然后与 Claude Code 一起使用:

 
 

注意:使用 MCP 工具时,您必须使用  标志明确允许它们。MCP 工具名称遵循模式 ,其中:

这种安全措施确保 MCP 工具仅在明确允许时使用。

如果您只指定服务器名称(即 ),则该服务器的所有工具都将被允许。

不支持通配符模式(例如 )。

可选地,使用  传入一个 MCP 工具,我们将使用它来检查用户是否授予模型调用给定工具的权限。当模型调用工具时,会发生以下情况:

 MCP 工具会传递工具名称和输入,并且必须返回一个带有结果的 JSON 字符串化载荷。载荷必须是以下之一:

 
 

例如,TypeScript MCP 权限提示工具实现可能如下所示:

 
 

要使用此工具,添加您的 MCP 服务器(例如使用 ),然后像这样调用 SDK:

 
 

claude code 教程

使用说明:

SDK 利用 Claude Code 中可用的所有 CLI 选项。以下是 SDK 使用的关键选项:

标志
描述
示例
在非交互模式下运行
指定输出格式(


通过会话 ID 恢复对话
继续最近的对话
启用详细日志记录
在非交互模式下限制代理轮次
覆盖系统提示(仅适用于 
附加到系统提示(仅适用于 
允许的工具的空格分隔列表,或允许的工具的逗号分隔列表字符串

拒绝的工具的空格分隔列表,或拒绝的工具的逗号分隔列表字符串

从 JSON 文件加载 MCP 服务器
用于处理权限提示的 MCP 工具(仅适用于 

SDK 支持多种输出格式:

仅返回响应文本:

 
 

返回包括元数据的结构化数据:

 
 

响应格式:

 
 

在接收到每条消息时流式传输:

 
 

每个对话都以初始的  系统消息开始,然后是用户和助手消息列表,最后是带有统计信息的最终  系统消息。每条消息都作为单独的 JSON 对象发出。

从 JSON API 返回的消息根据严格的类型模式:

 
 

我们将很快以 JSONSchema 兼容格式发布这些类型。我们对主要的 Claude Code 包使用语义版本控制来传达此格式的重大更改。

SDK 支持多种输入格式:

输入文本可以作为参数提供:

 
 

或者输入文本可以通过 stdin 管道传输:

 
 

通过  提供的消息流,其中每条消息代表一个用户轮次。这允许对话的多个轮次而无需重新启动  二进制文件,并允许在模型处理请求时向模型提供指导。

每条消息都是一个 JSON ‘用户消息’ 对象,遵循与输出消息模式相同的格式。消息使用 jsonl 格式格式化,其中输入的每一行都是一个完整的 JSON 对象。流式 JSON 输入需要  和 

目前这仅限于纯文本用户消息。

 
 
 
 
 
 
 
 

Claude Code SDK 能够与您的开发工作流程进行强大的集成。一个值得注意的例子是 Claude Code GitHub Actions,它使用 SDK 直接在您的 GitHub 工作流程中提供自动化代码审查、PR 创建和问题分类功能。

通过这些功能,您可以:

Claude Code SDK 为开发者提供了一个强大而灵活的工具,可以将 AI 能力无缝集成到现有的开发工作流程中。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:Ai探索者,转载请注明出处:https://javaforall.net/235942.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午1:07
下一篇 2026年3月16日 下午1:07


相关推荐

关注全栈程序员社区公众号