Unique slug that isolates this extension's files.
Derived automatically from context.extension.id when using AntigravitySDK.
Multiple SDK-based extensions can coexist without conflicts.
Whether auto-repair is active.
Access the title manager for programmatic title control.
Requires enableTitleProxy() to be called first.
Add an action button next to Good/Bad feedback.
Optionaltoast: IToastConfigAdd an icon to the bottom icon row (file, terminal, etc.).
Optionaltooltip: stringOptionaltoast: IToastConfigAdd item(s) to the 3-dot dropdown menu.
Optionalicon: stringOptionaltoast: IToastConfigAdd a button next to the send/voice buttons.
Optionaltooltip: stringOptionaltoast: IToastConfigEnable chat title interaction.
Optionalhint: stringOptionaltoast: IToastConfigAdd a button to the top bar (near +, refresh icons).
Optionaltooltip: stringOptionaltoast: IToastConfigAdd a button to the top-right corner (before X).
Optionaltooltip: stringOptionaltoast: IToastConfigEnable per-turn metadata display.
Add character count badges to user messages.
Generate the integration script from all registered configs.
If title proxy is enabled, appends the title proxy renderer code.
Complete JavaScript code as a string
Disable auto-repair watcher.
Enable auto-repair: watches workbench.html for changes and automatically re-applies the integration patch.
This handles Antigravity updates that overwrite workbench.html. The watcher detects when the file changes and re-patches it if the integration marker is missing.
Enable the title proxy feature.
Adds renderer-side code that intercepts the summaries provider and injects custom chat titles. Uses structural matching to find the provider (obfuscation-safe).
After enabling, call install() or updateScript() to apply.
Get all registered integrations.
Install this extension's script into the shared SDK framework.
For seamless hot-reload behavior, use installSeamless() instead.
The first extension to call install() patches workbench.html with the shared loader. Subsequent extensions just register in the manifest.
true if the script content actually changed on disk
Seamless install — handles everything automatically.
This is the recommended install method for extension developers. It handles the entire lifecycle:
The developer never needs to think about reload.
Function to execute VS Code commands
(pass vscode.commands.executeCommand or equivalent)
OptionalshowMessage: (message: string, ...items: string[]) => Thenable<undefined | string>const sdk = new AntigravitySDK(context);
await sdk.initialize();
sdk.integration.enableTitleProxy();
// That's it. SDK handles install, reload, everything.
await sdk.integration.installSeamless(
(cmd) => vscode.commands.executeCommand(cmd),
(msg, ...items) => vscode.window.showInformationMessage(msg, ...items),
);
Check if this extension is registered in the SDK framework.
Check if the shared SDK loader is installed in workbench.html.
Signal that the extension is active.
Call this in your extension's activate() function.
The integration script checks for this heartbeat;
if it's missing or stale (>48h), the script won't start.
This prevents orphaned integrations from running after an extension is disabled or uninstalled.
Remove this extension from the SDK framework.
If this is the last extension, the loader is removed from workbench.html and all original checksums are restored.
⚠️ Requires Antigravity restart to take effect.
Remove a registered integration by ID.
Re-generate and overwrite the integration script without re-patching workbench.html.
Use this after registering/unregistering integration points at runtime. The script file is updated in-place; the next Antigravity restart will pick up the changes. workbench.html
Manages UI integrations into the Antigravity Agent View.
Provides a declarative API to register integration points, generates a self-contained JavaScript file, and installs it into Antigravity's workbench.
Features: