## Summary
- add repo-local Codex hooks matching the existing Claude hooks
- move the hook implementations into `scripts/hooks` so both agents
share one implementation
- handle Codex `apply_patch` payloads in the post-edit formatter
- keep other repo-local `.codex` state ignored while tracking
`.codex/hooks.json`
## Validation
- `python3 -m json.tool .claude/settings.json`
- `python3 -m json.tool .codex/hooks.json`
- `bash -n scripts/hooks/session-start.sh`
- `bash -n scripts/hooks/session-start-web.sh`
- exercised `uv run scripts/hooks/post-edit-format.py` with Claude
`Write` and Codex `apply_patch` payloads