Skip to main content

Module runner

Module runner 

Source
Expand description

代码运行器 MCP 工具:在容器沙箱内执行代码,同步返回完整输出。

src/api/code_runner/execute.rs::start_exec 的执行链一致(语言白名单 → 源码大小 → 信号量限并发 → clamp_limits → run_in_container),但 同步返回 完整 stdout/stderr,不引入 task_id / 轮询 / SSE 机制——MCP 工具返回单一结果。

鉴权与限流:MCP 走 bearer token → admin 作用域。admin 跳过 IP 速率限制 (与 web 的 check_rate_limit_for_user admin 放行一致),但仍受并发槽、 资源钳制与源码大小校验约束。Docker daemon 不可用时返回明确错误(与 get_docker() 的 NotFound 脱敏路径一致)。

Structs§

RunCodeParams
run_code 入参。
RunResult 🔒
run_code 返回的执行结果。

Functions§

execute_in_container 🔒
执行一次容器内代码运行(同步收集输出)。