非 Git 目录跑 exec,要显式 --skip-git-repo-check
默认拒绝无仓库工作区,防止破坏性改动落在临时目录。一次性目录才开这个旗标,并配上明确的 sandbox。
codex exec 要求当前目录在 Git 仓库里。这是防护,不是故障:没有版本控制时,一次误改很难回滚。
一次性目录、解压出来的源码、CI 临时工作区才覆盖:
codex exec --skip-git-repo-check --sandbox workspace-write \
--ask-for-approval never \
"只修类型错误,不要改测试。"
真正要长期改的项目先 git init(或 clone),不要把跳过检查当成默认启动方式。这个旗标写在 exec 上;日常交互 TUI 仍应在仓库根启动。
和 --yolo 无关:跳过 Git 检查不会放大沙箱。临时目录里仍用 workspace-write 或更窄的权限档,不要顺手 danger-full-access。