Commit Graph

9 Commits

  • feat(auth): add Antigravity onboarding with tier selection
    - Updated `ideType` to `ANTIGRAVITY` in request payload.
    - Introduced tier-selection logic to determine default tier for onboarding.
    - Added `antigravityOnboardUser` function for project ID retrieval via polling.
    - Enhanced error handling and response decoding for onboarding flow.
  • Fixed: #499 #985
    feat(oauth): add support for customizable OAuth callback ports
    
    - Introduced `oauth-callback-port` flag to override default callback ports.
    - Updated SDK and login flows for `iflow`, `gemini`, `antigravity`, `codex`, `claude`, and `openai` to respect configurable callback ports.
    - Refactored internal OAuth servers to dynamically assign ports based on the provided options.
    - Revised tests and documentation to reflect the new flag and behavior.
  • feat (auth): CLI OAuth supports pasting callback URLs to complete login
    - Added callback URL resolution and terminal prompt logic
      - Codex/Claude/iFlow/Antigravity/Gemini login supports callback URL or local callback completion
      - Update Gemini login option signature and manager call
      - CLI default prompt function is compatible with null input to continue waiting
  • Fixed: #421
    feat(antigravity): implement project ID retrieval and integration in payload processing
  • **refactor(auth): use customizable HTTP client for Antigravity requests**
    - Replaced `http.DefaultClient` with a configurable `http.Client` instance for Antigravity OAuth flow methods.
    - Updated `exchangeAntigravityCode` and `fetchAntigravityUserInfo` to accept `httpClient` as a parameter.
    - Added `util.SetProxy` usage to initialize the `httpClient` with proxy support.
  • **feat(auth, executor, cmd): add Antigravity provider integration**
    - Implemented OAuth login flow for the Antigravity provider in `auth/antigravity.go`.
    - Added `AntigravityExecutor` for handling requests and streaming via Antigravity APIs.
    - Created `antigravity_login.go` command for triggering Antigravity authentication.
    - Introduced OpenAI-to-Antigravity translation logic in `translator/antigravity/openai/chat-completions`.
    
    **refactor(translator, executor): update Gemini CLI response translation and add Antigravity payload customization**
    
    - Renamed Gemini CLI translation methods to align with response handling (`ConvertGeminiCliResponseToGemini` and `ConvertGeminiCliResponseToGeminiNonStream`).
    - Updated `init.go` to reflect these method changes.
    - Introduced `geminiToAntigravity` function to embed metadata (`model`, `userAgent`, `project`, etc.) into Antigravity payloads.
    - Added random project, request, and session ID generators for enhanced tracking.
    - Streamlined `buildRequest` to use `geminiToAntigravity` transformation before request execution.