AntigravityCliSdk.Runtime.CLI (AntigravityCliSdk v0.2.0)

Copy Markdown View Source

Session-oriented runtime for Antigravity CLI streams.

Summary

Types

start_option()

@type start_option() ::
  {:prompt, String.t()}
  | {:options, AntigravityCliSdk.Options.t()}
  | {:subscriber, {pid(), reference()}}
  | {:metadata, map()}
  | {:session_event_tag, atom()}

Functions

capabilities()

@spec capabilities() :: [atom()]

close(session)

@spec close(pid()) :: :ok

end_input(session)

@spec end_input(pid()) :: :ok | {:error, term()}

info(session)

@spec info(pid()) :: map()

interrupt(session)

@spec interrupt(pid()) :: :ok | {:error, term()}

new_projection_state(info \\ %{})

@spec new_projection_state(map()) :: map()

project_event(event, state)

send_input(session, input, opts \\ [])

@spec send_input(pid(), iodata(), keyword()) :: :ok | {:error, term()}

session_event_tag()

@spec session_event_tag() :: atom()

start_session(opts)

@spec start_session([start_option()]) ::
  {:ok, pid(), %{info: map(), projection_state: map(), temp_dir: nil}}
  | {:error, term()}

stderr_chunk(event)

@spec stderr_chunk(CliSubprocessCore.Event.t()) :: String.t() | nil

subscribe(session, pid, ref)

@spec subscribe(pid(), pid(), reference()) :: :ok | {:error, term()}