Skip to content

Commit f81aa75

Browse files
Merge pull request #354 from databricks-solutions/feature/antigravity-installer-integration
feat: add Google Antigravity as supported tool in installer
2 parents 17aa160 + 3dbe567 commit f81aa75

File tree

3 files changed

+75
-27
lines changed

3 files changed

+75
-27
lines changed

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
## Overview
1010

11-
AI-Driven Development (vibe coding) on Databricks just got a whole lot better. The **AI Dev Kit** gives your AI coding assistant (Claude Code, Cursor, Windsurf, etc.) the trusted sources it needs to build faster and smarter on Databricks.
11+
AI-Driven Development (vibe coding) on Databricks just got a whole lot better. The **AI Dev Kit** gives your AI coding assistant (Claude Code, Cursor, Antigravity, Windsurf, etc.) the trusted sources it needs to build faster and smarter on Databricks.
1212

1313
<p align="center">
1414
<img src="databricks-tools-core/docs/architecture.svg" alt="Architecture" width="700">
@@ -53,11 +53,12 @@ AI-Driven Development (vibe coding) on Databricks just got a whole lot better. T
5353
- [Claude Code](https://claude.ai/code)
5454
- [Cursor](https://cursor.com)
5555
- [Gemini CLI](https://github.com/google-gemini/gemini-cli)
56+
- [Antigravity](https://antigravity.google)
5657

5758

5859
### Install in existing project
5960
By default this will install at a project level rather than a user level. This is often a good fit, but requires you to run your client from the exact directory that was used for the install.
60-
_Note: Project configuration files can be re-used in other projects. You find these configs under .claude, .cursor, or .gemini_
61+
_Note: Project configuration files can be re-used in other projects. You find these configs under .claude, .cursor, .gemini, or .agents_
6162

6263
#### Mac / Linux
6364

@@ -85,7 +86,7 @@ bash <(curl -sL https://raw.githubusercontent.com/databricks-solutions/ai-dev-ki
8586
**Install for specific tools only**
8687

8788
```bash
88-
bash <(curl -sL https://raw.githubusercontent.com/databricks-solutions/ai-dev-kit/main/install.sh) --tools cursor,gemini
89+
bash <(curl -sL https://raw.githubusercontent.com/databricks-solutions/ai-dev-kit/main/install.sh) --tools cursor,gemini,antigravity
8990
```
9091

9192
</details>
@@ -125,7 +126,7 @@ irm https://raw.githubusercontent.com/databricks-solutions/ai-dev-kit/main/insta
125126
**Install for specific tools only**
126127

127128
```powershell
128-
.\install.ps1 -Tools cursor,gemini
129+
.\install.ps1 -Tools cursor,gemini,antigravity
129130
```
130131

131132
</details>

install.ps1

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#
22
# Databricks AI Dev Kit - Unified Installer (Windows)
33
#
4-
# Installs skills, MCP server, and configuration for Claude Code, Cursor, OpenAI Codex, GitHub Copilot, and Gemini CLI.
4+
# Installs skills, MCP server, and configuration for Claude Code, Cursor, OpenAI Codex, GitHub Copilot, Gemini CLI, and Antigravity.
55
#
66
# Usage: irm https://raw.githubusercontent.com/databricks-solutions/ai-dev-kit/main/install.ps1 -OutFile install.ps1
77
# .\install.ps1 [OPTIONS]
@@ -233,7 +233,7 @@ while ($i -lt $args.Count) {
233233
Write-Host " --mcp-only Skip skills installation"
234234
Write-Host " --mcp-path PATH Path to MCP server installation"
235235
Write-Host " --silent Silent mode (no output except errors)"
236-
Write-Host " --tools LIST Comma-separated: claude,cursor,copilot,codex,gemini"
236+
Write-Host " --tools LIST Comma-separated: claude,cursor,copilot,codex,gemini,antigravity"
237237
Write-Host " --skills-profile LIST Comma-separated profiles: all,data-engineer,analyst,ai-ml-engineer,app-developer"
238238
Write-Host " --skills LIST Comma-separated skill names to install (overrides profile)"
239239
Write-Host " --list-skills List available skills and profiles, then exit"
@@ -567,15 +567,18 @@ function Invoke-DetectTools {
567567
$hasCopilot = ($null -ne (Get-Command code -ErrorAction SilentlyContinue)) -or
568568
(Test-Path "$env:LOCALAPPDATA\Programs\Microsoft VS Code\Code.exe")
569569
$hasGemini = $null -ne (Get-Command gemini -ErrorAction SilentlyContinue)
570+
$hasAntigravity = ($null -ne (Get-Command antigravity -ErrorAction SilentlyContinue)) -or
571+
(Test-Path "$env:LOCALAPPDATA\Programs\Antigravity\Antigravity.exe")
570572

571573
$claudeState = $hasClaude; $claudeHint = if ($hasClaude) { "detected" } else { "not found" }
572574
$cursorState = $hasCursor; $cursorHint = if ($hasCursor) { "detected" } else { "not found" }
573575
$codexState = $hasCodex; $codexHint = if ($hasCodex) { "detected" } else { "not found" }
574576
$copilotState = $hasCopilot; $copilotHint = if ($hasCopilot) { "detected" } else { "not found" }
575577
$geminiState = $hasGemini; $geminiHint = if ($hasGemini) { "detected" } else { "not found" }
578+
$antigravityState = $hasAntigravity; $antigravityHint = if ($hasAntigravity) { "detected" } else { "not found" }
576579

577580
# If nothing detected, default to claude
578-
if (-not $hasClaude -and -not $hasCursor -and -not $hasCodex -and -not $hasCopilot -and -not $hasGemini) {
581+
if (-not $hasClaude -and -not $hasCursor -and -not $hasCodex -and -not $hasCopilot -and -not $hasGemini -and -not $hasAntigravity) {
579582
$claudeState = $true
580583
$claudeHint = "default"
581584
}
@@ -586,11 +589,12 @@ function Invoke-DetectTools {
586589
}
587590

588591
$items = @(
589-
@{ Label = "Claude Code"; Value = "claude"; State = $claudeState; Hint = $claudeHint }
590-
@{ Label = "Cursor"; Value = "cursor"; State = $cursorState; Hint = $cursorHint }
591-
@{ Label = "GitHub Copilot"; Value = "copilot"; State = $copilotState; Hint = $copilotHint }
592-
@{ Label = "OpenAI Codex"; Value = "codex"; State = $codexState; Hint = $codexHint }
593-
@{ Label = "Gemini CLI"; Value = "gemini"; State = $geminiState; Hint = $geminiHint }
592+
@{ Label = "Claude Code"; Value = "claude"; State = $claudeState; Hint = $claudeHint }
593+
@{ Label = "Cursor"; Value = "cursor"; State = $cursorState; Hint = $cursorHint }
594+
@{ Label = "GitHub Copilot"; Value = "copilot"; State = $copilotState; Hint = $copilotHint }
595+
@{ Label = "OpenAI Codex"; Value = "codex"; State = $codexState; Hint = $codexHint }
596+
@{ Label = "Gemini CLI"; Value = "gemini"; State = $geminiState; Hint = $geminiHint }
597+
@{ Label = "Antigravity"; Value = "antigravity"; State = $antigravityState; Hint = $antigravityHint }
594598
)
595599

596600
$result = Select-Checkbox -Items $items
@@ -1153,6 +1157,13 @@ function Install-Skills {
11531157
"copilot" { $dirs += Join-Path $BaseDir ".github\skills" }
11541158
"codex" { $dirs += Join-Path $BaseDir ".agents\skills" }
11551159
"gemini" { $dirs += Join-Path $BaseDir ".gemini\skills" }
1160+
"antigravity" {
1161+
if ($script:Scope -eq "global") {
1162+
$dirs += Join-Path $env:USERPROFILE ".gemini\antigravity\skills"
1163+
} else {
1164+
$dirs += Join-Path $BaseDir ".agents\skills"
1165+
}
1166+
}
11561167
}
11571168
}
11581169
$dirs = $dirs | Select-Object -Unique
@@ -1559,6 +1570,14 @@ function Write-McpConfigs {
15591570
}
15601571
Write-Ok "Gemini CLI MCP config"
15611572
}
1573+
"antigravity" {
1574+
if ($script:Scope -eq "project") {
1575+
Write-Warn "Antigravity only supports global MCP configuration."
1576+
Write-Msg " Config written to ~/.gemini/antigravity/mcp_config.json"
1577+
}
1578+
Write-GeminiMcpJson (Join-Path $env:USERPROFILE ".gemini\antigravity\mcp_config.json")
1579+
Write-Ok "Antigravity MCP config"
1580+
}
15621581
}
15631582
}
15641583
}
@@ -1610,6 +1629,10 @@ function Show-Summary {
16101629
Write-Msg "$step. Launch Gemini CLI in your project: gemini"
16111630
$step++
16121631
}
1632+
if ($script:Tools -match 'antigravity') {
1633+
Write-Msg "$step. Open your project in Antigravity to use Databricks skills and MCP tools"
1634+
$step++
1635+
}
16131636
Write-Msg "$step. Open your project in your tool of choice"
16141637
$step++
16151638
Write-Msg "$step. Try: `"List my SQL warehouses`""

install.sh

Lines changed: 39 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#
33
# Databricks AI Dev Kit - Unified Installer
44
#
5-
# Installs skills, MCP server, and configuration for Claude Code, Cursor, OpenAI Codex, GitHub Copilot, and Gemini CLI.
5+
# Installs skills, MCP server, and configuration for Claude Code, Cursor, OpenAI Codex, GitHub Copilot, Gemini CLI, and Antigravity.
66
#
77
# Usage: bash <(curl -sL https://raw.githubusercontent.com/databricks-solutions/ai-dev-kit/main/install.sh) [OPTIONS]
88
#
@@ -149,7 +149,7 @@ while [ $# -gt 0 ]; do
149149
echo " --mcp-only Skip skills installation"
150150
echo " --mcp-path PATH Path to MCP server installation (default: ~/.ai-dev-kit)"
151151
echo " --silent Silent mode (no output except errors)"
152-
echo " --tools LIST Comma-separated: claude,cursor,copilot,codex,gemini"
152+
echo " --tools LIST Comma-separated: claude,cursor,copilot,codex,gemini,antigravity"
153153
echo " --skills-profile LIST Comma-separated profiles: all,data-engineer,analyst,ai-ml-engineer,app-developer"
154154
echo " --skills LIST Comma-separated skill names to install (overrides profile)"
155155
echo " --list-skills List available skills and profiles, then exit"
@@ -502,24 +502,27 @@ detect_tools() {
502502
local has_codex=false
503503
local has_copilot=false
504504
local has_gemini=false
505+
local has_antigravity=false
505506

506507
command -v claude >/dev/null 2>&1 && has_claude=true
507508
{ [ -d "/Applications/Cursor.app" ] || command -v cursor >/dev/null 2>&1; } && has_cursor=true
508509
command -v codex >/dev/null 2>&1 && has_codex=true
509510
{ [ -d "/Applications/Visual Studio Code.app" ] || command -v code >/dev/null 2>&1; } && has_copilot=true
510511
{ command -v gemini >/dev/null 2>&1 || [ -f "$HOME/.gemini/local/gemini" ]; } && has_gemini=true
512+
{ [ -d "/Applications/Antigravity.app" ] || command -v antigravity >/dev/null 2>&1; } && has_antigravity=true
511513

512514
# Build checkbox items: "Label|value|on_or_off|hint"
513-
local claude_state="off" cursor_state="off" codex_state="off" copilot_state="off" gemini_state="off"
514-
local claude_hint="not found" cursor_hint="not found" codex_hint="not found" copilot_hint="not found" gemini_hint="not found"
515-
[ "$has_claude" = true ] && claude_state="on" && claude_hint="detected"
516-
[ "$has_cursor" = true ] && cursor_state="on" && cursor_hint="detected"
517-
[ "$has_codex" = true ] && codex_state="on" && codex_hint="detected"
518-
[ "$has_copilot" = true ] && copilot_state="on" && copilot_hint="detected"
519-
[ "$has_gemini" = true ] && gemini_state="on" && gemini_hint="detected"
515+
local claude_state="off" cursor_state="off" codex_state="off" copilot_state="off" gemini_state="off" antigravity_state="off"
516+
local claude_hint="not found" cursor_hint="not found" codex_hint="not found" copilot_hint="not found" gemini_hint="not found" antigravity_hint="not found"
517+
[ "$has_claude" = true ] && claude_state="on" && claude_hint="detected"
518+
[ "$has_cursor" = true ] && cursor_state="on" && cursor_hint="detected"
519+
[ "$has_codex" = true ] && codex_state="on" && codex_hint="detected"
520+
[ "$has_copilot" = true ] && copilot_state="on" && copilot_hint="detected"
521+
[ "$has_gemini" = true ] && gemini_state="on" && gemini_hint="detected"
522+
[ "$has_antigravity" = true ] && antigravity_state="on" && antigravity_hint="detected"
520523

521524
# If nothing detected, pre-select claude as default
522-
if [ "$has_claude" = false ] && [ "$has_cursor" = false ] && [ "$has_codex" = false ] && [ "$has_copilot" = false ] && [ "$has_gemini" = false ]; then
525+
if [ "$has_claude" = false ] && [ "$has_cursor" = false ] && [ "$has_codex" = false ] && [ "$has_copilot" = false ] && [ "$has_gemini" = false ] && [ "$has_antigravity" = false ]; then
523526
claude_state="on"
524527
claude_hint="default"
525528
fi
@@ -535,15 +538,17 @@ detect_tools() {
535538
"GitHub Copilot|copilot|${copilot_state}|${copilot_hint}" \
536539
"OpenAI Codex|codex|${codex_state}|${codex_hint}" \
537540
"Gemini CLI|gemini|${gemini_state}|${gemini_hint}" \
541+
"Antigravity|antigravity|${antigravity_state}|${antigravity_hint}" \
538542
)
539543
else
540544
# Silent: use detected defaults
541545
local tools=""
542-
[ "$has_claude" = true ] && tools="claude"
543-
[ "$has_cursor" = true ] && tools="${tools:+$tools }cursor"
544-
[ "$has_copilot" = true ] && tools="${tools:+$tools }copilot"
545-
[ "$has_codex" = true ] && tools="${tools:+$tools }codex"
546-
[ "$has_gemini" = true ] && tools="${tools:+$tools }gemini"
546+
[ "$has_claude" = true ] && tools="claude"
547+
[ "$has_cursor" = true ] && tools="${tools:+$tools }cursor"
548+
[ "$has_copilot" = true ] && tools="${tools:+$tools }copilot"
549+
[ "$has_codex" = true ] && tools="${tools:+$tools }codex"
550+
[ "$has_gemini" = true ] && tools="${tools:+$tools }gemini"
551+
[ "$has_antigravity" = true ] && tools="${tools:+$tools }antigravity"
547552
[ -z "$tools" ] && tools="claude"
548553
TOOLS="$tools"
549554
fi
@@ -1091,6 +1096,13 @@ install_skills() {
10911096
copilot) dirs+=("$base_dir/.github/skills") ;;
10921097
codex) dirs+=("$base_dir/.agents/skills") ;;
10931098
gemini) dirs+=("$base_dir/.gemini/skills") ;;
1099+
antigravity)
1100+
if [ "$SCOPE" = "global" ]; then
1101+
dirs+=("$HOME/.gemini/antigravity/skills")
1102+
else
1103+
dirs+=("$base_dir/.agents/skills")
1104+
fi
1105+
;;
10941106
esac
10951107
done
10961108

@@ -1462,6 +1474,14 @@ write_mcp_configs() {
14621474
fi
14631475
ok "Gemini CLI MCP config"
14641476
;;
1477+
antigravity)
1478+
if [ "$SCOPE" = "project" ]; then
1479+
warn "Antigravity only supports global MCP configuration."
1480+
msg " Config written to ${B}~/.gemini/antigravity/mcp_config.json${N}"
1481+
fi
1482+
write_gemini_mcp_json "$HOME/.gemini/antigravity/mcp_config.json"
1483+
ok "Antigravity MCP config"
1484+
;;
14651485
esac
14661486
done
14671487
}
@@ -1505,6 +1525,10 @@ summary() {
15051525
msg "${step}. Launch Gemini CLI in your project: ${B}gemini${N}"
15061526
step=$((step + 1))
15071527
fi
1528+
if echo "$TOOLS" | grep -q antigravity; then
1529+
msg "${step}. Open your project in Antigravity to use Databricks skills and MCP tools"
1530+
step=$((step + 1))
1531+
fi
15081532
msg "${step}. Open your project in your tool of choice"
15091533
step=$((step + 1))
15101534
msg "${step}. Try: \"List my SQL warehouses\""

0 commit comments

Comments
 (0)