wizardchen
738fe1ec53
feat(sandbox): 沙箱后端改为按空间配置,并补齐 E2B 模板与检测诊断
沙箱的后端类型、凭据、模板、超时和私网访问策略此前分散在部署级
WEKNORA_SANDBOX_* 环境变量里,一个实例只能有一套,租户之间无法各用
自己的 E2B 账号或自建 Cube 集群。现在这些配置全部落到空间维度的具名
沙箱配置上:部署环境不再提供覆盖项,未选择配置的智能体直接不启用脚本
执行,而不是静默回落到某个部署默认值——后者会让「这个智能体到底跑在
哪」无从判断。
同时把连接检测从「能不能连上控制面」扩展成可解释的诊断:
- E2B 标准模板显式带上 default 标签构建。创建沙箱时裸模板名/ID 只解析
default 标签,构建带了别的标签就永远拿不到,表现为一个与「模板不存在」
无法区分的 404。
- 模板状态不再从历史构建或 spawn 次数反推就绪,只认当前构建;构建完成
却没有 default 标签的模板单独报成 untagged,因为它在列表里和「仍在构建」
长得一样,但等待永远不会有结果。
- 创建失败带上 HTTP 状态,404 走模板解释路径,给出具体到「重建模板」还是
「Key 属于其他团队」的结论。
- 探针脚本改在进程工作目录下暂存。系统临时目录在 macOS 上位于
/var/folders,Docker 虚拟机并不共享,挂载进容器后是空目录,真实技能执行
(脚本在 skills/ 下)却不会踩到,检测因此报假失败。
- 检测失败不再只说「命令输出与预期不符」,带上退出码与 stderr 首行。
前端把沙箱设置页与配置抽屉重做:凭据按「是否已配置」展示而非回显掩码,
删除与停用改为就地确认,占用情况走右侧抽屉,列表卡片展示模板状态、凭据、
超时等可判断健康度的事实。
2026-08-11 15:42:02 +08:00
..
2026-07-14 15:56:02 +08:00
2026-08-10 21:28:20 +08:00
2026-07-23 10:50:32 +08:00
2026-07-28 11:18:33 +08:00
2026-08-07 15:49:58 +08:00
2026-08-11 15:41:48 +08:00
2026-07-13 18:13:51 +08:00
2026-07-14 16:14:43 +08:00
2026-08-07 10:58:41 +08:00
2026-08-11 15:41:48 +08:00
2026-07-28 20:23:48 +08:00
2026-08-05 19:24:45 +08:00
2026-08-05 19:24:45 +08:00
2026-07-17 10:19:43 +08:00
2026-08-10 21:28:20 +08:00
2026-08-10 21:28:20 +08:00
2026-07-14 16:14:43 +08:00
2026-06-12 22:52:25 +08:00
2026-07-14 16:14:43 +08:00
2026-07-18 23:41:48 +08:00
2026-08-05 14:42:51 +08:00
2026-07-18 23:41:48 +08:00
2026-08-05 14:42:51 +08:00
2026-07-18 23:41:48 +08:00
2025-12-22 15:01:09 +08:00
2026-07-23 10:50:32 +08:00
2026-07-17 11:05:54 +08:00
2026-08-10 17:09:35 +08:00
2026-07-02 14:41:42 +08:00
2026-07-20 19:58:48 +08:00
2026-07-07 12:00:13 +08:00
2026-08-04 20:45:29 +08:00
2026-06-05 15:00:41 +08:00
2026-07-02 19:15:46 +08:00
2026-07-14 17:55:26 +08:00
2026-06-26 10:52:52 +08:00
2026-08-04 20:45:29 +08:00
2026-07-08 20:55:54 +08:00
2026-07-23 12:05:57 +08:00
2026-05-14 20:12:41 +08:00
2026-05-18 15:58:46 +08:00
2026-05-22 17:40:10 +08:00
2026-05-18 15:58:46 +08:00
2026-07-30 12:28:23 +08:00
2026-05-18 17:28:58 +08:00
2026-07-14 16:14:43 +08:00
2026-07-23 15:35:24 +08:00
2026-08-10 19:14:21 +08:00
2026-08-05 14:42:51 +08:00
2026-05-20 21:03:39 +08:00
2026-07-30 17:51:34 +08:00
2026-07-30 17:51:34 +08:00
2026-08-05 14:42:51 +08:00
2026-07-14 16:14:43 +08:00
2026-06-25 17:05:33 +08:00
2026-07-23 19:43:06 +08:00
2026-07-24 11:42:27 +08:00
2026-07-14 16:14:43 +08:00
2026-07-14 16:14:43 +08:00
2026-08-11 15:42:02 +08:00
2026-08-11 15:42:02 +08:00
2026-08-11 15:42:02 +08:00
2026-08-11 15:42:02 +08:00
2026-08-11 15:42:02 +08:00
2026-07-15 11:05:00 +08:00
2026-07-15 14:54:39 +08:00
2026-05-26 21:13:56 +08:00
2026-07-02 14:41:42 +08:00
2026-07-13 20:11:00 +08:00
2026-07-23 16:52:35 +08:00
2026-07-15 14:54:39 +08:00
2026-07-02 15:03:53 +08:00
2026-08-10 21:28:20 +08:00
2026-05-18 17:28:58 +08:00
2026-07-02 12:06:22 +08:00
2026-07-02 12:06:22 +08:00
2026-07-07 12:00:13 +08:00
2026-08-10 14:57:38 +08:00
2026-08-10 15:47:29 +08:00
2026-08-10 15:47:29 +08:00
2026-07-23 16:04:42 +08:00
2026-05-18 17:28:58 +08:00
2026-08-10 15:47:29 +08:00
2026-07-02 17:58:20 +08:00
2026-07-13 18:13:51 +08:00
2026-07-07 12:00:13 +08:00
2026-07-13 18:13:51 +08:00
2026-08-10 13:24:14 +08:00
2026-07-14 16:14:43 +08:00
2026-07-14 16:14:43 +08:00
2026-07-14 16:14:43 +08:00
2026-07-14 16:14:43 +08:00
2026-05-12 13:16:58 +08:00
2026-05-12 13:16:58 +08:00
2026-07-14 16:14:43 +08:00
2026-07-28 11:18:33 +08:00