AI coding tools
Codex CLI Operating Card
Choose and operate Codex CLI with bounded workspace permissions, reviewed actions, and reproducible verification.
- Format
- Reference
- Level
- Beginner
- Audience
- Practitioner, Developer, Operator
- Owner
- Project42 Editorial
- Review cadence
- Every 30 days
- Prerequisites
- A version-controlled working copy; An OpenAI-supported sign-in path
Use it for interactive or repeatable terminal work
Codex CLI can inspect code, edit files, run commands, review changes, and participate in scripted workflows from a project directory. Choose the interactive surface for collaborative implementation and the non-interactive surface only when inputs, permissions, output handling, and failure behavior are already controlled.
Select permissions for the current task, not for every task the tool might perform later. Keep filesystem roots and network destinations narrow, examine approval prompts, and never treat a model request as proof that an action is safe.
Bind the task to a permission and evidence contract
Record the worktree baseline, governing AGENTS.md instructions, allowed paths, network requirements, and verification command. Use read-only discovery before edits and review the final diff independently of the chat summary.
If a command targets an unexpected path, asks for broader network access, or changes files outside the contract, deny it and reassess. Recovery begins from the last verified checkpoint and a preserved record of what failed.
Task: [one observable result]
Scope: [workspace roots and protected paths]
Permissions: [filesystem, command, network, and browser limits]
Instructions: [AGENTS.md and task-specific constraints]
Expected output: [diff, report, or artifact]
Verification: [tests, review, and runtime observation]
Stop conditions: [unexpected target, permission expansion, secret exposure]
Recovery: [Git checkpoint, local backup, and rerun boundary]Expected evidence and verification
Expected evidence is a bounded diff or artifact, the exact verification output, and a record of permissions actually used. Verify the repository status, inspect new and deleted files, run the relevant test or build, and confirm that the observable result matches the request.
For recovery, stop further mutations, retain the failing output, restore the affected unit from its checkpoint, and repeat with a smaller scope. Do not use unrestricted access as a generic troubleshooting step.