Commit Graph
10162 Commits
Author SHA1 Message Date
NeilandClaude Opus 4.6 1dff41c6d7 feat: add VS Code-style file search and icon activity bar (#78)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:28:05 -07:00
JinjingandClaude Opus 4.6 20cfa1f279 feat: add clickable file path links in terminal (#77)
- Add terminal link detection that recognizes file paths with optional
  line:column suffixes and opens them in the editor or externally
- Split shell IPC into separate openUrl, openFilePath, openFileUri, and
  pathExists handlers with proper URL/path validation
- Register xterm link providers per pane with path existence caching
- Support OSC 8 hyperlinks for http(s) and file: protocols
- Add editor-reveal-location custom event for jumping to line/column

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:17:41 -07:00
JinjingandClaude Opus 4.6 417a49bc1b feat: unify worktree meta editing into single dialog with double-click support (#76)
Merge the separate "Link Issue" and "Edit Comment" modals into a single
"Edit Worktree Details" dialog. Add double-click on worktree cards to
open the unified editor. Context menu items now focus the relevant field.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:06:44 -07:00
Jinjing 2ef0a64cfa 1.0.33 v1.0.33 2026-03-23 21:43:02 -07:00
Jinjing 6426dea050 1.0.32 2026-03-23 21:41:46 -07:00
JinjingandClaude Opus 4.6 810934ac65 fix: use generation tracking to prevent killing new PTYs on renderer reload (#74)
The did-finish-load handler was killing all PTY processes, including ones
spawned during the current page load. This caused blank terminals when a
race between renderer reload and PTY creation occurred. Now each PTY is
tagged with a load generation counter, and only PTYs from previous
generations are killed on reload.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 21:33:16 -07:00
Jinjing aed7a6c1f6 1.0.31 v1.0.31 2026-03-23 17:16:26 -07:00
Jinjing a5f4d71bb4 1.0.30 2026-03-23 17:15:20 -07:00
JinjingandClaude Opus 4.6 82425df6ea fix: remount terminal panes after shutdown to restore PTY connections (#73)
When all PTYs are dead after shutdown, bump a generation counter on
terminal tabs so React remounts TerminalPane components with fresh
PTY connections instead of showing stale terminals.

Also converts interfaces to type aliases in types.ts to satisfy linter.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 17:10:28 -07:00
JinjingandClaude Opus 4.6 9853bba8ba fix: resolve TS build errors in EditorPanel and context menu (#72)
- Return empty fragment instead of null to satisfy JSX.Element return type
- Remove unused paneTransportsRef parameter and PtyTransport import

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 17:06:44 -07:00
JinjingandClaude Opus 4.6 29119e1d6d fix: resolve TypeScript build errors for unused variable and return type (#71)
Remove unused `paneTransportsRef` from context menu hook and fix
`EditorPanel` return type to allow `null`.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:56:57 -07:00
JinjingandClaude Opus 4.6 5c461c8021 Add AGENTS.md and CLAUDE.md configuration files (#70)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:49:12 -07:00
Jinjing b02a4a6d1a 1.0.29 v1.0.29 2026-03-23 16:48:44 -07:00
JinjingandClaude Opus 4.6 e0fc58cc56 fix: bundle Monaco workers locally and fix JSX/TSX language detection (#69)
Use Vite worker imports to bundle Monaco web workers instead of relying on CDN,
and correct language IDs for .tsx/.jsx files to typescriptreact/javascriptreact.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:47:13 -07:00
Jinjing 2163c67035 fix: scope editor files and tabs per worktree (#68) 2026-03-23 16:45:00 -07:00
NeilandClaude Opus 4.6 90d1da84fb fix: use autoUpdater.quitAndInstall() on macOS to actually apply updates (#62)
The previous approach used app.relaunch() + app.quit() to avoid a crash
dialog, but this created a race condition where the app relaunches the
old version before electron-updater's installer replaces the .app bundle.

Instead, use autoUpdater.quitAndInstall() on all platforms with proper
cleanup beforehand (kill PTY processes, flush store, destroy windows) to
ensure a clean exit without crash dialogs.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:39:16 -07:00
JinjingandClaude Opus 4.6 81d8a2c10c fix: improve text wrapping in delete worktree dialog (#67)
Add break-all to worktree name and use proper flex layout for error
messages to prevent long text from overflowing the dialog.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:38:08 -07:00
Jinjing 051c25f90e 1.0.28 v1.0.28 2026-03-23 16:35:13 -07:00
JinjingandClaude Opus 4.6 5765791bb9 refactor: extract TerminalPane hooks and modularize terminal themes (#66)
Split the monolithic TerminalPane component into focused custom hooks
(lifecycle, context menu, global effects, dark mode detection) and break
the large terminal-themes-data file into organized modules.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:31:29 -07:00
Jinjing 3a650b4196 fix: route terminal paste through electron clipboard (#65) 2026-03-23 16:27:50 -07:00
JinjingandClaude Opus 4.6 ecbbe3bfc9 fix: clear repo filter after creating worktree instead of auto-filtering (#64)
Previously, creating a worktree would auto-filter the sidebar to the
current repo, which could be confusing. Now clears the filter so all
worktrees remain visible, relying on revealWorktreeInSidebar to scroll
to the newly created worktree.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:26:20 -07:00
JinjingandClaude Opus 4.6 cd14506142 chore: add CLAUDE.md and gitignore package-lock.json (#63)
* feat: use Enter to submit and Shift+Enter for line break in comment editor

Closes #48

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: add CLAUDE.md and gitignore package-lock.json

Enforce pnpm usage for AI agents and prevent stray npm lock files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:22:24 -07:00
JinjingandClaude Opus 4.6 b6b1a27990 fix: allow single-digit values in NumberField input (#58) (#60)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:16:59 -07:00
JinjingandClaude Opus 4.6 67aa2af2f3 feat: use Enter to submit and Shift+Enter for line break in comment editor (#61)
Closes #48

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:14:37 -07:00
Neil f3aaa952f9 1.0.27 v1.0.27 2026-03-23 15:54:42 -07:00
Neil 33b41cb97e Center page (#59) 2026-03-23 15:54:33 -07:00
JinjingandClaude Opus 4.6 19a7f650ce fix: hide terminal when no active worktree, show landing page instead (#57)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 15:53:25 -07:00
Jinjing 1fac83427d fix: preserve terminal search shortcut and refresh right sidebar state (#56) 2026-03-23 15:34:18 -07:00
Neil ac37d83bbd Update README to enhance project description 2026-03-23 15:08:53 -07:00
Jinjing 3c582a6ff5 1.0.26 v1.0.26 2026-03-23 14:50:54 -07:00
Jinjing 59e6baa18f fix: keep worktree tab closes scoped to owning worktree (#54) 2026-03-23 14:45:14 -07:00
JinjingandClaude Opus 4.6 866272093d feat: add auto-pr-merge and auto-submit skills with fast CI polling (#53)
Add auto-pr-merge skill (from noqa) with CI wait times reduced for orca's
fast CI: 1-min initial wait + 1-min poll intervals (~6 min max) instead of
8-min + 3-min (~23 min max). Add auto-submit skill to orchestrate the full
review-fix-pr-merge pipeline.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 11:30:36 -07:00
Jinjing dfc01a8903 1.0.25 v1.0.25 2026-03-23 11:27:21 -07:00
JinjingandClaude Opus 4.6 04171449f6 fix: prevent update banner from persisting after installing the update (#52)
With allowPrerelease enabled, electron-updater may consider the current
version as an "available" update, causing the update banner to reappear
in a loop after restarting. Guard both update-available and
update-downloaded handlers to skip when the reported version matches the
running app version. Also preserve the userInitiated flag through the
same-version guard so user-initiated checks still show the "latest
version" toast.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 11:23:03 -07:00
Jinjing ef79af969e 1.0.24 v1.0.24 2026-03-23 09:53:46 -07:00
Jinjing 1048021e85 fix: preserve terminal state when clearing active worktree (#51) 2026-03-23 09:52:26 -07:00
JinjingandClaude Opus 4.6 008a341675 Add auto-review-fix skill (#50)
Automated iterative code review and fix loop with parallel review agents.
Runs up to 4 iterations of review-validate-fix cycle with specialized
review commands per file category.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 09:43:18 -07:00
Jinjing 90c0e36a16 fix: harden packaged app PATH setup (#49) 2026-03-23 09:34:47 -07:00
JinjingandClaude Opus 4.6 596aac5b8c fix: skip redundant GitHub refresh when re-clicking active worktree (#45)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 09:23:59 -07:00
Jinjing 83cf02105f 1.0.23 v1.0.23 2026-03-23 00:02:26 -07:00
JinjingandClaude Opus 4.6 415ae35dce Fix shutdown clearing active worktree/tab state from wrong layer (#44)
Move activeWorktreeId/activeTabId clearing out of shutdownWorktreeTerminals
(a terminal-focused store action) and into the UI component that triggers
shutdown. The delete flow already handles this independently in worktrees.ts.

Also fix pre-existing lint issues and extract terminal helpers to separate file.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 00:00:10 -07:00
JinjingandClaude Opus 4.6 85f678d736 Make comment textarea auto-expandable in WorktreeMetaDialog (#43)
Auto-resize the textarea as the user types, capped at max-h-60 with overflow scroll.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 23:47:51 -07:00
Jinjing 0c83e5b9d8 fix: refresh github status on activity (#42) 2026-03-22 23:47:46 -07:00
NeilandClaude Opus 4.6 c2e4ae77d6 Support spaces in worktree names (#40)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 23:18:49 -07:00
NeilandClaude Opus 4.6 3bad80a8ba Add 'Add repo' option to repo filter dropdown (#39)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 23:17:25 -07:00
NeilandClaude Opus 4.6 bcc1ba6fa4 Fix Windows build: add missing getVersion to UpdaterApi type
The preload implementation and IPC handler for getVersion existed but
the type declaration was missing, causing TS2339 on Windows CI.

Also converts interfaces to type aliases in the preload type
declarations to satisfy the consistent-type-definitions lint rule.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 22:46:24 -07:00
Jinjing ddbad7a13f Fix PR status display: deduplicate concurrent requests and simplify cache logic (#38) 2026-03-22 16:28:35 -07:00
Neil 0a88bea0e6 1.0.22 v1.0.22 2026-03-22 15:58:33 -07:00
NeilandClaude Opus 4.6 c17a9852c7 Fix update-related issues: macOS crash, duplicate notifications, version display (#37)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 15:56:06 -07:00
NeilandClaude Opus 4.6 b1a5b0fc0d Break up large files into well-organized modules (#29)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 15:22:55 -07:00