Overview
Codex CLI uses a hybrid approach: custom prompts for user-invokable commands and Agent Skills for reference documentation. Impeccable transforms its source format into Codex-compatible prompts with uppercase variable syntax and comprehensive skill files.Codex CLI is OpenAI’s code-focused CLI tool. Skills and custom prompts are available in recent versions.
Installation
Download the bundle
Visit impeccable.style and download the Codex CLI bundle, or copy from the repository:
File Structure
Codex CLI uses a unique directory structure:Key Differences
- Global installation: Everything lives in
~/.codex/(not per-project) - Skills directory: Uses
.codex/skills/(not.codex/commands/) - Prompt prefix: Commands are invoked as
/prompts:name(not just/name)
Skill Format
Codex CLI skills use YAML frontmatter with argument hints:How Arguments Work
Codex CLI uses uppercase variable syntax ($ARGNAME) instead of lowercase placeholders:
Argument Syntax
Variable Transformation
Codex transforms arguments into uppercase variables:Argument Hints
Theargument-hint field in frontmatter shows users the expected syntax:
Provider-Specific Transformations
The build system applies these transformations for Codex CLI:1. Uppercase Variables
Argument placeholders become uppercase variables:2. Argument Hints
Codex generates argument hints from theargs array:
<name>, optional use [NAME=<value>].
3. Skill Structure
Codex CLI uses the Agent Skills standard (same as Cursor and Claude Code) for skill files:4. Reference Files
Reference files are copied intoreference/ subdirectories, preserving the full content of domain-specific guides.
Usage Examples
Basic Command
With Argument
Multiple Arguments
Complex Workflow
Available Skills
Impeccable includes 17 user-invokable prompts for Codex CLI:| Command | Arguments | Purpose |
|---|---|---|
/prompts:audit | [AREA=<value>] | Technical quality checks (a11y, performance, responsive) |
/prompts:critique | [DESIGN=<value>] | UX design review (hierarchy, clarity, emotional resonance) |
/prompts:normalize | [SCOPE=<value>] | Align with design system standards |
/prompts:polish | [COMPONENT=<value>] | Final pass before shipping |
/prompts:distill | [FEATURE=<value>] | Strip to essence |
/prompts:clarify | [COPY=<value>] | Improve unclear UX copy |
/prompts:optimize | [TARGET=<value>] | Performance improvements |
/prompts:harden | [FLOW=<value>] | Error handling, i18n, edge cases |
/prompts:animate | [ELEMENT=<value>] | Add purposeful motion |
/prompts:colorize | [COMPONENT=<value>] | Introduce strategic color |
/prompts:bolder | [SECTION=<value>] | Amplify boring designs |
/prompts:quieter | [SECTION=<value>] | Tone down overly bold designs |
/prompts:delight | [INTERACTION=<value>] | Add moments of joy |
/prompts:extract | [PATTERN=<value>] | Pull into reusable components |
/prompts:adapt | <component> [DEVICE=<value>] | Adapt for different devices |
/prompts:onboard | [FLOW=<value>] | Design onboarding flows |
/prompts:teach-impeccable | - | One-time setup: gather design context |
Codex CLI Features
Custom Prompts System
Codex CLI organizes user-invokable commands as custom prompts with the/prompts: prefix:
Skills for Reference
Codex treats skills as reference documentation rather than invokable commands. They’re loaded automatically when prompts reference them:Global Installation
Unlike other providers, Codex skills are global:Argument Validation
Codex validates arguments based onargument-hint:
- Required arguments (
<name>) must be provided - Optional arguments (
[NAME=<value>]) can be omitted - Codex prompts for missing required arguments
Quirks & Limitations
Prompts Prefix Required
Uppercase Variables Only
Codex uses$ARGNAME (uppercase) not {{argname}} or {{args}}:
Global Scope
Skills affect all projects. You can’t have different skills per project.No Per-Project Override
Codex doesn’t support project-specific skills. Everything in~/.codex/ applies globally.
Argument Syntax
Codex usesKEY=value syntax (not space-separated):
Troubleshooting
Commands Not Found
Arguments Not Working
If$ARGNAME appears literally in responses:
- Verify you’re using
KEY=valuesyntax (not space-separated) - Check argument name matches the hint exactly (case-sensitive)
- Ensure the skill body uses uppercase
$ARGNAME
Skills Not Loading
If prompts can’t find thefrontend-design skill:
- Verify
~/.codex/skills/frontend-design/SKILL.mdexists - Check YAML frontmatter is valid
- Ensure
namefield matches directory name - Look for file permission issues
Migration from Other Providers
From Cursor or Claude Code
Codex uses uppercase variables:From Gemini CLI
Codex supports named arguments (Gemini only has{{args}}):
Invocation Changes
Codex requires the/prompts: prefix:
