Skip to content

Releases: 4o4E/RunForge

RunForge v0.20.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 17:04

本版本增加新闻批次筛选与小时成稿,业务偏好由新闻空间管理;修复Shell和子任务等待、取消及关闭流程,使执行结果与真实终态一致;视频插件由调用任务决定分析范围与回复格式。同步项目说明、OpenSpec和开发技能。镜像提供ghcr.io/4o4e/runforge:v0.20.0及latest,支持linux/amd64。发布流水线已通过构建、类型检查、单元测试、真实PostgreSQL集成、自带及外部PostgreSQL容器部署与匿名镜像拉取验证。业务插件独立于应用镜像安装:新闻研究0.2.1、B站视频分析0.5.0、通用音视频0.2.1;既有任务沿用原快照,新任务使用更新后的插件。升级应用需要在原Compose环境拉取latest并重建RunForge服务,保留现有数据库及挂载。

RunForge v0.19.0

Choose a tag to compare

@4o4E 4o4E released this 19 Oct 17:33

运行配置与图片输入

  • 系统后台支持配置 Python(pip / uv)与 Node(npm / pnpm)镜像源,默认使用清华 PyPI 镜像和 npmmirror。保存后新命令使用最新配置,无需重建会话;已启动进程保持原环境。
  • 图片进入模型前检查实际尺寸、像素和体积:任一边不超过 8000 像素、总像素不超过 2400 万、最终输入不超过 10 MiB。超限时明确提示裁剪或缩放,长图优先分段裁剪,不自动丢失原图内容。
  • 主任务与子任务使用统一多模态图片规则,不以 OCR 环境替代视觉理解;尺寸、格式或泛化输入错误不会被误判为模型没有图片能力。

Shell 与资源只读

  • 所有 Linux Shell 都通过 bwrap 执行。插件、Skill 和 SDK 的逻辑入口及真实目标只读挂载,保留原文件权限。
  • 工具策略和 Shell 访问范围独立配置。容器范围保留原容器文件与网络范围;完整会话隔离只开放当前会话和获准用户目录,按网络开关执行。
  • 修复 auto 完整隔离的用户目录映射、网络控件交互、bwrap 管理进程继承后端环境、启动失败后阻塞会话,以及终止时末尾输出的处理。

部署与升级

  • 镜像:ghcr.io/4o4e/runforge:v0.19.0 与 ghcr.io/4o4e/runforge:latest,支持 linux/amd64。
  • 使用本 Release 附带的两套 Compose、环境模板和安全配置,按部署说明保留目录布局及既有数据卷。Linux 宿主必须允许 bwrap 创建隔离环境;缺失或不可用会明确报错,不直接执行 Shell。
  • 安装在系统目录之外的工具,其运行依赖目录也需要通过 SHELL_PATH 明确配置。
  • 没有新增数据库迁移。发布不会代替现有实例的部署或重启操作。

验证

构建、单元测试、真实 PostgreSQL、AMD64 镜像、自带/外部 PostgreSQL Compose 部署和镜像匿名拉取验证通过。版本镜像与 latest 指向同一制品。

完整变更:v0.18.1...v0.19.0

RunForge v0.18.1

Choose a tag to compare

@github-actions github-actions released this 19 Oct 07:10

修复

  • 修复 Shell 运行和历史记录读取时,数据库时间、日志序号类型不匹配导致的工具调用错误。
  • 统一会话、命令与日志的返回类型,恢复启动、输出及完成事件,并保证历史输出按数字序号分页。
  • 对超出 JavaScript 安全整数范围的序号直接报错,避免丢失精度。

镜像与部署

  • 镜像:ghcr.io/4o4e/runforge:v0.18.1,同时更新 latest。
  • 平台:linux/amd64。
  • 附件包含自带 PostgreSQL、外部 PostgreSQL 两套 Compose、环境变量模板及安全配置。
  • 本次无需新增数据库迁移;保留现有配置与数据卷升级。

变更范围

  • 修复提交:0bc4944;版本提交:1f1e4e2。

RunForge v0.18.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 18:32

空间与统计

  • 空间管理使用概览、编辑、提示词、任务用量标签页,外部空间另有调用方标签页;跨标签保存保留未提交的编辑内容,提示词动态占位符跟随已保存配置刷新。
  • 租户、个人和系统管理中的用量与存储分别展示,按用户、空间、模型查看交互图表,支持悬浮明细和较多项目滚动查看。
  • 存储按空间展示当前占用,保留历史趋势;切换空间时图表实例随页面正确释放。

对话管理

  • 对话顶部显示工作目录占用,手机界面单独展示存储信息并保留全部操作入口;左侧会话条目立即悬浮显示完整标题、创建及更新时间、存储占用和最早三条用户消息。
  • 外部任务展示业务输入和运行信息,不显示调用方原始 JSON。
  • 外部共享对话由租户 owner/admin 管理,支持置顶、重命名、归档、恢复和永久删除;删除同时清理对应工作目录。普通可见成员保持只读,管理权限不开放消息、文件或执行写入。

文件预览

  • 文件列表展示大小和修改日期,目录及根目录显示递归占用;不跟随符号链接或计算隐藏托管资源。
  • 支持预览的文件默认打开预览;文本原文使用只读 Monaco,手动进入编辑后才可修改并保存。
  • CSV、TSV 默认显示表格,行列独立分页,每页最多 100 条记录、每组 20 列;支持引号、多行单元格,保留空记录、空字段和前导零。表格预览沿用 2 MiB 上限,超限仍可分页查看原文;文本编辑沿用 1 MiB 上限和版本冲突保护。
  • 二进制模式显示「二进制」,提供十六进制查看,不提供编辑;图片等文件可在预览和二进制之间切换。
  • 只读空间和精确签名分享使用相同的预览与原文组件,并保留既有读取权限和路径限制。

本版本不变更数据库结构。

RunForge v0.17.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 13:57

空间任务用量

  • 按每次运行的发起日期(北京时间)展示每日累计 Token、每任务平均/最大/最小及输入缓存率。
  • 正常续聊分别计数;运行中的补充输入属于原任务。主 Agent、Agent 子任务、上下文压缩、失败和重试共同计入所属运行,跨日消耗仍归入其发起日。
  • 提供 30 天、12 周和一年范围,支持悬浮详情、图例切换和日期缩放。

模型与插件管理

  • 空间允许模型增加全选;默认模型仅可选择已勾选且当前可用的模型。
  • 空间预览支持直接切换并保存默认模型,编辑页面随表单保存,仅影响后续新任务。
  • 按启用顺序只读展示业务插件名称、标识和说明。
  • 默认模型保存期间与页面刷新互斥。

用量可视化与模型能力

  • 使用 Apache ECharts 展示全部供应商/模型的 Token 柱状图、每日消耗、存储趋势与存储分类。
  • 悬浮显示精确输入、输出、缓存、尝试次数和容量;存储趋势同时显示逻辑大小与磁盘分配,并保留缺样断点。
  • models.dev 重复规范身份不阻断能力刷新;各模型参数独立保留,仅跳过归属不明确的供应商别名。
  • 真实 PostgreSQL 任务统计回归纳入发布 CI。

镜像:ghcr.io/4o4e/runforge:v0.17.0、ghcr.io/4o4e/runforge:latest。前后端通过同一镜像同步更新。

RunForge v0.16.5

Choose a tag to compare

@github-actions github-actions released this 16 Oct 09:14

修复

  • 无效或未获授权的按需工具激活请求作为工具错误结果返回模型,模型可以修正后继续,不再因此直接终止聊天;整批请求拒绝,空间权限保持不变。
  • 按需工具系统提示与 tools_activate 说明明确区分 RunForge 工具、业务能力、HTTP 接口和 SDK 操作。

业务插件打包

  • pnpm package:business-plugin <插件ID> --source <源码目录> 支持调用方在其他仓库维护的插件源码。
  • 打包仍会验证插件协议、ID 和版本,并通过实际压缩包导入复核;产物统一位于 build/business-plugins。

使用

  • 镜像:ghcr.io/4o4e/runforge:v0.16.5,同时更新 latest。
  • QQ Bot 插件应更新至 0.1.6,通过 QQ Skill 的 Node.js SDK 调用 history.query 等 Bot 业务能力。
  • 本次无需新增数据库迁移;更新插件不改变已固定内容版本的旧运行。

RunForge v0.16.4

Choose a tag to compare

@github-actions github-actions released this 10 Oct 02:13

外部任务按需加载工具

  • 外部调用方可为新任务指定 toolLoading: { mode: "on_demand", initialTools: [...] },首轮只发送初始工具和激活控制工具的完整定义,其他授权工具只提供简短目录。
  • 模型通过 tools_activate 请求缺少的工具;只允许当前空间已经授权的工具,下一次模型请求生效。
  • 已激活工具保存在任务运行元数据中,恢复同一任务时重新验证授权;追加到当前运行中的输入不能修改工具加载策略。
  • 普通 Web 任务和未指定工具加载策略的外部任务保持原有行为。

QQ Bot 配合更新

新版 Bot 提供条件只读上下文预取、同一会话的增量历史和备注变化提交;QQ 插件 0.1.5 提供精确能力描述,并在 SDK 内部等待指令的真实终态,减少模型参与机械查询和轮询。

更新顺序:先更新 RunForge 到本版本,再更新整个 QQ 插件到 0.1.5,最后启用新版 Bot。QQ 空间必须授权 skill_activate 和 shell。Bot 与插件源码位于 BotV5。

此版本没有新增数据库字段或迁移。从 0.16.2 更新时保留现有数据和挂载目录。

镜像与验证

镜像:ghcr.io/4o4e/runforge:v0.16.4。

发布流程包含构建、自动化测试、真实 PostgreSQL 集成、自带和外部 PostgreSQL 容器部署验证以及镜像匿名拉取验证。

真实请求已确认首轮工具定义减少;配置的模型账户因月度额度耗尽返回 HTTP 429,尚不能提供完整 QQ 对话验收或实际 Token 节省比例。

RunForge v0.16.2

Choose a tag to compare

@github-actions github-actions released this 03 Oct 01:07

历史对话与任务恢复以 step 聚合响应、工具结果及 run 元数据为依据;刷新后保留追加输入顺序、问答选择、工具结果与分支历史。

  • 原始流式事件和 Provider trace 按 run、UTC 日期保存为本地 JSONL,自动保留三十天。
  • 日志使用全局有限缓冲,磁盘写入失败自动重试;超限丢弃新日志并告警,业务继续。正常关闭等待执行资源结束后排空日志。
  • HTTP 历史接口使用共享 Zod 契约,只传输展示所需内容;未完成 step 通过 WebSocket 重放内存流。
  • CI 分别执行构建与快速测试、真实 PostgreSQL 迁移和存储集成验证;镜像发布前验证两种 PostgreSQL 部署方式。

升级操作

  1. 停止旧版 RunForge 实例并备份数据库、工作区、用户文件和业务插件持久卷。
  2. 更新 Compose 的日志配置:RUNFORGE_TRACE_DIR=/app/traces,将该目录映射为持久卷或可写宿主机目录;保留现有数据库和其他持久卷。
  3. 使用新镜像的默认入口启动。入口先准备历史数据归档,再执行 Prisma migration,校验后删除旧事件、原始流字段和重复消息正文。不要绕过准备脚本单独执行 Prisma migration。
  4. 确认健康检查、历史对话和日志写入正常后,恢复 Bot 接入。

旧 runforge-provider-traces 卷保留原内容,不自动搬移或删除;新日志写入 runforge-traces。旧日志不参与对话恢复。

本版本包含数据库结构与数据迁移。回滚需要旧镜像配合迁移前数据库备份,不能只降级镜像;不要执行 docker compose down --volumes。

镜像:ghcr.io/4o4e/runforge:v0.16.2(linux/amd64)。

完整变更

RunForge v0.15.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 17:25

Full Changelog: v0.14.1...v0.15.0

RunForge v0.14.1

Choose a tag to compare

@github-actions github-actions released this 27 Sep 17:36

Full Changelog: v0.14.0...v0.14.1