Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.
146 of your 511 findings came from Repobility's proprietary detections. ✓ Repobility tags below mark them.

Scan timing: clone 5.34s · analysis 46.75s · 14.3 MB · GitHub API rate-limit (preflight)

kagent-dev/kagent

https://github.com/kagent-dev/kagent · scanned 2026-06-05 14:31 UTC (5 days, 4 hours ago) · 10 languages

784 raw signals (382 security + 402 graph) 0th percentile · Go · large (100-500K LoC) System graph score 80 (lower by 26)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 5 days, 4 hours ago · v2 · 347 actionable findings from 2 signal sources. 221 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Score breakdown â 2026-05-18-v5
Component Sub-score Weight Contribution
structure_score 40.0 0.15 6.00
security_score 0.0 0.25 0.00
testing_score 90.0 0.20 18.00
documentation_score 93.6 0.15 14.04
practices_score 89.0 0.15 13.35
code_quality 17.7 0.10 1.77
Overall 1.00 53.2
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Corpus Intelligence Cross-corpus context (cohort percentile, top patterns, fix plan) is shown only on repositories you own. Sign up and connect your repo to view it.
Scan summary Ranks in the 8th percentile among medium-sized repos. Strongest dependencies (90), testing (75); weakest security (37), code quality (62). 548 findings (12 critical, 68 high). Most common pattern: http-not-https. ~46h tech debt (rating B).

Showing 233 of 347 actionable findings. 568 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

critical Security checks security secrets conf 1.00 [SEC010] Cloud Provider Token: Cloud provider or SaaS API token found in source code.
Remove immediately and rotate the token. Use environment variables.
go/core/pkg/sandboxbackend/openshell/channels/placeholders.go:10
critical Security checks security auth conf 1.00 [SEC099] JWT decoded without signature verification: JWT token is parsed without verifying its signature. The token body can be tampered with arbitrarily by an attacker.
Use jwt.decode(token, key, algorithms=[...]) without options={'verify_signature': False}. If you genuinely need to peek without verifying (rare — e.g. logging the kid before fetching the key), use jwt.get_unverified_header() instead and clearly comment.
python/packages/agentsts-core/src/agentsts/core/client/_utils.py:69
critical Security checks software dependencies conf 0.88 authlib: GHSA-wvwj-cvrp-7pv5
Authlib JWS JWK Header Injection: Signature Verification Bypass
python/samples/adk/basic/uv.lock
critical Security checks software dependencies conf 0.88 chromadb: GHSA-f4j7-r4q5-qw2c
ChromaDB Python project has a pre-authentication code injection vulnerability
python/uv.lock
critical Security checks security secrets conf 0.95 3 occurrences Detected a Generic API Key, potentially exposing access to various services and sensitive operations.
Gitleaks detected a committed secret or credential pattern.
3 files, 3 locations
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_cross_namespace_tools.yaml:21
go/core/internal/controller/translator/agent/testdata/inputs/basic_agent.yaml:11
go/core/internal/controller/translator/agent/testdata/inputs/bedrock_agent.yaml:12
critical Security checks software dependencies conf 0.88 google-adk: GHSA-rg7c-g689-fr3x
Google Agent Development Kit (ADK) has a Code Injection and Missing Authentication vulnerability
python/samples/adk/basic/uv.lock
critical Security checks security secrets conf 0.95 11 occurrences Possible Kubernetes Secret detected, posing a risk of leaking credentials/tokens from your deployments
Gitleaks detected a committed secret or credential pattern.
10 files, 11 locations
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_cross_namespace_tools.yaml:7, 16 (2 hits)
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_context_config.yaml:13
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_embedding_provider.yaml:13
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_mcp_service.yaml:13
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_nested_agent.yaml:13
go/core/internal/controller/translator/agent/testdata/inputs/agent_with_system_message_from_secret.yaml:13
go/core/internal/controller/translator/agent/testdata/inputs/basic_agent.yaml:6
go/core/internal/controller/translator/agent/testdata/inputs/bedrock_agent.yaml:6
critical Security checks security secrets conf 0.95 5 occurrences Uncovered a JSON Web Token, which may lead to unauthorized access to web applications and sensitive user data.
Gitleaks detected a committed secret or credential pattern.
2 files, 5 locations
python/packages/agentsts-core/tests/test_client.py:52, 63, 82, 98 (4 hits)
go/core/test/e2e/invoke_api_test.go:1104
low Security checks quality Quality conf 1.00 ✓ Repobility [MINED006] Overcatch Baseexception: except BaseException: ... — prevents Ctrl+C and SystemExit from working.
Review and fix per the pattern semantics. See CWE-705 / for context.
python/packages/kagent-adk/src/kagent/adk/_mcp_toolset.py:157
high Security checks quality Quality conf 1.00 ✓ Repobility 3 occurrences [MINED020] Logging Credential Via Fstring: logger.error(f"failed for {api_key}") — secrets end up in log aggregators / sentry.
Review and fix per the pattern semantics. See CWE-532 / A09:2021 for context.
3 files, 3 locations
python/packages/agentsts-core/src/agentsts/core/_actor_service.py:36
python/packages/agentsts-core/src/agentsts/core/_base.py:103
python/packages/kagent-adk/src/kagent/adk/_token.py:81
high Security checks quality Quality conf 1.00 [SEC088] Go: TLS InsecureSkipVerify=true: tls.Config{InsecureSkipVerify:true} disables certificate verification — MITM risk. Ported from gosec G402 (Apache-2.0).
Remove the option. If self-signed certs are required, pin via RootCAs.
go/adk/pkg/models/tls.go:35
high Security checks quality Quality conf 1.00 ✓ Repobility 10 occurrences `self._initialize` used but never assigned in __init__
Method `__aenter__` of class `STSClient` reads `self._initialize`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
3 files, 10 locations
python/packages/agentsts-core/src/agentsts/core/client/_client.py:33, 38, 118, 134, 177, 206 (6 hits)
python/packages/kagent-core/src/kagent/core/_config.py:34 (2 hits)
python/packages/kagent-core/src/kagent/core/a2a/_task_store.py:47, 66 (2 hits)
high Security checks software dependencies conf 0.88 authlib: GHSA-7432-952r-cw78
Authlib Vulnerable to JWE RSA1_5 Bleichenbacher Padding Oracle
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 authlib: GHSA-m344-f55w-2m6j
Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 authlib: GHSA-pq5p-34cr-23v9
Authlib is vulnerable to Denial of Service via Oversized JOSE Segments
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 black: GHSA-3936-cmfr-pm3m
Black: Arbitrary file writes from unsanitized user input in cache file name
python/uv.lock
high Security checks cicd CI/CD security conf 0.92 4 occurrences Dockerfile copies the entire context without .dockerignore
COPY . or ADD . sends the full build context to Docker. Without .dockerignore this can include secrets, git history, and local artifacts.
4 files, 4 locations
go/core/cli/internal/mcp/frameworks/golang/templates/Dockerfile.tmpl:9
go/core/cli/internal/mcp/frameworks/typescript/templates/Dockerfile.tmpl:29
go/core/test/e2e/testdata/skills/kebab-maker/Dockerfile:2
ui/Dockerfile:31
CI/CD securitycontainers
high Security checks software dependencies conf 0.90 ✓ Repobility 16 occurrences Dockerfile FROM `alpine:3.23` not pinned by digest
`FROM alpine:3.23` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity.
12 files, 14 locations
go/core/cli/internal/mcp/frameworks/java/templates/Dockerfile.tmpl:2, 20 (2 hits)
go/core/cli/internal/mcp/frameworks/python/templates/Dockerfile.tmpl:2, 29 (2 hits)
docker/skills-init/Dockerfile:26
go/Dockerfile:35
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:4
go/core/cli/internal/mcp/frameworks/golang/templates/Dockerfile.tmpl:2
go/core/cli/internal/mcp/frameworks/typescript/templates/Dockerfile.tmpl:2
python/Dockerfile:4
high Security checks cicd CI/CD security conf 0.92 3 occurrences Dockerfile pipes a remote script into a shell
Piping downloaded code directly into a shell bypasses checksum verification and makes builds dependent on mutable remote content.
2 files, 3 locations
.devcontainer/Dockerfile:36, 152 (2 hits)
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:16
CI/CD securitycontainers
low Security checks cicd CI/CD security conf 0.90 ✓ Repobility 33 occurrences GitHub Action is tag-pinned rather than SHA-pinned
Action `actions/checkout` pinned to mutable ref `@v6` uses a mutable tag or branch. Pin external actions to a reviewed full commit SHA when the workflow is security-sensitive.
5 files, 33 locations
.github/workflows/ci.yaml:43, 167, 170, 187, 215, 218, 269, 300, +4 more (23 hits)
.github/workflows/ui-chromatic.yaml:25, 30 (4 hits)
.github/workflows/run-agent-framework-test.yaml:70, 142 (3 hits)
.github/workflows/tag.yaml:150 (2 hits)
.github/workflows/image-scan.yaml:55
CI/CD securitySupply chainGitHub Actions
high Security checks cicd CI/CD security conf 0.90 ✓ Repobility 3 occurrences GitHub Action is tag-pinned rather than SHA-pinned
Action `actions/checkout` pinned to mutable ref `@main` uses a mutable tag or branch. Pin external actions to a reviewed full commit SHA when the workflow is security-sensitive.
lines 32, 72, 97
.github/workflows/tag.yaml:32, 72, 97 (3 hits)
CI/CD securitySupply chainGitHub Actions
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3557
Ollama Allocation of Resources Without Limits or Throttling vulnerability in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3558
Ollama Allows Out-of-Bounds Read in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3559
Ollama Divide By Zero vulnerability in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3582
Ollama Denial of Service (DoS) via Null Pointer Dereference in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3689
Ollama Divide by Zero Vulnerability in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3695
Ollama Server Vulnerable to Denial of Service (DoS) Attack in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-3824
Ollama vulnerable to Cross-Domain Token Exposure in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 github.com/ollama/ollama: GO-2025-4251
Ollama has missing authentication enabling attackers to perform model management operations in github.com/ollama/ollama
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5005
Invoking key constraints not enforced in golang.org/x/crypto/ssh/agent
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5006
Invoking agent constraints dropped when forwarding keys in golang.org/x/crypto/ssh/agent
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5013
Invoking byte arithmetic causes underflow and panic in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5014
Invoking bypass of certificate restrictions in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5015
Invoking server panic during CheckHostKey/Authenticate in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5016
Invoking memory leak when rejecting channels can lead to DoS in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5017
Invoking client can cause server deadlock on unexpected responses in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5018
Invoking pathological RSA/DSA parameters may cause DoS in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5019
Invoking bypass of FIDO/U2F security keys physical interaction in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5020
Invoking infinite loop on large channel writes in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5021
Invoking auth bypass via unenforced @revoked status in golang.org/x/crypto/ssh/knownhosts
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5023
Invoking VerifiedPublicKeyCallback permissions skip enforcement in golang.org/x/crypto/ssh
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/crypto: GO-2026-5033
Invoking pathological inputs can lead to client panic in golang.org/x/crypto/ssh/agent
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5025
Invoking incorrect handling of namespaced elements in foreign content in golang.org/x/net/html
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5026
Invoking failure to reject ASCII-only Punycode-encoded labels in golang.org/x/net/idna
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5027
Invoking incorrect handling of HTML elements in foreign content in golang.org/x/net/html
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5028
Invoking denial of service when parsing arbitrary HTML in golang.org/x/net/html
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5029
Invoking incorrect handling of character references in DOCTYPE nodes in golang.org/x/net/html
go/go.mod
high Security checks software dependencies conf 0.88 golang.org/x/net: GO-2026-5030
Invoking duplicate attributes can cause XSS in golang.org/x/net/html
go/go.mod
high Security checks software dependencies conf 0.88 google-cloud-aiplatform: GHSA-qv8j-hgpc-vrq8
Google Cloud Vertex AI SDK affected by Stored Cross-Site Scripting (XSS)
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 google-cloud-aiplatform: GHSA-wh2j-26j7-9728
Google Cloud Vertex AI has a a vulnerability involving predictable bucket naming
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 langsmith: GHSA-3644-q5cj-c5c7
LangSmith SDK: Public prompt pull deserializes untrusted manifests without trust boundary warning
python/uv.lock
high Security checks software dependencies conf 0.88 lxml: PYSEC-2026-87
lxml is a library for processing XML and HTML in the Python language. Prior to 6.1.0, using either of the two parsers in the default configuration (with resolve_entities=True) allows untrusted XML input to read local files. Setting the resolve_entities option explicitly to resolve_entities='interna…
python/uv.lock
high Security checks software dependencies conf 0.88 mcp: GHSA-9h52-p55h-vw2f
Model Context Protocol (MCP) Python SDK does not enable DNS rebinding protection by default
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 orjson: PYSEC-2026-107
The orjson.dumps function in orjson thru 3.11.4 does not limit recursion for deeply nested JSON documents.
python/uv.lock
high Security checks software dependencies conf 0.88 pillow: GHSA-cfh3-3jmp-rvhc
Pillow affected by out-of-bounds write when loading PSD images
python/uv.lock
high Security checks software dependencies conf 0.88 pillow: GHSA-pwv6-vv43-88gr
Pillow has an OOB Write with Invalid PSD Tile Extents (Integer Overflow)
python/uv.lock
high Security checks software dependencies conf 0.88 pillow: GHSA-whj4-6x5x-4v2j
FITS GZIP decompression bomb in Pillow
python/uv.lock
high Security checks software dependencies conf 0.88 pillow: PYSEC-2026-165
Pillow is a Python imaging library. Prior to version 12.2.0, if a font advances for each glyph by an exceeding large amount, when Pillow keeps track of the current position, it may lead to an integer overflow. This issue has been patched in version 12.2.0.
python/uv.lock
high Security checks software dependencies conf 0.88 pyarrow: PYSEC-2026-113
Use After Free vulnerability in Apache Arrow C++. This issue affects Apache Arrow C++ from 15.0.0 through 23.0.0. It can be triggered when reading an Arrow IPC file (but not an IPC stream) with pre-buffering enabled, if the IPC file contains data with variadic buffers (such as Binary View and Stri…
python/uv.lock
high Security checks software dependencies conf 0.88 pyjwt: PYSEC-2026-175
PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, PyJWKClient passes its uri argument directly to urllib.request.urlopen() which uses Python stdlib's default OpenerDirector registering HTTPHandler, HTTPSHandler, FTPHandler, FileHandler, and DataHandler. There is currently no docu…
python/uv.lock
high Security checks software dependencies conf 0.88 pyjwt: PYSEC-2026-177
PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, PyJWKClient.get_signing_key() forces a fresh HTTP request to the JWKS endpoint for every JWT with an unknown kid value, with no rate limiting. Since kid comes from the unverified token header, an attacker can trigger unlimited out…
python/uv.lock
high Security checks software dependencies conf 0.88 pyjwt: PYSEC-2026-178
PyJWT is a JSON Web Token implementation in Python. From 2.8.0 to 2.12.1, when verifying detached JWS tokens using the unencoded-payload option ("b64": false, RFC 7797), PyJWT performs Base64URL decoding of the compact-serialization payload segment before enforcing the detached-payload rules. For b…
python/uv.lock
high Security checks software dependencies conf 0.88 pyjwt: PYSEC-2026-179
PyJWT is a JSON Web Token implementation in Python. Prior to 2.13.0, when the verifier is decoding JSON Web Tokens, while supporting both asymmetric and HMAC algorithms, the library does not validate use of JSON Web Keys in HMAC algorithm, allowing attacker to use the issuer public key as the secre…
python/uv.lock
high Security checks software dependencies conf 0.88 starlette: GHSA-7f5h-v6xp-fcq8
Starlette vulnerable to O(n^2) DoS via Range header merging in ``starlette.responses.FileResponse``
python/samples/adk/basic/uv.lock
high Security checks software dependencies conf 0.88 starlette: PYSEC-2026-161
BadHost: Missing Host header validation poisons request.url.path, bypassing path-based security checks
python/uv.lock
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4918
Infinite loop in HTTP/2 transport when given bad SETTINGS_MAX_FRAME_SIZE in net/http/internal/http2 in golang.org/x/net
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4971
Panic in Dial and LookupPort when handling NUL byte on Windows in net
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4976
ReverseProxy forwards queries with more than urlmaxqueryparams parameters in net/http/httputil
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4977
Quadratic string concatenation in consumePhrase in net/mail
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4980
Escaper bypass leads to XSS in html/template
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4981
Crash when handling long CNAME response in net
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4982
Bypass of meta content URL escaping causes XSS in html/template
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-4986
Quadratic string concatentation in consumeComment in net/mail
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-5037
Inefficient candidate hostname parsing in crypto/x509
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-5038
Quadratic complexity in WordDecoder.DecodeHeader in mime
go/go.mod
high Security checks software dependencies conf 0.88 stdlib: GO-2026-5039
Arbitrary inputs are included in errors without any escaping in net/textproto
go/go.mod
high Security checks software dependencies conf 0.90 ✓ Repobility Workflow container/services image `registry:2` unpinned
`container/services image: registry:2` without `@sha256:...` pulls a mutable tag at workflow-run time. Treat workflow container references with the same supply-chain discipline as Dockerfile FROM lines.
.github/workflows/image-scan.yaml:50
high Security checks software dependencies conf 0.90 ✓ Repobility Workflow container/services image `registry:2` unpinned
`container/services image: registry:2` without `@sha256:...` pulls a mutable tag at workflow-run time. Treat workflow container references with the same supply-chain discipline as Dockerfile FROM lines.
.github/workflows/ci.yaml:264
high System graph quality Integrity conf 1.00 Blocking `httpx.post(...)` inside `async def _fetch_oauth_token` — python/packages/kagent-adk/src/kagent/adk/models/_sap_ai_core.py:33
Sync I/O inside an async function blocks the event loop. While `httpx.post(...)` is running, *all* other coroutines on this loop are paused — silent throughput collapse under concurrency. Use the async equivalent (`httpx.AsyncClient`, `asyncio.sleep`, `aiofiles`) or wrap with `await asyncio.to_thre…
python/packages/kagent-adk/src/kagent/adk/models/_sap_ai_core.py:33 Sync io in asyncPerformance
high System graph hardware Supply chain conf 1.00 3 occurrences Dockerfile pipes a remote installer into a shell
Executing downloaded code during image build gives the remote endpoint build-time code execution. Prefer pinned packages or verify downloaded installers by checksum/signature.
2 files, 3 locations
.devcontainer/Dockerfile:122, 152 (2 hits)
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:16
containersRemote installer
high System graph cicd CI/CD security conf 1.00 3 occurrences GitHub Action tracks a moving branch
actions/checkout@main can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA.
lines 32, 72, 97
.github/workflows/tag.yaml:32, 72, 97 (3 hits)
CI/CD securitySupply chainGithub actions
high System graph security security conf 1.00 Insecure pattern 'tls_verify_false' in python/packages/kagent-adk/src/kagent/adk/models/_token_source.py:72
Found a known-risky pattern (tls_verify_false). Review and replace if possible.
python/packages/kagent-adk/src/kagent/adk/models/_token_source.py:72 Tls verify false
medium Security checks security auth conf 0.92 [AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
high Security checks security auth conf 0.74 [AUC002] Low visible authorization coverage in route inventory: Only 0.0% of discovered routes show nearby authentication, authorization, middleware, or public-route evidence.
Only 0.0% of discovered routes show nearby authentication, authorization, middleware, or public-route evidence.
high Security checks security auth conf 0.68 [AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: POST /a2a-sandboxes/:namespace/:agentName.
A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: POST /a2a-sandboxes/:namespace/:agentName.
ui/src/app/a2a-sandboxes/[namespace]/[agentName]/route.ts:5
high Security checks security auth conf 0.68 [AUC009] Sensitive function route lacks elevated authorization evidence: A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: POST /a2a/:namespace/:agentName.
A route appears to perform a sensitive function such as export, invite, role, token, billing, or destructive action without elevated policy evidence. Endpoint: POST /a2a/:namespace/:agentName.
ui/src/app/a2a/[namespace]/[agentName]/route.ts:5
medium Security checks security Crypto conf 1.00 [SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
Enable SSL verification. Use verify=True (default) for requests. Pin certificates if needed.
python/packages/kagent-adk/src/kagent/adk/models/_token_source.py:72
medium Security checks security Crypto conf 1.00 [SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
Enable SSL verification. Use verify=True (default) for requests. Pin certificates if needed.
python/packages/kagent-adk/src/kagent/adk/models/_ssl.py:178
medium Security checks software Open redirect conf 1.00 [SEC046] Client-side open redirect — window.location = server-supplied URL: Assigning window.location from a server-supplied URL trusts the server endpoint to never return a hostile destination. If that endpoint is ever subverted (compromised admin, JSON injection, MITM on a webhook), users get redirected to a phishing site they trust because the original page is yours. CWE-601 (server-side OR client-side). Complement to server-side SEC030.
Validate the URL is same-origin or on an explicit allowlist before assignment: const u = new URL(serverUrl, location.href); if (u.origin !== location.origin && !ALLOWED.includes(u.host)) return; location.assign(u); Even better: have the server return a path (/checkout/done) instead of a full …
ui/src/components/UserMenu.tsx:37
medium Security checks quality Quality conf 1.00 [SEC125] AI placeholder credential left in source (your-api-key-here style): AI coding assistants frequently emit placeholder credentials shaped like `API_KEY = "your-api-key-here"` instead of pulling from env. These get committed verbatim — production code with a literal placeholder string is a near-certain bug, and the value also leaks what credential type the system expects to authentication crawlers. CWE-1188. Distinctive AI footprint: the exact phrase shape `your-X-here` is uncommon in hand
Replace with env lookup: `API_KEY = os.environ['SERVICE_API_KEY']`. Move actual key to a secret manager. Add a startup check that the env var is non-empty so missing config fails loudly instead of shipping the placeholder.
go/core/cli/internal/cli/agent/utils.go:291
high Security checks quality Quality conf 0.72 4 occurrences Agent control bridge may listen on a network interface without visible auth
Agent, MCP, sidecar, and command bridge servers often start as local helpers. Binding them to 0.0.0.0 or a default all-interface listener without an authorization guard can expose tool execution or session data to the LAN.
4 files, 4 locations
.github/data/agent-framework/scenario1/run.sh:197
.github/data/agent-framework/scenario1/service-no-endpoint.yaml:65
go/core/internal/controller/translator/agent/testdata/outputs/agent_with_http_toolserver.json:29
go/core/internal/controller/translator/agent/testdata/outputs/agent_with_scheduling_attributes.json:150
medium Security checks software dependencies conf 0.88 2 occurrences aiohttp: GHSA-hg6j-4rv6-33pg
AIOHTTP is vulnerable to cross-origin redirect with per-request cookies
2 files, 2 locations
go/core/test/e2e/agents/kebab/uv.lock
python/uv.lock
medium Security checks software dependencies conf 0.88 2 occurrences aiohttp: GHSA-jg22-mg44-37j8
AIOHTTP is Vulnerable to Deserialization of Untrusted Data
2 files, 2 locations
go/core/test/e2e/agents/kebab/uv.lock
python/uv.lock
medium Security checks software dependencies conf 0.88 authlib: GHSA-fg6f-75jq-6523
Authlib has 1-click Account Takeover vulnerability
python/samples/adk/basic/uv.lock
medium Security checks software dependencies conf 0.88 authlib: GHSA-g7f3-828f-7h7m
Authlib : JWE zip=DEF decompression bomb enables DoS
python/samples/adk/basic/uv.lock
low Security checks quality Error handling conf 0.55 ✓ Repobility 6 occurrences Broad exception handler needs review
This handler catches Exception/BaseException. It is actionable when it swallows errors without logging, re-raising, or returning a structured error. Handlers that intentionally convert exceptions into typed error results should not be treated as high risk.
5 files, 6 locations
python/packages/kagent-adk/src/kagent/adk/models/_openai.py:435, 599 (2 hits)
python/packages/kagent-adk/src/kagent/adk/models/_bedrock.py:419
python/packages/kagent-adk/src/kagent/adk/models/_ollama.py:266
python/packages/kagent-adk/src/kagent/adk/sandbox_code_executer.py:75
python/packages/kagent-openai/src/kagent/openai/tools/_tools.py:169
Error handlingquality
medium Security checks software dependencies conf 0.88 diskcache: GHSA-w8v5-vhqr-4h9v
DiskCache has unsafe pickle deserialization
python/uv.lock
medium Security checks cicd CI/CD security conf 0.90 Docker build context has no .dockerignore
Without .dockerignore, build context can include source history, local env files, dependencies, and generated artifacts.
.dockerignore CI/CD securitycontainers
high Security checks cicd CI/CD security conf 0.82 14 occurrences Docker final stage has no non-root USER
Docker images run as root unless the image or Dockerfile switches to a non-root user.
12 files, 12 locations
.devcontainer/Dockerfile:101
go/core/cli/internal/agent/frameworks/adk/python/templates/Dockerfile.tmpl:7
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:5
go/core/cli/internal/mcp/frameworks/golang/templates/Dockerfile.tmpl:14
go/core/test/e2e/agents/kebab/Dockerfile:5
python/Dockerfile:97
python/Dockerfile.app:4
python/samples/adk/basic/Dockerfile:4
CI/CD securitycontainers
medium Security checks software dependencies conf 0.88 2 occurrences idna: GHSA-65pc-fj4g-8rjx
Internationalized Domain Names in Applications (IDNA): Specially crafted inputs to idna.encode() can bypass CVE-2024-3651 fix
2 files, 2 locations
go/core/test/e2e/agents/kebab/uv.lock
python/uv.lock
medium Security checks software dependencies conf 0.88 langsmith: GHSA-rr7j-v2q5-chgv
LangSmith SDK: Streaming token events bypass output redaction
python/uv.lock
medium Security checks software dependencies conf 0.88 langsmith: GHSA-v34v-rq6j-cj6p
LangSmith Client SDK Affected by Server-Side Request Forgery via Tracing Header Injection
python/uv.lock
high Security checks quality Quality conf 0.80 localStorage write failures are swallowed silently
localStorage quotas are small and writes can fail. Catching storage errors without a user-visible warning causes silent data loss when notes, images, or snapshots exceed quota.
ui/src/components/AgentList.tsx:81
medium Security checks software dependencies conf 0.90 npm package `chai` is 1 major version(s) behind (5.3.3 -> 6.2.2)
`chai` is pinned/resolved at 5.3.3 but the latest stable release on the npm registry is 6.2.2 (1 major version(s) behind). Outdated dependencies accumulate unpatched bugs and make future security upgrades harder. This is the version-currency signal Dependabot version-update PRs raise.
.github/data/agent-framework/package.json
medium Security checks software dependencies conf 0.90 npm package `js-yaml` is 1 major version(s) behind (3.14.2 -> 4.2.0)
`js-yaml` is pinned/resolved at 3.14.2 but the latest stable release on the npm registry is 4.2.0 (1 major version(s) behind). Outdated dependencies accumulate unpatched bugs and make future security upgrades harder. This is the version-currency signal Dependabot version-update PRs raise.
.github/data/agent-framework/package.json
medium Security checks software dependencies conf 0.90 npm package `uuid` is 3 major version(s) behind (11.1.0 -> 14.0.0)
`uuid` is pinned/resolved at 11.1.0 but the latest stable release on the npm registry is 14.0.0 (3 major version(s) behind). Outdated dependencies accumulate unpatched bugs and make future security upgrades harder. This is the version-currency signal Dependabot version-update PRs raise.
ui/package.json
medium Security checks software dependencies conf 0.88 pillow: GHSA-5xmw-vc9v-4wf2
Pillow has a heap buffer overflow with nested list coordinates
python/uv.lock
medium Security checks software dependencies conf 0.88 pillow: GHSA-r73j-pqj5-w3x7
Pillow has a PDF Parsing Trailer Infinite Loop (DoS)
python/uv.lock
high Security checks software dependencies conf 0.70 Remote install command pipes network code directly to a shell
Agent helper projects often publish one-line installers. `curl | sh` style commands are convenient, but they bypass review unless the script is pinned, signed, or checksum-verified.
.claude/skills/kagent/references/cli-reference.md:10
medium Security checks software dependencies conf 0.88 uv: GHSA-4gg8-gxpx-9rph
uv is vulnerable to arbitrary file write through entry point names
python/uv.lock
medium System graph quality Integrity conf 1.00 `fetch()` without try/.catch or AbortSignal — ui/public/mockServiceWorker.js:238
Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout.
runtime safetyRobustness
medium System graph quality Integrity conf 1.00 `fetch()` without try/.catch or AbortSignal — ui/src/app/a2a-sandboxes/[namespace]/[agentName]/route.ts:19
Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout.
runtime safetyRobustness
medium System graph quality Integrity conf 1.00 `fetch()` without try/.catch or AbortSignal — ui/src/app/a2a/[namespace]/[agentName]/route.ts:20
Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout.
runtime safetyRobustness
medium System graph quality Integrity conf 1.00 `fetch()` without try/.catch or AbortSignal — ui/src/lib/a2aClient.ts:56
Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout.
runtime safetyRobustness
medium System graph hardware Security conf 1.00 Dockerfile runs as root: .devcontainer/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: go/core/test/e2e/agents/kebab/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: go/core/test/e2e/testdata/skills/kebab-maker/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/adk/basic/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/crewai/poem_flow/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/crewai/research-crew/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/langgraph/currency/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/langgraph/hitl-tools/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/langgraph/kebab/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph hardware Security conf 1.00 Dockerfile runs as root: python/samples/openai/basic_agent/Dockerfile
No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image.
Container
medium System graph cicd CI/CD security conf 1.00 25 occurrences GitHub Action is tag-pinned rather than SHA-pinned
docker/setup-qemu-action@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA.
4 files, 25 locations
.github/workflows/ci.yaml:54, 58, 67, 190, 271, 275, 324, 348 (12 hits)
.github/workflows/tag.yaml:35, 42, 44, 75, 99, 162 (8 hits)
.github/workflows/image-scan.yaml:57, 59, 85 (3 hits)
.github/workflows/run-agent-framework-test.yaml:69, 72 (2 hits)
CI/CD securitySupply chainGitHub Actions
medium System graph cicd CI/CD security conf 1.00 GitHub Actions workflow grants broad write permissions
CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions.
.github/workflows/tag.yaml CI/CD securitySupply chainGithub actions
medium System graph network Security conf 1.00 Privileged port 10 in use
Port 10 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer.
.github/workflows/stalebot.yaml Ports
medium System graph network Security conf 1.00 Privileged port 1001 in use
Port 1001 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer.
python/Dockerfile Ports
low Security checks quality Error handling conf 1.00 [ERR003] Ignored Error (Go): Ignoring error return values.
Handle the error or use errcheck linter.
go/adk/pkg/a2a/server/health.go:12
low Security checks quality Error handling conf 1.00 [ERR003] Ignored Error (Go): Ignoring error return values.
Handle the error or use errcheck linter.
go/adk/cmd/main.go:50
low Security checks cicd CI/CD security conf 0.72 9 occurrences Dockerfile installs recommended OS packages
Installing recommended packages often pulls in unnecessary runtime surface area.
9 files, 9 locations
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:8
go/core/cli/internal/mcp/frameworks/python/templates/Dockerfile.tmpl:50
go/core/cli/internal/mcp/frameworks/typescript/templates/Dockerfile.tmpl:8
python/samples/crewai/poem_flow/Dockerfile:9
python/samples/crewai/research-crew/Dockerfile:9
python/samples/langgraph/currency/Dockerfile:9
python/samples/langgraph/hitl-tools/Dockerfile:9
python/samples/langgraph/kebab/Dockerfile:9
CI/CD securitycontainers
low Security checks quality Quality conf 0.60 30 occurrences Duplicated implementation block across source files
Duplicate implementation blocks are maintenance debt. Keep them visible, but they are not a high-severity defect unless the duplicated logic is security-sensitive or drifting.
12 files, 22 locations
go/api/v1alpha1/modelconfig_types.go:1, 2, 4 (3 hits)
go/api/v1alpha2/sandboxagent_types.go:1, 2, 4 (3 hits)
go/api/v1alpha1/memory_types.go:1, 2 (2 hits)
go/api/v1alpha2/modelconfig_types.go:1, 14 (2 hits)
go/api/v1alpha2/modelproviderconfig_types.go:1, 2 (2 hits)
go/core/cli/internal/mcp/frameworks/typescript/generator.go:6, 107 (2 hits)
go/core/internal/controller/modelproviderconfig_controller.go:1, 15 (2 hits)
go/core/internal/controller/remote_mcp_server_controller.go:1, 15 (2 hits)
duplicationquality
low Security checks software dependencies conf 0.90 npm package `postcss` is minor version(s) behind (8.4.31 -> 8.5.15)
`postcss` is pinned/resolved at 8.4.31 but the latest stable release on the npm registry is 8.5.15 (minor version(s) behind). Outdated dependencies accumulate unpatched bugs and make future security upgrades harder. This is the version-currency signal Dependabot version-update PRs raise.
ui/package.json
low Security checks software dependencies conf 0.88 pygments: GHSA-5239-wwwm-4pmq
Pygments has Regular Expression Denial of Service (ReDoS) due to Inefficient Regex for GUID Matching
python/uv.lock
low Security checks software dependencies conf 0.88 uv: GHSA-pjjw-68hj-v9mw
uv vulnerable to arbitrary file deletion through RECORD entries
python/uv.lock
low System graph hardware Supply chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: alpine:3.23
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
docker/skills-init/Dockerfile:26 containersPinned dependencies
low System graph hardware Supply chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: gcr.io/distroless/static:nonroot
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
go/Dockerfile:35 containersPinned dependencies
low System graph hardware Supply chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: ghcr.io/astral-sh/uv:${UV_VERSION}
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
python/Dockerfile:4 containersPinned dependencies
low System graph hardware Supply chain conf 1.00 6 occurrences Docker base image is tag-pinned but not digest-pinned: ghcr.io/astral-sh/uv:python3.13-trixie-slim
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
6 files, 6 locations
python/samples/crewai/poem_flow/Dockerfile:4
python/samples/crewai/research-crew/Dockerfile:4
python/samples/langgraph/currency/Dockerfile:4
python/samples/langgraph/hitl-tools/Dockerfile:4
python/samples/langgraph/kebab/Dockerfile:4
python/samples/openai/basic_agent/Dockerfile:2
containersPinned dependencies
low System graph hardware Supply chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: node:24-bookworm-slim
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
go/core/cli/internal/agent/frameworks/adk/python/templates/mcp_server/Dockerfile:4 containersPinned dependencies
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/cypress.config.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/cypress/e2e/smoke.cy.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/jest.config.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/next.config.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/__tests__/DeleteAgentButton.test.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/agent-form/agent-form-types.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/AgentCard.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/chat/AgentCallDisplay.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/chat/ChatInterface.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/chat/StatusDisplay.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/chat/StreamingMessage.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/create/__tests__/PromptInstructionsTextarea.test.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ErrorState.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/Footer.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/Header.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/icons/McpIcon.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/LoadingState.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/models/new/AuthSection.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/models/new/ParamsSection.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/sidebars/AgentDetailsSidebar.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/sidebars/AgentSwitcher.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/sidebars/ChatItem.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/sidebars/EmptyState.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/sidebars/SessionGroup.stories.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/tools/CategoryFilter.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/alert.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/button.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/card.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/checkbox.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/collapsible.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/input.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/label.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/popover.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/progress.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/radio-group.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/scroll-area.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/select.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/separator.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/switch.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/table.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/tabs.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/textarea.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/components/ui/tooltip.tsx
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/lib/constants.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/lib/k8sUtils.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/lib/skipToContent.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/src/mocks/browser.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/tailwind.config.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/vitest.config.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph software Dead code candidate conf 1.00 File has no detected symbols: ui/vitest.shims.d.ts
Source file with no class/function declarations — possible config, dead code, or scratch file.
low System graph quality Integrity conf 1.00 14 occurrences Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: python/packages/agentsts-core/src/agentsts/core/_base.py:exchange_token, python/packages/agentsts-core/src/agentsts/core/client/_client.py:exchange_token This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn…
14 occurrences
repo-level (14 hits)
duplicatesduplication
low System graph quality Integrity conf 1.00 3 occurrences Near-duplicate function bodies in 3 places
Functions with the same first-5-line body hash: python/packages/kagent-adk/src/kagent/adk/cli.py:root_agent_factory, python/packages/kagent-adk/src/kagent/adk/cli.py:root_agent_factory, python/packages/kagent-adk/src/kagent/adk/cli.py:root_agent_factory This is *the* AI-coder failure mode (4× more…
3 occurrences
repo-level (3 hits)
duplicatesduplication
low System graph quality Integrity conf 1.00 Near-duplicate function bodies in 6 places
Functions with the same first-5-line body hash: python/packages/kagent-crewai/src/kagent/crewai/_listeners.py:on_task_started, python/packages/kagent-crewai/src/kagent/crewai/_listeners.py:on_agent_execution_started, python/packages/kagent-crewai/src/kagent/crewai/_listeners.py:on_tool_usage_starte…
duplicatesduplication
low System graph software Dead code conf 1.00 Possibly dead Python function: auto_save_session_to_memory_callback
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/types.py:582
low System graph software Dead code conf 1.00 Possibly dead Python function: before_model_callback
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_llm_passthrough_plugin.py:45
low System graph software Dead code conf 1.00 Possibly dead Python function: before_tool
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_approval.py:58
low System graph software Dead code conf 1.00 Possibly dead Python function: build_local
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-openai/src/kagent/openai/_a2a.py:193
low System graph software Dead code conf 1.00 Possibly dead Python function: create_runner
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_a2a.py:111
low System graph software Dead code conf 1.00 Possibly dead Python function: def_health_check
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-crewai/src/kagent/crewai/_a2a.py:27
low System graph software Dead code conf 1.00 Possibly dead Python function: extract_jwt_claims
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/agentsts-core/src/agentsts/core/client/_utils.py:63
low System graph software Dead code conf 1.00 Possibly dead Python function: force_flush
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-core/src/kagent/core/tracing/_span_processor.py:39
low System graph software Dead code conf 1.00 Possibly dead Python function: health_check
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_a2a.py:39
low System graph software Dead code conf 1.00 Possibly dead Python function: health_check
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-openai/src/kagent/openai/_a2a.py:40
low System graph software Dead code conf 1.00 Possibly dead Python function: init_db
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-crewai/src/kagent/crewai/_state.py:32
low System graph software Dead code conf 1.00 Possibly dead Python function: list_sessions_sync
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_session_service.py:150
low System graph software Dead code conf 1.00 Possibly dead Python function: load_state
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-crewai/src/kagent/crewai/_state.py:55
low System graph software Dead code conf 1.00 Possibly dead Python function: maybe_add_skills
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/cli.py:39
low System graph software Dead code conf 1.00 Possibly dead Python function: pop_item
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-openai/src/kagent/openai/_session_service.py:199
low System graph software Dead code conf 1.00 Possibly dead Python function: read_token
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_token.py:75
low System graph software Dead code conf 1.00 Possibly dead Python function: rewrite_url_to_proxy
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/types.py:476
low System graph software Dead code conf 1.00 Possibly dead Python function: save_state
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-crewai/src/kagent/crewai/_state.py:36
low System graph software Dead code conf 1.00 Possibly dead Python function: setup_listeners
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-crewai/src/kagent/crewai/_listeners.py:54
low System graph software Dead code conf 1.00 Possibly dead Python function: strip_confirmation_parts_callback
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_approval.py:20
low System graph software Dead code conf 1.00 Possibly dead Python function: thread_dump
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-adk/src/kagent/adk/_a2a.py:43
low System graph software Dead code conf 1.00 Possibly dead Python function: thread_dump
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-openai/src/kagent/openai/_a2a.py:45
low System graph software Dead code conf 1.00 Possibly dead Python function: wait_for_save
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
python/packages/kagent-core/src/kagent/core/a2a/_task_store.py:112
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/app/a2a-sandboxes/[namespace]/[agentName]/route.ts:83
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/app/a2a/[namespace]/[agentName]/route.ts:87
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/components/AgentsProvider.tsx:302
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/components/chat/ChatLayoutUI.tsx:61
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/components/chat/ChatMessage.stories.tsx:141
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/components/chat/CodeBlock.stories.tsx:21
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph frontend Frontend quality conf 1.00 Stray `console.log` in TS/JS — ui/src/components/chat/TruncatableText.stories.tsx:100
Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable. Why: Hygiene — easy to leak debug output. Rule id: fq.console-leak
Fq console leak
low System graph quality Complexity conf 1.00 Very large file: go/api/openshell/gen/computev1/compute_driver.pb.go (1822 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/api/openshell/gen/openshellv1/openshell.pb.go (10496 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/api/openshell/gen/openshellv1/openshell_grpc.pb.go (2047 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/api/openshell/gen/sandboxv1/sandbox.pb.go (1742 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/api/v1alpha2/zz_generated.deepcopy.go (1993 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/core/internal/controller/reconciler/reconciler.go (1527 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/core/internal/controller/translator/agent/adk_api_translator.go (1592 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: go/core/test/e2e/invoke_api_test.go (1739 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
low System graph quality Complexity conf 1.00 Very large file: python/packages/agentsts-adk/tests/test_adk_integration.py (1173 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/79820c95-32a9-4e77-9465-f8dda748c65a/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/79820c95-32a9-4e77-9465-f8dda748c65a/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.