# @animahealth/adk 中文文档

规范地址：https://npmcn.com/package/%40animahealth/adk/

版本：0\.6\.13
npm 元数据更新时间：2026-11-05T16:14:34.441Z
中文译文更新时间：2026-11-06T04:39:52.841Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40animahealth/adk
原文对照：https://npmcn.com/package/%40animahealth/adk/?lang=original
项目主页：https://adk.animahealth.com/
源码仓库：https://github.com/mycontinuum-com/adk

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：82.1 MB，1332 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.0\.0
- 运行依赖：2 个
- peer 依赖：pg \>=8\.0\.0，ws \>=8\.0\.0，ink ^5\.0\.0，zod ^3\.25\.76 \|\| ^4\.6\.5，jsdom \>=24\.0\.0，react ^18\.0\.0 \|\| ^19\.0\.0，sharp \>=0\.33\.0，openai ^6\.0\.0，pdf-lib \>=1\.17\.0，turndown \>=7\.0\.0，playwright \>=1\.40\.0，sqlite-vec \>=0\.1\.6，@ag-ui/core 0\.0\.45，@google/genai ^1\.52\.0，better-sqlite3 \>=11\.0\.0，ink-text-input ^6\.0\.0，@livekit/agents ^1\.4\.4，@livekit/rtc-node ^0\.13\.34，livekit-server-sdk ^2\.15\.0，@mozilla/readability \>=0\.5\.0，@aws-sdk/lib-dynamodb \>=3\.0\.0，@anthropic-ai/vertex-sdk \>=0\.14\.0，@aws-sdk/client-dynamodb \>=3\.0\.0，@modelcontextprotocol/sdk \>=1\.0\.0，@livekit/agents-plugin-google ^1\.4\.4，@livekit/agents-plugin-openai ^1\.4\.4，@livekit/noise-cancellation-node ^0\.1\.9，@aws-sdk/client-sagemaker-runtime \>=3\.0\.0
- 首次发布：2026-01-29T23:26:50.121Z
- 最新版本发布：2026-11-05T16:14:33.987Z
- 近 30 天下载量：73742（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：54（近 12 个月 54 个）

## 中文简介

Anima Agent Development Kit - 建造生产级多剂AI系统的框架

## 安装

```sh
npm install @animahealth/adk
```

也可以使用：`pnpm add @animahealth/adk`、`yarn add @animahealth/adk`、`bun add @animahealth/adk`

## README

# 阿尼玛 ADK

生产多剂AI系统的TypeScript框架——先作计划,由事件源出,提供者不可知. 建造并用于生产 [阿尼玛](https://www.animahealth.com/) 运行临床和业务代理工作流程.

**联合国 [adk.animahealth.com (中文(简体) )](https://adk.animahealth.com/)** ——可运行的docs:站点上的每一个代码单元格都会执行您浏览器中运出的数据包.

ADK是一个库,而不是一个平台:除了你选择的数据库之外,没有基础设施依赖(或者没有——内存和SQLite后端不需要什么). 每个层都是独立的有用.

-   **一个会话分类账.** 代理人所做的一切只是一个附加事件的历史;所有状态都源于它. 时光之行,为所欲为,而稽核也来得免费.
-   **特工停止问.** 工具可以产生:运行暂停,会话会持续为一行,一个人类(或另一个系统)恢复它——几分钟或几天后.
-   **模特儿看你的选择.** 上下文渲染器是分类账和快取之间唯一的桥梁,因此完全审计与小上下文共存.
-   **决定性测试.** 测试包只用脚本转折来取代模型——工具真的执行,状态真的写——所以代理测试运行时没有API键.
-   **子路径背后的供应商.** OpenAI、双子座、克洛德(通过Vertex)和Eurrouter是后方的可选整合 `@animahealth/adk/openai` 还有朋友 导入核心拉出其中任何一个.

## 安装

```bash
npm install @animahealth/adk
```

节点 22. `zod` 是需要的对等点(npm和pnpm自动安装). ADK从3.25.76接受Zod 3经典,从4.6.5接受Zod 4经典;a 现有的 Zod 3 应用程序不需要迁移到 Zod 4 。 可选后端 声明可选的对等方——只为您使用的东西安装(例如) `better-sqlite3` sQLite 会话商店).

## 第一跑——无 API 密钥

真正的代理环绕一个脚本模型转弯。 工具执行,状态写出,分类账累积;只有模型被脚本所玩.

```typescript
import { getLastAssistantText, runTest, user, model, mockAgent } from '@animahealth/adk/testing'

const greeter = mockAgent('greeter')
const result = await runTest(greeter, [user('hi'), model('Hello! Ask me anything.')])

console.log(getLastAssistantText(result.events)) // Hello! Ask me anything.
console.log(result.events.map((e) => e.type))
// [ 'user', 'invocation_start', 'model_start', 'assistant', ... ]
```

## 快速启动——直播

```bash
export OPENAI_API_KEY=sk-...
```

```typescript
import { z } from 'zod'
import { adk } from '@animahealth/adk'
import { openai } from '@animahealth/adk/openai'

const app = adk()

const calculator = app.tool({
  name: 'calculate',
  description: 'Evaluate a mathematical expression',
  schema: z.object({
    expression: z.string().describe('Math expression to evaluate'),
  }),
  execute: (ctx) => {
    const sanitized = ctx.args.expression.replace(/[^\d\s+\-*/().eE%]/g, '')
    const result = Function(`"use strict"; return (${sanitized})`)()
    return { result }
  },
})

const assistant = app.agent({
  name: 'math_assistant',
  model: openai('gpt-5.6-luna'),
  context: [
    app.context.system(`You are helpful, use the calculator tool for arithmetic.`),
    app.context.history(),
  ],
  tools: [calculator],
})

const result = await app.run(assistant, 'What is 134 divided by 4?')
console.log(result.output.text) // 134 divided by 4 is 33.5.
```

双子舰身后 `@animahealth/adk/gemini` (AI Studio或Vertex)和克洛德后面 `@animahealth/adk/claude` (Vertex AI) (英语). 提供商的设置生活在每一个子路径的被打入的配置中.

Eurrouter号后舰 `@animahealth/adk/eurouter` 用于Depseek、Kimi和GLM等主机模型。 见 [提供者指南](https://npmcn.com/package/%40animahealth/adk/docs/guide/references/providers-memory.md#eurouter) 用于证书、路由和不需要密钥的本地示例.

## 评价

文本和语音案例可共享一个评价和一个CLI切入点:

```ts
async function main() {
  process.exitCode = await app.evaluate.cli([...textCases, ...voiceCases], {
    concurrency: 4,
  })
}
void main()
```

调用条目脚本 `list`,或 `run --case <name> --repeat 3 --output ./runs`。 。 。 . CLI写着JSON 写着"脱口而出","诊断""脱口而出","报告"和"案件证据" 运行目录。 解析 stdout 时使用无声包脚本 。 仅成功退出 当每一个选定的执行通过。 正常的进口仍然在CLI之前运行,所以保持安静.

使用 `app.evaluate(cases, options)` 同一个混合套房,没有命令行处理. 语音专用钩子、度量衡和房间配置 `options.voice`。 。 。 . 见 [混合语音示例](https://npmcn.com/package/%40animahealth/adk/examples/voice-eval.ts)。 。 。 .

对于本地语音与ADK后端工具, [GPT 现场语音处理器](https://npmcn.com/package/%40animahealth/adk/docs/gpt-live.md) 文档 `openai.live(...)` 与 `app.handler.voice(...)`,键入结果钩, 和记录持续.

对于没有结构信号的语音, [法官的衡量标准](https://npmcn.com/package/%40animahealth/adk/docs/judge-metric.md) 文档 `app.evaluate.judge(...)`,用于文本和语音案件,以及何时使用状态或事件衡量标准.

## 完成和持续执行

`app.run()` 立即开始执行。 等待它返回结果;运行期限或 `run.abort()` 立即拒绝. `run.settled` 总是在 ADK 执行和清理后完成 完成并缓冲其分类账事件。 在承诺或关闭会话库前使用:

```ts
const run = app.run(assistant, { session, timeout: 30_000 })
try {
  return await run
} finally {
  run.abort()
  await run.settled
  await app.sessions.commit(session)
}
```

完成既不成功,也不持久。 认可工具、其复试链、内线儿童 运行和产卵/分出的工作在完成之前仍属其所有。 一种工具可以超过自身的超时; 超时收件保持权威性 `settled` 等待基础工作。 工具或钩子 永远无法完成的 `settled` 待定。 取消的申请承诺不在合同范围之内. 根跑取消在等待钩后防止新的模型/工具入场. `ctx.run`当地 发售超时和代理的期限政策保留其现有行为;当地发售超时 本身不取消孩子或保证其最终引用事件。 取消前面的根运行 整个行动都停止了 断流迭代取消; `handler.turn` 提供了同样的单独的完成障碍,包括其持久性工作.

## 盒子里的东西

| 入境点 | 表面 |
| --- | --- |
| `@animahealth/adk` | 应用程序:代理、步骤、序列/平行/移动、工具、生成工具、管弦(`run`编号 :`spawn`编号 :`dispatch`编号 :`transfer`, (中文(简体) ), `app.ask`, (中文(简体) ), `fanout`),上下文渲染器,会话和已键入的状态范围,内存,结构化输出,并带有一个允许解析器,钩子,错误处理器 `turn`MCP/REST/AG-UI处理器 |
| `/openai` • 妇女 `/gemini` • 妇女 `/claude` • 妇女 `/eurouter` | 模型提供者配置和适配器 |
| `/stores/sqlite` • 妇女 `/stores/postgres` • 妇女 `/stores/dynamodb` | 持久会话存储在1后 `SessionStore` 合同(核心中的母舰) |
| `/voyage` • 妇女 `/qdrant` | 嵌入器和已服务的向量后端`pgvector`, (中文(简体) ), `sqliteVec`,以及 `inMemoryIndex` (核心中舰只) |
| `/testing` | 确定性测试包: `runTest`, (中文(简体) ), `mockAgent`, (中文(简体) ), `MockAdapter`,匹配者 |
| `/eval` | 成套评价、衡量标准、报告、模拟 |
| `/voice` | LiveKit 语音处理器和实时模型 |
| `/web` | 网络工具:搜索、获取、截图 |
| `/agui` • 妇女 `/terminal` | AG-UI 协议适配器和交互式终端 UI |

## 稳定

ADK为前1.0并倾向于一个清晰的API而不是相容化名. 两级:

-   **核心** 主入口和上面的每一个子路径 更改是故意提出的,并记录在 [变化](https://npmcn.com/package/%40animahealth/adk/CHANGELOG.md)。 。 。 .
-   **实验** —— 说 `/workflow` (动态多代理工作流程和Claude-Code兼容工作流程文件加载器), `/agents/coding` 财务报告和审定财务报表 `/agents/coding/claude-code` (提供工作空间的编码代理),以及 `/executors` (Docker/Modal工作空间执行器). 任何发布都可以修改或删除这些内容,而不设折旧周期; 将您的版本绑定 .

实验地表只能通过自己的亚道才能被达到,从不通过主入门——一个建起的门执行.

## 测试

```bash
pnpm install
pnpm run test
```

该套房运行时没有API密钥,也没有数据库. 每个有文件记录的会话存储器和矢量后端也运行一个共享的合规套件,以对应真实的服务容器 [中情局](https://github.com/mycontinuum-com/adk/blob/main/.github/workflows/ci.yml) 合同索赔不断得到证明,而不是断言.

## 捐款、担保、许可证

此寄存器是 ADK 开发主机的连续输出快照 [捐款额](https://github.com/mycontinuum-com/adk/blob/main/CONTRIBUTING.md) 如何处理问题和拉动请求流(短版本:问题是正门,接受的公关在保存您的作者身份的情况下导入)。 报告脆弱性 [警卫](https://github.com/mycontinuum-com/adk/blob/main/SECURITY.md)而不是公共问题.

[麻省理工学院](https://npmcn.com/package/%40animahealth/adk/LICENSE) 安尼玛健康.

## 常见问题

### @animahealth/adk 是什么？

Anima Agent Development Kit - 建造生产级多剂AI系统的框架

### 如何安装 @animahealth/adk？

在项目目录运行 npm install @animahealth/adk，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：zod（^3\.25\.76 \|\| ^4\.6\.5）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @animahealth/adk 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @animahealth/adk 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @animahealth/adk 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @animahealth/adk 可以商用吗？

@animahealth/adk 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @animahealth/adk 的下载量有多少？

根据 npm 官方下载统计，@animahealth/adk 在 2026/10/06 – 2026/11/04 这 30 天内被下载 73,742 次，日均约 2,458 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @animahealth/adk 还在维护吗？

最新版本 0\.6\.13 发布于 2026/11/06（今天）；至今共发布 54 个版本，其中过去 12 个月发布了 54 个；首次发布于 2026/01/30。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

