Class CascadeManager

Manages Cascade conversations.

Primary data source: antigravity.getDiagnosticsrecentTrajectories Fallback: antigravityUnifiedStateSync.trajectorySummaries protobuf parsing

const manager = new CascadeManager(commands, state);
await manager.initialize();

// List sessions (real titles from getDiagnostics)
const sessions = await manager.getSessions();
sessions.forEach(s => console.log(`${s.title} (step ${s.stepCount})`));

// Read preferences (all 16 sentinel values)
const prefs = await manager.getPreferences();

// Create & send
await manager.createSession({ task: 'Analyze coverage', background: true });

Implements

Constructors

Properties

onSessionsChanged: Event<ITrajectoryEntry[]> = ...

Fires when the session list changes

Methods

  • Accept a pending command (non-terminal, e.g. file edit confirmation).

    Uses antigravity.command.accept. This is DIFFERENT from terminalCommand.accept.

    Returns Promise<void>

  • Accept the current agent step (code edit, file write, etc.).

    Uses antigravity.agent.acceptAgentStep.

    Returns Promise<void>

  • Accept a pending terminal command.

    Uses antigravity.terminalCommand.accept.

    Returns Promise<void>

  • Create a background Cascade conversation via commands.

    ⚠️ FALLBACK — Uses quick-switch approach (UI flickers briefly). For true headless background sessions, use the SDK's LS bridge:

    // Using LSBridge:
    const cascadeId = await sdk.ls.createCascade({ text: 'task', modelId: 1018 });

    Parameters

    • task: string

      Initial task/prompt to send

    Returns Promise<string>

    Session ID or empty string

  • Create a new Cascade conversation via VS Code commands.

    ⚠️ FALLBACK APPROACH — causes UI flickering. For true headless creation, use sdk.ls.createCascade() from the SDK's LS bridge (see LSBridge module).

    VERIFIED 2026-02-28:

    • startNewConversation ✅ creates new chat (but switches UI)
    • prioritized.chat.openNewConversation ❌ does NOT create new
    • sendPromptToAgentPanel ✅ sends to currently visible chat (always opens panel)
    • sendTextToChat ❌ does not visibly work

    Parameters

    Returns Promise<string>

    Session ID (googleAgentId) or empty string if not detected

  • Execute a Cascade action.

    Uses antigravity.executeCascadeAction.

    Parameters

    • action: unknown

      Action data to execute

    Returns Promise<void>

  • Switch to a specific conversation.

    Parameters

    • sessionId: string

      Conversation UUID (googleAgentId)

    Returns Promise<void>

  • Get IDE diagnostics (176KB JSON with system info, logs, trajectories).

    Structure (verified):

    • isRemote, systemInfo (OS, user, email)
    • extensionLogs (Array[375])
    • rendererLogs, mainThreadLogs, agentWindowConsoleLogs
    • languageServerLogs
    • recentTrajectories (Array[10])

    Returns Promise<IDiagnosticsInfo>

    Parsed diagnostics information

  • Get the Chrome DevTools MCP URL.

    Verified: returns http://127.0.0.1:{port}/mcp

    Returns Promise<string>

    MCP URL string

  • Initialize the cascade manager. Loads the initial session list from getDiagnostics.

    Returns Promise<void>

  • Check if a file is gitignored.

    Parameters

    • filePath: string

      Relative or absolute file path

    Returns Promise<boolean>

    true if gitignored, false/null otherwise

  • Open a new conversation in the agent panel (prioritized command).

    Uses antigravity.prioritized.chat.openNewConversation which both opens the panel AND creates a fresh conversation.

    Returns Promise<void>

  • Send a chat action message (e.g., typing indicator, feedback).

    Uses antigravity.sendChatActionMessage.

    Parameters

    • action: string

    Returns Promise<void>

  • Send a message to the active Cascade conversation.

    Uses antigravity.sendTextToChat — the primary text sending command.

    Parameters

    • text: string

    Returns Promise<void>

  • Send a prompt directly to the agent panel.

    Uses antigravity.sendPromptToAgentPanel — focuses the agent panel.

    Parameters

    • text: string

    Returns Promise<void>