dsh-tool-antigravity
v0.4.1
Published
High-performance, streamlined Antigravity OAuth LLM routing and Nano Banana 2 image generation capability bundle for DeepSeek Harness
Readme
dsh-tool-antigravity
English | 中文
High-performance, streamlined Antigravity capability bundle plugin for DeepSeek Harness (DSH).
Provides private Google OAuth 2.0 PKCE authentication, multi-model LLM routing (google-antigravity), session-persistent Nano Banana 2 image generation and editing (generate_image, list_images), and an interactive Web settings panel with live quota visualization.
Highlights in v0.4.1 (Tool-Call ID Recovery, Network Resiliency & Thought Signature Hardening)
- Provider Tool-Call ID Reuse Recovery: Eliminates fatal
INVALID_ARGSsession lockouts in long turns by tracking provider tool-call states, deterministically suffixing conflicting IDs (${id}#${name}), FIFO result pairing, and assistant-turn unfulfilled call expiry. - Resilient Network Retry & Contract Alignment: Retries transient network interruptions and 502/503/504 status codes up to 3 times with exponential backoff (1s / 2s / 4s) before byte emission, mapping transport errors to the standard
TRANSPORTcode adhering to DSH Host retry contract. - Universal Thought Signature Enforcement: Resolves private endpoint 400
INVALID_ARGUMENTrejections by ensuring all Gemini/non-Claude and initial ClaudefunctionCallparts carry valid thought signatures or theSKIP_THOUGHT_SIGNATUREsentinel. - Retains v0.4.0 capabilities: Core tools prioritization (up to 384 tools), schema enum sanitization,
response.errorerror semantics, and multi-agent image offloading.
Features
1. High-Performance Core Architecture
- TLS Connection Pooling & Session Resumption: Built-in HTTP/1.1 Keep-Alive socket pool and TLS session resumption against Google endpoints, eliminating repeated TLS handshake roundtrips and significantly reducing Time-To-First-Token (TTFT).
- Sliding-Window Buffer SSE Parser: High-throughput binary chunking directly locates newline separators on raw Buffers, bypassing heavy string concatenations and drastically reducing V8 heap allocations and GC spikes during long reasoning chains.
- Granular Thinking Budgets: Fine-grained reasoning effort configuration (
low,medium,high) across Gemini and Claude models with graceful fallbacks. - Pre-flight Idempotent Retry: Automatically retries transient network interruptions (e.g. TLS RST / 502 / 503 / 504) up to 3 times with exponential backoff prior to first byte emission.
- Windows File Lock Recovery: Active PID probing (
process.kill(pid, 0)) detects stale locks from crashed processes and immediately frees them, preventing 30-second hang timeouts. - Stale-While-Revalidate (SWR) Quota Resilience: Robust quota normalization supporting 5h and weekly windows; retains and displays last-known valid quota with smooth shimmer animations during transient network disruptions.
2. Supported Models (google-antigravity)
| Model Identifier | Display Name | Capabilities | Thinking Budget |
| :--- | :--- | :--- | :--- |
| antigravity-gemini-3.8-flash | Gemini 3.8 Flash | Text, Vision, Tools | Low / Medium / High |
| antigravity-gemini-3.7-flash | Gemini 3.7 Flash | Text, Vision, Tools | Low / Medium / High |
| antigravity-gemini-3.6-flash | Gemini 3.6 Flash | Text, Vision, Tools | Default |
| antigravity-gemini-3.1-pro | Gemini 3.1 Pro | Text, Vision, Tools | Low / High |
| claude-sonnet-4-6-thinking | Claude Sonnet 4.6 | Text, Vision, Tools | Dynamic Reasoning |
| claude-opus-4-6-thinking | Claude Opus 4.6 | Text, Vision, Tools | Dynamic Reasoning |
| gpt-oss-120b-medium | GPT-OSS 120B | Text, Tools | Fixed Effort |
3. Nano Banana 2 Image Generation & Multi-Turn Editing
generate_image: Prompt-based image creation and iterative image-to-image editing powered by Nano Banana 2 (gemini-3.1-flash-image) using session references.list_images: Inspect and retrieve generated image attachments within the current session.- Fully integrated with DSH
AttachmentStoreandFileSystemwith TOCTOU path escape protection without polluting chat context with raw base64 payloads.
Installation
Via DSH Plugin CLI (Recommended)
# Add directly to your active DSH web profile
dsh plugin --profile web add dsh-tool-antigravityVia npm / pnpm
# Using npm
npm install dsh-tool-antigravity
# Using pnpm
pnpm add dsh-tool-antigravityCordis Plugin Configuration
Add the plugin entries to your cordis.patch.yml or DSH config file:
- id: antigravity-auth
name: 'dsh-tool-antigravity'
- id: antigravity-image
name: 'dsh-tool-antigravity/image'Usage & Commands
Slash Commands
Manage authentication directly from the DSH terminal / chat prompt:
/antigravity-auth login: Initiates Google OAuth 2.0 PKCE login and launches your default browser./antigravity-auth status: Check current authentication state, masked email, and project id./antigravity-auth logout: Discard credentials and revoke tokens./antigravity-auth cancel: Abort an ongoing login attempt.
UI Settings & Dashboard
Once loaded in the DSH Web client:
- Antigravity Auth Settings Card: View live login status, account identifier, and toggle capabilities.
- Quota Visualizer: Real-time remaining quota percentages and countdowns for 5-hour and weekly reset windows.
- Image Generation Card: Configure default image models and batch size.
Security & Invariants
- Credential Isolation: Access and refresh tokens are strictly held in host-side secure stores and are never forwarded to the frontend UI, logs, or command done events.
- Strict Loopback Guard: Account RPC endpoints fail-closed (
loopback-required) unless the web service is explicitly bound to127.0.0.1. - Immutable Wire Identity: Emits verified AGY CLI headers (
antigravity/cli/1.1.24) and attribution metadata. - Media Path Containment: All file references are verified against directory traversal and symlink escapes.
Disclaimer
This project is an unofficial, community-driven capability bundle intended strictly for personal research, educational purposes, and independent development. Please adhere to relevant platform Terms of Service.
