@agentsmarket/pipeline-runtime

中文文档
0.5.13发布于 2026/11/01MITTypeScriptES Module近 30 天下载 4443

执行PIPELINE.md工作流程的运行时间(多技能管弦乐). 提供者-不可知论(MiniMax, Claude, OpenAI).

中文使用文档
文档目录8 节
  1. 快开始
  2. 提供商 ≠型 (R6, v0.3)
  3. 提供者抽象
  4. 状态
  5. 输出光谱助手(v0.5-P1.1)
  6. 文件输出集(v0.5-P1.2/P5)
  7. 壳牌舞台辅助器(v0.5-P4,仅CLI)
  8. 状态

@ agentsmarket/ 管道运行时间

执行PIPELINE.md文件——多阶段AI工作流程.

注(第2阶段): 生产执行者居住在 @agentsmarket/server (云雾工人), 运行管道服务器侧 POST /v1/pipelines/:id/invoke 与出处签名. 这个 bin/webhook.mjs 此软件包中的 HTTP 服务器是 本地 dev 工具 + 自动托管引用。 。 。 . 在市场外运行管道时使用(例如用于测试,自定义部署, 或发布您的管道到 agentsmarket.world) (中文(简体) ).

快开始

import { MiniMaxProvider, runPipeline, runPipelineV2 } from '@agentsmarket/pipeline-runtime';

const provider = new MiniMaxProvider(); // reads MINIMAX_API_KEY env

const pipeline = {
  name: 'code-refactor',
  version: '1.0.0',
  stages: [
    {
      id: 'analyze',
      provider: 'minimax',        // R6: explicit provider declaration
      model: 'MiniMax-M3',
      system: 'You are a code analyzer.',
      prompt: 'Analyze this code: {{code}}. List 3 improvement opportunities.',
    },
    {
      id: 'refactor',
      provider: 'minimax',
      model: 'MiniMax-M3',
      depends_on: ['analyze'],
      system: 'You are a senior engineer.',
      prompt: 'Refactor the code based on: {{analyze}}. Original: {{code}}. Return only the refactored code.',
    },
  ],
};

const result = await runPipeline(pipeline, { code: '...' }, { provider });
console.log(result.refactor);

提供商 ≠型 (R6, v0.3)

从R6开始,每个LLM阶段必须宣布 两者 provider: 财务报告和审定财务报表 model:。 。 。 . 按型号名称自动发送被删除. 见 docs/R6-PROVIDER-MODEL.md 联 合 国 完整设计; 快速参考 :

stages:
  - id: analyze
    provider: minimax        # required — one of openai|anthropic|minimax|openrouter|replicate
    model: MiniMax-M3        # required — must be in PROVIDER_REGISTRY[provider].supportedModels
    prompt: ...

使用 validateR6Spec(spec) 在无效对上( CLI / 服务器) 失败快取 :

import { validateR6Spec } from '@agentsmarket/pipeline-runtime';

const { errors } = validateR6Spec({
  stages: [{ id: 's0', provider: 'replicate', model: 'gpt-4o', prompt: 'x' }],
});
// errors[0]: "Stage 's0': Provider 'replicate' does not support model 'gpt-4o'.
//            Supported models for replicate: [...]"

用于自动迁移遗产v.02管道:

import { migrateProviderField } from '@agentsmarket/pipeline-runtime';

const migrated = migrateProviderField(legacySpec); // adds provider: minimax to LLM stages

提供者抽象

管道参考模型按名称排列. 运行时间选择一个知道这个模型的提供者:

  • minimax — MiniMax( 默认) 。 型号: MiniMax-M3, (中文(简体) ), MiniMax-M2.7, (中文(简体) ), MiniMax-M1。信封: MINIMAX_API_KEY。 。 。 .
  • openai - OpenAI(英语:OpenAI). 型号: gpt-4o, (中文(简体) ), gpt-4o-mini, (中文(简体) ), o1-preview, (中文(简体) ), o1-mini, (中文(简体) ), gpt-3.5-turbo。信封: OPENAI_API_KEY。 。 。 .
  • anthropic - 麻醉药 型号: claude-3-5-sonnet-20241022, (中文(简体) ), claude-3-5-haiku-20241022, (中文(简体) ), claude-3-opus-20240229。信封: ANTHROPIC_API_KEY。 。 。 .
  • openrouter ——多模式网关supportedModels: ['*']内容 : OPENROUTER_API_KEY。 。 。 .
  • replicate ——再现(影像源). 型号: black-forest-labs/flux-pro, (中文(简体) ), black-forest-labs/flux-schnell, (中文(简体) ), stability-ai/sdxl。信封: REPLICATE_API_TOKEN。 。 。 .

单一真相来源: PROVIDER_REGISTRY 内 src/provider-registry.ts。 。 。 .

状态

v0.5 — 文件输出 + 外壳相运( P5 + P4) 。 服务器表面 call_price_usdc + 键 preferred_model + 键 capabilities 每一个管道.

输出光谱助手(v0.5-P1.1)

管道宣布为顶级 output: 块描述它们生产的东西. 有两个关切: format (文本/json/zip/文件)和 delivery (内出或 已签名 URL). validateOutputSpec(raw) 返回正则的 spec 或 结构错误 :

import { validateOutputSpec } from '@agentsmarket/pipeline-runtime';

const r = validateOutputSpec({
  format: 'files',
  files: ['*.md', 'report.json'],
  delivery: 'signed_url',
  expires_in: 3600,
});
// r.ok === true, r.value = { format: 'files', files: [...], delivery: 'signed_url', expires_in: 3600 }

限制 : expires_in 60~秒~604800(7天). 使用球盖 * 财务报告和审定财务报表 ** 与标准"没有斜过 **" 语义.

文件输出集(v0.5-P1.2/P5)

当一个舞台宣布 output_format: structured_json 并包括a produced_files 阵列, extractProducedFiles(stageOutputs, spec) 收藏 基础64编码文件,并对照 output.files 阴影 :

import { extractProducedFiles, globToRegex } from '@agentsmarket/pipeline-runtime';

const stageOutput = JSON.stringify({
  summary: 'done',
  produced_files: [
    { name: 'report.md', content_type: 'text/markdown', content_b64: 'IyBS...' },
  ],
});

const r = extractProducedFiles(
  { stage1: stageOutput },
  { format: 'files', files: ['*.md'], delivery: 'signed_url', expires_in: 3600 },
);
// r.files = [{ stage_id: 'stage1', name: 'report.md', size: 7, content_type: 'text/markdown', content_b64: '...' }]
// r.errors = [], r.warnings = []

限制:10 MB/文件,每引用50 MB总量,最多100个文件. 拒绝名称 /, (中文(简体) ), \, (中文(简体) ), .. (平面命名空间). 不良基数64/ 超大小/ 路径- 逆变 返回中止管道的错误; 无法匹配的阴影返回警告.

服务器在 POST /v1/pipelines/:id/invoke (P5) 上传文件到 R2 并返回 HMAC 签名的 URL output_files[]。 。 。 .

壳牌舞台辅助器(v0.5-P4,仅CLI)

阶段可以声明 shell: "cmd args..." 或者说 shell: { cmd, args?, cwd?, timeout_ms? }。只通过 pipeline call --local; 服务器引用返回 400 SHELL_UNSUPPORTED_ON_SERVER。 。 。 .

import { NodeShellExecutor, ThrowingShellExecutor } from '@agentsmarket/pipeline-runtime';

// CLI passes a real executor
const cliDeps = { isLocal: true, shellExecutor: new NodeShellExecutor(), ... };

// Server passes a throwing stub (Workers can't spawn)
const serverDeps = { isLocal: false, shellExecutor: new ThrowingShellExecutor('server cannot spawn'), ... };

NodeShellExecutor 用途 child_process.spawn(cmd, args, { shell: false, timeout })数字 : 签名于 timeout_ms 过期( 地图为 ShellStageTimeoutError),非零 出 关 ShellStageExecError,以每分 1 MB 的速率调取.

两种形式,两种不同的东西:

表单这是什么如何运行
shell: "npm test && npm run lint"(单位:千美元) 命令行/bin/sh -c "npm test && npm run lint" —— 说 &&, (中文(简体) ), |, (中文(简体) ), >, (中文(简体) ), ; 并引用成文作品
shell: { cmd: "npm", args: ["test"] }a 一个 精确参数vspawn(cmd, args, { shell: false }) ——没有解释,没有重新引用

字符串形式是一个真正的外壳,因为舞台叫做 shell: - 一条线 自动分裂成一个正弦 && 普通参数和引用 字义. 翻译一次,在 normalizeShellStage因此,每个 执行器( 本地节点, 远程沙盒) 运行完全相同的 argv 。 对象 窗体保持无外壳: 它是程序必须接收时使用的窗体 正是这些论点.

stages:
  - id: lint-and-test
    shell: "npm run lint && npm test"
  - id: pytest
    shell:
      cmd: pytest
      args: ["-x", "tests/"]
      cwd: ./backend
      timeout_ms: 120000

限制 : timeout_ms 默认 30000, 最大 60000 (10 分钟) 。 输出上限 1 MB 每个溪流。 字符串窗体在 POSIX 下运行 /bin/sh (单位:千美元)SHELL_BIN) (中文(简体) ).

一次碰撞要知道: ${VAR} 替换为运行时间 在YAML解析前 ${VAR} 内置 a 外壳线由跑道的环境解决——不是由外壳解决. 这是 你想怎样 shell: "curl -H 'Bearer ${API_KEY}' …",但是一个外壳 构造需要 ${...} 本身(一个位置参数, ${1}(中文(简体) ) 从来没有到达贝壳.

状态

v0.5 — 文件输出( P5) + shell stage (P4) 运出. R6(提供QQ模式) 运出于v0.3. Linear + DAG 级执行. 重试,平行分枝, 检查站.

版本与发布记录

@agentsmarket/pipeline-runtime 共发布 29 个版本,首次发布于 2026/09/21;过去 12 个月发布了 29 个版本。

版本发布日期距今
0.5.13latest2026/11/016 天前
0.5.122026/11/016 天前
0.5.112026/10/2810 天前
0.5.102026/10/2810 天前
0.5.92026/10/2513 天前
0.5.82026/10/2415 天前

关于 @agentsmarket/pipeline-runtime 的常见问题

@agentsmarket/pipeline-runtime 是什么?

执行PIPELINE.md工作流程的运行时间(多技能管弦乐). 提供者-不可知论(MiniMax, Claude, OpenAI).

如何安装 @agentsmarket/pipeline-runtime?

在项目目录运行 npm install @agentsmarket/pipeline-runtime,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 pipeline-webhook,可以用 npx pipeline-webhook 直接运行。

@agentsmarket/pipeline-runtime 支持 TypeScript 吗?

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

@agentsmarket/pipeline-runtime 支持 ESM 还是 CommonJS?

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

@agentsmarket/pipeline-runtime 需要什么版本的 Node.js?

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

@agentsmarket/pipeline-runtime 可以商用吗?

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

@agentsmarket/pipeline-runtime 的下载量有多少?

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

@agentsmarket/pipeline-runtime 还在维护吗?

最新版本 0.5.13 发布于 2026/11/01(6 天前);至今共发布 29 个版本,其中过去 12 个月发布了 29 个;首次发布于 2026/09/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。