一套可以被持续
实验的 Web Agent
K1412 Agent 把账户、界面和执行隔离做成稳定平台,把上下文、工具调度、并行、多 Agent、 记忆和完成判定留在我们自己的 Agent Loop 中。这里既是系统说明,也是后续实验的公开台账。
稳定外壳与
实验核心解耦
点击一条链路,观察一次请求如何穿过系统。公开入口只有 Web;模型密钥、Docker 权限和用户执行环境始终留在服务端。
浏览器的已登录请求由 Web 转换成兼容 OpenAI 的流式调用;Runtime 独立完成上下文构建、模型调用、工具循环和证据校验。
Open WebUI
负责用户系统、会话、历史和呈现。它是产品外壳,不决定 Agent 如何思考与执行。
STABLE / UPSTREAM-BASEDAgent Runtime
负责模型、上下文、工具、并行、委派、记忆和完成判定,是我们主要的实验面。
FAST-MOVING / OWNEDGateway + Workspace
把已验证用户绑定到唯一执行空间,控制路径、资源和 Docker 生命周期。
SECURITY BOUNDARY模型不是 Agent,
循环才是。
当前基线为 agent-loop-v3。模型每轮可以回答或提出工具调用;Runtime
负责校验、调度、恢复,并拒绝没有证据的“已完成”。
把有限上下文留给真正影响下一步的内容
移除旧的工具详情渲染,按模型预算保留最新可见消息,再注入最多 8 条持久记忆。上下文策略和 Agent Loop 分别版本化。
- 去掉历史消息中的工具 UI 标记
- 最近消息优先,按字符预算截断
- 记忆只作为补充上下文,不直接取得执行权限
只并行已知安全的读取
连续的只读、parallel_safe 工具可以并发;写入和状态变更保持顺序,
避免输出更快但结果不可复现。
失败不是上下文噪声
命令失败必须被修复并重新运行,重复无进展调用会被守卫阻止,模型不能用文字绕过失败。
委派是受限的工具
只读子任务可并行,子 Agent 不能继续委派。父循环仍然负责整合证据和最终完成判定。
每个用户,一套
长期存在的工具台
生产执行发生在物理机 home-node-itx。Gateway 通过 Tailscale + SSH
管理 Docker;用户得到独立容器、网络和持久卷,而不是宿主机账号。
sha256(user_id) → workspace_id
k1412-ws-<id>k1412-ws-net-<id>k1412-ws-data-<id>身份不下放给浏览器
Web 验证登录,Runtime 每次调用 Gateway 前重新签发短期身份。内部服务密钥从不进入前端。
容器不是主机边界的替代品
只读根目录、丢弃 capabilities、no-new-privileges、资源限制、无宿主端口和 Docker socket。
依赖和文件都会留下
/workspace 由命名卷持久化;Python 位于 .venv,镜像升级不会删除用户数据。
输出可以直接取回
工作区抽屉支持浏览、下载文件和流式归档。用户无需接触 Gateway、SSH 或容器名称。
先标清模型,
再标真实思考能力
Luna、Terra、Sol 是三个独立模型,不是同一模型的轻、中、高强度。前端只显示后端确认支持的 思考语义;provider、循环和上下文预算仍由服务端模型目录固定。
Luna
思考:开启(不分档)
- 循环上限
- 8
- 上下文预算
- 120k chars
Terra
思考:开启(不分档)
- 循环上限
- 16
- 上下文预算
- 240k chars
Sol
思考:开启(不分档)
- 循环上限
- 24
- 上下文预算
- 400k chars
DeepSeek V4 Pro
思考强度:极高(max)
- 循环上限
- 32
- 上下文预算
- 800k chars
Luna / Terra / Sol / DeepSeek V4 Pro 是四个独立模型。前三者目前只暴露 “思考开启”的布尔能力,不能严谨地标成轻、中、高;DeepSeek 才明确使用 reasoning_effort=max,界面标注为“极高”。
每次改进都应该
留下可比较的记录
实验以问题、基线、变量、数据集、指标和结论为最小单元。页面读取仓库里的
experiments.json,与实现一起版本化。
一条公开入口,
多层私有服务
生产栈运行于 Unraid NAS,公开流量经 VPS 上的 Nginx Proxy Manager 和 Tailscale 进入 NAS。文档和聊天由同一个 Web 镜像提供。
不可变镜像
镜像按 UTC 时间与 Git commit 标记;发布只替换发生变化的服务。
分层验证
静态检查、单元测试、真实 Docker、完整 E2E、镜像审计与公开路径冒烟。
事件优先
每轮上下文、模型、工具和完成状态进入运行事件,便于重放与实验比较。
保留上个版本
配置先备份,旧镜像不覆盖;验证失败时恢复镜像引用即可回退。
从业务 Agent 到
通用实验平台
项目按“干净重建”推进,不保留旧业务 Skill 和旧 API 兼容层。下面记录已经改变系统性质的关键决策。
-
01
FOUNDATION
重建为多人 Web Agent
Open WebUI 承担账户和聊天外壳,自研 Runtime 承担 Agent 能力。
-
02
PRODUCT
收敛为单一 Agent 路径
删除 Chat / Work 双模式,降低交互和后端维护成本。
-
03
EXECUTION
迁移到远端持久工作区
接入 home-node-itx,打通每用户容器、持久卷与文件交付。
-
04
RELIABILITY
建立证据驱动的完成策略
加入恢复、重试守卫、精确报告证据和结构化事件。
-
05
PLATFORM
补齐 Python 环境与长期身份
持久化虚拟环境、pipefail、900 秒工具超时和每次调用的新鲜身份令牌。
-
06
NOW
文档与实验成为产品界面
架构、实现、运维和实验台账随代码发布到同域门户。
网页负责建立心智模型,
仓库文档负责成为事实来源。
所有设计说明、限制、运维步骤和实验规范都与代码一同提交。门户是摘要, Markdown 文档是评审与变更时的正式依据。
打开中文文档