github OthmanAdi/planning-with-files v2.34.0
v2.34.0 — Codex hooks restored, Tessl CI, spring cleaning

latest releases: v2.43.0, v2.42.0, v2.41.0...
one month ago

What's new in v2.34.0

Codex hooks restored (closes #132)

.codex/hooks.json and .codex/hooks/ scripts are back. These were added in v2.31.0 by @Leon-Algo (PR #120) and accidentally wiped during the v2.32.0 release cycle when master was rewritten.

Codex users now have full lifecycle hook parity with Claude Code, Cursor, and Copilot:

Hook What It Does
SessionStart Runs session catchup + injects active plan context
UserPromptSubmit Re-injects plan and progress on every message
PreToolUse Re-reads task_plan.md (top 30 lines) before Bash
PostToolUse Reminds agent to update progress.md
Stop Blocks once on incomplete phases, then re-prompts

A new test suite (tests/test_codex_hooks.py, 5 tests) covers hooks.json structure, SessionStart injection, PreToolUse systemMessage, PostToolUse reminder, and Stop block/allow behavior.

Tessl skill-review CI (PR #131)

.github/workflows/skill-review.yml now runs on every PR that touches a SKILL.md, posting quality scores and AI-suggested improvements as a PR comment. Contributors can type /apply-optimize to commit the suggestions directly. Non-blocking by default.

Exec bit fix (PR #122)

check-complete.sh and init-session.sh were tracked as 100644 (not executable) in the canonical source. Fixed to 100755. A regression test (tests/test_script_permissions.py) prevents this from recurring.

Bug fixes

  • Duplicate metadata.version key removed from .codebuddy, .cursor, .mastracode, .opencode, and .codex SKILL.md files
  • docs/codex.md rewritten to cover hooks installation, hooks protocol, workspace vs personal install, and troubleshooting

Contributors

4 contributors who were missed in previous releases are now properly credited in CONTRIBUTORS.md:

@lasmarois's entry updated to include PR #37 (session-agnostic catchup scanning).

Total contributors: 32+


Thanks to @Leon-Algo for three separate PRs and for being patient while your hooks work was accidentally wiped. Thanks to @popey for the Tessl CI integration.

Don't miss a new planning-with-files release

NewReleases is sending notifications on new releases.