Install
openclaw skills install codex-runnerUse Codex CLI to run long-running coding tasks in the background with sandbox bypass, supporting git repos and automated test/build workflows.
openclaw skills install codex-runner使用 Codex CLI 在后台长时间运行编码任务,不受 OpenClaw 会话限制。
此 skill 会立即返回,不阻塞主会话!
任务在后台独立运行,你可以:
npm install -g @openai/codex)git init)启动 Codex 后台任务(异步执行,不阻塞会话)
codex-runner start "实现一个 React TODO 应用" my-task /Users/tianyanan/my-project
参数:
$1: 任务描述$2(可选): 任务名称,用于日志文件命名,默认 codex-task$3(可选): 目标目录路径,默认当前目录关键:必须使用 background=true 执行!
由于 OpenClaw 默认同步等待命令完成,你需要这样调用:
# 在 skill 命令中使用 background 参数
或者直接使用 sessions_spawn 创建独立子会话:
# 让 Codex 在独立会话中运行,不影响主会话
检查 Codex 进程状态
codex-runner status
查看任务日志
codex-runner log my-task
参数:
$1(可选): 任务名称,默认 codex-task停止 Codex 任务
codex-runner stop
由于 OpenClaw 主会话执行 exec 会被阻塞,最佳方案是使用 sessions_spawn 创建独立子会话来运行 Codex。
直接让 AI 助手(我)使用 sessions_spawn 启动任务:
# 我会这样执行:
sessions_spawn {
"runtime": "subagent",
"task": "在 ~/my-project 实现一个简单的 Hello World",
"label": "codex-hello"
}
你可以说:"用 codex 在桌面创建 test 文件夹,里面放一个 hello.txt"
我会这样处理:
# 使用 --dangerously-bypass-approvals-and-sandbox 完全跳过沙箱
TASK_NAME=${2:-codex-task}
TARGET_DIR=${3:-.}
nohup bash -c "
cd '$TARGET_DIR'
export https_proxy=http://127.0.0.1:8118
export http_proxy=http://127.0.0.1:8118
codex --dangerously-bypass-approvals-and-sandbox exec '$1'
" > ~/.codex-logs/codex-$TASK_NAME.log 2>&1 &
必须使用 --dangerously-bypass-approvals-and-sandbox 才能写入文件:
codex --dangerously-bypass-approvals-and-sandbox exec '任务描述'
| 参数 | 说明 |
|---|---|
--dangerously-bypass-approvals-and-sandbox | 完全跳过沙箱和审批(必须) |
exec | 非交互执行模式 |
git init)建议在任务描述中包含以下流程要求:
codex-runner start "
实现一个用户管理系统,包含:
1. 用户增删改查 API
2. 用户列表页面
开发流程要求:
1. 先写单元测试,再写业务代码
2. 编码完成后执行单元测试:npm test
3. 如果单测失败,自动修复直到通过
4. 单测通过后执行构建:npm run build
5. 如果构建失败,自动修复直到通过
6. 单测和构建都通过后才算任务完成
" my-task /Users/tianyanan/my-project
| 步骤 | 要求 |
|---|---|
| 1. 单元测试 | 先写测试,再写业务代码 |
| 2. 执行单测 | npm test 或 npm run test |
| 3. 修复单测 | 如果失败,自动修复直到通过 |
| 4. 执行构建 | npm run build |
| 5. 修复构建 | 如果失败,自动修复直到通过 |
| 6. 完成标志 | 单测 + 构建都通过 |
# 查看进程
ps aux | grep codex | grep -v grep
# 实时日志
tail -f ~/.codex-logs/codex-my-task.log
# 检查完成标志
grep "已完成\|build\|test" ~/.codex-logs/codex-my-task.log
~/.codex-logs/codex-<任务名>.log