github kenryu42/claude-code-safety-net v0.9.0

10 hours ago

New Features

  • Add Codex Plugin
  • Add WorkTreeMode

Changed

  • Add worktreeMode option to AnalyzeOptions and TraceStep
  • Add linked worktree detection module
  • Relax local git discards in linked worktrees
  • Add SAFETY_NET_WORKTREE to CLI surfaces and explain
  • Add AnalyzeNestedOverrides type and envAssignments to AnalyzeOptions
  • Track cwd changes from env -C/--chdir in wrapper stripping
  • Propagate env/cwd/worktree overrides through analyzeNested
  • Propagate wrapper env/cwd to nested analysis in segment
  • Handle remote parallel execution and wrapper info propagation
  • Propagate wrapper env/cwd through xargs child analysis
  • Track sudo/env chdir and split-string in wrapper stripping
  • Track exported git context env vars across shell segments
  • Propagate wrapper env/cwd through interpreters, BusyBox, parallel, and xargs
  • Verify linked worktree config matches root before relaxing
  • Tighten worktree relaxation for recursive submodules and double-force clean
  • Support sudo --chdir and git context append env assignments
  • Handle typeset, declare, and shell git context env assignments
  • Track GIT_INDEX_FILE as git context override and verify gitdir backlink
  • Fail-closed on dynamic git arguments and sudo chdir/login in worktree mode
  • Track allexport mode and append assignments for shell git context
  • Track keyword export and readonly in shell env context, improve builtin resolution
  • Treat dynamic stdin and replacement tokens in parallel and xargs as non-worktree-safe
  • Fail-closed on dynamic arguments, recursive submodules, and forced branch resets in worktree mode
  • Physical path resolution and symlink hardening
  • Track git config envs, keyword exports, readonly, and builtin
  • Improve parallel placeholder detection and dynamic args handling
  • Worktree hardening with PATH bypass and config env detection
  • Seed exported names from process env and git config-affecting env vars
  • Read local git config for recursive submodule check before invoking git binary
  • Expand trusted git binaries and export for testing
  • Add Windows Git binary paths to trusted binaries list
  • Add Codex platform hook detection
  • Color error messages red in hooks section

Breaking Changes

  • Migrate slash commands to skills format

Fixed

  • Keep ref-moving resets blocked, relax only local discards
  • Use wrapper-resolved cwd in explain segment and disable fallback worktree relaxation
  • Propagate env assignments and wrapper cwd into nested analysis
  • Use platform-aware path separators for Windows compatibility
  • Use wrapper cwd in xargs and parallel rm analysis
  • Compare paths by inode identity with normalized realpath fallback
  • Handle Windows native realpath prefixes in path comparison
  • Handle double-quoted escapes in git config value parsing
  • Treat missing trusted git binary as recursive submodule config enabled
  • Parse commented JSON in Copilot CLI config files
  • Handle Claude Code plugin list without blank separators
  • Parse Codex config section headers with inline comments
  • Use effective enabled state for Gemini CLI extension detection
  • Exclude metadata email lines from Claude Code plugin block detection

Related Issues

  • Issue #44: Relax destructive-change rules when running inside a git worktree
  • Issue #47: [Feature]: Allow to bypass some rules
  • Issue #46: [Feature]: Support for Codex (closed by PR #49)

Related PRs

  • PR #48: Worktree mode (closes issue #123)
  • PR #49: Codex hooks compatibility (closes issue #46)

Don't miss a new claude-code-safety-net release

NewReleases is sending notifications on new releases.