sqlite_home 要用绝对路径,相对路径跟着 cwd 跑
配置键优先于 CODEX_SQLITE_HOME。它搬的是 SQLite 状态库,不是 log_dir,也不是 history.jsonl。相对路径按启动时的工作目录解析。
SQLite 状态默认跟 CODEX_HOME。磁盘吵、想把状态库和配置拆开时,写用户配置,路径用绝对路径:
sqlite_home = "/home/you/codex-sqlite"
只改这一次:
CODEX_SQLITE_HOME=/mnt/data/codex-sqlite codex
官方环境变量页写明:sqlite_home 优先于 CODEX_SQLITE_HOME;两条都可以是相对路径,但都相对当前工作目录,不是 CODEX_HOME。写进 config.toml 的 ./sqlite 会随着你从哪个仓库启动而换地方,看起来像「状态丢了」。
三件不要混:
sqlite_home:agent jobs 和可恢复运行时状态的 SQLitelog_dir:opt-in 明文codex-tui.log[history] persistence:只约束history.jsonl,不管sessions/的 rollout
CODEX_HOME 仍放配置、鉴权和会话文件。目标目录要先建好、可写。有人看到 logs_*.sqlite-wal 狂写盘(例如 openai/codex#17320),RUST_LOG 不一定压得住 SQLite TRACE;先把库迁到独立磁盘,不要指望只改日志级别。不要把相对 sqlite_home 写进会进 Git 的项目 config。