Repository navigation
Releases
v0.1.32-beta.7 · 任务生命周期收紧:实时活动可见可停、按 Bot 并发与全链路取消
- 实时任务活动与可见停止:任务卡片的活动流实时反映模型调用与工具执行的
起止;进行中的模型活动在操作员暂停或取消任务时立即标记为「已中断」,请求
本身在网络上被取消(httptest 服务器实测收到请求断开),不再只是状态翻转。 - 按 Bot 并发的持久任务:不同 Bot(不同会话)的任务同时运行;同一会话内
的任务严格串行,重复调度不会绕过会话槽位,前一个窗口释放后下一个才开始。 - 全链路取消范围:取消或暂停一个任务会停掉它的模型 HTTP 请求(真实
context 传递到模型调用)、本地工作区命令的整个进程组、属于该任务的后台
作业(按 Bot + 任务号精确匹配,不误伤其他任务或其他 Bot 的作业),以及
该任务派生的子任务;其他 Bot / 会话的任务不受影响。 - 调度竞态修复:窗口的取消句柄在任务认领前注册,暂停/取消不可能错过
在途模型操作;窗口启动前同时检查运行上下文与持久化 running 状态,过期
窗口不再为已暂停/已取消的任务调用模型;派工子任务的激活改为注册表原子
操作,父任务已暂停/取消/子任务已独立取消时拒绝复活过期快照里的排队子任务。 - 回归验证:新增确定性测试覆盖——两个 Bot 并行且取消 A 后 B 继续完成、
同会话串行、真实 HTTP 请求取消(暂停与取消两条路径)、活动流 running →
interrupted 状态迁移、子任务激活竞态拒绝与正常放行。 - 已知限制:后台作业状态仍在进程内,重启后不可查询(沿用既有行为);
本轮验证基于本地单测与竞态检测,尚未在生产长任务中验证。
v0.1.32-beta.6 · 持久自主任务运行时:本地工作区、后台作业与独立模型审批
- 持久自主任务运行时:任务接受后写入加密任务文件,由后台 Runner 在自己的
goroutine 中执行,断线或刷新页面不会取消任务;支持暂停、恢复与取消。任务
卡片以活动流展示进度,已完成计划的段落是静态的完成区间(进度条内不再渲染
数字),另有收尾消息、验证证据(finish 需要最后一次变更之后的只读观察)与
未知副作用核验门。 - 独立模型审批(三态):审批模型返回 allow / deny / ask。allow 直接放行,
deny 直接拒绝,ask(以及模型不可用或结果无法解析)一律转人工审批卡片,
绝不静默放行;风险等级只是决策证据,不改变 allow 的结果。 - 隔离项目与 Bot 记忆:原群聊更名为隔离项目,项目记忆仅在该项目中保留,
不读写 Bot 私有记忆。每个 Bot 有独立私有记忆,Bot 之间通过 ask_agent 派工
或 message_agent 交接结论,而非共享记忆池。 - 显式本地工作区:任务在操作员明确允许的目录内读写、搜索、编辑文件并执行
命令。允许列表来自OF_LOCAL_WORKSPACE_ROOTS(ENV-only,为空即整个功能
关闭),命令执行需要单独的OF_LOCAL_COMMAND_EXECUTION=1,两者都是操作员
显式开启,运行期不可更改。路径解析用 os.Root 防护,敏感文件统一拒绝;edit
带 revision 校验,write 原子落盘。 - 后台作业:构建、测试、迁移等长命令可用
job_start以真实后台进程运行,
job_status/job_cancel/job_wait查询与等待;作业属于启动它的任务,
结束后保留一段时间供查询。 - Docker 部署的诚实说明:容器内的
local指容器内文件系统与容器进程权限。
要操作宿主机项目,必须由操作员显式挂载项目目录,或通过已接入的 SSH 服务器;
面板不会"魔法地"访问宿主机。命令以 OneFrog 进程的系统账号权限执行,
这不是沙箱。 - 已知限制:作业状态存在进程内,服务重启后不可查询,恢复的任务收到
"作业结果未知,未重放",必须只读核验工作区现状;未知副作用的变更调用不会
自动重放,需要核验后才能 finish。 - 验证范围:本测试版经过本地单测与 UI fixture 验证,尚未在生产环境的真实
长任务中验证。
v0.1.32-beta.5 · 群聊项目记忆与宿主机代码工作区
- 群聊项目:可为群聊命名。群内 Bot 共用该项目的工作记忆,派工结论留在本群。旧群聊保留聊天历史,从空白的项目记忆开始。
- 模型渠道:自定义 API Key 渠道可选 Responses 或 Chat Completions。Responses 支持执行工具并将结果回传给模型继续处理,现有渠道默认协议不变。
- 部署宿主机:「添加服务器」可预填宿主机地址。接入仍使用专用 SSH 账号和已确认的主机指纹;旧安装可按安装文档补充 Compose 的宿主机地址映射。
- 代码工作区:在左侧打开已接入服务器上的 Git 仓库,浏览和编辑源码、查看状态和差异,或交给助手修改并运行测试。助手写文件和执行命令需要逐次批准。宿主机需要 Git、Python 3.9+ 和有源码目录访问权限的非 root SSH 账号。
v0.1.32-beta.4 · 补回默认主控「服务器管理」
OneFrog v0.1.32-beta.4 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
升级
已经在用测试版的机器,在「设置 → 关于与更新」点「立即升级」。账号、设置和数据保留。升级重启后会补回默认主控。
默认主控
- 如果「服务器管理」被删掉了,启动时会自动补回,并作为默认主控。新对话由它协调。
- 已经有同名 Bot 时沿用原来的职责和模型,不会再建一个。
- 默认主控不能停用,也不能删除。
v0.1.32-beta.3 · 加密备份与在线搬家
OneFrog v0.1.32-beta.3 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
升级
已经在用测试版的机器,在「设置 → 关于与更新」点「立即升级」。账号、设置和数据保留。
备份与迁移
- 设置里新增「备份与迁移」。可以导出加密备份包,在一台全新安装的机器上上传恢复。
- 两台机器都在线时,新机生成一次性迁移码,旧机填写地址和迁移码后自动传输。
- 恢复后自动任务先暂停。检查数据和服务器连接后,再恢复运行。旧机数据保留。
- 新用户第一次进入、还没有可用的 API 渠道时,会询问是否前往配置。
v0.1.32-beta.2 · 切到测试版时不再假装升级成功
OneFrog v0.1.32-beta.2 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
升级
- 用旧安装脚本装的机器,升级程序只会重新拉取正式版镜像。以前点「立即升级」切到测试版时,面板会显示正在升级,版本却不变。
- 现在这种机器会直接说明原因,并给出安装命令,不会再假装成功。正式版之间的升级不受影响。
- 重新运行一次带 OF_CHANNEL=beta 的安装命令后,升级程序会记住自己可以切换镜像,之后在面板里升级就会换到测试版。
升级方式
已经装了测试版的机器,在面板「设置 → 关于与更新」检查并升级。从正式版切换到测试版,在安装 OneFrog 的服务器上执行:
curl -fsSL https://raw.githubusercontent.com/llc370219/onefrog/dev/install.sh | sudo OF_CHANNEL=beta bash使用自定义安装目录的用户需继续指定原来的 OF_INSTALL_DIR。原目录升级会保留账号、设置和数据,升级时容器会重启。
v0.1.32-beta.1 · 面板探针一排三张
OneFrog v0.1.32-beta.1 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
面板布局
- 首页探针卡片一排最多 3 张,不再挤成 4 张。
- 面板变窄时改成 2 张,手机上改成 1 张。
升级方式
已经装了测试版的机器,在面板「设置 → 关于与更新」检查并升级。从正式版切换到测试版,在安装 OneFrog 的服务器上执行:
curl -fsSL https://raw.githubusercontent.com/llc370219/onefrog/dev/install.sh | sudo OF_CHANNEL=beta bash使用自定义安装目录的用户需继续指定原来的 OF_INSTALL_DIR。原目录升级会保留账号、设置和数据,升级时容器会重启。
v0.1.31 · 面板布局与测试版渠道
OneFrog v0.1.31 正式发布。本次调整面板首页,并可以在设置里切换正式版和测试版。
面板布局
- 「需要处理」和「订阅」之间的小卡片改成自动化。
- 服务监控下移,独占一整行。
- 只列出已勾选的监控项,不列出全部服务器。同一行从左到右是状态、监控项、所在服务器、类型,异常项排在前面。
更新渠道
- 「设置 → 关于与更新」可以在「正式版」和「测试版」之间切换,改完会立刻重新检查。
- 正式版只提示正式发布。测试版同时看正式版和 vX.Y.Z-beta.N。
- 点「立即升级」时,只把官方镜像改成 latest 或 beta,并记住渠道。用更早安装脚本装的机器,第一次切换请重新运行一次安装命令。
升级方式
在面板「设置 → 关于与更新」检查并升级;也可以在安装 OneFrog 的服务器上执行以下命令,安装或切换到正式版:
curl -fsSL https://raw.githubusercontent.com/llc370219/onefrog/main/install.sh | sudo OF_CHANNEL=stable bash使用自定义安装目录的用户需继续指定原来的 OF_INSTALL_DIR。原目录升级会保留账号、设置和数据,升级时容器会重启。
v0.1.31-beta.2 · 设置里可以切换测试版
OneFrog v0.1.31-beta.2 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
更新渠道
- 「设置 → 关于与更新」增加「更新渠道」:正式版 / 测试版。改完会立刻重新检查。
- 正式版只提示正式发布。测试版同时看正式版和 vX.Y.Z-beta.N。
- 点「立即升级」时,只把官方镜像改成 latest 或 beta,并记住渠道。
- 用更早安装脚本装的机器,第一次切换仍要重新运行一次安装命令,换上新的升级程序。
升级方式
已经装了测试版的机器,在面板「设置 → 关于与更新」检查并升级。从正式版切换到测试版,在安装 OneFrog 的服务器上执行:
curl -fsSL https://raw.githubusercontent.com/llc370219/onefrog/dev/install.sh | sudo OF_CHANNEL=beta bash使用自定义安装目录的用户需继续指定原来的 OF_INSTALL_DIR。原目录升级会保留账号、设置和数据,升级时容器会重启。
v0.1.31-beta.1 · 面板:自动化换位,服务监控只显示已选项
OneFrog v0.1.31-beta.1 测试版。只推送给装了测试版的机器,正式版安装不会收到提示。
面板布局
- 「需要处理」和「订阅」之间的小卡片改成自动化。
- 服务监控下移,独占一整行。
- 只列出已勾选的监控项,不列出全部服务器。同一行从左到右是状态、监控项、所在服务器、类型,异常项排在前面。
升级方式
已经装了测试版的机器,在面板「设置 → 关于与更新」检查并升级。从正式版切换到测试版,在安装 OneFrog 的服务器上执行:
curl -fsSL https://raw.githubusercontent.com/llc370219/onefrog/dev/install.sh | sudo OF_CHANNEL=beta bash使用自定义安装目录的用户需继续指定原来的 OF_INSTALL_DIR。原目录升级会保留账号、设置和数据,升级时容器会重启。