codex_local adapter runs OpenAI’s Codex CLI locally. It supports session persistence via previous_response_id chaining and skills injection through the global Codex skills directory.
Prerequisites
- Codex CLI installed (
codexcommand available) OPENAI_API_KEYset in the environment or agent config
Configuration Fields
| Field | Type | Required | Description |
|---|---|---|---|
cwd | string | Yes | Working directory for the agent process (absolute path; created automatically if missing) |
model | string | No | Model to use |
promptTemplate | string | No | Prompt used for all runs |
env | object | No | Environment variables (supports secret refs) |
timeoutSec | number | No | Process timeout (0 = no timeout) |
graceSec | number | No | Grace period before force-kill |
dangerouslyBypassApprovalsAndSandbox | boolean | No | Skip safety checks (dev only) |
Session Persistence
Codex usesprevious_response_id for session continuity. The adapter serializes and restores this across heartbeats, allowing the agent to maintain conversation context.
Skills Injection
The adapter symlinks DarkDuck skills into the global Codex skills directory (~/.codex/skills). Existing user skills are not overwritten.
When DarkDuck is running inside a managed worktree instance (
DARKDUCK_IN_WORKTREE=true), the adapter uses a worktree-isolated CODEX_HOME so runtime state does not leak across checkouts.Instructions Resolution
IfinstructionsFilePath is configured, DarkDuck reads that file and prepends it to the stdin prompt sent to codex exec on every run.
This is separate from any workspace-level instruction discovery that Codex itself performs. DarkDuck does not disable Codex-native repo instruction files, so a repo-local AGENTS.md may still be loaded in addition to the DarkDuck-managed agent instructions.
Environment Test
The environment test checks:- Codex CLI is installed and accessible
- Working directory is absolute and available
- Authentication signal (
OPENAI_API_KEYpresence) - A live hello probe to verify the CLI can actually run