TypeScriptSDK参考Skill TypeScriptSDKReference

TypeScript SDK 参考是一个全面的指南,用于使用 Anthropic Agent SDK 构建应用程序,实现与 Claude Code 的程序化交互和自定义工具集成。关键词:TypeScript, SDK, Claude, Agent, 编程, 工具集成, AI交互, 前端开发, 后端开发, 低代码开发, 深度学习, NLP, 大模型微调, RAG应用, AI智能体, AIGC, 自动驾驶, 数据分析, 数据工程, 量化金融, 数据治理, 数据可视化, ETL开发, 数据仓库, BI报表, 预测建模, AWS, Azure, GCP, Docker/K8s, Serverless, 云原生架构, 混合云, 云安全, CI/CD, 微服务, 渗透测试, 安全运维, 密码学, 合规, 逆向工程, 漏洞挖掘, 安全审计, 数字取证, 身份认证, 零信任架构, 智能合约, DeFi, NFT, 链开发, Web3, DApp开发, 节点运维, 加密算法, 跨链技术, DAO治理, 量化策略, 算法交易, 高频交易, 回测系统, 因子挖掘, 风险管理, 衍生品定价, CTA策略, 市场中性, 统计套利, 股票分析, 基金投资, 债券交易, 期货期权, 宏观经济, 技术分析, 基本面分析, 资产配置, 投顾服务, IPO承销, 支付系统, 数字货币, 风控建模, 智能投顾, 保险科技, 监管科技, 信贷审批, 反欺诈, 开放银行, 跨境支付, 抖音运营, TikTok跨境, 剪映剪辑, 直播带货, 内容创作, 脚本撰写, 流量投放, 达人营销, 短视频SEO, 直播场控, Premiere剪辑, After Effects, 调色技术, 摄影摄像, 导演编剧, 影视后期, 声音设计, 灯光布设, 绿幕抠像, 纪录片制作, Photoshop, Illustrator, 品牌设计, 海报设计, 包装设计, 字体设计, 版式设计, VI识别系统, 印刷工艺, 电商美工, Blender建模, Maya动画, Unity开发, Unreal Engine, C4D设计, 游戏策划, 角色设计, 场景建模, 动作捕捉, 游戏测试, Logic Pro, 编曲作曲, 混音母带, 音效设计, 有声书制作, 配音演绎, 音乐版权, 乐器演奏, 电子音乐, 影视配乐, SEO/SEM, 内容营销, 裂变增长, 数据分析, 品牌策划, 社群运营, 私域流量, 活动策划, 市场调研, 公关传播, 需求分析, 原型设计, 用户研究, 数据分析, 敏捷开发, 产品战略, 增长黑客, 竞品分析, 项目管理, 产品运营, 招聘面试, 薪酬绩效, 员工培训, 组织发展, 劳动法务, HRBP, 人才盘点, 企业文化, 猎头服务, 人力资源数字化, 财务报表, 税务筹划, 审计鉴证, 成本管理, 管理会计, 财务建模, IPO审计, 内部控制, 财务共享, 国际会计准则, 合同审查, 知识产权, 公司法务, 劳动仲裁, 投融资法务, 合规管理, 争议解决, 数据隐私, 反垄断, 跨境法律, 战略咨询, 管理咨询, IT咨询, 财务咨询, 人力资源咨询, 流程优化, 变革管理, 尽职调查, 可行性研究, 行业研究, CAD制图, CAM编程, CNC加工, 工业机器人, PLC编程, 质量管理, 精益生产, 供应链管理, 设备维护, 工业物联网, 建筑设计, 结构设计, BIM建模, 工程造价, 工程监理, 室内装潢, 景观设计, 暖通设计, 给排水, 绿色建筑, 光伏技术, 风电运维, 储能系统, 新能源电池, 碳资产管理, 环境影响评价, 能源审计, 清洁生产, 智能电网, 氢能技术, 临床医学, 医学影像, 药物研发, 医疗器械, 医院管理, 病历编码, 健康管理, 医学检验, 康复治疗, 远程医疗, 基因工程, 细胞治疗, 生物制药, CRO服务, GMP合规, 药物警戒, 分子诊断, 免疫治疗, 合成生物学, 实验动物, 课程设计, 教学实施, 在线教育, 考试认证, 素质教育, 职业教育, 企业内训, 教育咨询, 留学服务, 教育技术, 英语翻译, 小语种, 同声传译, 本地化服务, 语言教学, 术语管理, 机器翻译, 跨文化沟通, 字幕翻译, 商务谈判, 淘宝天猫, 京东运营, 拼多多运营, 亚马逊跨境, 独立站, 社交电商, 生鲜电商, 电商摄影, 客服管理, 仓储物流, 菜品研发, 门店运营, 供应链管理, 食品安全, 餐饮服务, 连锁加盟, 厨房管理, 成本控制, 大众点评运营, 外卖运营, 酒店管理, 旅行社运营, 景区管理, OTA运营, 导游服务, 会展策划, 票务管理, 民宿运营, 旅游定制, 航空服务, 房产销售, 资产管理, 物业管理, 商业地产, 估价评估, 工程勘察, 房产法务, 房屋租赁, 城市更新, 养老地产, 智慧农业, 温室大棚, 水肥一体化, 病虫害防治, 农产品电商, 畜牧养殖, 水产养殖, 农业机械, 土壤改良, 农业品牌, 文献检索, 实验设计, 数据分析, 论文写作, 专利撰写, 科研绘图, 学术会议, 基金申请, 同行评审, 开放获取, 政务服务, 社区管理, 社会工作, 应急管理, 公共卫生, 城市规划, 交通管理, 档案管理, 政府采购, 非营利组织, 仓储管理, 运输调度, 冷链物流, 供应链金融, 报关报检, 货运代理, 快递末端, 物流规划, 库存优化, 智慧物流, 自动驾驶, 交通规划, 轨道交通, 航空运输, 共享出行, 车联网, 交通安全, 汽车后市场, 新能源充电, 智慧停车

前端开发 0 次安装 0 次浏览 更新于 3/8/2026

名称: TypeScript SDK 参考 描述: TypeScript Agent SDK 的全面参考,包含函数、类型和接口,用于程序化 Claude Code 交互 允许的工具:

  • 读取
  • 写入
  • 编辑
  • 任务

TypeScript SDK 参考

一个全面的参考,用于使用 Anthropic Agent SDK (TypeScript) 构建应用程序,实现与 Claude Code 的程序化交互和自定义工具集成。

安装

npm install @anthropic-ai/claude-agent-sdk

快速开始

核心函数

函数 目的 关键用例
query() Claude Code 交互的主要接口 发送提示、流式响应、管理多轮对话
tool() 使用类型安全模式定义 MCP 工具 使用 Zod 验证创建自定义代理工具
createSdkMcpServer() 创建进程内 MCP 服务器 在应用程序中原生托管工具

示例: 基本查询

import { query } from '@anthropic-ai/claude-agent-sdk';

const result = query({
  prompt: "分析这段代码并建议改进",
  options: {
    allowedTools: ['Read', 'Grep'],
    model: 'claude-opus'
  }
});

for await (const message of result) {
  if (message.type === 'assistant') {
    console.log(message.message.content);
  }
}

主要函数参考

query()

流式传输 Claude Code 响应,支持完整消息类型。返回一个 SDKMessage 对象的异步生成器。

参数:

  • prompt: 字符串或消息的异步可迭代对象(流式模式)
  • options: 配置对象(见下方选项

返回: Query 对象(扩展 AsyncGenerator<SDKMessage, void>

关键方法:

  • .interrupt() – 中断流式传输(仅限流式模式)
  • .setPermissionMode(mode) – 动态更改权限(仅限流式模式)

tool()

使用 Zod 模式创建类型安全的 MCP 工具定义。处理器接收验证后的输入并必须返回 CallToolResult

参数:

  • name: 工具标识符
  • description: 自然语言描述
  • inputSchema: 定义输入的 Zod 模式
  • handler: 异步函数 (args: z.infer<Schema>, extra?: unknown) => Promise<CallToolResult>

返回: SdkMcpToolDefinition<Schema>

createSdkMcpServer()

创建进程内 MCP 服务器以托管自定义工具。在同一 Node.js 进程中运行,无子进程开销。

参数:

  • name: 服务器标识符
  • version: 可选语义版本
  • tools: 来自 tool() 的工具定义数组

返回: McpSdkServerConfigWithInstance(准备用于 mcpServers 选项)


关键配置选项

基本选项

选项 类型 默认 目的
allowedTools string[] 所有可用 限制 Claude 可使用的工具
disallowedTools string[] [] 明确阻止工具
model string CLI 默认 覆盖 Claude 模型(例如 'claude-opus'
cwd string process.cwd() 操作的工作目录
abortController AbortController 新实例 控制任务取消

高级选项

选项 类型 默认 目的
systemPrompt 字符串或预设对象 自定义系统指令或 Claude Code 预设
agents Record<string, AgentDefinition> undefined 以编程方式定义具有自定义提示的子代理
mcpServers Record<string, McpServerConfig> {} 连接 stdio、SSE、HTTP 或 SDK MCP 服务器
settingSources ('user' | 'project' | 'local')[] [] 加载文件系统设置(CLAUDE.md, settings.json)
permissionMode PermissionMode 'default' 'default''acceptEdits''bypassPermissions''plan'
maxThinkingTokens number undefined 扩展思考的令牌限制
maxTurns number undefined 停止前的最大对话轮次
resume string undefined 通过 ID 恢复先前的会话
forkSession boolean false 恢复时分支到新会话而不是继续

消息类型概述

query() 生成器产生 SDKMessage 对象。常见类型:

消息类型 何时发出 关键字段
'system' 会话初始化 toolsmodelpermissionModeslash_commands
'user' 用户输入发送 message (APIUserMessage)、uuid
'assistant' Claude 响应 message (APIAssistantMessage 带有 content/tool_use)
'result' 查询完成 subtype (‘success’ 或错误)、usagetotal_cost_usd
'stream_event' 部分流式数据 event(仅当 includePartialMessages: true 时)

查看消息类型参考获取完整定义。


类型参考概述

核心配置类型

  • Options – 查询配置,包含 20+ 属性(工具、MCP、权限、执行)
  • PermissionMode – 控制执行权限:'default''acceptEdits''bypassPermissions''plan'
  • SettingSource – 文件系统配置范围:'user''project''local'

代理和工具类型

  • AgentDefinition – 子代理配置:descriptionprompttoolsmodel 覆盖
  • SdkMcpToolDefinitiontool() 函数的输出,带有 Zod 模式绑定
  • McpServerConfig – stdio、SSE、HTTP 或 SDK 服务器配置的联合

MCP 服务器配置

配置类型 传输 用例
McpStdioServerConfig stdio(子进程) 外部工具、沙箱化
McpSSEServerConfig 服务器发送事件 远程工具、发布/订阅模式
McpHttpServerConfig HTTP 基于 REST 的工具、云集成
McpSdkServerConfigWithInstance 进程内 自定义工具、无子进程开销

钩子类型

  • HookEvent – 事件名称:PreToolUsePostToolUseNotificationUserPromptSubmitSessionStartSessionEnd
  • HookCallback – 接收钩子输入并返回决策的异步函数
  • HookInput – 所有钩子输入类型的联合;每个都扩展 BaseHookInput

查看类型参考获取详细类型定义。


工具输入/输出参考

内置工具输入

所有工具名称映射到输入模式:

工具 目的 关键输入
Task 委托给子代理 descriptionpromptsubagent_type
Bash 运行 shell 命令 command,可选 timeoutrun_in_background
Read 读取文件/图像/PDF file_path,可选 offset/limit
Write / Edit 修改文件 file_pathcontent 或 old/new 字符串
Glob 模式匹配 pattern,可选 path
Grep 正则表达式搜索 pattern,可选过滤器(glob、type、-B/-A/-C)
WebFetch 获取和分析 URL urlprompt 用于 AI 分析
WebSearch 网络搜索 query,可选域过滤器
NotebookEdit Jupyter 笔记本 notebook_pathnew_sourceedit_mode
TodoWrite 任务跟踪 todos 数组,带有 status、content、activeForm

查看工具参考获取完整的输入/输出模式和示例。


常见模式

带进度的流式传输

const result = query({
  prompt: "您的任务在此",
  options: {
    includePartialMessages: true,
    permissionMode: 'bypassPermissions'
  }
});

for await (const msg of result) {
  if (msg.type === 'stream_event') {
    // 处理流式事件
    console.log('流式传输:', msg.event);
  } else if (msg.type === 'result') {
    console.log('成本:', msg.total_cost_usd, '使用量:', msg.usage);
  }
}

自定义 MCP 工具

import { tool, createSdkMcpServer, query } from '@anthropic-ai/claude-agent-sdk';
import { z } from 'zod';

const myTool = tool(
  'my-calculator',
  '两个数字相加',
  { a: z.number(), b: z.number() },
  async ({ a, b }) => ({
    content: [{ type: 'text', text: `结果: ${a + b}` }]
  })
);

const server = createSdkMcpServer({
  name: 'my-tools',
  tools: [myTool]
});

const result = query({
  prompt: "使用 my-calculator 计算 5 + 3",
  options: {
    mcpServers: { 'my-tools': server }
  }
});

加载项目设置

const result = query({
  prompt: "添加一个遵循项目约定的功能",
  options: {
    systemPrompt: {
      type: 'preset',
      preset: 'claude_code'  // 启用 Claude Code 系统提示
    },
    settingSources: ['project'],  // 加载 .claude/settings.json 和 CLAUDE.md
    allowedTools: ['Read', 'Write', 'Edit', 'Bash']
  }
});

相关资源