Use native Codex steering and transcript deletion

This commit is contained in:
iris committed 2026-09-09 12:19:11 -04:00
1 parent 00538cc19b
commit 8c88a7e991
12 files changed
+1004 -390

No files matched your search

+12 -4
View File
@@ -156,8 +156,7 @@ pub enum DriverKind {
/// The Claude Code CLI over stream-json. Named for the CLI specifically:
/// bare "claude" would suggest the credit-billed API, which this is not.
ClaudeCli,
/// The Codex CLI's `exec --json` JSONL stream. Each process is one turn;
/// the thread id it reports is resumed by the next process.
/// The Codex CLI's persistent app-server JSONL protocol.
CodexCli,
}
@@ -235,9 +234,18 @@ impl DriverKind {
/// the one sentence that has to be true: said of a session that can in fact
/// be brought back, it spends the credibility the warning needs.
pub fn keeps_own_transcript(self) -> bool {
self.own_transcript_name().is_some()
}
/// The product whose durable transcript survives an ordinary app delete.
/// Reported to the phone because a provider's configured name is not the
/// name of its storage, and calling Codex's rollout a Claude transcript is
/// especially misleading on an irreversible switch.
pub fn own_transcript_name(self) -> Option<&'static str> {
match self {
Self::ClaudeCli | Self::CodexCli => true,
Self::Echo | Self::LlamaCpp => false,
Self::ClaudeCli => Some("Claude Code"),
Self::CodexCli => Some("Codex"),
Self::Echo | Self::LlamaCpp => None,
}
}