Codex Autopilot

🤖 多项目 Codex 自动化看守系统

macOS 下基于 tmux+launchd 的多项目 Codex CLI 自动化看守系统,实现会话监控、自动催办、权限处理与任务队列调度

收藏
4k
安装
1k
版本
0.6.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Codex Autopilot 是一套在 macOS 上运行的自动化工作流系统,通过 tmux 会话多路复用同时管理多个 Codex CLI 编码会话。核心工作流由 watchdog.sh 驱动,以可配置间隔轮询所有项目窗口,检测 Codex 状态(工作中/空闲/等待权限/异常),并执行对应操作:空闲时自动催办、权限提示时自动处理、上下文压缩时轮换日志、任务队列非空时自动派单。

系统依赖 launchd 实现定时调度,通过 config.yaml 集中管理多项目路径、时间阈值(活动/空闲判定)、安全上限(日发送量、连续失败次数)、通知渠道(Discord/Telegram)及调度策略(轮询或优先级)。状态机在各脚本间共享:codex-status.sh 捕获 tmux 面板输出,tmux-send.sh 向指定窗口注入按键,task-queue.sh 维护优先级任务队列,permission-guard.sh 处理交互式权限确认。

显著优点

  • 多项目并行:单守护进程同时 orchestrate 多个 Codex 会话,避免人工切换窗口
  • 无人值守:自动检测空闲与卡死,结合 nudge 与 fallback 机制维持长时间运行
  • 安全阈值:内置日发送上限、连续失败熔断、循环输出检测,降低 API 费用失控风险
  • 可扩展通知:支持 Discord webhook 与 Telegram Bot 双向推送,便于远程监控
  • 任务队列化:YAML 定义任务,支持优先级与状态追踪,实现半自动化需求流转

潜在缺点与局限性

  • 平台锁定:launchd 与 tmux 绑定 macOS,Linux 用户需自行替换为 systemd+screen
  • 无沙箱隔离:脚本以用户身份直接操控 tmux 会话,恶意 prompt 可执行任意 shell 命令
  • 状态文件风险:state/ 与 task-queue/ 目录若权限配置不当,可能导致状态篡改或敏感信息泄露(Discord webhook URL、Telegram token 以明文存储于 YAML)
  • Codex CLI 依赖:紧密耦合 OpenAI Codex 的终端交互协议,若官方 CLI 更新输出格式,状态检测可能失效
  • 缺乏网络隔离:无出站流量限制,泄露的 token 可直接调用 OpenAI API

适合人群

  • 需在单台 Mac 上同时推进多个代码库的个人开发者或小型团队技术负责人
  • 希望将 Codex CLI 从"交互式工具"升级为"后台自动化服务"的重度 AI 辅助编码用户
  • 具备 bash/tmux 基础、能自行审计脚本并承担 API 费用风险的高级用户

常规风险

| 风险类型 | 说明 |
|---------|------|
| API 费用失控 | 自动循环可能因配置错误或循环检测失效导致 token 消耗激增 |
| 代码污染 | 自动执行未经审查的 prompt 可能引入安全漏洞或破坏性变更 |
| 凭证泄露 | `config.yaml` 中的 webhook 与 bot token 需严格限制文件权限(建议 600) |
| 系统稳定性 | 脚本以 launchd 常驻运行,死循环或资源泄漏可能影响宿主机 |
| 合规隐患 | 自动提交代码若涉及敏感仓库,可能违反企业代码审查政策 |

Codex Autopilot 内容

code-review文件夹
references文件夹
development文件夹
references文件夹
scripts文件夹
doc-review文件夹
references文件夹
doc-writing文件夹
references文件夹
docs文件夹
lib文件夹
projects文件夹
example文件夹
requirement-discovery文件夹
references文件夹
scripts文件夹
testing文件夹
references文件夹
tests文件夹
手动下载zip · 253.0 kB
README.mdtext/markdown
请选择文件