AI Slop Code RIsk Monitor

google-antigravity/antigravity-sdk-python

A Python library for building AI agents that leverage the full power of Google Antigravity.

33.0 High pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for google-antigravity/antigravity-sdk-python, a Python project with 3,695 GitHub stars. SynthScan examined 58,768 lines of code across 169 source files, recording 1697 pattern matches distributed across 19 syntactic categories. The legacy adjusted pattern signal is 33.0 (High pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

33.0
Adjusted Signal
33.0
Raw Pattern Score
100%
Time Factor
2026-10-07
Last Push
3.7K
Stars
Python
Language
58.8K
Lines of Code
169
Files
1.7K
Pattern Hits
2026-10-12
Scan Date
0.28
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 63.7/100 · HIGH

Can maintainers explain intent, assumptions, and trade-offs? 1353 finding(s).

Hallucinated Dependency & Supply Chain Risk 10.0/100 · LOW

Are imports declared and package/API names verified? 129 finding(s).

Agent Over-Engineering Ratio 71.8/100 · HIGH

Are wrappers, guards, and repeated structures necessary? 1349 finding(s).

PR Review Velocity Impact 85.5/100 · CRITICAL

Which changes need focused human review? 1697 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 48MEDIUM 165LOW 1484

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 1697 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers1126 hits · 857 pts
SeverityFileLineSnippetContext
LOWgoogle/antigravity/types.py260 def _check_mutually_exclusive(self) -> "SubagentCapabilities":CODE
LOWgoogle/antigravity/types.py268 def _validate_subagents_and_tools(self) -> "SubagentCapabilities":CODE
LOWgoogle/antigravity/types.py286 def _validate_interactive_tools(self) -> "SubagentCapabilities":CODE
LOWgoogle/antigravity/types.py717 def _validate_tool_output_truncation_config(CODE
LOWgoogle/antigravity/types.py734 def _check_mutually_exclusive(self) -> "CapabilitiesConfig":CODE
LOWgoogle/antigravity/types.py742 def _validate_subagents_and_tools(self) -> "CapabilitiesConfig":CODE
LOWgoogle/antigravity/types.py769 def _validate_interactive_tools(self) -> "CapabilitiesConfig":CODE
LOWgoogle/antigravity/types.py783 def _get_explicit_compaction_threshold(self) -> int | None:CODE
LOWgoogle/antigravity/types.py790 def _warn_deprecated_compaction_fields(self) -> "CapabilitiesConfig":CODE
LOWgoogle/antigravity/types.py910 def _check_mutually_exclusive(self) -> "BaseMcpServerConfig":CODE
LOWgoogle/antigravity/types.py1523 def _validate_continue_reason(self) -> "StopHookResult":CODE
LOWgoogle/antigravity/types.py1991def _read_file_and_guess_mime(CODE
LOW⚡google/antigravity/types_test.py86 def test_step_id_defaults_to_none(self):CODE
LOW⚡google/antigravity/types_test.py91 def test_step_id_explicitly_set(self):CODE
LOW⚡google/antigravity/types_test.py96 def test_extra_fields_ignored(self):CODE
LOW⚡google/antigravity/types_test.py170 def test_step_id_defaults_to_none(self):CODE
LOW⚡google/antigravity/types_test.py175 def test_step_id_explicitly_set(self):CODE
LOW⚡google/antigravity/types_test.py180 def test_extra_fields_ignored(self):CODE
LOW⚡google/antigravity/types_test.py583 def test_custom_text_is_required(self):CODE
LOW⚡google/antigravity/types_test.py588 def test_templated_empty_construction(self):CODE
LOW⚡google/antigravity/types_test.py594 def test_union_parsing_empty_dict(self):CODE
LOW⚡google/antigravity/types_test.py704 def test_all_tools_returns_every_member(self):CODE
LOW⚡google/antigravity/types_test.py713 def test_none_returns_empty_list(self):CODE
LOW⚡google/antigravity/types_test.py717 def test_minimal_returns_four_minimal_tools(self):CODE
LOW⚡google/antigravity/types_test.py727 def test_default_excludes_ask_question_and_deprecated_tools(self):CODE
LOW⚡google/antigravity/types_test.py901 def test_run_command_config_non_positive_timeout_raises(self):CODE
LOW⚡google/antigravity/types_test.py909 def test_subagent_capabilities_allowed_subagents(self):CODE
LOW⚡google/antigravity/types_test.py914 def test_max_subagent_depth_fails_when_subagents_disabled(self):CODE
LOW⚡google/antigravity/types_test.py932 def test_allowed_subagents_fails_when_subagents_disabled(self):CODE
LOW⚡google/antigravity/types_test.py941 def test_allowed_subagents_empty_list_fails_when_subagents_disabled(self):CODE
LOW⚡google/antigravity/types_test.py950 def test_max_subagent_depth_fails_when_start_subagent_tool_disabled(self):CODE
LOW⚡google/antigravity/types_test.py1042 def test_tool_output_truncation_config_default(self):CODE
LOW⚡google/antigravity/types_test.py1047 def test_tool_output_truncation_config_int_shorthand(self):CODE
LOW⚡google/antigravity/types_test.py1055 def test_tool_output_truncation_config_zero(self):CODE
LOW⚡google/antigravity/types_test.py1063 def test_tool_output_truncation_config_instance(self):CODE
LOW⚡google/antigravity/types_test.py1069 def test_tool_output_truncation_config_dict(self):CODE
LOW⚡google/antigravity/types_test.py1079 def test_tool_output_truncation_config_boolean_rejected(self):CODE
LOW⚡google/antigravity/types_test.py1086 def test_tool_output_truncation_config_invalid_types_rejected(self):CODE
LOW⚡google/antigravity/types_test.py1091 def test_tool_output_truncation_config_negative_or_overflow_raises(self):CODE
LOW⚡google/antigravity/types_test.py1128 def test_zero_max_tokens_allowed(self):CODE
LOW⚡google/antigravity/types_test.py1133 def test_negative_max_tokens_raises(self):CODE
LOW⚡google/antigravity/types_test.py1138 def test_overflow_max_tokens_raises(self):CODE
LOW⚡google/antigravity/types_test.py1347 def test_non_existent_path_raises_error(self):CODE
LOW⚡google/antigravity/types_test.py1352 def test_directory_path_raises_error(self):CODE
LOW⚡google/antigravity/types_test.py1358 def test_inference_failure_raises_clear_value_error(self):CODE
LOW⚡google/antigravity/types_test.py2190 def test_agent_behavior_explicit(self):CODE
LOW⚡google/antigravity/types_test.py2198 def test_mutually_exclusive_ok_enabled(self):CODE
LOW⚡google/antigravity/types_test.py2205 def test_mutually_exclusive_ok_disabled(self):CODE
LOW⚡google/antigravity/types_test.py2212 def test_mutually_exclusive_raises(self):CODE
LOW⚡google/antigravity/types_test.py2219 def test_allowed_subagents_valid_when_start_subagent_enabled(self):CODE
LOW⚡google/antigravity/types_test.py2226 def test_allowed_subagents_raises_when_start_subagent_omitted_from_enabled_tools(CODE
LOW⚡google/antigravity/types_test.py2807 def test_stop_hook_result_defaults(self):CODE
LOW⚡google/antigravity/types_test.py2812 def test_stop_hook_result_custom(self):CODE
LOW⚡google/antigravity/types_test.py2820 def test_stop_hook_result_extra_fields_ignored(self):CODE
LOW⚡google/antigravity/types_test.py2827 def test_stop_hook_result_continue_requires_non_empty_reason(self):CODE
LOWgoogle/antigravity/types_test.py52 def test_canonical_path_default_none(self):CODE
LOWgoogle/antigravity/types_test.py57 def test_canonical_path_explicit(self):CODE
LOWgoogle/antigravity/types_test.py237 def test_extra_fields_allowed(self):CODE
LOWgoogle/antigravity/types_test.py374 def test_missing_responses_raises(self):CODE
LOWgoogle/antigravity/types_test.py448 def test_step_with_tool_calls(self):CODE
1066 more matches not shown…
Decorative Section Separators126 hits · 404 pts
SeverityFileLineSnippetContext
MEDIUM⚡google/antigravity/models.py31# =============================================================================COMMENT
MEDIUM⚡google/antigravity/models.py33# =============================================================================COMMENT
MEDIUM⚡google/antigravity/models.py39# =============================================================================COMMENT
MEDIUM⚡google/antigravity/models.py41# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py123# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py125# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py960# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py962# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1018# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1020# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1415# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1417# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1555# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1557# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1642# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1644# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1906# =============================================================================COMMENT
MEDIUMgoogle/antigravity/types.py1908# =============================================================================COMMENT
MEDIUMgoogle/antigravity/workflows.py48# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/workflows.py59# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡google/antigravity/connections/local/event_processor.py1190 # ---------------------------------------------------------------------------COMMENT
MEDIUM⚡google/antigravity/connections/local/event_processor.py1192 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py196# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py198# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py598# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py600# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py693# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py695# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py766# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py768# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py801# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py803# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py925# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/hooks/policy.py927# ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py90 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py92 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py214 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py216 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py341 # ---------------------------------------------------------------------------COMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py343 # ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/multimodal_pipeline.py107 # ----------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/multimodal_pipeline.py109 # ----------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/multimodal_pipeline.py143 # ----------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/multimodal_pipeline.py145 # ----------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py55# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py57# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py72# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py74# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py195# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/async_chat.py197# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py56# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py58# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py102# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py104# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py143# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py145# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py167# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/deep_dives/agent_middleware.py169# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡examples/deep_dives/agent_middleware.py199# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡examples/deep_dives/agent_middleware.py201# ---------------------------------------------------------------------------COMMENT
66 more matches not shown…
Empty Error Handlers32 hits · 160 pts
SeverityFileLineSnippetContext
HIGHgoogle/antigravity/beta/__init__.py73except (AttributeError, TypeError):CODE
HIGHgoogle/antigravity/beta/__init__.py159except (AttributeError, TypeError):CODE
HIGHgoogle/antigravity/tools/tool_runner.py182except (ValueError, TypeError):CODE
HIGHgoogle/antigravity/tools/tool_runner.py236except Exception: # pylint: disable=broad-exceptCODE
HIGHgoogle/antigravity/utils/otel_test.py27except ImportError:CODE
HIGHgoogle/antigravity/utils/interactive.py165except asyncio.CancelledError:CODE
HIGHgoogle/antigravity/utils/interactive.py191except asyncio.CancelledError:CODE
HIGHgoogle/antigravity/utils/interactive.py332except ValueError:CODE
HIGH…antigravity/connections/local/local_connection_test.py5291except asyncio.CancelledError:CODE
HIGHgoogle/antigravity/connections/local/event_processor.py269except json.JSONDecodeError:CODE
HIGHgoogle/antigravity/connections/local/event_processor.py245except json.JSONDecodeError:CODE
HIGHgoogle/antigravity/connections/local/event_processor.py1029except ValueError:CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py240except (AttributeError, ValueError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py259except (AttributeError, ValueError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py84except (TypeError, ValueError, AttributeError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py91except (TypeError, ValueError, AttributeError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py96except (TypeError, ValueError, AttributeError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py249except (AttributeError, ValueError):CODE
HIGH…ogle/antigravity/connections/local/struct_converter.py268except (AttributeError, ValueError):CODE
HIGH…gle/antigravity/connections/local/litert_connection.py446except Exception:CODE
HIGH…gle/antigravity/connections/local/litert_connection.py476except Exception:CODE
HIGH…gle/antigravity/connections/local/litert_connection.py457except Exception:CODE
HIGH…ogle/antigravity/connections/local/local_connection.py794except (importlib.metadata.PackageNotFoundError, ValueError, AttributeError):CODE
HIGH…ogle/antigravity/connections/local/local_connection.py812except (ImportError, AttributeError, KeyError):CODE
HIGH…ogle/antigravity/connections/local/local_connection.py556except ValueError:CODE
HIGH…ogle/antigravity/connections/local/local_connection.py589except asyncio.CancelledError:CODE
HIGH…ogle/antigravity/connections/local/local_connection.py595except asyncio.TimeoutError:CODE
HIGH…vity/connections/local/interactions_event_processor.py82except ValueError:CODE
HIGHgoogle/antigravity/connections/local/hook_router.py43except ValueError:CODE
HIGHgoogle/antigravity/connections/local/hook_router.py57except ValueError:CODE
HIGHgoogle/antigravity/connections/local/litert_server.py319except Exception:CODE
HIGHexamples/getting_started/sandboxing.py102except FileNotFoundError:CODE
Over-Commented Block121 hits · 114 pts
SeverityFileLineSnippetContext
LOWpyproject.toml1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/models.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/types.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/types_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/agent_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/agent.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/workflows.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/workflows.py41})COMMENT
LOWgoogle/antigravity/workflows_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/beta/beta_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/beta/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/tool_runner_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/schema_utils.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/schema_utils_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/tool_context.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/tool_runner.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/tools/tool_context_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/triggers.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/trigger_runner.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/helpers_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/triggers_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/helpers.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/triggers/trigger_runner_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/interactive_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/otel_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/state_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/interactive.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/otel.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/utils/state.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/connection_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/connection.py1# Copyright 2026 Google LLCCOMMENT
LOW…antigravity/connections/local/local_connection_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…tigravity/connections/local/local_openai_connection.py1# Copyright 2026 Google LLCCOMMENT
LOW…antigravity/connections/local/proto_converters_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…ity/connections/local/interactions_config_converter.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/local/test_utils.py1# Copyright 2026 Google LLCCOMMENT
LOW…ty/connections/local/local_openai_connection_config.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/local/event_processor.py1# Copyright 2026 Google LLCCOMMENT
LOW…ogle/antigravity/connections/local/struct_converter.py1# Copyright 2026 Google LLCCOMMENT
LOW…tigravity/connections/local/interactions_connection.py1# Copyright 2026 Google LLCCOMMENT
LOW…avity/connections/local/interactions_step_assembler.py1# Copyright 2026 Google LLCCOMMENT
LOW…/connections/local/interactions_step_assembler_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…onnections/local/interactions_config_converter_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…gle/antigravity/connections/local/litert_connection.py1# Copyright 2026 Google LLCCOMMENT
LOW…tigravity/connections/local/local_connection_config.py1# Copyright 2026 Google LLCCOMMENT
LOW…ogle/antigravity/connections/local/proto_converters.py1# Copyright 2026 Google LLCCOMMENT
LOW…igravity/connections/local/litert_connection_config.py1# Copyright 2026 Google LLCCOMMENT
LOW…connections/local/interactions_event_processor_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/local/__init__.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/local/types.py1# Copyright 2026 Google LLCCOMMENT
LOW…/antigravity/connections/local/event_processor_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…ogle/antigravity/connections/local/local_connection.py1# Copyright 2026 Google LLCCOMMENT
LOW…vity/connections/local/interactions_event_processor.py1# Copyright 2026 Google LLCCOMMENT
LOW…vity/connections/local/interactions_connection_test.py1# Copyright 2026 Google LLCCOMMENT
LOW…ogle/antigravity/connections/local/hook_router_test.py1# Copyright 2026 Google LLCCOMMENT
LOWgoogle/antigravity/connections/local/hook_router.py1# Copyright 2026 Google LLCCOMMENT
61 more matches not shown…
Unused Imports122 hits · 104 pts
SeverityFileLineSnippetContext
LOWgoogle/antigravity/models.py21CODE
LOWgoogle/antigravity/__init__.py17CODE
LOWgoogle/antigravity/__init__.py18CODE
LOWgoogle/antigravity/__init__.py19CODE
LOWgoogle/antigravity/__init__.py20CODE
LOWgoogle/antigravity/__init__.py21CODE
LOWgoogle/antigravity/__init__.py22CODE
LOWgoogle/antigravity/__init__.py23CODE
LOWgoogle/antigravity/__init__.py24CODE
LOWgoogle/antigravity/__init__.py25CODE
LOWgoogle/antigravity/__init__.py26CODE
LOWgoogle/antigravity/__init__.py27CODE
LOWgoogle/antigravity/__init__.py28CODE
LOWgoogle/antigravity/__init__.py29CODE
LOWgoogle/antigravity/__init__.py30CODE
LOWgoogle/antigravity/__init__.py31CODE
LOWgoogle/antigravity/__init__.py32CODE
LOWgoogle/antigravity/__init__.py33CODE
LOWgoogle/antigravity/__init__.py34CODE
LOWgoogle/antigravity/__init__.py35CODE
LOWgoogle/antigravity/__init__.py36CODE
LOWgoogle/antigravity/__init__.py37CODE
LOWgoogle/antigravity/__init__.py38CODE
LOWgoogle/antigravity/__init__.py39CODE
LOWgoogle/antigravity/__init__.py40CODE
LOWgoogle/antigravity/__init__.py41CODE
LOWgoogle/antigravity/__init__.py42CODE
LOWgoogle/antigravity/__init__.py43CODE
LOWgoogle/antigravity/__init__.py44CODE
LOWgoogle/antigravity/__init__.py45CODE
LOWgoogle/antigravity/__init__.py46CODE
LOWgoogle/antigravity/__init__.py47CODE
LOWgoogle/antigravity/__init__.py48CODE
LOWgoogle/antigravity/__init__.py49CODE
LOWgoogle/antigravity/__init__.py50CODE
LOWgoogle/antigravity/__init__.py51CODE
LOWgoogle/antigravity/__init__.py52CODE
LOWgoogle/antigravity/__init__.py53CODE
LOWgoogle/antigravity/__init__.py54CODE
LOWgoogle/antigravity/__init__.py55CODE
LOWgoogle/antigravity/types.py21CODE
LOWgoogle/antigravity/types.py36CODE
LOWgoogle/antigravity/types.py37CODE
LOWgoogle/antigravity/types.py38CODE
LOWgoogle/antigravity/types.py39CODE
LOWgoogle/antigravity/types.py40CODE
LOWgoogle/antigravity/types.py42CODE
LOWgoogle/antigravity/types.py43CODE
LOWgoogle/antigravity/workflows.py17CODE
LOWgoogle/antigravity/beta/__init__.py27CODE
LOWgoogle/antigravity/triggers/triggers.py22CODE
LOWgoogle/antigravity/triggers/__init__.py17CODE
LOWgoogle/antigravity/triggers/__init__.py18CODE
LOWgoogle/antigravity/triggers/__init__.py19CODE
LOWgoogle/antigravity/triggers/__init__.py20CODE
LOWgoogle/antigravity/triggers/__init__.py21CODE
LOWgoogle/antigravity/triggers/__init__.py22CODE
LOWgoogle/antigravity/triggers/__init__.py23CODE
LOWgoogle/antigravity/utils/interactive.py33CODE
LOWgoogle/antigravity/utils/state.py17CODE
62 more matches not shown…
AI Slop Vocabulary24 hits · 72 pts
SeverityFileLineSnippetContext
MEDIUMgoogle/antigravity/types.py1960 """Robustly loads local file bytes with comprehensive error wrapping.STRING
MEDIUM⚡…antigravity/connections/local/local_connection_test.py94 # Older harness that omits sandbox status -> no spurious warning.COMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1079 # The harness emits STATE_CANCELLED when the PreTurn hook denies.COMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1163 # Simulate harness dispatching PreTool, PostTool, and OnToolError hooksCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1490 # Simulate an active generation step from the harnessCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1527 # Simulate the harness transitioning to idle after haltingCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1899 # No messages should have been sent back to the harness.COMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py1929 # Default: all harness side tools enabled except user_questionsCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py4162 # 2. Simulate Go harness sending CallHookRequest(OnSessionEnd)COMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py4177 # 4. Simulate Go harness sending SessionEndResponseCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py4230 # The real harness sends STATE_IDLE after the final step. TheCOMMENT
MEDIUMgoogle/antigravity/connections/local/event_processor.py633 # During live execution of a local custom tool, the Go harnessCOMMENT
MEDIUMgoogle/antigravity/connections/local/event_processor.py950 # Subagent execution is coordinated by the harness. The Python clientCOMMENT
MEDIUM…ogle/antigravity/connections/local/local_connection.py51# In some cases e.g. during eval runs, the harness needs extra time toCOMMENT
MEDIUM…ogle/antigravity/connections/local/local_connection.py373 # expected closures from harness crashes.COMMENT
MEDIUM…ogle/antigravity/connections/local/local_connection.py386 # Stderr lines from the Go harness, captured by a background thread.COMMENT
MEDIUM…ogle/antigravity/connections/local/local_connection.py387 # Retained in a bounded deque so the reader loop can surface harnessCOMMENT
MEDIUM…ogle/antigravity/connections/local/local_connection.py1537 # Retry the WebSocket connection with backoff. The harness process mayCOMMENT
MEDIUM…vity/connections/local/interactions_connection_test.py83 # Simulate harness sending call_hook_request(on_session_end) thenCOMMENT
MEDIUM…ogle/antigravity/connections/local/hook_router_test.py1221 # populated by the harness for MCP tool calls.COMMENT
MEDIUMgoogle/antigravity/connections/local/hook_router.py196 # server_name is populated directly by harness for MCP tool calls,COMMENT
MEDIUM⚡examples/deep_dives/agent_middleware.py195 # Let the harness handle all other errors with default formatting.COMMENT
MEDIUMexamples/getting_started/persona_config.py80 # Add custom sections. These sections are passed to the local harness asCOMMENT
MEDIUMexamples/getting_started/error_handler.py105 # Common cause: Backend harness process crashes or WebSocket connectionCOMMENT
Docstring Block Structure13 hits · 65 pts
SeverityFileLineSnippetContext
HIGHgoogle/antigravity/types.py1960Robustly loads local file bytes with comprehensive error wrapping. Args: path: The file path to read. ReturnSTRING
HIGHgoogle/antigravity/types.py1994Reads a file and guesses its MIME type. Args: path: The file path to read. Returns: A tuple containingSTRING
HIGHgoogle/antigravity/types.py2127Automatically resolves a local file path into the correct semantic Content primitive. Args: path: Local file paSTRING
HIGHgoogle/antigravity/types.py2147Automatically resolves raw bytes and a MIME type into the correct Content primitive. Args: data: Raw file bytesSTRING
HIGHgoogle/antigravity/agent.py244Sends a prompt and returns the final response. Args: prompt: The user prompt or content to send. ReturSTRING
HIGHgoogle/antigravity/agent.py282Executes a `@workflows.define` function or a `.py` workflow script. Exactly one of `workflow` or `script_path` mustSTRING
HIGHgoogle/antigravity/workflows.py245Extracts and validates the standalone script source from a workflow function. Given a `@workflows.define` function suSTRING
HIGHgoogle/antigravity/tools/tool_runner.py340Returns a callable with injectable params hidden from the signature. Connections use this to generate tool schemas STRING
HIGHgoogle/antigravity/tools/tool_runner.py442Executes a registered tool by name. If the tool declares a ``ToolContext`` parameter and a context has been setSTRING
HIGHgoogle/antigravity/triggers/helpers.py43Creates a trigger that runs callback on a fixed interval. The callback is invoked repeatedly with `interval_seconds` STRING
HIGH…igravity/connections/local/litert_connection_config.py43Derives the default compaction configuration for a LiteRT model. Calculates a safe token threshold based on the enginSTRING
HIGHgoogle/antigravity/hooks/policy.py946Creates a PreToolCallDecideHook that evaluates dynamic policies. Args: policies: The policies to enforce (can be STRING
HIGHexamples/deep_dives/agent_middleware.py87Send a message to a user by name (may fail if name is ambiguous). Args: name: The recipient's display name. mSTRING
Excessive Try-Catch Wrapping42 hits · 42 pts
SeverityFileLineSnippetContext
LOWgoogle/antigravity/agent.py224 except Exception:CODE
LOWgoogle/antigravity/beta/__init__.py295 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/tools/tool_runner.py69 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/tools/tool_runner.py81 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/tools/tool_runner.py236 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/tools/tool_runner.py429 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/tools/tool_runner.py509 except Exception as e: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/triggers/trigger_runner.py136 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/utils/otel.py402 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/utils/otel.py438 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/event_processor.py677 except Exception as e: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/event_processor.py698 except Exception: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/event_processor.py801 except Exception as e: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/event_processor.py1048 except Exception as e: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/event_processor.py1124 except Exception as e: # pylint: disable=broad-exceptCODE
LOW…tigravity/connections/local/interactions_connection.py185 except Exception as e:CODE
LOW…gle/antigravity/connections/local/litert_connection.py136 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py292 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py343 except Exception as e: # pylint: disable=broad-exception-caught # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py360 except Exception:CODE
LOW…gle/antigravity/connections/local/litert_connection.py378 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py398 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py428 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py446 except Exception:CODE
LOW…gle/antigravity/connections/local/litert_connection.py457 except Exception:CODE
LOW…gle/antigravity/connections/local/litert_connection.py472 except Exception: # pylint: disable=broad-exception-caughtCODE
LOW…gle/antigravity/connections/local/litert_connection.py476 except Exception:CODE
MEDIUM…ogle/antigravity/connections/local/local_connection.py550def _drain():CODE
LOW…ogle/antigravity/connections/local/local_connection.py579 except Exception as e: # pylint: disable=broad-exceptCODE
LOW…ogle/antigravity/connections/local/local_connection.py665 except Exception as e: # pylint: disable=broad-exceptCODE
LOW…ogle/antigravity/connections/local/local_connection.py1576 except Exception as e:CODE
LOW…vity/connections/local/interactions_event_processor.py304 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOW…vity/connections/local/interactions_event_processor.py576 except Exception as e: # pylint: disable=broad-exceptCODE
LOW…vity/connections/local/interactions_event_processor.py620 except Exception as e: # pylint: disable=broad-exceptCODE
LOWgoogle/antigravity/connections/local/hook_router.py400 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOWgoogle/antigravity/connections/local/litert_server.py188 except Exception as e: # pylint: disable=broad-exception-caught # pylint: disable=broad-exception-caughtCODE
LOWgoogle/antigravity/connections/local/litert_server.py270 except Exception as e: # pylint: disable=broad-exception-caught # pylint: disable=broad-exception-caughtCODE
LOWgoogle/antigravity/connections/local/litert_server.py314 except Exception as e: # pylint: disable=broad-exception-caught # pylint: disable=broad-exception-caughtCODE
LOWgoogle/antigravity/connections/local/litert_server.py319 except Exception:CODE
LOWgoogle/antigravity/hooks/hook_runner.py285 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOWgoogle/antigravity/hooks/policy.py749 except Exception as e: # pylint: disable=broad-exception-caughtCODE
LOWexamples/getting_started/error_handler.py109 except Exception as e: # pylint: disable=broad-exceptCODE
Deep Nesting44 hits · 36 pts
SeverityFileLineSnippetContext
LOWgoogle/antigravity/types.py1693CODE
LOWgoogle/antigravity/types.py1708CODE
LOWgoogle/antigravity/workflows.py164CODE
LOWgoogle/antigravity/tools/schema_utils.py74CODE
LOWgoogle/antigravity/utils/interactive.py296CODE
LOWgoogle/antigravity/utils/otel.py168CODE
LOWgoogle/antigravity/connections/connection.py232CODE
LOWgoogle/antigravity/connections/connection.py341CODE
LOW…ity/connections/local/interactions_config_converter.py208CODE
LOW…ity/connections/local/interactions_config_converter.py609CODE
LOWgoogle/antigravity/connections/local/event_processor.py221CODE
LOWgoogle/antigravity/connections/local/event_processor.py313CODE
LOWgoogle/antigravity/connections/local/event_processor.py845CODE
LOWgoogle/antigravity/connections/local/event_processor.py991CODE
LOWgoogle/antigravity/connections/local/event_processor.py1134CODE
LOW…ogle/antigravity/connections/local/struct_converter.py171CODE
LOW…ogle/antigravity/connections/local/struct_converter.py235CODE
LOW…ogle/antigravity/connections/local/struct_converter.py254CODE
LOW…ogle/antigravity/connections/local/struct_converter.py273CODE
LOW…avity/connections/local/interactions_step_assembler.py172CODE
LOW…avity/connections/local/interactions_step_assembler.py691CODE
LOW…avity/connections/local/interactions_step_assembler.py747CODE
LOW…gle/antigravity/connections/local/litert_connection.py433CODE
LOW…gle/antigravity/connections/local/litert_connection.py173CODE
LOW…gle/antigravity/connections/local/litert_connection.py383CODE
LOW…ogle/antigravity/connections/local/local_connection.py216CODE
LOW…ogle/antigravity/connections/local/local_connection.py770CODE
LOW…ogle/antigravity/connections/local/local_connection.py478CODE
LOW…ogle/antigravity/connections/local/local_connection.py569CODE
LOW…ogle/antigravity/connections/local/local_connection.py1129CODE
LOW…ogle/antigravity/connections/local/local_connection.py1177CODE
LOW…ogle/antigravity/connections/local/local_connection.py1238CODE
LOW…vity/connections/local/interactions_event_processor.py47CODE
LOW…vity/connections/local/interactions_event_processor.py238CODE
LOWgoogle/antigravity/connections/local/hook_router.py33CODE
LOWgoogle/antigravity/connections/local/litert_server.py173CODE
LOW…ntigravity/connections/local/litert_connection_test.py194CODE
LOWgoogle/antigravity/hooks/hooks.py276CODE
LOWgoogle/antigravity/hooks/hooks.py336CODE
LOWgoogle/antigravity/hooks/policy.py771CODE
LOWgoogle/antigravity/hooks/policy.py704CODE
LOWgoogle/antigravity/conversation/conversation.py143CODE
LOWexamples/getting_started/slash_commands.py39CODE
LOWexamples/getting_started/slash_commands.py64CODE
Self-Referential Comments6 hits · 20 pts
SeverityFileLineSnippetContext
MEDIUMgoogle/antigravity/agent_test.py229 # Define a distinct function object with the exact same nameCOMMENT
MEDIUM…antigravity/connections/local/local_connection_test.py5045 # Create a FakeWebSocket that raises ConnectionClosed immediately.COMMENT
MEDIUM⚡examples/getting_started/triggers.py54# Define a callback function for the periodic trigger.COMMENT
MEDIUMexamples/getting_started/error_handler.py42# Define a tool that always fails.COMMENT
MEDIUMexamples/getting_started/error_handler.py80 # Create the agent configuration with the tool and hook.COMMENT
MEDIUMexamples/getting_started/app_data_dir_override.py47 # Create a temporary directory for the custom application data storageCOMMENT
Cross-Language Confusion2 hits · 15 pts
SeverityFileLineSnippetContext
HIGH⚡…ogle/antigravity/connections/local/hook_router_test.py665 result_str='{"results": null}',CODE
HIGH⚡…ogle/antigravity/connections/local/hook_router_test.py667 res.result, '{"results": null}'CODE
Modern Structural Boilerplate10 hits · 10 pts
SeverityFileLineSnippetContext
LOWgoogle/antigravity/__init__.py57__all__ = [CODE
LOWgoogle/antigravity/types.py47__all__ = [CODE
LOWgoogle/antigravity/agent.py38__all__ = ["Agent"]CODE
LOWgoogle/antigravity/tools/tool_runner.py283 def set_context(self, ctx: tool_context_module.ToolContext) -> None:CODE
LOWgoogle/antigravity/triggers/__init__.py25__all__ = [CODE
LOWgoogle/antigravity/utils/state.py61 def set_state(self, key: str, value: Any) -> None:CODE
LOWgoogle/antigravity/connections/local/event_processor.py121 def update_state(self, new_state: localharness_pb2.StepUpdate.State) -> None:CODE
LOW…avity/connections/local/interactions_step_assembler.py278 def set_root_interaction_id(self, interaction_id: str) -> None:CODE
LOWgoogle/antigravity/hooks/__init__.py44__all__ = [CODE
LOWgoogle/antigravity/policy/__init__.py30__all__ = [CODE
Dead Code5 hits · 10 pts
SeverityFileLineSnippetContext
MEDIUMgoogle/antigravity/types_test.py1773CODE
MEDIUMgoogle/antigravity/types_test.py1892CODE
MEDIUM…antigravity/connections/local/local_connection_test.py5057CODE
MEDIUM…antigravity/connections/local/local_connection_test.py5098CODE
MEDIUMgoogle/antigravity/conversation/conversation_test.py1186CODE
Modern AI Meta-Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM…ity/connections/local/interactions_config_converter.py77 # When a tool uses ToolContext dependency injection, ToolRunner strips theCOMMENT
MEDIUMgoogle/antigravity/conversation/conversation.py175 # The agentic loop can emit the same ToolCall in multiple stepCOMMENT
MEDIUMgoogle/antigravity/conversation/conversation_test.py378 # The agentic loop can emit the same tool call in dispatch,COMMENT
AI Structural Patterns8 hits · 7 pts
SeverityFileLineSnippetContext
LOW…ity/connections/local/interactions_config_converter.py609CODE
LOW…ty/connections/local/local_openai_connection_config.py43CODE
LOW…tigravity/connections/local/interactions_connection.py37CODE
LOW…tigravity/connections/local/local_connection_config.py243CODE
LOW…igravity/connections/local/litert_connection_config.py123CODE
LOW…ogle/antigravity/connections/local/local_connection.py345CODE
LOW…ogle/antigravity/connections/local/local_connection.py916CODE
LOWgoogle/antigravity/hooks/hook_runner.py47CODE
Verbosity Indicators4 hits · 6 pts
SeverityFileLineSnippetContext
LOW⚡…antigravity/connections/local/local_connection_test.py4316 # Step 1: environment step — yielded but NOT a final response.COMMENT
LOW⚡…antigravity/connections/local/local_connection_test.py4323 # Step 2: user step — the real final response.COMMENT
LOW…antigravity/connections/local/local_connection_test.py4272 # Step 1: A TARGET_ENVIRONMENT step (tool execution).COMMENT
LOW…antigravity/connections/local/local_connection_test.py4285 # Step 2: A TARGET_USER step (the final answer).COMMENT
Structural Annotation Overuse4 hits · 6 pts
SeverityFileLineSnippetContext
LOW⚡…antigravity/connections/local/local_connection_test.py4316 # Step 1: environment step — yielded but NOT a final response.COMMENT
LOW⚡…antigravity/connections/local/local_connection_test.py4323 # Step 2: user step — the real final response.COMMENT
LOW…antigravity/connections/local/local_connection_test.py4272 # Step 1: A TARGET_ENVIRONMENT step (tool execution).COMMENT
LOW…antigravity/connections/local/local_connection_test.py4285 # Step 2: A TARGET_USER step (the final answer).COMMENT
Fake / Example Data4 hits · 3 pts
SeverityFileLineSnippetContext
LOW⚡…antigravity/connections/local/local_connection_test.py3964 additional_headers={"x-goog-api-key": "fake-key"},CODE
LOW⚡…antigravity/connections/local/local_connection_test.py3969 additional_headers={"x-goog-api-key": "fake-key"},CODE
LOW⚡…antigravity/connections/local/local_connection_test.py3980 output_config = localharness_pb2.OutputConfig(port=8080, api_key="fake-key")CODE
LOW…antigravity/connections/local/local_connection_test.py3926 output_config = localharness_pb2.OutputConfig(port=8080, api_key="fake-key")CODE
Magic Placeholder Names1 hit · 2 pts
SeverityFileLineSnippetContext
HIGHexamples/getting_started/vertex.py24 VERTEX_API_KEY="your-api-key" python vertex.pySTRING