docs(agent-runner): sync EBA and harness resource docs

This commit is contained in:
huanghuoguoguo
2026-06-09 10:04:49 +08:00
parent 466023b471
commit f92029e245
10 changed files with 66 additions and 61 deletions

View File

@@ -93,7 +93,7 @@ Claude Code、Codex、Kimi Code 等外部 harness 可以继续使用自身的权
| Permission boundary | Partial | Host 已有 runner manifest 权限、binding 级 resource policy、run-scoped authorization snapshot、proxy action `caller_plugin_identity` 校验Claude Code `--dangerously-skip-permissions` 已改为显式配置,默认 falseCodex 默认 `sandbox=read-only``approval_policy=never`,并过滤用户 `mcp_servers.*` config override。 | 外部 CLI 的 native 文件 / 进程 / tool 能力仍属于 operator-owned execution生产默认或 managed runner 需要容器/VM/OS 级隔离、tool allow/deny 和可审计审批,不能把 runner manifest 当成外部 CLI 的完整权限边界。 |
| Secret handling | Partial | 子进程不再继承完整 LangBot / daemon 环境,只保留 CLI auth、proxy、locale、CA 等 allowlisted envCodex `environment-json` 禁止覆盖 `HOME``PATH``CODEX_HOME``PYTHONPATH``LANGBOT_*`Codex per-run `CODEX_HOME` 会继承 runtime 用户的 Codex auth/session 和非 MCP provider config但剥离全局 `mcp_servers`LangBot managed MCP 写入 per-run `CODEX_HOME/config.toml``0600`scoped secret 不进入 argvremote daemon MCP config / `mcp.json` 使用 `0600`stdout/stderr、错误和 diagnostic artifact 做 redaction + 输出截断;相关单测覆盖 secret/env 泄漏。 | 仍缺 Host 全链路统一 redaction policy、transcript / artifact metadata / admin UI 脱敏规则、secret 来源与轮换策略、跨 runner 的配置脱敏审计。 |
| MCP policy | Partial | SDK-owned per-run LangBot MCP bridge 已有remote MCP channel 有 per-run secretbridge 只暴露 SDK annotated tool surfaceCodex managed MCP 不允许用户通过 `config-overrides` 注入/覆盖 `mcp_servers.*`,也不继承 runtime 用户全局 `mcp_servers`remote Codex MCP secret 不进 argv。 | 缺 Host / Admin 级外部 MCP server allowlist、scoped token 生命周期、tool allow / deny 策略、危险工具审批和 MCP 调用审计。 |
| Skill projection policy | Partial | Host resource builder 会按 runner capability 和 resource policy 暴露 skill 名称;当前 code-agent runner 不再接受用户手写 `skills-json`,避免 runner binding 任意投影 skillskill tool 路径和可见性已有部分单测。 | 缺 code-agent harness 的发布级只读 skill 投影、skill 来源验证、版本 / hash 记录、projection cleanup 和审计;如后续恢复 native skill 投影,需要纳入 Host 授权资源而不是自由 JSON。 |
| Skill access policy | Partial | Host resource builder 会按 runner capability 和 resource policy 暴露 skill-backed scoped tool;当前 code-agent runner 不再接受用户手写 `skills-json`,避免 runner binding 任意投影 skillskill tool 路径和可见性已有部分单测。 | 缺 code-agent harness 的发布级 skill 来源验证、版本 / hash 记录、projection cleanup 和审计;如后续需要 harness-native skill 文件,也必须由 Host / sandbox 生成受限 tool surface不能绕过 SDK runtime 访问 LangBot 资源。 |
| Process isolation | Partial | Host runtime deadline、runner subprocess timeout、timeout 后 kill、remote request size limit 已有;本地 Claude / Codex 和 remote daemon 子进程使用新进程组timeout / cancel 路径会杀进程组stdout/stderr 有输出上限Codex 默认使用 `sandbox=read-only``approval_policy=never`Claude Code 高风险 bypass 默认关闭。 | CPU / 内存 / 文件 / 容器 hard quota、网络策略、长期 workspace GC 和平台级 cancel/audit 仍只作为 managed/cloud/default external harness 的 full gate。self-host stdio 只能做到 runner wrapper 层的 timeout / kill / output bound。 |
| State lifecycle | Partial | PersistentStateStore 有 runner / binding / scope 隔离、JSON size limit、state get / set / list / delete外部 runner 已写回 `external.session_id`、本地 `external.working_directory`、远端 `external.runtime_id` / `external.workspace_key`,避免把远端绝对路径当成 Host resume 事实。 | 缺 session / workspace / artifact TTL、过期清理、迁移策略、orphan cleanup 和 lifecycle auditmanaged/default runner 需要 Host first-class workspace 生命周期。 |
| Audit first-class | Partial | EventLog、Transcript、ArtifactStore、PersistentStateStore 已能记录主链路事实proxy 校验失败会写 warning。 | 资源授权快照、外部命令、MCP tool 决策、secret redaction、cleanup、resume / workspace 生命周期还不是一等 audit surface。 |
@@ -107,5 +107,5 @@ Claude Code、Codex、Kimi Code 等外部 harness 可以继续使用自身的权
- 完整异步队列与 issue-centric 产品模型。
- 复杂 workflow engine。
- Codex / Kimi runner 全量接入。
- EBA 分支完整迁移和联调
- EBA 分支完整迁移由外部 EBA 分支联调;本阶段只复用其需要的 AgentRunner Host 底座
- 发布级安全 hardening 的完整实现。