From a991202cac72b352246c59e3b5b9e03a37e7efb4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 14:08:57 +0000 Subject: [PATCH 1/6] Initial plan From 35c8cade21b826690144dc5de812ae7cd6a70273 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 14:12:51 +0000 Subject: [PATCH 2/6] Add Google Antigravity editor support (agy CLI, workspace-enabled) Co-authored-by: ivanviragine <9950727+ivanviragine@users.noreply.github.com> --- README.md | 4 ++-- completions/_git-gtr | 2 +- completions/git-gtr.fish | 4 ++-- completions/gtr.bash | 2 +- docs/configuration.md | 7 ++++--- lib/adapters.sh | 3 ++- lib/commands/help.sh | 12 ++++++------ 7 files changed, 18 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index ca6277d..e207ac8 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ While `git worktree` is powerful, it's verbose and manual. `git gtr` adds qualit - **Simple commands** - Create and manage worktrees with intuitive CLI - **Repository-scoped** - Each repo has independent worktrees - **Configuration over flags** - Set defaults once, use simple commands -- **Editor integration** - Open worktrees in Cursor, VS Code, Zed, and more +- **Editor integration** - Open worktrees in Cursor, VS Code, Antigravity, Zed, and more - **AI tool support** - Launch Aider, Claude Code, or other AI coding tools - **Smart file copying** - Selectively copy configs/env files to new worktrees - **Hooks system** - Run custom commands after create/remove @@ -323,7 +323,7 @@ All configuration is stored via `git config`. For team settings, create a `.gtrc ### Quick Setup ```bash -# Set your editor (cursor, vscode, zed) +# Set your editor (antigravity, cursor, vscode, zed) git gtr config set gtr.editor.default cursor # Set your AI tool (aider, auggie, claude, codex, continue, copilot, cursor, gemini, opencode) diff --git a/completions/_git-gtr b/completions/_git-gtr index f0eda69..1e165f4 100644 --- a/completions/_git-gtr +++ b/completions/_git-gtr @@ -121,7 +121,7 @@ _git-gtr() { elif (( CURRENT >= 5 )); then case "$words[3]" in editor) - _arguments '--editor[Editor to use]:editor:(atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed)' + _arguments '--editor[Editor to use]:editor:(antigravity atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed)' ;; ai) _arguments '--ai[AI tool to use]:tool:(aider auggie claude codex continue copilot cursor gemini none opencode)' diff --git a/completions/git-gtr.fish b/completions/git-gtr.fish index 1654a31..b451fb8 100644 --- a/completions/git-gtr.fish +++ b/completions/git-gtr.fish @@ -91,7 +91,7 @@ complete -c git -n '__fish_git_gtr_using_command list' -l porcelain -d 'Machine- complete -c git -n '__fish_git_gtr_using_command ls' -l porcelain -d 'Machine-readable output' # Editor command options -complete -c git -n '__fish_git_gtr_using_command editor' -l editor -d 'Editor to use' -r -a 'atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed' +complete -c git -n '__fish_git_gtr_using_command editor' -l editor -d 'Editor to use' -r -a 'antigravity atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed' # AI command options complete -c git -n '__fish_git_gtr_using_command ai' -l ai -d 'AI tool to use' -r -a 'aider auggie claude codex continue copilot cursor gemini none opencode' @@ -139,7 +139,7 @@ complete -f -c git -n '__fish_git_gtr_using_command config' -a " gtr.worktrees.prefix 'Worktree folder prefix' gtr.defaultBranch 'Default branch' gtr.provider 'Hosting provider (github, gitlab)' - gtr.ui.color 'Color output mode (auto, always, never)' + gtr.ui.color 'gtr.ui.color' " # Helper function to get branch names and special '1' for main repo diff --git a/completions/gtr.bash b/completions/gtr.bash index d2b715c..bed4eec 100644 --- a/completions/gtr.bash +++ b/completions/gtr.bash @@ -55,7 +55,7 @@ _git_gtr() { if [[ "$cur" == -* ]]; then COMPREPLY=($(compgen -W "--editor" -- "$cur")) elif [ "$prev" = "--editor" ]; then - COMPREPLY=($(compgen -W "atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed" -- "$cur")) + COMPREPLY=($(compgen -W "antigravity atom cursor emacs idea nano none nvim pycharm sublime vim vscode webstorm zed" -- "$cur")) else local branches all_options branches=$(git branch --format='%(refname:short)' 2>/dev/null || true) diff --git a/docs/configuration.md b/docs/configuration.md index 91abc11..dfa892c 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -134,10 +134,10 @@ git gtr config set gtr.provider github ## Editor Settings ```bash -# Default editor: cursor, vscode, zed, or none +# Default editor: antigravity, cursor, vscode, zed, or none gtr.editor.default = cursor -# Workspace file for VS Code/Cursor (relative path from worktree root) +# Workspace file for Antigravity/VS Code/Cursor (relative path from worktree root) # If set, opens the workspace file instead of the folder # If not set, auto-detects *.code-workspace files in worktree root # Set to "none" to disable workspace lookup entirely @@ -146,13 +146,14 @@ gtr.editor.workspace = project.code-workspace **Setup editors:** +- **Antigravity**: Install from [antigravity.google](https://antigravity.google), `agy` command available after installation - **Cursor**: Install from [cursor.com](https://cursor.com), enable shell command - **VS Code**: Install from [code.visualstudio.com](https://code.visualstudio.com), enable `code` command - **Zed**: Install from [zed.dev](https://zed.dev), `zed` command available automatically **Workspace files:** -VS Code and Cursor support `.code-workspace` files for multi-root workspaces, custom settings, and recommended extensions. When opening a worktree: +Antigravity, VS Code, and Cursor support `.code-workspace` files for multi-root workspaces, custom settings, and recommended extensions. When opening a worktree: 1. If `gtr.editor.workspace` is set to a path, opens that file (relative to worktree root) 2. If set to `none`, disables workspace lookup (always opens folder) diff --git a/lib/adapters.sh b/lib/adapters.sh index d40ca36..08f08bc 100644 --- a/lib/adapters.sh +++ b/lib/adapters.sh @@ -17,6 +17,7 @@ # # Loading: file override (adapters/editor/.sh) → registry → generic PATH fallback _EDITOR_REGISTRY=" +antigravity|agy|standard|Antigravity 'agy' command not found. Install from https://antigravity.google|workspace atom|atom|standard|Atom not found. Install from https://atom.io| cursor|cursor|standard|Cursor not found. Install from https://cursor.com or enable the shell command.|workspace emacs|emacs|terminal|Emacs not found. Install from https://www.gnu.org/software/emacs/|background @@ -252,7 +253,7 @@ _editor_define_terminal() { } } -# Resolve workspace file for VS Code/Cursor editors +# Resolve workspace file for Antigravity/VS Code/Cursor editors # Returns the workspace file path if found, empty otherwise resolve_workspace_file() { local worktree_path="$1" diff --git a/lib/commands/help.sh b/lib/commands/help.sh index 7e9c3d1..3b53022 100644 --- a/lib/commands/help.sh +++ b/lib/commands/help.sh @@ -56,8 +56,8 @@ Special: Use '1' to open the main repo root: git gtr editor 1 Available editors: - atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, vim, vscode, - webstorm, zed, none (or any command in your PATH) + antigravity, atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, + vim, vscode, webstorm, zed, none (or any command in your PATH) Examples: git gtr editor my-feature # Uses default editor @@ -593,10 +593,10 @@ CONFIGURATION OPTIONS: gtr.worktrees.prefix Worktree folder prefix (default: "") gtr.defaultBranch Default branch (default: auto) gtr.editor.default Default editor - Options: cursor, vscode, zed, idea, pycharm, - webstorm, vim, nvim, emacs, sublime, nano, - atom, none - gtr.editor.workspace Workspace file for VS Code/Cursor + Options: antigravity, cursor, vscode, zed, idea, + pycharm, webstorm, vim, nvim, emacs, sublime, + nano, atom, none + gtr.editor.workspace Workspace file for Antigravity/VS Code/Cursor (relative path, auto-detects, or "none") gtr.ai.default Default AI tool Options: aider, auggie, claude, codex, continue, From e1efa15267733855afa547fea4e4d100799fc049 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 14:14:29 +0000 Subject: [PATCH 3/6] Fix fish completion description for gtr.ui.color in generation script Co-authored-by: ivanviragine <9950727+ivanviragine@users.noreply.github.com> --- completions/git-gtr.fish | 2 +- scripts/generate-completions.sh | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/completions/git-gtr.fish b/completions/git-gtr.fish index b451fb8..18f7509 100644 --- a/completions/git-gtr.fish +++ b/completions/git-gtr.fish @@ -139,7 +139,7 @@ complete -f -c git -n '__fish_git_gtr_using_command config' -a " gtr.worktrees.prefix 'Worktree folder prefix' gtr.defaultBranch 'Default branch' gtr.provider 'Hosting provider (github, gitlab)' - gtr.ui.color 'gtr.ui.color' + gtr.ui.color 'Color output mode (auto, always, never)' " # Helper function to get branch names and special '1' for main repo diff --git a/scripts/generate-completions.sh b/scripts/generate-completions.sh index 4701112..24ce0be 100755 --- a/scripts/generate-completions.sh +++ b/scripts/generate-completions.sh @@ -609,6 +609,7 @@ MIDDLE2 gtr.hook.preRemove) desc="Pre-remove hook (abort on failure)" ;; gtr.hook.postRemove) desc="Post-remove hook" ;; gtr.hook.postCd) desc="Post-cd hook (shell integration only)" ;; + gtr.ui.color) desc="Color output mode (auto, always, never)" ;; *) desc="$key" ;; esac printf " %s\t'%s'\n" "$key" "$desc" From c937e10eb22b8b03b3fca9b740243bc66826af18 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 14:34:30 +0000 Subject: [PATCH 4/6] Move Antigravity to last in doc listings alongside other tools Co-authored-by: ivanviragine <9950727+ivanviragine@users.noreply.github.com> --- README.md | 4 ++-- docs/configuration.md | 8 ++++---- lib/adapters.sh | 2 +- lib/commands/help.sh | 12 ++++++------ 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index e207ac8..c753aff 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ While `git worktree` is powerful, it's verbose and manual. `git gtr` adds qualit - **Simple commands** - Create and manage worktrees with intuitive CLI - **Repository-scoped** - Each repo has independent worktrees - **Configuration over flags** - Set defaults once, use simple commands -- **Editor integration** - Open worktrees in Cursor, VS Code, Antigravity, Zed, and more +- **Editor integration** - Open worktrees in Cursor, VS Code, Zed, Antigravity, and more - **AI tool support** - Launch Aider, Claude Code, or other AI coding tools - **Smart file copying** - Selectively copy configs/env files to new worktrees - **Hooks system** - Run custom commands after create/remove @@ -323,7 +323,7 @@ All configuration is stored via `git config`. For team settings, create a `.gtrc ### Quick Setup ```bash -# Set your editor (antigravity, cursor, vscode, zed) +# Set your editor (cursor, vscode, zed, antigravity) git gtr config set gtr.editor.default cursor # Set your AI tool (aider, auggie, claude, codex, continue, copilot, cursor, gemini, opencode) diff --git a/docs/configuration.md b/docs/configuration.md index dfa892c..19a6c3b 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -134,10 +134,10 @@ git gtr config set gtr.provider github ## Editor Settings ```bash -# Default editor: antigravity, cursor, vscode, zed, or none +# Default editor: cursor, vscode, zed, antigravity, or none gtr.editor.default = cursor -# Workspace file for Antigravity/VS Code/Cursor (relative path from worktree root) +# Workspace file for VS Code/Cursor/Antigravity (relative path from worktree root) # If set, opens the workspace file instead of the folder # If not set, auto-detects *.code-workspace files in worktree root # Set to "none" to disable workspace lookup entirely @@ -146,14 +146,14 @@ gtr.editor.workspace = project.code-workspace **Setup editors:** -- **Antigravity**: Install from [antigravity.google](https://antigravity.google), `agy` command available after installation - **Cursor**: Install from [cursor.com](https://cursor.com), enable shell command - **VS Code**: Install from [code.visualstudio.com](https://code.visualstudio.com), enable `code` command +- **Antigravity**: Install from [antigravity.google](https://antigravity.google), `agy` command available after installation - **Zed**: Install from [zed.dev](https://zed.dev), `zed` command available automatically **Workspace files:** -Antigravity, VS Code, and Cursor support `.code-workspace` files for multi-root workspaces, custom settings, and recommended extensions. When opening a worktree: +VS Code, Cursor, and Antigravity support `.code-workspace` files for multi-root workspaces, custom settings, and recommended extensions. When opening a worktree: 1. If `gtr.editor.workspace` is set to a path, opens that file (relative to worktree root) 2. If set to `none`, disables workspace lookup (always opens folder) diff --git a/lib/adapters.sh b/lib/adapters.sh index 08f08bc..7a1dcc6 100644 --- a/lib/adapters.sh +++ b/lib/adapters.sh @@ -253,7 +253,7 @@ _editor_define_terminal() { } } -# Resolve workspace file for Antigravity/VS Code/Cursor editors +# Resolve workspace file for VS Code/Cursor/Antigravity editors # Returns the workspace file path if found, empty otherwise resolve_workspace_file() { local worktree_path="$1" diff --git a/lib/commands/help.sh b/lib/commands/help.sh index 3b53022..425a37b 100644 --- a/lib/commands/help.sh +++ b/lib/commands/help.sh @@ -56,8 +56,8 @@ Special: Use '1' to open the main repo root: git gtr editor 1 Available editors: - antigravity, atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, - vim, vscode, webstorm, zed, none (or any command in your PATH) + atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, vim, vscode, + webstorm, zed, antigravity, none (or any command in your PATH) Examples: git gtr editor my-feature # Uses default editor @@ -593,10 +593,10 @@ CONFIGURATION OPTIONS: gtr.worktrees.prefix Worktree folder prefix (default: "") gtr.defaultBranch Default branch (default: auto) gtr.editor.default Default editor - Options: antigravity, cursor, vscode, zed, idea, - pycharm, webstorm, vim, nvim, emacs, sublime, - nano, atom, none - gtr.editor.workspace Workspace file for Antigravity/VS Code/Cursor + Options: cursor, vscode, zed, idea, pycharm, + webstorm, vim, nvim, emacs, sublime, nano, + atom, antigravity, none + gtr.editor.workspace Workspace file for VS Code/Cursor/Antigravity (relative path, auto-detects, or "none") gtr.ai.default Default AI tool Options: aider, auggie, claude, codex, continue, From e0d11a1276584ef5d29e3783bed31f6161a06e58 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 15:32:06 +0000 Subject: [PATCH 5/6] Initial plan From 8c3fe04feee0560d4cd07d2d7bd4a861e57c52d2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 15:36:10 +0000 Subject: [PATCH 6/6] Fix alphabetical ordering of antigravity editor in help, docs, and CLAUDE.md Co-authored-by: ivanviragine <9950727+ivanviragine@users.noreply.github.com> --- CLAUDE.md | 2 +- README.md | 4 ++-- docs/configuration.md | 4 ++-- lib/commands/help.sh | 10 +++++----- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 1604f17..f42c42c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -70,7 +70,7 @@ Libraries are sourced in the order listed above (ui → args → config → ... Most adapters are defined declaratively in the **adapter registry** (`lib/adapters.sh`) using pipe-delimited entries. Custom adapters that need special logic remain as override files in `adapters/editor/` and `adapters/ai/`. -**Registry-defined adapters**: atom, cursor, emacs, idea, nvim, pycharm, sublime, vim, vscode, webstorm, zed (editors) and aider, auggie, codex, continue, copilot, gemini, opencode (AI). +**Registry-defined adapters**: antigravity, atom, cursor, emacs, idea, nvim, pycharm, sublime, vim, vscode, webstorm, zed (editors) and aider, auggie, codex, continue, copilot, gemini, opencode (AI). **Custom adapter files**: `adapters/editor/nano.sh`, `adapters/ai/claude.sh`, `adapters/ai/cursor.sh` — these implement `editor_can_open()`/`editor_open()` or `ai_can_start()`/`ai_start()` directly. diff --git a/README.md b/README.md index c753aff..b10aa0e 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ While `git worktree` is powerful, it's verbose and manual. `git gtr` adds qualit - **Simple commands** - Create and manage worktrees with intuitive CLI - **Repository-scoped** - Each repo has independent worktrees - **Configuration over flags** - Set defaults once, use simple commands -- **Editor integration** - Open worktrees in Cursor, VS Code, Zed, Antigravity, and more +- **Editor integration** - Open worktrees in Antigravity, Cursor, VS Code, Zed, and more - **AI tool support** - Launch Aider, Claude Code, or other AI coding tools - **Smart file copying** - Selectively copy configs/env files to new worktrees - **Hooks system** - Run custom commands after create/remove @@ -323,7 +323,7 @@ All configuration is stored via `git config`. For team settings, create a `.gtrc ### Quick Setup ```bash -# Set your editor (cursor, vscode, zed, antigravity) +# Set your editor (antigravity, cursor, vscode, zed) git gtr config set gtr.editor.default cursor # Set your AI tool (aider, auggie, claude, codex, continue, copilot, cursor, gemini, opencode) diff --git a/docs/configuration.md b/docs/configuration.md index 19a6c3b..69aba6c 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -134,7 +134,7 @@ git gtr config set gtr.provider github ## Editor Settings ```bash -# Default editor: cursor, vscode, zed, antigravity, or none +# Default editor: antigravity, cursor, vscode, zed, or none gtr.editor.default = cursor # Workspace file for VS Code/Cursor/Antigravity (relative path from worktree root) @@ -146,9 +146,9 @@ gtr.editor.workspace = project.code-workspace **Setup editors:** +- **Antigravity**: Install from [antigravity.google](https://antigravity.google), `agy` command available after installation - **Cursor**: Install from [cursor.com](https://cursor.com), enable shell command - **VS Code**: Install from [code.visualstudio.com](https://code.visualstudio.com), enable `code` command -- **Antigravity**: Install from [antigravity.google](https://antigravity.google), `agy` command available after installation - **Zed**: Install from [zed.dev](https://zed.dev), `zed` command available automatically **Workspace files:** diff --git a/lib/commands/help.sh b/lib/commands/help.sh index 425a37b..54c1090 100644 --- a/lib/commands/help.sh +++ b/lib/commands/help.sh @@ -56,8 +56,8 @@ Special: Use '1' to open the main repo root: git gtr editor 1 Available editors: - atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, vim, vscode, - webstorm, zed, antigravity, none (or any command in your PATH) + antigravity, atom, cursor, emacs, idea, nano, nvim, pycharm, sublime, vim, + vscode, webstorm, zed, none (or any command in your PATH) Examples: git gtr editor my-feature # Uses default editor @@ -593,9 +593,9 @@ CONFIGURATION OPTIONS: gtr.worktrees.prefix Worktree folder prefix (default: "") gtr.defaultBranch Default branch (default: auto) gtr.editor.default Default editor - Options: cursor, vscode, zed, idea, pycharm, - webstorm, vim, nvim, emacs, sublime, nano, - atom, antigravity, none + Options: antigravity, atom, cursor, emacs, + idea, nano, nvim, pycharm, sublime, vim, + vscode, webstorm, zed, none gtr.editor.workspace Workspace file for VS Code/Cursor/Antigravity (relative path, auto-detects, or "none") gtr.ai.default Default AI tool