antigravity-manager

Antigravity Manager Developer Guide

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "antigravity-manager" with this command: npx skills add draculabo/antigravitymanager/draculabo-antigravitymanager-antigravity-manager

Antigravity Manager Developer Guide

🏗️ Architecture Overview

Antigravity Manager is a hybrid Desktop Application built with Electron, React, and NestJS. It follows a modular architecture where the frontend (Renderer) communicates with the backend (Main) via type-safe IPC (ORPC).

graph TD User[User Interface] -->|React/Vite| Renderer[Renderer Process] Renderer -->|ORPC Client| IPC[IPC Layer] IPC -->|ORPC Router| Main[Main Process] Main -->|Bootstraps| Server[NestJS Server] Main -->|Calls| Services[Service Layer] Services -->|Read/Write| DB[(SQLite Database)] Services -->|HTTP| Cloud[Cloud APIs (Google/Anthropic)]

Key Technologies

  • Frontend: React 19, TailwindCSS v4, TanStack Router, TanStack Query.

  • Backend: Electron (Main), NestJS (Core Logic), Better-SQLite3 (Data).

  • Communication: ORPC (Type-safe IPC wrapper around Electron IPC).

  • Build: Electron Forge + Vite.

📂 Directory Structure

  • src/main.ts : Electron Main Process entry point.

  • src/preload.ts : Bridge between Main and Renderer.

  • src/renderer.tsx : React App entry point.

  • src/components/ : Reusable React UI components (Radix UI based).

  • src/ipc/ : IPC Routers and Handlers (Domain logic).

  • router.ts : Main ORPC router definition.

  • account/ , cloud/ , database/ : Domain-specific handlers.

  • src/server/ : NestJS application modules (proxies/gateways).

  • src/services/ : Core business logic (framework agnostic).

  • GoogleAPIService.ts : Gemini/Cloud interactions.

  • AutoSwitchService.ts : Account rotation logic.

  • src/routes/ : Frontend routing definitions (File-based).

🚀 Development Workflow

Prerequisites

  • Node.js 18+

  • npm (Project uses package-lock.json )

Common Commands

  • Start Dev Server: npm start

  • Lint Code: npm run lint

  • Unit Test: npm run test:unit

  • E2E Test: npm run test:e2e

  • Build Production: npm run make

🧠 Core Concepts

IPC Communication (ORPC)

The project uses orpc for type-safe communication.

  • Define: Create a router in src/ipc/router.ts with Zod schemas.

  • Implement: Add logic in handlers (e.g., src/ipc/account/handler.ts ).

  • Call: Use the generated client in React components.

Database Access

Data is stored in a local SQLite file (test.db in dev, user data in prod).

  • Use Better-SQLite3 for direct access.

  • Logic should be encapsulated in src/services or src/ipc .

Account Management

  • Accounts are added via OAuth (Google/Claude).

  • GoogleAPIService handles token exchange and refreshing.

  • AutoSwitchService monitors usage and switches active accounts automatically.

⚠️ Critical Rules

  • Type Safety: strict TypeScript usage; Zod for runtime validation.

  • Components: Use src/components/ui (Radix primitives) for consistency.

  • Async: Handle all IPC/DB calls asynchronously with try/catch.

  • Security: Never commit secrets. API keys are user-provided or encrypted locally.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

obsidian-notes

Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.

Archived SourceRecently Updated
Coding

mcporter-cli

Use the mcporter CLI to list, configure, auth, and call MCP servers/tools directly (HTTP or stdio), including ad-hoc servers, config edits, and CLI/type generation.

Archived SourceRecently Updated
Coding

github-tools

Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.

Archived SourceRecently Updated
Coding

bili-rs

Development skill for bili-rs, a Rust CLI tool for Bilibili (B站). Use when implementing features, fixing bugs, or extending the bilibili-cli-rust codebase. Provides architecture conventions, API endpoints, coding patterns, and project-specific constraints. Triggers on tasks involving adding CLI commands, calling Bilibili APIs, handling authentication, implementing output formatting, or working with the layered cli/commands/client/payloads architecture.

Archived SourceRecently Updated