Python 工具库,用于在 Docker 容器中隔离运行编码智能体 CLI。
- 标准隔离环境:为每个 agent 提供 Dockerfile 模板,将 agent 依赖(Node.js、Python 等)安装在独立路径下,不污染容器内的系统环境。
- 统一的配置注入与执行接口:通过 Driver 向容器写入配置、执行 agent CLI、解析返回结果,接口统一,调用方无需关心各 agent 的配置差异。
| Agent | API 要求 |
|---|---|
| opencode | 任意 OpenAI Compatible API(自定义 base_url + api_key) |
| openhands | 任意 OpenAI Compatible API(自定义 base_url + api_key) |
| claude | 仅支持兼容 Anthropic 官方最新版 API 协议的 base_url + api_key |
| codex | 仅支持兼容 OpenAI 官方最新版 API 协议(Responses API)的 base_url + api_key |
from docker_cli import ClaudeConfig, ClaudeDriver
cfg = ClaudeConfig(
api_key="sk-xxx",
model_name="claude-sonnet-4-20250514",
base_url="https://api.anthropic.com",
)
driver = ClaudeDriver(cfg)
# 调用方自行管理容器生命周期
container_name = "my-claude-container"
driver.setup_config(container_name)
result = driver.run(container_name, "帮我写一个 hello world", timeout=300)
parsed = driver.parse_result(result)
if parsed["error"]:
print("失败:", parsed["error"])
else:
print(parsed["output"])