Repository Analysis

e2b-dev/E2B

Open-source, secure environment with real-world tools for enterprise-grade agents.

19.4 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of e2b-dev/E2B, a Python project with 12,971 GitHub stars. SynthScan v2.0 examined 111,499 lines of code across 663 source files, recording 1307 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 19.4 places this repository in the Moderate AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

19.4
Adjusted Score
19.4
Raw Score
100%
Time Factor
2026-07-14
Last Push
13.0K
Stars
Python
Language
111.5K
Lines of Code
663
Files
1.3K
Pattern Hits
2026-07-14
Scan Date
0.30
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 200MEDIUM 17LOW 1090

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1307 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Docstring Block Structure180 hits · 900 pts
SeverityFileLineSnippetContext
HIGH…n-sdk/e2b/api/client/api/sandboxes/get_v2_sandboxes.py99List all sandboxes Args: metadata (Union[Unset, str]): state (Union[Unset, list[SandboxState]]): STRING
HIGH…n-sdk/e2b/api/client/api/sandboxes/get_v2_sandboxes.py137List all sandboxes Args: metadata (Union[Unset, str]): state (Union[Unset, list[SandboxState]]): STRING
HIGH…n-sdk/e2b/api/client/api/sandboxes/get_v2_sandboxes.py170List all sandboxes Args: metadata (Union[Unset, str]): state (Union[Unset, list[SandboxState]]): STRING
HIGH…n-sdk/e2b/api/client/api/sandboxes/get_v2_sandboxes.py206List all sandboxes Args: metadata (Union[Unset, str]): state (Union[Unset, list[SandboxState]]): STRING
HIGH…/e2b/api/client/api/sandboxes/get_sandboxes_metrics.py75List metrics for given sandboxes Args: sandbox_ids (list[str]): Raises: errors.UnexpectedStatuSTRING
HIGH…/e2b/api/client/api/sandboxes/get_sandboxes_metrics.py104List metrics for given sandboxes Args: sandbox_ids (list[str]): Raises: errors.UnexpectedStatuSTRING
HIGH…/e2b/api/client/api/sandboxes/get_sandboxes_metrics.py128List metrics for given sandboxes Args: sandbox_ids (list[str]): Raises: errors.UnexpectedStatuSTRING
HIGH…/e2b/api/client/api/sandboxes/get_sandboxes_metrics.py155List metrics for given sandboxes Args: sandbox_ids (list[str]): Raises: errors.UnexpectedStatuSTRING
HIGH…lient/api/sandboxes/post_sandboxes_sandbox_id_pause.py78Pause the sandbox Args: sandbox_id (str): body (SandboxPauseRequest): Raises: errors.USTRING
HIGH…lient/api/sandboxes/post_sandboxes_sandbox_id_pause.py110Pause the sandbox Args: sandbox_id (str): body (SandboxPauseRequest): Raises: errors.USTRING
HIGH…lient/api/sandboxes/post_sandboxes_sandbox_id_pause.py137Pause the sandbox Args: sandbox_id (str): body (SandboxPauseRequest): Raises: errors.USTRING
HIGH…lient/api/sandboxes/post_sandboxes_sandbox_id_pause.py167Pause the sandbox Args: sandbox_id (str): body (SandboxPauseRequest): Raises: errors.USTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_refreshes.py72Refresh the sandbox extending its time to live Args: sandbox_id (str): body (PostSandboxesSandboxIDSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_refreshes.py104Refresh the sandbox extending its time to live Args: sandbox_id (str): body (PostSandboxesSandboxIDSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_refreshes.py131Refresh the sandbox extending its time to live Args: sandbox_id (str): body (PostSandboxesSandboxIDSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_refreshes.py161Refresh the sandbox extending its time to live Args: sandbox_id (str): body (PostSandboxesSandboxIDSTRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_timeout.py76Set the timeout for the sandbox. The sandbox will expire x seconds from the time of the request. Calling this methodSTRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_timeout.py110Set the timeout for the sandbox. The sandbox will expire x seconds from the time of the request. Calling this methodSTRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_timeout.py139Set the timeout for the sandbox. The sandbox will expire x seconds from the time of the request. Calling this methodSTRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_timeout.py171Set the timeout for the sandbox. The sandbox will expire x seconds from the time of the request. Calling this methodSTRING
HIGH…pi/client/api/sandboxes/delete_sandboxes_sandbox_id.py63Kill a sandbox Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server returns STRING
HIGH…pi/client/api/sandboxes/delete_sandboxes_sandbox_id.py92Kill a sandbox Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server returns STRING
HIGH…pi/client/api/sandboxes/delete_sandboxes_sandbox_id.py116Kill a sandbox Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server returns STRING
HIGH…pi/client/api/sandboxes/delete_sandboxes_sandbox_id.py143Kill a sandbox Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server returns STRING
HIGH…hon-sdk/e2b/api/client/api/sandboxes/post_sandboxes.py74Create a sandbox from the template Args: body (NewSandbox): Raises: errors.UnexpectedStatus: ISTRING
HIGH…hon-sdk/e2b/api/client/api/sandboxes/post_sandboxes.py103Create a sandbox from the template Args: body (NewSandbox): Raises: errors.UnexpectedStatus: ISTRING
HIGH…hon-sdk/e2b/api/client/api/sandboxes/post_sandboxes.py127Create a sandbox from the template Args: body (NewSandbox): Raises: errors.UnexpectedStatus: ISTRING
HIGH…hon-sdk/e2b/api/client/api/sandboxes/post_sandboxes.py154Create a sandbox from the template Args: body (NewSandbox): Raises: errors.UnexpectedStatus: ISTRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_connect.py84Returns sandbox details. If the sandbox is paused, it will be resumed. TTL is only extended. Args: sandbox_STRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_connect.py116Returns sandbox details. If the sandbox is paused, it will be resumed. TTL is only extended. Args: sandbox_STRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_connect.py143Returns sandbox details. If the sandbox is paused, it will be resumed. TTL is only extended. Args: sandbox_STRING
HIGH…ent/api/sandboxes/post_sandboxes_sandbox_id_connect.py173Returns sandbox details. If the sandbox is paused, it will be resumed. TTL is only extended. Args: sandbox_STRING
HIGH…ent/api/sandboxes/get_v_2_sandboxes_sandbox_id_logs.py101Get sandbox logs Args: sandbox_id (str): cursor (Union[Unset, int]): limit (Union[Unset, inSTRING
HIGH…ent/api/sandboxes/get_v_2_sandboxes_sandbox_id_logs.py145Get sandbox logs Args: sandbox_id (str): cursor (Union[Unset, int]): limit (Union[Unset, inSTRING
HIGH…ent/api/sandboxes/get_v_2_sandboxes_sandbox_id_logs.py184Get sandbox logs Args: sandbox_id (str): cursor (Union[Unset, int]): limit (Union[Unset, inSTRING
HIGH…ent/api/sandboxes/get_v_2_sandboxes_sandbox_id_logs.py226Get sandbox logs Args: sandbox_id (str): cursor (Union[Unset, int]): limit (Union[Unset, inSTRING
HIGH…b/api/client/api/sandboxes/get_sandboxes_sandbox_id.py65Get a sandbox by id Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server retSTRING
HIGH…b/api/client/api/sandboxes/get_sandboxes_sandbox_id.py94Get a sandbox by id Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server retSTRING
HIGH…b/api/client/api/sandboxes/get_sandboxes_sandbox_id.py118Get a sandbox by id Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server retSTRING
HIGH…b/api/client/api/sandboxes/get_sandboxes_sandbox_id.py145Get a sandbox by id Args: sandbox_id (str): Raises: errors.UnexpectedStatus: If the server retSTRING
HIGH…ient/api/sandboxes/put_sandboxes_sandbox_id_network.py78Update the network configuration for a running sandbox. Replaces the current egress rules with the provided configurSTRING
HIGH…ient/api/sandboxes/put_sandboxes_sandbox_id_network.py113Update the network configuration for a running sandbox. Replaces the current egress rules with the provided configurSTRING
HIGH…ient/api/sandboxes/put_sandboxes_sandbox_id_network.py143Update the network configuration for a running sandbox. Replaces the current egress rules with the provided configurSTRING
HIGH…ient/api/sandboxes/put_sandboxes_sandbox_id_network.py176Update the network configuration for a running sandbox. Replaces the current egress rules with the provided configurSTRING
HIGH…/client/api/sandboxes/get_sandboxes_sandbox_id_logs.py79Get sandbox logs. Use /v2/sandboxes/{sandboxID}/logs instead. Args: sandbox_id (str): start (Union[STRING
HIGH…/client/api/sandboxes/get_sandboxes_sandbox_id_logs.py114Get sandbox logs. Use /v2/sandboxes/{sandboxID}/logs instead. Args: sandbox_id (str): start (Union[STRING
HIGH…/client/api/sandboxes/get_sandboxes_sandbox_id_logs.py144Get sandbox logs. Use /v2/sandboxes/{sandboxID}/logs instead. Args: sandbox_id (str): start (Union[STRING
HIGH…/client/api/sandboxes/get_sandboxes_sandbox_id_logs.py177Get sandbox logs. Use /v2/sandboxes/{sandboxID}/logs instead. Args: sandbox_id (str): start (Union[STRING
HIGH…ient/api/sandboxes/post_sandboxes_sandbox_id_resume.py80Resume the sandbox Args: sandbox_id (str): body (ResumedSandbox): Raises: errors.UnexpSTRING
HIGH…ient/api/sandboxes/post_sandboxes_sandbox_id_resume.py112Resume the sandbox Args: sandbox_id (str): body (ResumedSandbox): Raises: errors.UnexpSTRING
HIGH…ient/api/sandboxes/post_sandboxes_sandbox_id_resume.py139Resume the sandbox Args: sandbox_id (str): body (ResumedSandbox): Raises: errors.UnexpSTRING
HIGH…ient/api/sandboxes/post_sandboxes_sandbox_id_resume.py169Resume the sandbox Args: sandbox_id (str): body (ResumedSandbox): Raises: errors.UnexpSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_snapshots.py82Create a persistent snapshot from the sandbox's current state. Snapshots can be used to create new sandboxes and perSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_snapshots.py115Create a persistent snapshot from the sandbox's current state. Snapshots can be used to create new sandboxes and perSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_snapshots.py143Create a persistent snapshot from the sandbox's current state. Snapshots can be used to create new sandboxes and perSTRING
HIGH…t/api/sandboxes/post_sandboxes_sandbox_id_snapshots.py174Create a persistent snapshot from the sandbox's current state. Snapshots can be used to create new sandboxes and perSTRING
HIGH…ient/api/sandboxes/get_sandboxes_sandbox_id_metrics.py88Get sandbox metrics Args: sandbox_id (str): start (Union[Unset, int]): end (Union[Unset, inSTRING
HIGH…ient/api/sandboxes/get_sandboxes_sandbox_id_metrics.py124Get sandbox metrics Args: sandbox_id (str): start (Union[Unset, int]): end (Union[Unset, inSTRING
HIGH…ient/api/sandboxes/get_sandboxes_sandbox_id_metrics.py155Get sandbox metrics Args: sandbox_id (str): start (Union[Unset, int]): end (Union[Unset, inSTRING
HIGH…ient/api/sandboxes/get_sandboxes_sandbox_id_metrics.py189Get sandbox metrics Args: sandbox_id (str): start (Union[Unset, int]): end (Union[Unset, inSTRING
120 more matches not shown…
Hyper-Verbose Identifiers692 hits · 788 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/e2b_connect/client.py43def make_error_from_http_code(http_code: int):CODE
LOWpackages/python-sdk/e2b_connect/client.py336 def _prepare_server_stream_request(CODE
LOWpackages/python-sdk/tests/conftest.py32def pytest_runtest_makereport(item, call):CODE
LOWpackages/python-sdk/tests/conftest.py207 def catch_cmd_exit_error_in_background(cmd: AsyncCommandHandle):CODE
LOWpackages/python-sdk/tests/conftest.py246def _skip_unless_volume_tests_enabled():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py19def test_maps_invalid_argument():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py24def test_maps_unauthenticated():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py34def test_maps_resource_exhausted_to_rate_limit():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py40def test_maps_unavailable_to_timeout():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py45def test_falls_back_to_sandbox_exception():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py50def test_returns_raw_remote_protocol_error_without_health_result():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py58def test_returns_raw_network_errors():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py64def test_maps_read_timeout_to_timeout():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py71def test_maps_connect_timeout_to_timeout():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py76def test_returns_original_when_not_connect_exception():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py88def test_health_check_confirms_sandbox_killed():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py94def test_health_check_running_returns_raw_error():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py100def test_health_check_unknown_returns_raw_error():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py106def test_health_check_failure_returns_raw_error():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py115def test_health_check_not_run_for_other_exceptions():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py125async def test_async_health_check_confirms_sandbox_killed():CODE
LOWpackages/python-sdk/tests/test_envd_rpc_exception.py134async def test_async_health_check_failure_returns_raw_error():CODE
LOWpackages/python-sdk/tests/test_paginator.py25def test_paginator_exposes_state_and_advances():CODE
LOWpackages/python-sdk/tests/test_paginator.py47def test_paginator_raises_once_exhausted():CODE
LOWpackages/python-sdk/tests/test_connection_config.py24def test_api_url_has_correct_priority(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py31def test_validate_api_key_defaults_to_true(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py38def test_validate_api_key_disabled_via_env_var(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py45def test_validate_api_key_arg_has_priority_over_env_var(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py52def test_sandbox_url_uses_stable_host_for_supported_domain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py58def test_sandbox_url_uses_stable_host_for_supported_non_prod_domain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py64def test_sandbox_url_uses_explicit_url_first():CODE
LOWpackages/python-sdk/tests/test_connection_config.py72def test_sandbox_url_falls_back_to_per_sandbox_host_for_custom_domain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py81def test_sandbox_url_falls_back_to_per_sandbox_host_for_unsupported_subdomain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py90def test_sandbox_url_debug_uses_localhost():CODE
LOWpackages/python-sdk/tests/test_connection_config.py96def test_get_host_keeps_per_sandbox_host_for_supported_domain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py102def test_sandbox_direct_url_keeps_per_sandbox_host_for_supported_domain():CODE
LOWpackages/python-sdk/tests/test_connection_config.py111def test_sandbox_direct_url_uses_explicit_url_first():CODE
LOWpackages/python-sdk/tests/test_connection_config.py120def test_debug_false_overrides_env_var(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py127def test_debug_defaults_to_env_var(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py134def test_set_integration_appends_to_user_agent():CODE
LOWpackages/python-sdk/tests/test_connection_config.py148def test_custom_user_agent_is_preserved_without_integration():CODE
LOWpackages/python-sdk/tests/test_connection_config.py154def test_custom_user_agent_wins_over_integration(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py162def test_integration_survives_api_param_rebuilds(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py203def test_per_call_user_agent_override_wins_in_api_params(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py211def test_per_call_api_headers_user_agent_wins_over_headers():CODE
LOWpackages/python-sdk/tests/test_connection_config.py220def test_request_timeout_zero_means_no_timeout():CODE
LOWpackages/python-sdk/tests/test_connection_config.py228def test_get_api_params_includes_sandbox_url():CODE
LOWpackages/python-sdk/tests/test_connection_config.py4def test_api_url_defaults_correctly(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_connection_config.py174def test_cleared_integration_does_not_leak_into_api_param_rebuilds():CODE
LOWpackages/python-sdk/tests/test_connection_config.py188def test_custom_user_agent_survives_api_param_rebuilds(monkeypatch):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py19def reset_sync_api_transports():CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py23def reset_sync_envd_transports():CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py32def test_sync_api_client_proxy_uses_explicit_transport(test_api_key):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py70def test_sync_get_transport_keyed_by_proxy(test_api_key):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py97def test_sync_api_client_applies_request_timeout(test_api_key):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py111def test_sync_api_client_request_timeout_zero_disables_timeout(test_api_key):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py125def test_sync_envd_transport_uses_separate_cache(test_api_key):CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py143def test_sync_api_transport_cache_reuses_within_thread_and_isolates_across_threads(CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py162def test_sync_api_client_cache_reuses_within_thread_and_isolates_across_threads(CODE
LOWpackages/python-sdk/tests/test_api_client_transport.py200def test_sync_envd_transport_cache_is_thread_local(test_api_key):CODE
632 more matches not shown…
Unused Imports240 hits · 156 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/e2b_connect/__init__.py1CODE
LOWpackages/python-sdk/e2b_connect/__init__.py1CODE
LOWpackages/python-sdk/e2b_connect/__init__.py1CODE
LOWpackages/python-sdk/e2b_connect/__init__.py1CODE
LOWpackages/python-sdk/e2b/__init__.py28CODE
LOWpackages/python-sdk/e2b/__init__.py28CODE
LOWpackages/python-sdk/e2b/__init__.py32CODE
LOWpackages/python-sdk/e2b/__init__.py32CODE
LOWpackages/python-sdk/e2b/__init__.py32CODE
LOWpackages/python-sdk/e2b/__init__.py32CODE
LOWpackages/python-sdk/e2b/__init__.py38CODE
LOWpackages/python-sdk/e2b/__init__.py38CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py39CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py56CODE
LOWpackages/python-sdk/e2b/__init__.py64CODE
LOWpackages/python-sdk/e2b/__init__.py65CODE
LOWpackages/python-sdk/e2b/__init__.py65CODE
LOWpackages/python-sdk/e2b/__init__.py65CODE
LOWpackages/python-sdk/e2b/__init__.py66CODE
LOWpackages/python-sdk/e2b/__init__.py66CODE
LOWpackages/python-sdk/e2b/__init__.py70CODE
LOWpackages/python-sdk/e2b/__init__.py70CODE
LOWpackages/python-sdk/e2b/__init__.py70CODE
LOWpackages/python-sdk/e2b/__init__.py70CODE
LOWpackages/python-sdk/e2b/__init__.py71CODE
LOWpackages/python-sdk/e2b/__init__.py72CODE
LOWpackages/python-sdk/e2b/__init__.py73CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
LOWpackages/python-sdk/e2b/__init__.py74CODE
180 more matches not shown…
Excessive Try-Catch Wrapping93 hits · 98 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/tests/conftest.py138 except Exception as e:CODE
LOWpackages/python-sdk/tests/conftest.py182 except Exception as e:CODE
LOWpackages/python-sdk/tests/conftest.py233 except Exception as e:CODE
LOWpackages/python-sdk/tests/conftest.py261 except Exception:CODE
LOWpackages/python-sdk/tests/conftest.py279 except Exception:CODE
LOW…thon-sdk/tests/async/template_async/test_stacktrace.py92 except Exception as e: # noqa: BLE001 - we want to assert on the traceback regardless of typeCODE
LOW…s/python-sdk/tests/async/sandbox_async/test_network.py307 except Exception:CODE
LOW…es/python-sdk/tests/async/sandbox_async/test_create.py193 except Exception:CODE
LOW…sdk/tests/async/sandbox_async/files/test_files_list.py151 except Exception as err:CODE
LOW…python-sdk/tests/sync/template_sync/test_stacktrace.py92 except Exception as e: # noqa: BLE001 - we want to assert on the traceback regardless of typeCODE
LOW…ckages/python-sdk/tests/sync/sandbox_sync/test_host.py20 except Exception as e:CODE
LOW…ges/python-sdk/tests/sync/sandbox_sync/test_network.py302 except Exception:CODE
LOW…ages/python-sdk/tests/sync/sandbox_sync/test_create.py191 except Exception:CODE
LOW…n-sdk/tests/sync/sandbox_sync/files/test_files_list.py151 except Exception as err:CODE
LOWpackages/python-sdk/e2b/template_sync/build_api.py142 except Exception:CODE
LOWpackages/python-sdk/e2b/template_sync/build_api.py148 except Exception as e:CODE
LOWpackages/python-sdk/e2b/template_async/build_api.py150 except Exception:CODE
LOWpackages/python-sdk/e2b/template_async/build_api.py156 except Exception as e:CODE
LOWpackages/python-sdk/e2b/envd/api.py48 except Exception:CODE
LOWpackages/python-sdk/e2b/envd/api.py61 except Exception:CODE
LOWpackages/python-sdk/e2b/envd/rpc.py106 except Exception:CODE
LOWpackages/python-sdk/e2b/envd/rpc.py121 except Exception:CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py145 except Exception:CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py211 except Exception as err:CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py225 except Exception as err:CODE
LOW…ython-sdk/e2b/sandbox_async/filesystem/watch_handle.py42 except Exception:CODE
LOW…ython-sdk/e2b/sandbox_async/filesystem/watch_handle.py60 except Exception as e:CODE
LOW…ython-sdk/e2b/sandbox_async/filesystem/watch_handle.py70 except Exception:CODE
LOW…ython-sdk/e2b/sandbox_async/filesystem/watch_handle.py90 except Exception as e:CODE
MEDIUM…ython-sdk/e2b/sandbox_async/filesystem/watch_handle.py45def _iterate_events(self):CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py488 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py517 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py548 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py572 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py605 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py633 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py715 except Exception as e:CODE
LOW…/python-sdk/e2b/sandbox_async/filesystem/filesystem.py718 except Exception:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py79 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py107 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py138 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py169 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py328 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py331 except Exception:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py391 except Exception as e:CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py394 except Exception:CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py178 except Exception:CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py207 except Exception:CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py227 except Exception as e:CODE
MEDIUM…ython-sdk/e2b/sandbox_async/commands/command_handle.py139def _iterate_events(CODE
MEDIUM…ython-sdk/e2b/sandbox_async/commands/command_handle.py210def _handle_events(self):CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py76 except Exception as e:CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py107 except Exception as e:CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py174 except Exception as e:CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py177 except Exception:CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py226 except Exception as e:CODE
LOWpackages/python-sdk/e2b/sandbox_async/commands/pty.py229 except Exception:CODE
LOWpackages/python-sdk/e2b/template/dockerfile_parser.py277 except Exception:CODE
LOWpackages/python-sdk/e2b/template/utils.py297 except Exception:CODE
LOWpackages/python-sdk/e2b/template/utils.py302 except Exception:CODE
33 more matches not shown…
Cross-File Repetition9 hits · 45 pts
SeverityFileLineSnippetContext
HIGHpackages/python-sdk/e2b/sandbox_async/sandbox_api.py0get the metrics of the sandbox specified by sandbox id. :param sandbox_id: sandbox id :param start: start time for the mSTRING
HIGHpackages/python-sdk/e2b/sandbox_async/main.py0get the metrics of the sandbox specified by sandbox id. :param sandbox_id: sandbox id :param start: start time for the mSTRING
HIGHpackages/python-sdk/e2b/sandbox_sync/main.py0get the metrics of the sandbox specified by sandbox id. :param sandbox_id: sandbox id :param start: start time for the mSTRING
HIGH…i/client/api/templates/delete_templates_template_id.py0delete a path args: volume_id (str): path (str): raises: errors.unexpectedstatus: if the server returns an undocumented STRING
HIGH…e2b/api/client/api/volumes/delete_volumes_volume_id.py0delete a path args: volume_id (str): path (str): raises: errors.unexpectedstatus: if the server returns an undocumented STRING
HIGH…ent/api/volumes/delete_volumecontent_volume_id_path.py0delete a path args: volume_id (str): path (str): raises: errors.unexpectedstatus: if the server returns an undocumented STRING
HIGH…hon-sdk/e2b/api/client/api/templates/post_templates.py0create a new template args: body (templatebuildrequestv3): raises: errors.unexpectedstatus: if the server returns an undSTRING
HIGH…-sdk/e2b/api/client/api/templates/post_v2_templates.py0create a new template args: body (templatebuildrequestv3): raises: errors.unexpectedstatus: if the server returns an undSTRING
HIGH…-sdk/e2b/api/client/api/templates/post_v3_templates.py0create a new template args: body (templatebuildrequestv3): raises: errors.unexpectedstatus: if the server returns an undSTRING
Self-Referential Comments12 hits · 42 pts
SeverityFileLineSnippetContext
MEDIUMspec/remove_extra_tags.py39# Create a new spec with only the filtered pathsCOMMENT
MEDIUM…es/python-sdk/tests/async/template_async/test_build.py31 # Create a symlink to a file that does not existCOMMENT
MEDIUM…sdk/tests/async/sandbox_async/files/test_files_list.py222 # Create a dictionary of entries by name for easier verificationCOMMENT
MEDIUM…hon-sdk/tests/async/sandbox_async/commands/test_run.py27 # Create a string with 8191 'a' characters followed by the problematic byte 0xe2COMMENT
MEDIUM…k/tests/shared/template/utils/get_all_files_in_path.py117 # Create a mix of files and directoriesCOMMENT
MEDIUM…k/tests/shared/template/utils/get_all_files_in_path.py199 # Create a complex structureCOMMENT
MEDIUM…k/tests/shared/template/utils/get_all_files_in_path.py287 # Create a file and a symlink to itCOMMENT
MEDIUM…ages/python-sdk/tests/sync/template_sync/test_build.py31 # Create a symlink to a file that does not existCOMMENT
MEDIUM…n-sdk/tests/sync/sandbox_sync/files/test_files_list.py221 # Create a dictionary of entries by name for easier verificationCOMMENT
MEDIUM…ython-sdk/tests/sync/sandbox_sync/commands/test_run.py25 # Create a string with 8191 'a' characters followed by the problematic byte 0xe2COMMENT
MEDIUMpackages/python-sdk/e2b/template/dockerfile_parser.py79 # Create a temporary DockerfileCOMMENT
MEDIUMpackages/python-sdk/e2b/template/main.py1084 # Create a TemplateBuilder first to use its methodsCOMMENT
Cross-Language Confusion8 hits · 40 pts
SeverityFileLineSnippetContext
HIGHpackages/python-sdk/tests/test_command_handle.py92 events.push(_stdout_event(b"a"))CODE
HIGHpackages/python-sdk/tests/test_command_handle.py105 events.push(_stdout_event(b"b"))CODE
HIGHpackages/python-sdk/tests/shared/git/test_sync.py12 git_sandbox.git.push(CODE
HIGHpackages/python-sdk/tests/shared/git/test_sync.py33 git_sandbox.git.push(repo_path, set_upstream=False)CODE
HIGHpackages/python-sdk/tests/shared/git/test_sync.py47 git_sandbox.git.push(CODE
HIGHpackages/python-sdk/tests/shared/git/test_sync.py64 git_sandbox.git.push(repo_path)CODE
HIGHpackages/python-sdk/tests/shared/git/test_clone.py13 git_sandbox.git.push(CODE
HIGHpackages/python-sdk/e2b/template/main.py644 + " | sudo tee /devcontainer.sh > /dev/null && sudo chmod +x /devcontainer.sh && sudo touch /devcontaineCODE
AI Structural Patterns23 hits · 23 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/e2b/connection_config.py153CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py256CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py629CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py662CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py693CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py726CODE
LOWpackages/python-sdk/e2b/sandbox_async/git.py817CODE
LOWpackages/python-sdk/e2b/sandbox_async/main.py175CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py173CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py205CODE
LOW…kages/python-sdk/e2b/sandbox_async/commands/command.py236CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py265CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py256CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py617CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py648CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py677CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py708CODE
LOWpackages/python-sdk/e2b/sandbox_sync/git.py799CODE
LOWpackages/python-sdk/e2b/sandbox_sync/main.py161CODE
LOW…ckages/python-sdk/e2b/sandbox_sync/commands/command.py204CODE
LOW…ckages/python-sdk/e2b/sandbox_sync/commands/command.py236CODE
LOW…ckages/python-sdk/e2b/sandbox_sync/commands/command.py265CODE
LOWpackages/python-sdk/e2b/volume/connection_config.py80CODE
Synthetic Comment Markers3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHREADME.md20[E2B](https://e2b.dev/?utm_source=github&utm_medium=referral&utm_campaign=readme&utm_content=E2B) is an open-source infrCODE
HIGHpackages/python-sdk/README.md17[E2B](https://www.e2b.dev/) is an open-source infrastructure that allows you to run AI-generated code in secure isolatedCODE
HIGHpackages/js-sdk/README.md20[E2B](https://www.e2b.dev/) is an open-source infrastructure that allows you to run AI-generated code in secure isolatedCODE
Redundant / Tautological Comments8 hits · 14 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/e2b/sandbox_async/paginator.py78 # Check if res.parsed is ErrorCOMMENT
LOWpackages/python-sdk/e2b/sandbox_async/sandbox_api.py347 # Check if res.parse is ErrorCOMMENT
LOWpackages/python-sdk/e2b/sandbox_async/sandbox_api.py447 # Check if res.parse is ErrorCOMMENT
LOWpackages/python-sdk/e2b/sandbox_async/sandbox_api.py479 # Check if res.parse is ErrorCOMMENT
LOWpackages/python-sdk/e2b/template/dockerfile_parser.py68 # Check if input is a file path that existsCOMMENT
LOWpackages/python-sdk/e2b/template/dockerfile_parser.py70 # Read the file contentCOMMENT
LOWpackages/python-sdk/e2b/sandbox_sync/paginator.py78 # Check if res.parsed is ErrorCOMMENT
LOWpackages/python-sdk/e2b/sandbox_sync/sandbox_api.py487 # Check if res.parse is ErrorCOMMENT
Deep Nesting13 hits · 12 pts
SeverityFileLineSnippetContext
LOW…thon-sdk/tests/async/template_async/test_stacktrace.py88CODE
LOW…dk/tests/shared/template/utils/test_tar_file_stream.py17CODE
LOW…python-sdk/tests/sync/template_sync/test_stacktrace.py88CODE
LOWpackages/python-sdk/e2b/template_sync/build_api.py230CODE
LOWpackages/python-sdk/e2b/template_async/build_api.py238CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py139CODE
LOW…ython-sdk/e2b/sandbox_async/commands/command_handle.py210CODE
LOWpackages/python-sdk/e2b/template/dockerfile_parser.py55CODE
LOWpackages/python-sdk/e2b/template/dockerfile_parser.py158CODE
LOW…python-sdk/e2b/sandbox_sync/commands/command_handle.py88CODE
LOW…python-sdk/e2b/sandbox_sync/commands/command_handle.py151CODE
LOW…ages/python-sdk/e2b/sandbox/filesystem/watch_handle.py36CODE
LOWpackages/python-sdk/e2b/volume/volume_sync.py542CODE
Modern Structural Boilerplate11 hits · 11 pts
SeverityFileLineSnippetContext
LOWpackages/python-sdk/e2b/__init__.py142__all__ = [CODE
LOWpackages/python-sdk/e2b/paginator.py50 def _update_pagination(self, headers: Mapping[str, str]) -> None:CODE
LOWpackages/python-sdk/e2b/connection_config.py81 def set_integration(cls, integration: Optional[str]) -> None:CODE
LOWpackages/python-sdk/e2b/sandbox_async/main.py41logger = logging.getLogger(__name__)CODE
LOWpackages/python-sdk/e2b/sandbox_sync/main.py39logger = logging.getLogger(__name__)CODE
LOWpackages/python-sdk/e2b/sandbox/_git/__init__.py47__all__ = [CODE
LOWpackages/python-sdk/e2b/api/client/types.py54__all__ = ["UNSET", "File", "FileTypes", "RequestFiles", "Response", "Unset"]CODE
LOWpackages/python-sdk/e2b/api/client/errors.py16__all__ = ["UnexpectedStatus"]CODE
LOWpackages/python-sdk/e2b/volume/types.py57__all__ = [CODE
LOWpackages/python-sdk/e2b/volume/client/types.py54__all__ = ["UNSET", "File", "FileTypes", "RequestFiles", "Response", "Unset"]CODE
LOWpackages/python-sdk/e2b/volume/client/errors.py16__all__ = ["UnexpectedStatus"]CODE
Verbosity Indicators6 hits · 10 pts
SeverityFileLineSnippetContext
LOWpackages/cli/src/commands/template/init.ts177 // Step 1: Get template name (from CLI or prompt)COMMENT
LOWpackages/cli/src/commands/template/init.ts197 // Step 2: Get language (from CLI or prompt)COMMENT
LOWpackages/cli/src/commands/template/init.ts227 // Step 3: Create template directory - fail if it already existsCOMMENT
LOWpackages/cli/src/commands/template/init.ts239 // Step 4: Generate template and build files in the template directoryCOMMENT
LOWpackages/cli/src/commands/template/init.ts246 // Step 5: Add scriptsCOMMENT
LOWpackages/cli/src/commands/template/init.ts259 // Step 6: Create README.mdCOMMENT
Structural Annotation Overuse6 hits · 10 pts
SeverityFileLineSnippetContext
LOWpackages/cli/src/commands/template/init.ts177 // Step 1: Get template name (from CLI or prompt)COMMENT
LOWpackages/cli/src/commands/template/init.ts197 // Step 2: Get language (from CLI or prompt)COMMENT
LOWpackages/cli/src/commands/template/init.ts227 // Step 3: Create template directory - fail if it already existsCOMMENT
LOWpackages/cli/src/commands/template/init.ts239 // Step 4: Generate template and build files in the template directoryCOMMENT
LOWpackages/cli/src/commands/template/init.ts246 // Step 5: Add scriptsCOMMENT
LOWpackages/cli/src/commands/template/init.ts259 // Step 6: Create README.mdCOMMENT
Dead Code1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMpackages/python-sdk/tests/test_watch_handle.py113CODE
Over-Commented Block2 hits · 2 pts
SeverityFileLineSnippetContext
LOW…s/python-sdk/e2b/sandbox_sync/filesystem/filesystem.py361 # Streaming an upload only happens on the octet-stream path; theCOMMENT
LOW.vscode/settings.json81 "cursorpyright.analysis.typeCheckingMode": "basic",COMMENT