# @fungi\.computer/mule 中文文档

规范地址：https://npmcn.com/package/%40fungi.computer/mule/

版本：0\.2\.3
npm 元数据更新时间：2026-11-07T20:41:07.105Z
中文译文更新时间：2026-11-15T18:20:03.514Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：172 kB，28 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：4 个
- 首次发布：2026-10-15T08:00:29.985Z
- 最新版本发布：2026-11-07T20:41:06.910Z
- 近 30 天下载量：12786（2026-10-16 至 2026-11-14，npm 官方下载统计）
- 已发布版本数：9（近 12 个月 9 个）

## 中文简介

效果本地化 Pi 模型和工具循环

## 安装

```sh
npm install @fungi.computer/mule
```

也可以使用：`pnpm add @fungi.computer/mule`、`yarn add @fungi.computer/mule`、`bun add @fungi.computer/mule`

## README

# 木浆( M)`@fungi.computer/mule`(中文(简体) )

Mule在Effect内部运行了Pi的模型和工具回路. 当主机已经使用时使用 拥有模型,消息和工具,需要等待,可以取消运行. 皮丝 模型、消息、提供者重放字段和流出事件保留其原始内容 类型.

## 设置

```sh
npm install @fungi.computer/mule
```

包船无害环境管理仅取决于 `effect` 和 Pi 键 (单位:千美元)`@earendil-works/pi-ai`)在运行时,加上类型框和 `@fungi.computer/cairn` 身份证 Mule不要求或安装MCP SDK. 进行类型检查的消费者 扶养申报`skipLibCheck: false`必须安装 Pi 的 Google GenAI 可选声明依赖性本身:

```sh
npm install --save-dev @modelcontextprotocol/sdk
```

根入点输出承诺的外表, `mule.run`。 。 。 . `@fungi.computer/mule/effect` 出口峡谷 `muleEffect.run`编辑 保证让工具,钩子和听众 适应同样的效果程序, 因此,公开承诺声明不需要效果类型.

## 没有提供者账户的快速启动

这个决定性的例子使用公共测试帮助. 没有网络 请求和不需要证书.

```ts
import { fauxAssistantMessage } from "@earendil-works/pi-ai/providers/faux";
import { mule } from "@fungi.computer/mule";
import { fauxModel } from "@fungi.computer/mule/testing";

const faux = fauxModel([fauxAssistantMessage("pong")]);
const outcome = await mule.run(
  {
    model: faux.model,
    retryable: faux.retryable,
    stream: faux.stream,
    systemPrompt: "Reply once.",
    messages: [{ role: "user", content: "ping", timestamp: 1 }],
  },
  () => {},
);
console.log(outcome.status);
```

结果是 `completed`。当等待运行时,没有活动流存在 解决。 这个 [测试助手](https://npmcn.com/package/%40fungi.computer/mule/test/support.ts) 使用此提供者和输入形状, 财务报告和审定财务报表 [表面测试](https://npmcn.com/package/%40fungi.computer/mule/test/promise-facade.test.ts) 比较承诺和效果 寿命周期。 这个假的提供商 检查管弦,而不是真正的供应商.

对于一个真正的模型,供应Pi's `Model<Api>` 要么是正常的 要么是正常的 `streamSimple` 或明确的提供者流。 东道主提供证书和账单。 等着 收听者:它的完成是跑道生命周期的一部分.

## 工具和控制

工具配对 Pi 的描述符 `prepare(call, signal)`。准备解码 并授权准确的呼叫。 它返回输入的拒绝或准备 执行者。 承诺执行者通过 `AsyncIterable`编辑 效果执行器使用流 。 每个执行者都必须遵守取消.

运行,转动,消息和工具事件带有因果关系. 他们让东道主 记录哪些处决产生了意见。 他们不会创造持久 会话存储. 主机可能选择平行或相继的工具执行, 引导 通过现有的控制接口进行活动工作和排队后续输入.

一个工具只有在只读或明确读取时才选择安全崩溃重放 一相能发. 宿主坚持要使用检查站 `resume`。宣布 `replay: "safe"` 并不使外部写作具有独到性。 Pi的供应商 消息和重放字段不会改变.

## 取消、重试和错误

中止承诺的外观信号 或中断效果纤维。 木浆中止 已取消 Pi 流和运行工具及记录 `run_end`承诺 表面保存着一个 `Error` 中止理智并拒绝它。 一个非`Error` 理由变成一个 `AbortError`。忽略中止的操作仍然需要其 由主机负责辅助工作.

工具准备拒绝和执行失败成为模式可见错误 结果,所以运行可以继续. 致命模型或控制故障产生 失败 `run_end`。无法信任一个失败的听众来记录终端 活动。 在报告时要保留拒绝及其原因.

`retry` 选择 Pi每一次的助理电话都有限制重试政策. 别管它了 意思是不要重试 提供方重试证据和重试观察使用 已存在的运行接口。 Mule 不为您的主机选择提供者政策 . `modelStreamIdleTimeoutMs` 将提供者事件之间限定为沉默.

穆尔没有模型目录 证书存储 耐用会话数据库, 压缩服务或进程重起调度器. 组成那些在东道主.

## API 和实例

使用 [生成 API 引用](https://npmcn.com/package/%40fungi.computer/mule/docs/api/README.md) 出口数量 [软件包.json](https://npmcn.com/package/%40fungi.computer/mule/package.json)。 。 。 . [取消对等](https://npmcn.com/package/%40fungi.computer/mule/test/cancellation-parity.test.ts), (中文(简体) ), [重试策略](https://npmcn.com/package/%40fungi.computer/mule/test/retry-policy.test.ts) 财务报告和审定财务报表 [工具批次](https://npmcn.com/package/%40fungi.computer/mule/test/tool-batch.test.ts) 测试练习共享循环.

[即时实例](https://npmcn.com/package/%40fungi.computer/mule/examples/prompt.ts) 是一个可选的现场服务员。 这个 需求 `CAMEL_API_KEY` 通过本地环境提供。 它的终点 和模型覆盖属于这个例子,而不是穆尔的API. 没必要 为决定的快速开始。 不承诺证书.

## 贡献和许可证

使用已有的 faux 提供者添加一个管弦回归 。 从根出:

```sh
pnpm --dir packages/mule run test
pnpm --dir packages/mule run docs
```

麻省理工学院. 见 [自由主义](https://npmcn.com/package/%40fungi.computer/mule/LICENSE) 财务报告和审定财务报表 [第三层( P)](https://npmcn.com/package/%40fungi.computer/mule/THIRD_PARTY_NOTICES)。 。 。 .

## 常见问题

### @fungi\.computer/mule 是什么？

效果本地化 Pi 模型和工具循环

### 如何安装 @fungi\.computer/mule？

在项目目录运行 npm install @fungi\.computer/mule，或使用 pnpm add / yarn add / bun add。

### @fungi\.computer/mule 支持 TypeScript 吗？

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

### @fungi\.computer/mule 支持 ESM 还是 CommonJS？

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

### @fungi\.computer/mule 可以商用吗？

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

### @fungi\.computer/mule 的下载量有多少？

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

### @fungi\.computer/mule 还在维护吗？

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

