AntigravityCliSdk.Options validates the SDK invocation contract before any process is launched.

FieldTypeDefaultCLI mapping
modelstring or nilcore catalog defaultCore model payload
cli_commandstring or nilapp config/PATHPath to agy
sandboxbooleanfalse--sandbox
dangerously_skip_permissionsbooleanfalse--dangerously-skip-permissions
conversationstring or nilnil--conversation <id>
continuebooleanfalse--continue
add_dirslist of strings[]repeatable --add-dir <path>
print_timeoutstring or nilnil--print-timeout <value>
log_filestring or nilapp config or nil--log-file <path>
cwdstring or nilnilsubprocess working directory
timeout_mspositive integer300_000idle wait between stream events
run_deadline_mspositive integer300_000non-rearming total run ceiling
transport_headless_timeout_mspositive integer5_000Core orphan-reap window
completion_onlybooleanfalsecommon intent; unsupported
output_schematerm or nilnilcommon intent; unsupported
api_keystring or nilnilANTIGRAVITY_API_KEY in child env
envmap%{}child env overlay
execution_surfacestruct/map/keywordlocalcore execution placement
governed_authoritystruct/map/keyword or nilnilmaterialized command/cwd/env authority

Library code reads application configuration through Application.get_env/3. config/runtime.exs is responsible for translating OS environment variables such as ANTIGRAVITY_CLI_PATH, ANTIGRAVITY_MODEL, and ANTIGRAVITY_LOG_FILE into application config.

ArgBuilder always renders the prompt as ["--print", prompt] first, then adds Antigravity-native flags. --add-dir is repeatable and is never comma-delimited.

Unsupported common intents fail with a typed SDK error before CLI resolution. Antigravity --sandbox and permission controls are not treated as proof of a no-tool completion-only posture.