# @contraagent/api 中文文档

规范地址：https://npmcn.com/package/%40contraagent/api/

版本：0\.10\.1
npm 元数据更新时间：2026-10-31T00:57:42.523Z
中文译文更新时间：2026-11-10T19:24:05.223Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：614 kB，72 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-10-16T11:32:20.235Z
- 最新版本发布：2026-10-31T00:57:42.174Z
- 近 30 天下载量：3336（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：19（近 12 个月 19 个）

## 中文简介

为反向显示器 API 输入客户端: 生成类型、 REST 客户端、 活的种子和它们折叠到的运行状态

## 安装

```sh
npm install @contraagent/api
```

也可以使用：`pnpm add @contraagent/api`、`yarn add @contraagent/api`、`bun add @contraagent/api`

## README

# @ contraagent/ api (帮助)

反向显示器 HTTP API 的打入客户端: 监视器的 OpenAPI 文档, 一个 REST 客户端, 两个活的种子, 和一个商店 将运行的种子折叠成一个类型状态。 没有用户界面 : `@contraagent/ui` 画出它.

这些类型是通过OpenAPI从显示器的 pydantic 模型生成的,所以是 字段中,服务器删除时会失败类型检查,而不是页.

A 类 `::code` 线条引用软件包的文件 [文档网站](https://t-tani.github.io/contraagent/) 显示已设置的引用行。 这些声明及其评论载于 `dist/**/*.d.ts`。 。 。 .

## 获得它

从 npm 注册处安装软件包 :

```
npm install @contraagent/api
```

检查寄存器组装自己的版本( I)[用从一 离职](https://npmcn.com/package/%40contraagent/api/#readme-use-it-from-a-checkout)) (中文(简体) ). 每个显示器还服务于客户端、种子和商店 联合国 `/app.js` (单位:千美元)`@contraagent/ui`\`文件').

## 借出时用

在仓库里 `web/` (节点22,pnpm通过) `corepack enable`:

```
pnpm install && pnpm tarballs
```

`pnpm tarballs` 构建软件包并写入一个 `.tgz` 每个文件 `web/tarballs/`。然后,在您的项目中, npm 或 pnpm:

```
npm install <checkout>/web/tarballs/contraagent-api-*.tgz
pnpm add <checkout>/web/tarballs/contraagent-api-*.tgz
```

## 类型

每个响应和消息都有一个类型,有可读化名: `JournalRow`, (中文(简体) ), `RunSummary`, (中文(简体) ), `Plan`, (中文(简体) ), `Outputs`, (中文(简体) ), `TaskDetail`, (中文(简体) ), `StreamPage`, (中文(简体) ), `TranscriptEvent`,等等。 (笑声) 字段服务器可能退出是可选的 . 封闭词汇是工会: `Stop` (一次尝试如何结束, `JournalRow['stop']`, (中文(简体) ), `TaskState`, (中文(简体) ), `ContractStatus`。 。 。 .

现场直播在SSE事件名称上是受歧视的工会,所以 `switch` 打开 `msg.event` 缩进 `msg.data`数字 :

\*code{ file="src/run-state.ts" from="导出函数减少Run"为=/- 选择者"\]

## 客户

`createMonitorClient({ baseUrl })` 每个 JSON 端点有一个打入方法 (单位:千美元)`src/client.ts`); 每投一个 `ApiError` 当它没有得到JSON的回答: `failure` 实值 `network`, (中文(简体) ), `status` 或者说 `not-json` (例如从一个 服务器,不使用 API,使用 `url`, (中文(简体) ), `status` 媒体 `type`。 。 。 .

## 现场直播

-   `openRunFeed(run, panels, handlers)`:跑来跑去,活来跑去. 每次( 重新) 连接 服务器重放整个日记然后发送 `ready`; 后面的每个消息 `ready` 这是新的.
-   `openStreamFeed(run, key, handlers)`: 1个抄本,被尾:被尾页 首先,只有新的东西.

每个返回一个关闭它的函数.

## 导出

导出( E)`contraagent monitor export`)是显示器的一些运行的观点, 写入为文件,没有服务器读取. `createExportClient(url)` 是客户端 联合国 `data/` 目录: 与服务器客户端相同的方法, 每个都从它的读取 文档. `openExportFeed(client)` 是它运行的种子: 它一次播放运行的文件 结尾 `ready`。给予两者 `MonitorStore` (单位:千美元)`client` 财务报告和审定财务报表 `openRunFeed`改为: 读取导出为服务器.

## 店铺

`MonitorStore` 保留运行列表新鲜度, 打开选中运行的种子, 折叠 其信息变成一个 `RunState`,并告诉订阅者。 它一无所知 任意 UI 框架: lit 控制器, 反应钩子或平版码的订阅 . 它的快照是: `error` 这是 `ApiError` 标题或 没有答案的运行列表 `runsLoaded` 说运行列表已经回答. 背后的减员者, `reduceRun(state, actions)`,是纯的:用它与你的 拥有国家管理权. `@contraagent/ui`文档显示 供养其元素的商店.

## 任务及其成果

一个任务是一个任务的关键. `deriveRun(journal, plan)` 给出每个视图的值 并列出运行任务,每状态计算一次(相同) `journal` 财务报告和审定财务报表 `plan` 对象给出相同结果 :

-   `outcomes` 财务报告和审定财务报表 `rows`:运行中的每一项任务,计划都与 及其成果(续)`done`, (中文(简体) ), `recovered`, (中文(简体) ), `partial`, (中文(简体) ), `failed`, (中文(简体) ), `not_started`, (中文(简体) ), `running`, (中文(简体) ), `waiting`, (中文(简体) ), `skipped`· ; `partial`: 好的, 输出 a 占位符,既不做也不失败;
-   `counts`:按成果划分的任务, `doneTotal` (done并收回: "N of M 任务 页:1 `finished` (消除、恢复、部分消除和跳出);
-   `problems`: 失败的任务及其停止的任务, 任务未启动 他们自己的原因,和收回的任务;
-   `kinds` 财务报告和审定财务报表 `tries`。 。 。 .

`latestTask(rows)` 是默认打开的页面的任务。 发射前的拒绝 (单位:千美元)`invalid_input`)不是一个尝试:一个任务被拒绝,然后完成 `done`没有 `recovered`。 。 。 .

## 常见问题

### @contraagent/api 是什么？

为反向显示器 API 输入客户端: 生成类型、 REST 客户端、 活的种子和它们折叠到的运行状态

### 如何安装 @contraagent/api？

在项目目录运行 npm install @contraagent/api，或使用 pnpm add / yarn add / bun add。

### @contraagent/api 支持 TypeScript 吗？

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

### @contraagent/api 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @contraagent/api 可以商用吗？

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

### @contraagent/api 的下载量有多少？

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

### @contraagent/api 还在维护吗？

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

