Purpose: Separate officially discovered behavior, shared conventions, and portable fallbacks.
Intended reader: Maintainers installing FPAT Lite for Codex, Claude Code, or another coding agent.
Consult this when: Editing agent-specific files or troubleshooting discovery.
Compatibility matrix#
| Capability | Codex | Claude Code | FPAT Lite choice |
|---|---|---|---|
| Repository instructions | AGENTS.md; hierarchical scope | CLAUDE.md; hierarchical scope | Shared rules in AGENTS.md; CLAUDE.md imports it |
| Repository skill | .agents/skills/<name>/SKILL.md | .claude/skills/<name>/SKILL.md | One thin router in each native location |
| Explicit invocation | $fpat-lite ... or skill selector | /fpat-lite ... | Same mode and arguments |
| Reusable command files | Codex custom prompts are deprecated and user-home scoped | .claude/commands/ works but is legacy | commands/ are portable contracts, not native commands |
| Permission control | Sandbox, approvals, configuration, experimental exec rules | Permission modes, allow/ask/deny rules, hooks | No silent grants; document approval boundary |
| Shared detailed knowledge | Skill references and ordinary repository files | Skill references and ordinary repository files | Shared commands/, rules/, templates/, knowledge-base/ |
| Other agents | No guaranteed native discovery | No guaranteed native discovery | Read AGENTS.md then a named command contract |
Codex behavior used#
Current Codex guidance documents that:
- Codex builds an
AGENTS.mdinstruction chain from global guidance and the project root down to the working directory; closer files appear later and take precedence. - Repository skills are discovered under
.agents/skillsfrom the working directory through the repository root. - Skills require a
SKILL.mdwithnameanddescription, and support progressive disclosure. - Custom prompts are deprecated in favor of skills and live in the user's Codex home rather than the repository.
Sources:
Claude Code behavior used#
Current Claude Code documentation states that:
- Project instructions may live in
./CLAUDE.mdor./.claude/CLAUDE.md. - Claude Code reads
CLAUDE.md, notAGENTS.md, butCLAUDE.mdcan importAGENTS.mdwith@AGENTS.md. - Project skills live at
.claude/skills/<skill-name>/SKILL.mdand can be invoked as/skill-name. .claude/commands/continues to work, but skills are the recommended current format.- Instructions shape behavior; permission rules and hooks provide enforcement.
Sources:
- Claude Code project memory
- Claude Code skills
- Claude Code permissions
- Claude configuration directory
Instruction precedence differences#
Both products combine broader and narrower guidance, but their details are not identical:
- Codex checks
AGENTS.override.md, thenAGENTS.md, at each applicable directory and uses one file per directory. - Claude Code loads
CLAUDE.mdandCLAUDE.local.md; project instructions appear after user instructions, and subdirectory files can load on demand. - Claude imports are native Claude behavior. Codex is not told to interpret the
@AGENTS.mdline; it readsAGENTS.mddirectly.
Do not describe either product's exact precedence as a universal Agent Skills standard.
Permission guidance#
FPAT Lite deliberately omits checked-in allowed-tools, auto-approval rules,
and broad platform settings. Such files can alter the user's security posture
and are environment-specific.
Teams that need hard enforcement should configure the platform directly:
- Codex: sandbox, approval policy, trusted project config, and organization policy.
- Claude Code: permission modes,
allow/ask/denyrules, or hooks. - GitHub: least-privilege tokens, branch protection, required checks, and reviewer policy.
Keep the Markdown approval rule even when enforcement exists; it explains the intent and improves handoffs.
Portable fallback#
When native skill discovery is unavailable, use:
Read AGENTS.md, rules/core-rules.md, and
rules/safety-and-approval.md. Then follow commands/<mode>.md for this task.
This fallback is a documented convention, not a claimed native feature.