-
Notifications
You must be signed in to change notification settings - Fork 0
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Checking mergeability…
Don’t worry, you can still create the pull request.
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: grimmerk/codev
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Could not load branches
Nothing to show
Loading
...
head repository: grimmerk/codev
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: feat/worktree-launch
Could not load branches
Nothing to show
Loading
- 4 commits
- 9 files changed
- 2 contributors
Commits on Apr 27, 2026
-
feat: launch Claude session as git worktree from Projects tab
- New ⌘+Shift+Enter shortcut on a project → opens a small dialog for an optional branch name. With a name we run `claude -w "<name>" -n "<name>"` in the configured terminal. - The `-n` flag is critical: it sets a Claude session custom title so the Sessions tab can switch back to the right tab in Ghostty (which has no per-tab TTY exposure). Without it, worktree and main-repo terminals share the same cwd and AppleScript first-match-wins picks the wrong tab. - Added parseWorktreePath() helper + isWorktree / parentRepo fields on ClaudeSession. Worktree sessions display as the parent repo name with a small WT badge, instead of the worktree folder name (e.g. "codev WT" not "test-worktree-4"). - Fixed Ghostty switch AppleScript: `activate` is now inside the match success branch, so we no longer surface the wrong Ghostty window when no tab matches. This benefits all session switches, not only worktrees. - Updated README + design doc + changelog. Version 1.0.75. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
-
fix: address PR #119 reviewer comments
- Critical: validate worktreeName before shell interpolation. isValidWorktreeName() rejects shell metacharacters and bad branch-name patterns. Validated at three layers: * dialog input (visual error + Launch button disabled) * IPC handler (defense in depth) * launchNewClaudeSession (defense in depth) - Major: dialog now traps keydown + click events so background shortcuts (Tab, Esc-document, etc.) and project-input refocus can't fire while the modal is open. Added role="dialog" + aria-modal for a11y. - Minor: hint text now includes Shift+Enter (Codev embedded terminal) so it's discoverable next to the worktree shortcut. - Docs: noted the IDE/git-GUI clutter trade-off of nested worktrees, that A and B aren't mutually exclusive, and that -n becomes optional once Ghostty exposes per-tab TTY. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...feat/worktree-launch