## Session snapshot For POSIX shell, the goal is to take a snapshot of the interactive shell environment, store it in a session file located in `.codex/` and only source this file for every command that is run. As a result, if a snapshot files exist, `bash -lc <CALL>` get replaced by `bash -c <CALL>`. This also fixes the issue that `bash -lc` does not source `.bashrc`, resulting in missing env variables and aliases in the codex session. ## POSIX unification Unify `bash` and `zsh` shell into a POSIX shell. The rational is that the tool will not use any `zsh` specific capabilities. --------- Co-authored-by: Michael Bolin <mbolin@openai.com>
codex-core
This crate implements the business logic for Codex. It is designed to be used by the various Codex UIs written in Rust.
Dependencies
Note that codex-core makes some assumptions about certain helper utilities being available in the environment. Currently, this
macOS
Expects /usr/bin/sandbox-exec to be present.
Linux
Expects the binary containing codex-core to run the equivalent of codex debug landlock when arg0 is codex-linux-sandbox. See the codex-arg0 crate for details.
All Platforms
Expects the binary containing codex-core to simulate the virtual apply_patch CLI when arg1 is --codex-run-as-apply-patch. See the codex-arg0 crate for details.