跳转到内容

0.10.0:更清楚的后台,更轻的 Agent 接入

配套版本:Core 0.10.0 / MCP 与 Agent Client SDK 0.8.0 / DSH 插件 0.8.0。ACC 1.0.5 继续独立维护。

一次页面设计不应在送到业务系统之前被小容量参数拦下;Agent 查一个工具时,也不必同时加载数篇无关文档。0.10.0 把此前的后台与 Agent 接入改进汇集到同一版本,让调用和排障所需的信息更容易找到,同时保留授权、审批、原结果与重复执行保护。

  • 后台交互:首次接入、调用代码、权限提示、审批重跑和状态更清楚;表单离开前保护未保存内容,诊断定位、筛选和页签保留上下文,编辑抽屉将常规说明收进问号。
  • 按需指导与知识:具备检索能力的 Agent 客户端可显式协商有界知识提示,再按本次授权搜索和读取;完整工具指导按需取回。必要规则、权限和工具 schema 保留,自带聊天与嵌入式聊天的知识装配不变。
  • 完整大参数:工具 arguments JSON 的 UTF-8 上限统一为 1 MiB,HTTP 信封上限为 2 MiB;业务系统自己的字段和保存限制仍独立生效。超限明确未派发,并提供非敏感大小信息。
  • 按模型声明输出预算:默认输出预算、服务上限、供应商参数以及是否包含思考分别说明。旧服务保持旧行为,启用新策略不改写已保存的模型 operation 或业务调用。
  • 续段与恢复契约:透传原始模型结束原因,丢回执时按原 ID 查询;确认截断后由宿主保存进度并准备有界新续段。已完成工具复用原 invocation 与结果,未知写入先核对。升级 Core、SDK 或 DSH 不等于任意宿主已经实现自动续跑。
  • 运行和升级诊断:readiness 检查实际状态库、配置库及迁移摘要;启动恢复和关闭共用原排空边界。离线升级计划帮助比较可信制品和脱敏快照,不执行迁移或自动回退。

从公开 0.9.4 升级没有新增 SQL。更早版本仍需按账本补齐未应用迁移,包括 068;状态数据库和配置数据库可能独立,分别确认,共库只执行一次。保留配置、密钥、附件、原操作、审批、通知和迁移记录,不为升级清空数据。

新 Agent 能力按 Core 0.10.0、SDK/MCP 0.8.0 与 DSH 0.8.0 配套接入;旧客户端继续原有兼容路径。模型预算策略由管理员按实际供应商显式启用。自定义 MySQL state store 需提供实际查询资源以完成 readiness;缺失时明确 not-ready。

正式制品使用精确版本和提交。回退前停止新工作、排空并在隔离副本核对代码、配置与数据组合;无新增 SQL 不代表任意旧客户端或旧配置都可以直接恢复。部署和宿主验收分别完成,不能把包已发布当作所有使用环境已经升级。

0.10.0 完整说明 · 升级指南 · Agent 知识接口 · 输出预算 · 续段与原请求恢复 · SDK 0.8.0 升级

历史版本 0.9.4:DOCX 依赖收敛与通知持久化

Section titled “历史版本 0.9.4:DOCX 依赖收敛与通知持久化”

以下保留原 0.9.4 说明。其相对更早版本的 068 迁移要求不表示从 0.9.4 升级本版需要再次执行迁移。

当时配套:Core 0.9.4 / MCP 与 Agent Client SDK 0.7.0 / DSH 0.7.0。ACC 1.0.5 和独立客户端包不因本补丁升版。

任务已完成、通知还没发出去时,进程中断不应让这条通知悄悄消失。0.9.4 把通知意图和它所对应的新状态一起保存,并提供有界恢复与人工核对入口。

  • DOCX 依赖收敛:Core 和自带控制台使用同一份来源固定、许可证完整的 Mammoth 1.12.0 库分发,保留原始解析源码,移除未使用的 CLI 与 argparse → sprintf-js 链。原限时漏洞例外退役;库来源、实际安装归档与原包安全公告纳入门禁。这不是上游漏洞已修复的声明。
  • 持久通知意图:内置 MySQL 将任务终态和通知写入同一事务,审批提示在审批所在配置库同事务保存;单写者 JSONL 以同一日志记录同步落盘。启动和维护周期恢复已保存意图,租约约束旧 worker 的确认权限;不批量补发历史已完成任务或旧审批。
  • 有界补发:Webhook 等待真实响应,同一事件复用 X-Bailing-Event-Id 和签名正文中的 notification_event_id。网络、429、5xx 按有界退避重试,普通 4xx 停止;回执丢失仍可能重复送达,接收方应按事件 ID 去重。原生渠道部分送达或回执未知保留为 uncertain,核对后才可人工重试。
  • 控制台与维护指标:「任务 → 通知送达」提供摘要筛选和受权限约束的补发;未知送达需明确确认重复风险。补发不重跑业务父任务。固定来源指标反映持久状态数量、最老待处理年龄与过期租约,不暴露通知正文、收件人或凭据。

升级前备份并协调旧写入,向实际使用的状态数据库和配置数据库显式应用 068_notification_outbox.sql;两者可以不同,运行时启动不自动迁移。更早版本还须应用其未执行迁移。任务和审批快照可能包含业务正文与目的地址,应按业务数据保护。第三方仓储未实现持久化端口时保留旧兼容路径,不宣称具备完整持久通知能力。

completed 只表示该通知步骤完成,可能只是交给持久通知执行器,不等于收件人已收到或阅读。普通监控告警仍是尽力发送,JSONL 仍是单写者,本版不提供通知历史自动清理,也不保证跨系统恰好执行一次。

回退前先停止新接单和通知 worker,保留 outbox、死信、迁移账本及外部回执。旧版本不会消费新 outbox,恢复备份不能撤销已发出的消息;需在隔离副本验证一致的代码、配置和数据库组合,再核对已发送事件。不能靠删除记录或直接切旧代码宣称无损回退。Core 发行不代表商业 Host、自用实例或客户端已经升级。

参见 0.9.4 完整说明、补丁升级指南、通知持久化与补发、DOCX 依赖来源 和 能力与证据索引。

历史版本 0.9.3:有限收包、通知关闭与死信重投

Section titled “历史版本 0.9.3:有限收包、通知关闭与死信重投”

以下保留 0.9.3 的补丁说明;其中未提供持久 outbox 的边界描述只适用于该版本,其 067 要求不代替 0.9.4 的 068 迁移。

当时配套:Core 0.9.3 / MCP 与 Agent Client SDK 0.7.0 / DSH 0.7.0。ACC 1.0.5 和独立客户端包不因本补丁升版。

本补丁限制工具和附件下载占用,等待正常关闭前已接受的通知工作,并修复执行器通知死信的重投路径。

  • 有限收包:工具 HTTP 正文默认 5 MiB;远程文件沿用 max_bytes,渠道附件限额 20 MiB。先检查声明长度,再逐块检查 fetch 解码后的实际字节,超限取消并丢弃部分正文。HTTP 200 响应头不足以确认业务写入成功,原结果未知与防重路径保留;模型和审计视图分别按 UTF-8 字节限量。
  • 通知关闭:每个 Kernel 登记回调、通知派生、审批 webhook、告警和 DLQ 写入的实际收尾工作,共用原关闭预算;standalone 先停止并等待已开始的维护生产者。超时保留原实例资源,待原工作完成后可在同一实例重试关闭。
  • 死信重投:原生渠道继续使用原渠道发送;执行器死信只重排核对过的原通知子任务,不重跑业务父任务。持久重投标记和原子入队避免同一死信在并发、确认丢失或 resolve 失败后重复排队;queued 表示已入队,不表示收件方已收到。
  • 维护指标:只读当前 owner 的在途、失败、关闭超时和最近一页结算/审批进度,使用固定低基数标签,不含账号、任务或业务载荷;这些计数不等于全库积压量或送达确认。

升级前备份、协调旧写入,并通过正式迁移器应用未执行的 067_delivery_dlq_replay.sql;更早版本还须应用其未执行迁移。新版 MySQL DLQ 的全部读写须先应用 067,运行时不自动迁移。自定义仓储需实现配套 DLQ 重投接口,否则执行器重投明确不可用。回退代码时保留增量结构、迁移账本、原队列和重投标记;不能删标记重投。

旧制品可能因未知的 067 迁移账本而拒绝 readiness 或迁移入口。回退前须在隔离副本验证旧制品与保留的新 schema/账本组合,不能靠删除迁移记录绕过检查。

本补丁覆盖正常关闭与已保存死信,不提供全量持久通知 outbox,不承诺 SIGKILL 后所有直接 HTTP 通知都会补投,也不保证跨系统恰好执行一次。客户端编排、商业 Host 的租户维护和消费者升级分别由各自项目处理。

参见 0.9.3 完整说明、补丁升级指南、可靠性机制与限制、维护指标 和 能力与证据索引。

历史版本 0.9.2:安装凭据、异步结算与审批补续

Section titled “历史版本 0.9.2:安装凭据、异步结算与审批补续”

以下保留 0.9.2 的补丁说明;其 065、066 要求不代替 0.9.3 的 067 迁移。

当时配套:Core 0.9.2 / MCP 与 Agent Client SDK 0.7.0 / DSH 0.7.0。ACC 1.0.5 和独立客户端包不因该补丁升版。

本补丁修复三处 Core 可靠性缺口:新安装安全凭据生成失败时停止;原模型用量无需等待新请求即可继续结算;已保存的审批决策在审计或排队失败后可按原坐标补续。

  • 安装凭据:六项凭据独立生成,安全随机源缺失、失败或输出不合法时不生成半份配置、不启动服务;既有 .env 和管理员密码保留。
  • 异步结算:standalone 在启动后和每分钟安排维护;managed Kernel 由既有 tick 推进。公平分页只使用已保存的计量、参考价格和原统一倍率,不调用供应商或重新派发请求。缺少可信计量的记录仍为 pending/unknown。
  • 审批补续:决策与补续坐标在同一事务保存。审计或入队失败后使用原 decision_id 重试,后台也会检查未完成补续;同一决策的入队标记防止确认丢失后的重复排队。Agent 直调仍由原本地 Agent 显式恢复,不启动中枢模型循环。
  • 关闭与证据:停止新维护后等待已开始的持久化工作,超时保留原实例供重试;新增隔离数据库与进程恢复回归,并通过只含公开实现和测试入口的能力证据索引列明验证范围。

升级前备份并协调旧写入,通过正式迁移器应用未执行的 065_usage_reconciliation_scan.sql 和 066_approval_continuations.sql;运行时启动不自动迁移。自定义 state/config 仓储需实现配套补续接口,未实现时新决策明确不可用。回退代码时保留增量结构、补续记录和去重标记,先核对原决策与队列;不能删标记重投。

这些机制不保证跨业务系统恰好执行一次,不猜测缺失计量,不替代生产部署验收。商业 Host 的租户维护、客户端编排与长期记忆继续由各自项目负责。

参见 0.9.2 完整说明、补丁升级指南、可靠性机制与限制 和 能力与证据索引。

历史版本 0.9.1:异步模型工作关闭与公开能力证据

Section titled “历史版本 0.9.1:异步模型工作关闭与公开能力证据”

以下保留 0.9.1 的补丁说明;其没有新增 SQL 的描述只适用于该版本,不能代替 0.9.2 升级要求。

当时配套:Core 0.9.1 / MCP 与 Agent Client SDK 0.7.0 / DSH 0.7.0。独立客户端包不因本补丁升版。

图片请求先返回 pending 后,供应商完成与结算仍可能在后台运行。0.9.1 在关闭资源前,登记并排空属于原实例的 usage 工作:模型工具完成及晚登记结算、普通文本响应后的结算、响应清理、usage 核对,以及参考价格刷新到持久化结束。

  • 这些阶段共用原 close(drainMs) 时限;usage 排空阶段超时保留原实例依赖和 closing 状态,可等待原工作后在同一实例重试,不重新派发原请求。
  • 图片首次响应仍返回 HTTP 202,普通文本结果也不等待财务结算交付。原请求标识、业务授权、审批和结果/计费状态分离保持。
  • 新增中英公开能力与证据索引,纳入此前主分支的通用安全治理;不把测试、治理资料或 Core 版本当作宿主已部署、实际采用或完整安全保证。
  • 相对 0.9.0 没有新增 API、SQL 迁移、套餐规则或客户端功能。更早版本仍应用其未执行迁移。失败后台工作可保留 pending/unknown,排空完成不保证全部记录 settled,也不提供进程崩溃恢复。

升级前,不能只凭 0.9.0 的旧 close() 已返回就断言 usage 工作已结束;应保留原记录并核对在途操作。参见 0.9.1 完整说明、补丁升级指南 和 能力与证据索引。

历史版本 0.9.0:模型服务与统一套餐额度

Section titled “历史版本 0.9.0:模型服务与统一套餐额度”

以下保留 0.9.0 引入的功能与从 0.8.0 的升级说明;不是 0.9.1 新增能力或补丁升级要求。

配套版本:Core 0.9.0 / MCP 与 Agent Client SDK 0.7.0 / DSH 0.7.0。

企业服务助手可能先选择对话模型,生成活动图片,再调用已授权的业务接口。现在管理员可以为这些模型与生成工具配置一份共享额度。本地宿主继续负责对话和任务编排,中枢记录原请求、实际计量与结算;业务系统继续执行原权限与审批。

管理员配置实际模型连接与型号,显式选择参考计价模型和端点,再创建套餐并开通给个人或组织共享账户。对话模型和模型工具进入独立目录;配置未就绪的服务不出现在可调用条目中,宿主可展示原因。

参考价格来自 OpenRouter,不等于实际供应商账单。每笔请求保留参考价格和套餐倍率快照,后续调价不重算历史。中枢不按用户轮次或任务步数收费。

例如企业服务助手套餐售价 300 USD,每月额度 100 USD,统一倍率为 1.5。一次请求的参考费用为 0.20 USD,结算扣除 0.30 USD,实际剩余额度比例为 99.70%。

  • 周期套餐分别设置售价与每周期额度,按日、周或月重置;客户看到剩余百分比,分母为周期额度。
  • 额度包提供一次性 USD 额度,客户看到积分,固定 1 USD = 1000 Credits。
  • 有效期与重置周期独立;最后不足一个完整周期仍有完整额度,到期停止新请求,余额不结转。修改模板售价不会重置原开通条款。
  • 原始 Token 数保留为用量证据。支付、汇率、退款和商品定价由业务侧负责。

首批支持阿里云 OpenAI Images 兼容接口、DashScope 原生接口与 OpenRouter Images 文生图。视频、语音和自定义能力可以保存声明,没有执行适配时不可调用。

图片请求保存派发记录后异步完成。宿主查询原请求 ID,结果完成即可使用;缺少实际计量时仍待结算,不猜测零费用。并发晚结算可能产生超额,余额耗尽后阻止新请求。

断网或结果未知时保留原 ID,不重建生成请求;取消后的晚到用量仍记录,不恢复已结束轮次。生成图片和修改业务数据是两个独立动作,图片可按需复用已有附件空间。

套餐移除保留历史开通、请求和账本。停用账户可以归档,恢复回原账户的停用状态,不恢复旧凭证或补发额度。

有权限的管理员可重置中枢维护的当前有效额度:周期套餐恢复原周期额度并重新起算,额度包恢复原始积分。到期时间不延长,已派发请求仍向原额度池结算。业务后端维护的套餐由原来源调整。

从 0.8.0 升级到 0.9.0:按角色升级

Section titled “从 0.8.0 升级到 0.9.0:按角色升级”
角色 需要做什么
中枢管理员 备份,升级 Core,通过正式迁移器应用未执行的 063、064;按需配置模型连接、参考计价、套餐和账户
客户端宿主开发者 配套升级 SDK/DSH,接入模型目录、摘要、持久原请求和异步结果;检查实际解析的依赖版本
业务后端开发者 仅在需要开通套餐或提供套餐范围身份时,使用独立 issuer 凭据与 billing 接口;保留原幂等参数
普通使用者 使用已接入相应能力的宿主;保留原业务授权,套餐不会额外授予业务写权限

从公开 0.8.0 升级不需要清退数据。通过 npm run db:init 执行所有未应用迁移,运行时启动不自动迁移;保留配置、密钥、原数据库及迁移账本。已使用计费预览的实例另外核对周期额度快照。详情见配套升级指南。

模型计费按需启用,既有业务工具、审批、多账户会话、长任务控制和归档可以继续使用。启用后,用所配置的服务检查文本流式、图片结果、额度摘要及原请求恢复,并核对结算记录。

模型服务与套餐计费 · 完整版本说明