Skip to content

v0.5.0 — security hardening

Choose a tag to compare

@agallardol agallardol released this 19 Aug 19:55
· 3 commits to main since this release

Security

  • Auto-session creates no longer execute repo-provided commands. Previously, .zcode/worktree.json setupCommands from any repository ran automatically the moment a session opened that repo — arbitrary code execution with zero user action on untrusted clones. Lifecycle commands (setupCommands/preRemoveCommands) now run only on explicitly created worktrees; auto-session worktrees skip both (teardown paired with setup). The original exploit is a permanent regression test.
  • The PreToolUse edit guard no longer denies with a redirect to a worktree that was deleted out-of-band.

Project

  • SECURITY.md (trust model + private reporting), CONTRIBUTING.md, Code of Conduct, issue templates.
  • CI on GitHub Actions: macOS + Ubuntu, Node 20 & 22 (suite is zero-dependency).
  • README: install steps verified against the actual desktop UI, troubleshooting section, accurate test counts (129).

Upgrade note: if you rely on setupCommands running for automatic session worktrees, run them once via /worktree:new <name> (explicit creates still execute them) or install dependencies in the session worktree manually.