Repository Analysis

a2aproject/A2A

Agent2Agent (A2A) is an open protocol enabling communication and interoperability between opaque agentic applications.

4.0 Likely human-written View on GitHub
4.0
Adjusted Score
4.0
Raw Score
100%
Time Factor
2026-05-29
Last Push
24,062
Stars
Shell
Language
12,046
Lines of Code
95
Files
23
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 8LOW 15

Pattern Findings

23 matches across 7 categories. Click a row to expand file-level details.

Decorative Section Separators6 hits · 21 pts
SeverityFileLineSnippet
MEDIUM.mkdocs/macros.py25# -----------------------------------------------------------------------------
MEDIUM.mkdocs/macros.py27# -----------------------------------------------------------------------------
MEDIUM.mkdocs/macros.py43# -----------------------------------------------------------------------------
MEDIUM.mkdocs/macros.py45# -----------------------------------------------------------------------------
MEDIUM.mkdocs/macros.py190# -----------------------------------------------------------------------------
MEDIUM.mkdocs/macros.py192# -----------------------------------------------------------------------------
Verbosity Indicators6 hits · 10 pts
SeverityFileLineSnippet
LOWscripts/proto_to_json_schema.sh71# Step 0: Pre-process proto
LOWscripts/proto_to_json_schema.sh86# Step 1: Generate individual JSON Schema files with JSON field names (camelCase)
LOWscripts/proto_to_json_schema.sh96# Step 2: Bundle all schemas into a single file with cleaned names
LOW.github/workflows/conventional-commits.yml34 # Step 1: If docs/specification.md is modified (and proto is not), require docs(spec):
LOW.github/workflows/conventional-commits.yml48 # Step 2: If protocol definition (proto) is modified, require feat/fix/chore/refactor
LOW.github/workflows/conventional-commits.yml64 # Step 3: General fallback for all other changes (non-core docs, CI, scripts, tools, etc.)
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippet
MEDIUMscripts/build_sdk_docs.sh13# Create a clean virtual environment
MEDIUM.mkdocs/macros.py253 # Create a slug for the link. Messages are usually CamelCase, so lowercase it.
Redundant / Tautological Comments2 hits · 4 pts
SeverityFileLineSnippet
LOWscripts/proto_to_json_schema.sh99# Check if any JSON files were generated
LOW.mkdocs/macros.py79 # Iterate over elements inside the message
Deep Nesting3 hits · 3 pts
SeverityFileLineSnippet
LOW.mkdocs/macros.py48
LOW.mkdocs/macros.py61
LOW.mkdocs/macros.py147
Excessive Try-Catch Wrapping2 hits · 2 pts
SeverityFileLineSnippet
LOW.mkdocs/macros.py143 except Exception as e:
LOW.mkdocs/macros.py186 except Exception as e:
Over-Commented Block2 hits · 2 pts
SeverityFileLineSnippet
LOW.gitvote.yml1# GitVote configuration file
LOWscripts/deploy_root_files.sh1#!/bin/bash