Skip to main content

CodexHomeLayout

Struct CodexHomeLayout 

Source
pub struct CodexHomeLayout { /* private fields */ }
Expand description

Describes the on-disk layout used by the Codex CLI when CODEX_HOME is set.

Files are rooted next to config.toml, auth.json, .credentials.json, and history.jsonl; conversations/ holds transcript JSONL files and logs/ holds codex-*.log outputs. Call Self::materialize to create the directories when standing up an app-scoped home.

Implementations§

Source§

impl CodexHomeLayout

Source

pub fn new(root: impl Into<PathBuf>) -> Self

Creates a new layout description rooted at root.

Source

pub fn root(&self) -> &Path

Returns the CODEX_HOME root.

Source

pub fn config_path(&self) -> PathBuf

Path to config.toml under CODEX_HOME.

Source

pub fn auth_path(&self) -> PathBuf

Path to auth.json under CODEX_HOME.

Source

pub fn credentials_path(&self) -> PathBuf

Path to .credentials.json under CODEX_HOME.

Source

pub fn history_path(&self) -> PathBuf

Path to history.jsonl under CODEX_HOME.

Source

pub fn conversations_dir(&self) -> PathBuf

Directory containing conversation transcripts.

Source

pub fn logs_dir(&self) -> PathBuf

Directory containing Codex log files.

Source

pub fn materialize(&self, create_home_dirs: bool) -> Result<(), CodexError>

Creates the CODEX_HOME root and its known subdirectories when create_home_dirs is true. No-op when disabled.

Source

pub fn seed_auth_from( &self, seed_home: impl AsRef<Path>, options: AuthSeedOptions, ) -> Result<AuthSeedOutcome, AuthSeedError>

Copies login artifacts (auth.json and .credentials.json) from a trusted seed home into this layout. History and logs are intentionally excluded.

This is opt-in and leaves defaults untouched. Missing files raise errors only when marked as required in options; otherwise they are skipped. Target directories are created when create_target_dirs is true.

Trait Implementations§

Source§

impl Clone for CodexHomeLayout

Source§

fn clone(&self) -> CodexHomeLayout

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CodexHomeLayout

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for CodexHomeLayout

Source§

fn eq(&self, other: &CodexHomeLayout) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for CodexHomeLayout

Source§

impl StructuralPartialEq for CodexHomeLayout

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more