AI Slop Code RIsk Monitor

strands-agents/harness-sdk

Build an agent harness and control it end-to-end. Open-source SDK for production AI agents in Python & TypeScript - any model, any cloud.

20.3 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for strands-agents/harness-sdk, a Python project with 8,768 GitHub stars. SynthScan examined 593,175 lines of code across 2579 source files, recording 9784 pattern matches distributed across 28 syntactic categories. The legacy adjusted pattern signal is 20.3 (Elevated pattern signal); it is not an authorship estimate.

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

20.3
Adjusted Signal
20.3
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
8.8K
Stars
Python
Language
593.2K
Lines of Code
2.6K
Files
9.8K
Pattern Hits
2026-10-12
Scan Date
0.15
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 52.4/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 8.2/100 · LOW

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

Agent Over-Engineering Ratio 51.0/100 · HIGH

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

PR Review Velocity Impact 66.6/100 · HIGH

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

What These Metrics Mean

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

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

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

CRITICAL 3HIGH 380MEDIUM 643LOW 8758

Directory Score Breakdown

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

Pattern Findings

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

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

Hyper-Verbose Identifiers7035 hits · 6260 pts
SeverityFileLineSnippetContext
LOWharness-py/tests_integ/test_web_search.py16async def test_exa_backend_returns_parsed_results():CODE
LOWharness-py/tests_integ/test_caching.py48async def test_caching_reads_grow_across_turns(work_dir: Path, build_agent: Build) -> None:CODE
LOWharness-py/tests_integ/test_e2e.py45async def test_builtin_tools_all_work(CODE
LOWharness-py/tests_integ/test_e2e.py89async def test_subagent_result_is_delivered(CODE
LOWharness-py/tests_integ/test_e2e.py112async def test_environment_context_is_injected(work_dir: Path, build_agent: Build) -> None:CODE
LOWharness-py/tests_integ/test_e2e.py121async def test_interventions_deny_blocks_the_tool(CODE
LOW⚡harness-py/tests_integ/test_e2e.py135async def test_interventions_approve_allows_the_tool(work_dir: Path, build_agent: Build, tool_succeeded: Check) -> None:CODE
LOW⚡harness-py/tests_integ/test_e2e.py145async def test_sessions_persist_across_agents(work_dir: Path, build_agent: Build) -> None:CODE
LOW⚡harness-py/tests_integ/test_e2e.py155async def test_session_persists_with_minted_id(work_dir: Path, build_agent: Build) -> None:CODE
LOWharness-py/tests_integ/test_e2e.py167async def test_memory_persists_across_agents(work_dir: Path, build_agent: Build) -> None:CODE
LOW⚡harness-py/tests/test_agent.py157def test_background_tasks_can_be_disabled():CODE
LOW⚡harness-py/tests/test_agent.py162def test_model_router_is_attached_through_the_model_parameter():CODE
LOW⚡harness-py/tests/test_agent.py172def test_instructions_appended():CODE
LOW⚡harness-py/tests/test_agent.py178def test_explicit_system_prompt_wins_over_instructions():CODE
LOW⚡harness-py/tests/test_agent.py183def test_consumer_tools_added_alongside_builtins():CODE
LOW⚡harness-py/tests/test_agent.py188def test_subagent_enabled_by_default():CODE
LOW⚡harness-py/tests/test_agent.py193def test_subagent_disabled_via_builtin_tools():CODE
LOW⚡harness-py/tests/test_agent.py199def test_subagent_offers_the_generalist_preset():CODE
LOW⚡harness-py/tests/test_agent.py206def test_subagent_selectable_set_keeps_subagent_and_drops_web_search():CODE
LOW⚡harness-py/tests/test_agent.py264def test_sandbox_vended_tools_are_dropped():CODE
LOW⚡harness-py/tests/test_agent.py273def test_unknown_builtin_tool_raises():CODE
LOW⚡harness-py/tests/test_agent.py281 def test_none_is_every_default_on(self):CODE
LOW⚡harness-py/tests/test_agent.py286 def test_list_pins_exactly_the_names_given(self):CODE
LOW⚡harness-py/tests/test_agent.py291 def test_mapping_edits_the_default_set(self):CODE
LOW⚡harness-py/tests/test_agent.py298 def test_star_false_starts_from_nothing(self):CODE
LOW⚡harness-py/tests/test_agent.py304 def test_empty_config_mapping_enables_the_tool(self):CODE
LOW⚡harness-py/tests/test_agent.py308 def test_mapping_removes_a_default_tool(self):CODE
LOW⚡harness-py/tests/test_agent.py313 def test_web_fetch_model_config_reaches_the_summarizer(self, monkeypatch):CODE
LOW⚡harness-py/tests/test_agent.py510def test_web_search_is_not_a_tool():CODE
LOW⚡harness-py/tests/test_agent.py515def test_web_search_enabled_on_supported_provider_from_default():CODE
LOW⚡harness-py/tests/test_agent.py520def test_web_search_default_on_bedrock_logs_info_not_warning_and_builds(caplog):CODE
LOW⚡harness-py/tests/test_agent.py531def test_web_search_explicit_on_unsupported_provider_raises():CODE
LOW⚡harness-py/tests/test_agent.py538def test_web_search_exa_fallback_builds_the_tool_and_warns_about_the_third_party(caplog):CODE
LOW⚡harness-py/tests/test_agent.py548def test_web_search_exa_wins_over_native_search():CODE
LOW⚡harness-py/tests/test_agent.py555def test_web_search_exa_fallback_works_on_a_model_instance():CODE
LOW⚡harness-py/tests/test_agent.py560def test_web_search_setting_is_a_bool_or_exa():CODE
LOW⚡harness-py/tests/test_agent.py567def test_web_search_native_on_anthropic_and_mantle_gpt():CODE
LOW⚡harness-py/tests/test_agent.py580def test_web_search_explicit_on_supported_provider_enabled():CODE
LOW⚡harness-py/tests/test_agent.py586def test_caching_enabled_by_default_on_bedrock():CODE
LOW⚡harness-py/tests/test_agent.py591def test_caching_enabled_by_default_on_anthropic_direct():CODE
LOW⚡harness-py/tests/test_agent.py596def test_caching_default_on_model_instance_warns_and_builds(caplog):CODE
LOW⚡harness-py/tests/test_agent.py608def test_caching_explicit_on_model_instance_warns_and_builds(caplog):CODE
LOW⚡harness-py/tests/test_agent.py618def test_caching_disabled_leaves_no_cache_config():CODE
LOW⚡harness-py/tests/test_agent.py623def test_caching_none_leaves_no_cache_config():CODE
LOW⚡harness-py/tests/test_agent.py628def test_caching_auto_enables_cache_config():CODE
LOW⚡harness-py/tests/test_agent.py634def test_caching_rejects_values_outside_auto_bool_none(value):CODE
LOW⚡harness-py/tests/test_agent.py640def test_context_manager_disabled(value):CODE
LOW⚡harness-py/tests/test_agent.py645def test_context_manager_default_uses_default_strategy():CODE
LOW⚡harness-py/tests/test_agent.py650def test_context_manager_true_is_rejected_by_the_sdk():CODE
LOW⚡harness-py/tests/test_agent.py655def test_context_manager_config_builds_an_sdk_context_manager():CODE
LOW⚡harness-py/tests/test_agent.py661def test_effort_auto_uses_recommended_level():CODE
LOW⚡harness-py/tests/test_agent.py666def test_effort_off_drops_reasoning():CODE
LOW⚡harness-py/tests/test_agent.py671def test_effort_level_is_validated_against_the_model():CODE
LOW⚡harness-py/tests/test_agent.py676def test_explicit_context_manager_wins():CODE
LOW⚡harness-py/tests/test_agent.py683def test_session_manager_on_by_default(tmp_path):CODE
LOW⚡harness-py/tests/test_agent.py689def test_session_true_and_empty_config_use_the_default_dir(monkeypatch, tmp_path):CODE
LOW⚡harness-py/tests/test_agent.py698def test_default_agents_mint_distinct_ids(tmp_path):CODE
LOW⚡harness-py/tests/test_agent.py706def test_session_disabled_builds_no_manager(session):CODE
LOW⚡harness-py/tests/test_agent.py711def test_session_manager_instance_is_used_verbatim(tmp_path):CODE
LOW⚡harness-py/tests/test_agent.py717def test_session_manager_kwarg_passthrough_wins(tmp_path):CODE
6975 more matches not shown…
Docstring Block Structure189 hits · 945 pts
SeverityFileLineSnippetContext
HIGHstrands-py/AGENTS.md122Brief description of function. Longer description if needed. This docstring is used by LLMs to understand the fSTRING
HIGHstrands-py/tests/strands/tools/test_decorator.py317This is the main description. This is more description text. Args: param1: First parameterSTRING
HIGHstrands-py/tests/strands/tools/test_decorator.py444Main description here. Args: param: This should be excluded Returns: This shouSTRING
HIGHstrands-py/tests/strands/tools/test_decorator.py1161This is the summary line. This is a more detailed description that spans multiple lines and provides adSTRING
HIGHstrands-py/src/strands/_identifier.py19Validate strands id. Args: id_: Id to validate. type_: Type of the identifier (e.g., session id, agSTRING
HIGHstrands-py/src/strands/experimental/agent_config.py55Create an Agent from a configuration file or dictionary. This function supports tools that can be loaded declarativSTRING
HIGHstrands-py/src/strands/experimental/tools/stop/stop.py49Validate an optional stop message and return the effective value. Args: message: The model-supplied messageSTRING
HIGHstrands-py/src/strands/experimental/tools/stop/stop.py77Create a stop tool that gracefully ends the agent loop. The tool sets ``invocation_state["request_state"]["stop_eveSTRING
HIGHstrands-py/src/strands/_middleware/stages.py74Resolve a middleware-initiated interrupt without mutating interrupt state. Shared by every ``MiddlewareInterruptiblSTRING
HIGHstrands-py/src/strands/_middleware/stages.py138Request a human-in-the-loop interrupt. On first execution (no prior response) this raises ``InterruptException`STRING
HIGHstrands-py/src/strands/_middleware/stages.py217Request a human-in-the-loop interrupt. On first execution (no prior response) this raises ``InterruptException`STRING
HIGHstrands-py/src/strands/tools/decorator.py372Validate input data using the Pydantic model. This method ensures that the input data meets the expected schemaSTRING
HIGHstrands-py/src/strands/tools/decorator.py435Check if a parameter should be automatically injected by the framework or is a standard Python method param. SpSTRING
HIGHstrands-py/src/strands/tools/decorator.py759Decorator that transforms a Python function into a Strands tool. This decorator seamlessly enables a function to beSTRING
HIGHstrands-py/src/strands/tools/tools.py83Normalize a single property definition. Args: prop_name: The name of the property. prop_def: The prSTRING
HIGHstrands-py/src/strands/tools/tools.py117Normalize a JSON schema to match expectations. This function recursively processes nested objects to preserve the cSTRING
HIGHstrands-py/src/strands/tools/tools.py156Normalize a complete tool specification by transforming its inputSchema. Args: tool_spec: The tool specificSTRING
HIGHstrands-py/src/strands/tools/loader.py23Load a tool's Python module from a file path with sys.modules and sys.path discipline. The module's ``__name__`` isSTRING
HIGHstrands-py/src/strands/tools/loader.py318DEPRECATED: Load tools from a file based on its file extension. Args: tool_path: Path to the tool fSTRING
HIGHstrands-py/src/strands/tools/_caller.py50Call tool as a function. This method enables the method-style interface (e.g., `agent.tool.tool_name(param="valSTRING
HIGHstrands-py/src/strands/tools/_caller.py70Call a tool directly by name. Args: user_message_override: Optional custom message to recorSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py236Create MCPClient instances from an ``mcpServers`` JSON config (file path or mapping). Returns one client per enSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1148Submit a tool call once and return its direct result or SEP-2663 task handle. This protocol-level operation nevSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1189Asynchronously submit a tool call once without polling a returned task. Args: name: Name of the tooSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1222Synchronously retrieve the current state of a SEP-2663 task. Args: task_id: Server-issued task idenSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1243Asynchronously retrieve the current state of a SEP-2663 task. Args: task_id: Server-issued task ideSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1271Synchronously supply responses to a task's outstanding input requests. Args: task_id: Server-issuedSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1303Asynchronously supply responses to a task's outstanding input requests. Args: task_id: Server-issueSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1330Synchronously request cooperative cancellation of a SEP-2663 task. Args: task_id: Server-issued tasSTRING
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1353Asynchronously request cooperative cancellation of a SEP-2663 task. Args: task_id: Server-issued taSTRING
HIGHstrands-py/src/strands/tools/mcp/_compat.py76Retry a 2.x request until it stops returning `InputRequiredResult`. The 2026-07-28 spec (SEP-2322) replaced server-STRING
HIGHstrands-py/src/strands/tools/mcp/_compat.py134Call a tool on an active session, on either `mcp` major line. On the 2.x branch the server may answer with an `InpuSTRING
HIGHstrands-py/src/strands/tools/mcp/_compat.py222Get a prompt on an active session, on either `mcp` major line. On the 2.x branch the server may answer with an `InpSTRING
HIGHstrands-py/src/strands/tools/mcp/_compat.py255Read a resource on an active session, on either `mcp` major line. On the 2.x branch the server may answer with an `STRING
HIGHstrands-py/src/strands/tools/executors/_executor.py72Execute one admitted background tool call through middleware and after-call hooks. BeforeToolCallEvent already STRING
HIGHstrands-py/src/strands/types/interrupt.py83Trigger the interrupt with a reason. Args: name: User defined name for the interrupt. Must be uSTRING
HIGHstrands-py/src/strands/multiagent/swarm.py486Wrap an async generator with timeout for total execution time. Tracks elapsed time from start and enforces timeSTRING
HIGHstrands-py/src/strands/multiagent/spec.py203Combine the model's arguments, the selected preset, and the fixed axes into a spec. Precedence per axis: a model-suSTRING
HIGHstrands-py/src/strands/multiagent/a2a/_converters.py28Convert AgentInput to A2A Message. Args: prompt: Input in various formats (string, message list, or contentSTRING
HIGHstrands-py/src/strands/multiagent/a2a/executor.py664Extract Strands interrupt responses from inbound A2A message parts. A client resumes a task parked in ``input_rSTRING
HIGH…trands/vended_memory_stores/test_memory_store/store.py151Search stored entries for those whose content overlaps the query. Results are ranked by query-token overlap, wiSTRING
HIGH…trands/vended_memory_stores/test_memory_store/store.py195Add ``content`` (with optional ``metadata``) to the store. Identical content is deduplicated: a repeat write reSTRING
HIGH…s/vended_memory_stores/bedrock_knowledge_base/store.py214Search the knowledge base for entries matching the query. Args: query: The search query text. STRING
HIGH…s/vended_memory_stores/bedrock_knowledge_base/store.py297Ingest ``content`` (with optional ``metadata``) into the knowledge base. Only ``CUSTOM`` and ``S3`` data sourceSTRING
HIGHstrands-py/src/strands/plugins/decorator.py42Mark a method as a hook callback for automatic registration. Infers event type from the callback's type hint. SuppoSTRING
HIGHstrands-py/src/strands/bidi/agent/agent.py473Capture current agent state as an in-memory snapshot. Captures committed conversation history and application sSTRING
HIGHstrands-py/src/strands/bidi/agent/agent.py546Async context manager entry point. Automatically starts the bidirectional connection when entering the context.STRING
HIGHstrands-py/src/strands/bidi/models/google.py305Convert Gemini Live API events to provider-agnostic format. Handles different types of content: - inpuSTRING
HIGHstrands-py/src/strands/event_loop/event_loop.py195Execute a single cycle of the event loop. This core function processes a single conversation turn, handling model iSTRING
HIGHstrands-py/src/strands/event_loop/event_loop.py478Handle model execution with retry logic for throttling exceptions. Executes the model inference with automatic retrSTRING
HIGHstrands-py/src/strands/agent/a2a_agent.py100Synchronously invoke the remote A2A agent. Args: prompt: Input to the agent (string, message list, STRING
HIGHstrands-py/src/strands/agent/a2a_agent.py120Asynchronously invoke the remote A2A agent. Args: prompt: Input to the agent (string, message list,STRING
HIGHstrands-py/src/strands/agent/a2a_agent.py148Stream remote agent execution asynchronously. This method provides an asynchronous interface for streaming A2A STRING
HIGHstrands-py/src/strands/agent/a2a_agent.py255Send message to A2A agent. Args: prompt: Input to send to the agent. Yields: ASTRING
HIGHstrands-py/src/strands/agent/agent.py233Initialize the Agent with the specified configuration. Args: model: Provider for running inference STRING
HIGHstrands-py/src/strands/agent/agent.py858Process a natural language prompt through the agent's event loop. This method implements the conversational intSTRING
HIGHstrands-py/src/strands/agent/agent.py952Process a natural language prompt through the agent's event loop. This method implements the conversational intSTRING
HIGHstrands-py/src/strands/agent/agent.py1298Process a natural language prompt and yield events as an async iterator. This method provides an asynchronous iSTRING
HIGHstrands-py/src/strands/agent/agent.py2009Capture current agent state as an in-memory snapshot. Args: preset: Named preset of fields to captuSTRING
HIGHstrands-py/src/strands/agent/agent_result.py98Rehydrate an AgentResult from persisted JSON. Args: data: Dictionary containing the serialized AgenSTRING
129 more matches not shown…
Unused Imports837 hits · 792 pts
SeverityFileLineSnippetContext
LOWharness-py/tests_integ/test_web_search.py8CODE
LOWharness-py/tests_integ/conftest.py11CODE
LOWharness-py/tests_integ/test_caching.py17CODE
LOWharness-py/tests_integ/test_e2e.py10CODE
LOWharness-py/tests/test_memory.py9CODE
LOWharness-py/src/strands_harness/options.py4CODE
LOWharness-py/src/strands_harness/config.py3CODE
LOWharness-py/src/strands_harness/models.py15CODE
LOWharness-py/src/strands_harness/memory.py17CODE
LOWharness-py/src/strands_harness/__init__.py3CODE
LOWharness-py/src/strands_harness/__init__.py4CODE
LOWharness-py/src/strands_harness/__init__.py4CODE
LOWharness-py/src/strands_harness/__init__.py4CODE
LOWharness-py/src/strands_harness/__init__.py4CODE
LOWharness-py/src/strands_harness/__init__.py10CODE
LOWharness-py/src/strands_harness/__init__.py10CODE
LOWharness-py/src/strands_harness/__init__.py11CODE
LOWharness-py/src/strands_harness/__init__.py11CODE
LOWharness-py/src/strands_harness/__init__.py11CODE
LOWharness-py/src/strands_harness/__init__.py11CODE
LOWharness-py/src/strands_harness/__init__.py17CODE
LOWharness-py/src/strands_harness/__init__.py18CODE
LOWharness-py/src/strands_harness/__init__.py18CODE
LOWharness-py/src/strands_harness/__init__.py19CODE
LOWharness-py/src/strands_harness/__init__.py19CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/__init__.py20CODE
LOWharness-py/src/strands_harness/telemetry.py16CODE
LOWharness-py/src/strands_harness/interventions.py19CODE
LOWharness-py/src/strands_harness/agent.py3CODE
LOWharness-py/src/strands_harness/prompt.py9CODE
LOWharness-py/src/strands_harness/tools/subagent.py17CODE
LOWharness-py/src/strands_harness/tools/web_fetch.py14CODE
LOWharness-py/src/strands_harness/tools/__init__.py7CODE
LOWharness-py/src/strands_harness/tools/__init__.py7CODE
LOWharness-py/src/strands_harness/tools/__init__.py7CODE
LOWharness-py/src/strands_harness/tools/__init__.py7CODE
LOWharness-py/src/strands_harness/tools/__init__.py8CODE
LOWharness-py/src/strands_harness/tools/__init__.py8CODE
LOWharness-py/src/strands_harness/tools/__init__.py8CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
LOWharness-py/src/strands_harness/tools/__init__.py13CODE
777 more matches not shown…
Decorative Section Separators220 hits · 775 pts
SeverityFileLineSnippetContext
MEDIUM⚡strands-py/tests_integ/sandbox/conftest.py39# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/conftest.py41# ---------------------------------------------------------------------------COMMENT
MEDIUMstrands-py/tests_integ/sandbox/conftest.py127# ---------------------------------------------------------------------------COMMENT
MEDIUMstrands-py/tests_integ/sandbox/conftest.py129# ---------------------------------------------------------------------------COMMENT
MEDIUMstrands-py/tests_integ/sandbox/conftest.py149# ---------------------------------------------------------------------------COMMENT
MEDIUMstrands-py/tests_integ/sandbox/conftest.py151# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py19# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py21# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py43# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py45# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py73# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py75# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py91# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py93# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py122# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py124# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py137# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py139# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py154# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py156# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py164# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py166# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py175# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py177# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py194# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests_integ/sandbox/test_ssh.py196# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests/strands/test_interrupt.py254# ============================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/test_interrupt.py256# ============================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/types/test__events.py508# =========================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/types/test__events.py510# =========================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/types/test_json_dict.py117# ============================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/types/test_json_dict.py119# ============================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_graph.py2691# =============================================================================COMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_graph.py2693# =============================================================================COMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_graph.py3098# ---------------------------------------------------------------------------COMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_graph.py3100# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…nds-py/tests/strands/multiagent/a2a/test_converters.py288# =========================================================================COMMENT
MEDIUM⚡…nds-py/tests/strands/multiagent/a2a/test_converters.py290# =========================================================================COMMENT
MEDIUM⚡…nds-py/tests/strands/multiagent/a2a/test_converters.py447# =========================================================================COMMENT
MEDIUM⚡…nds-py/tests/strands/multiagent/a2a/test_converters.py449# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py1343# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py1345# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py1708# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py1710# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py2116# =========================================================================COMMENT
MEDIUM⚡…rands-py/tests/strands/multiagent/a2a/test_executor.py2118# =========================================================================COMMENT
MEDIUM…rands-py/tests/strands/multiagent/a2a/test_executor.py1946# =========================================================================COMMENT
MEDIUM…rands-py/tests/strands/multiagent/a2a/test_executor.py1953# =========================================================================COMMENT
MEDIUM…rands-py/tests/strands/multiagent/a2a/test_executor.py2273# ── Inbound interrupt responses ──────────────────────────────────────────────COMMENT
MEDIUM…rands-py/tests/strands/multiagent/a2a/test_executor.py2598# ── Outbound interrupt advertisement ─────────────────────────────────────────COMMENT
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py286# ===========================================================================STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py288# ===========================================================================STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py290# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py292# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py333# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py335# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py395# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/io/test_audio.py397# ---------------------------------------------------------------------------STRING
MEDIUM⚡strands-py/tests/strands/bidi/_audio/test_processor.py30# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡strands-py/tests/strands/bidi/_audio/test_processor.py32# ---------------------------------------------------------------------------COMMENT
160 more matches not shown…
Cross-File Repetition120 hits · 600 pts
SeverityFileLineSnippetContext
HIGHstrands-py/tests_integ/models/test_model_ollama.py0extracts the time and weather from the user's message with the exact strings.STRING
HIGHstrands-py/tests_integ/models/test_model_litellm.py0extracts the time and weather from the user's message with the exact strings.STRING
HIGHstrands-py/tests_integ/models/test_model_mistral.py0extracts the time and weather from the user's message with the exact strings.STRING
HIGHstrands-py/tests_integ/models/test_model_anthropic.py0extracts the time and weather from the user's message with the exact strings.STRING
HIGHstrands-py/tests_integ/models/test_model_gemini.py0extracts the time and weather from the user's message with the exact strings.STRING
HIGHstrands-py/tests/strands/memory/test_memory_manager.py0fire every recorded hook registered for ``event``'s type.STRING
HIGH…s/vended_memory_stores/test_memory_store/test_store.py0fire every recorded hook registered for ``event``'s type.STRING
HIGH…ded_memory_stores/bedrock_knowledge_base/test_store.py0fire every recorded hook registered for ``event``'s type.STRING
HIGHstrands-py/tests/strands/bidi/models/test_openai.py0test complete connection lifecycle with various configurations.STRING
HIGHstrands-py/tests/strands/bidi/models/test_bedrock.py0test complete connection lifecycle with various configurations.STRING
HIGHstrands-py/tests/strands/bidi/models/test_google.py0test complete connection lifecycle with various configurations.STRING
HIGHstrands-py/tests/strands/bidi/models/test_openai.py0test sending all content types through unified send() method.STRING
HIGHstrands-py/tests/strands/bidi/models/test_bedrock.py0test sending all content types through unified send() method.STRING
HIGHstrands-py/tests/strands/bidi/models/test_google.py0test sending all content types through unified send() method.STRING
HIGHstrands-py/tests/strands/bidi/models/test_openai.py0restart opens a new connection using the updated model id and params.STRING
HIGHstrands-py/tests/strands/bidi/models/test_bedrock.py0restart opens a new connection using the updated model id and params.STRING
HIGHstrands-py/tests/strands/bidi/models/test_google.py0restart opens a new connection using the updated model id and params.STRING
HIGHstrands-py/tests/strands/models/test_anthropic.py0test that toolchoice doesn't emit warning for supported providers.STRING
HIGHstrands-py/tests/strands/models/test_openai.py0test that toolchoice doesn't emit warning for supported providers.STRING
HIGHstrands-py/tests/strands/models/test_litellm.py0test that toolchoice doesn't emit warning for supported providers.STRING
HIGHstrands-py/tests/strands/models/test_bedrock.py0test that toolchoice doesn't emit warning for supported providers.STRING
HIGHstrands-py/tests/strands/models/test_anthropic.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_mistral.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_openai.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_writer.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_llamaapi.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_llamacpp.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_gemini.py0test that images with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_anthropic.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_mistral.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_openai.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_writer.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_llamaapi.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_llamacpp.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_gemini.py0test that documents with location sources are filtered out with warning.STRING
HIGHstrands-py/tests/strands/models/test_mistral.py0cache_config is a valid config field and survives get_config/update_config unchanged.STRING
HIGHstrands-py/tests/strands/models/test_writer.py0cache_config is a valid config field and survives get_config/update_config unchanged.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0cache_config is a valid config field and survives get_config/update_config unchanged.STRING
HIGHstrands-py/tests/strands/models/test_llamacpp.py0cache_config is a valid config field and survives get_config/update_config unchanged.STRING
HIGHstrands-py/tests/strands/models/test_mistral.py0stream threads agent_metadata so the outbound request carries the derived routing key.STRING
HIGHstrands-py/tests/strands/models/test_openai.py0stream threads agent_metadata so the outbound request carries the derived routing key.STRING
HIGHstrands-py/tests/strands/models/test_litellm.py0stream threads agent_metadata so the outbound request carries the derived routing key.STRING
HIGH…rands-py/tests/strands/models/test_openai_responses.py0stream threads agent_metadata so the outbound request carries the derived routing key.STRING
HIGHstrands-py/tests/strands/models/test_sagemaker.py0test that non-none toolchoice emits warning for unsupported providers.STRING
HIGHstrands-py/tests/strands/models/test_llamaapi.py0test that non-none toolchoice emits warning for unsupported providers.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0test that non-none toolchoice emits warning for unsupported providers.STRING
HIGHstrands-py/tests/strands/models/test_sagemaker.py0a cacheconfig whose fields are all default warns about nothing and never reaches the request.STRING
HIGHstrands-py/tests/strands/models/test_writer.py0a cacheconfig whose fields are all default warns about nothing and never reaches the request.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0a cacheconfig whose fields are all default warns about nothing and never reaches the request.STRING
HIGHstrands-py/tests/strands/models/test_sagemaker.py0ollama honors no cache field: a non-default field warns (naming the provider) and never reaches the request.STRING
HIGHstrands-py/tests/strands/models/test_writer.py0ollama honors no cache field: a non-default field warns (naming the provider) and never reaches the request.STRING
HIGHstrands-py/tests/strands/models/test_ollama.py0ollama honors no cache field: a non-default field warns (naming the provider) and never reaches the request.STRING
HIGHstrands-py/src/strands/types/media.py0streaming-related type definitions for the sdk. these types are modeled after the bedrock api. - bedrock docs: https://dSTRING
HIGHstrands-py/src/strands/types/tools.py0streaming-related type definitions for the sdk. these types are modeled after the bedrock api. - bedrock docs: https://dSTRING
HIGHstrands-py/src/strands/types/guardrails.py0streaming-related type definitions for the sdk. these types are modeled after the bedrock api. - bedrock docs: https://dSTRING
HIGHstrands-py/src/strands/types/streaming.py0streaming-related type definitions for the sdk. these types are modeled after the bedrock api. - bedrock docs: https://dSTRING
HIGHstrands-py/src/strands/bidi/models/google.py0update the model configuration with the provided arguments. args: **model_config: configuration overrides. raises: valueSTRING
HIGHstrands-py/src/strands/bidi/models/bedrock.py0update the model configuration with the provided arguments. args: **model_config: configuration overrides. raises: valueSTRING
60 more matches not shown…
Self-Referential Comments174 hits · 528 pts
SeverityFileLineSnippetContext
MEDIUM…rands-py/tests_integ/test_hot_tool_reload_decorator.py32 # Create an Agent instance without any toolsCOMMENT
MEDIUM…rands-py/tests_integ/test_hot_tool_reload_decorator.py35 # Create a test tool using @tool decoratorCOMMENT
MEDIUM…rands-py/tests_integ/test_hot_tool_reload_decorator.py84 # Create an Agent instanceSTRING
MEDIUM…rands-py/tests_integ/test_hot_tool_reload_decorator.py87 # Create the initial version of the toolSTRING
MEDIUMstrands-py/tests_integ/test_multiagent_graph.py326 # Create a custom nodeCOMMENT
MEDIUMstrands-py/tests_integ/test_session.py43 # Create a sessionCOMMENT
MEDIUMstrands-py/tests_integ/test_session.py106 # Create a sessionCOMMENT
MEDIUM⚡…g/test_summarizing_conversation_manager_integration.py302 # Create a dedicated summarization agentCOMMENT
MEDIUM⚡…g/test_summarizing_conversation_manager_integration.py309 # Create main agent with dedicated summarization agentCOMMENT
MEDIUM…g/test_summarizing_conversation_manager_integration.py427 # Create a summarization agent with structured_output_model configuredSTRING
MEDIUMstrands-py/tests_integ/test_bedrock_s3_location.py39 # Create the bucket if it doesn't existCOMMENT
MEDIUM⚡strands-py/tests_integ/test_multiagent_swarm.py119 # Create the swarmCOMMENT
MEDIUM⚡strands-py/tests_integ/test_multiagent_swarm.py122 # Define a task that requires collaborationCOMMENT
MEDIUMstrands-py/tests_integ/test_multiagent_swarm.py155 # Create the swarmCOMMENT
MEDIUM⚡strands-py/tests_integ/test_skills_plugin.py64 # Create a skill directory with SKILL.mdCOMMENT
MEDIUMstrands-py/tests_integ/a2a/a2a_server.py4# Create an agent and serve it over A2ACOMMENT
MEDIUMstrands-py/tests_integ/a2a/test_multiagent_a2a.py83 # Create a regular AgentCOMMENT
MEDIUM⚡strands-py/tests_integ/models/test_model_openai.py256 # Create a very long text that should exceed context windowCOMMENT
MEDIUMstrands-py/tests_integ/models/test_model_llamacpp.py521 # Create a very long message that might exceed contextCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_registry.py332 # Create a mock MCP client that simulates a real tool providerCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_registry.py399 # Create a mock tool provider that fails during load_toolsCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_registry.py428 # Create a mock tool provider that tracks call orderCOMMENT
MEDIUM⚡strands-py/tests/strands/tools/test_caller.py193 # Create a non-serializable object (Agent instance)COMMENT
MEDIUMstrands-py/tests/strands/tools/test_watcher.py68 # Create a mock event with the specified propertiesCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_watcher.py90 # Create a mock event with a Python file pathCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_decorator.py1246 # Define a tool with a complex anyOf type that could trigger edge case handlingCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_decorator.py1287 # Define a class with a decorated method to test exception handling in method detectionCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_decorator.py1298 # Create a mock instance where attribute access will raise exceptionsCOMMENT
MEDIUMstrands-py/tests/strands/tools/test_decorator.py1331 # Create a standalone function to test regular function callsCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/conftest.py80 # Create a mock context manager for ClientSessionCOMMENT
MEDIUM⚡strands-py/tests/strands/tools/mcp/test_mcp_client.py938 # Create a client.with a mock transportCOMMENT
MEDIUM⚡strands-py/tests/strands/tools/mcp/test_mcp_client.py942 # Create a mock future that is not runningCOMMENT
MEDIUM⚡strands-py/tests/strands/tools/mcp/test_mcp_client.py947 # Create a mock event loopCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test_mcp_client.py728 # Create a mock future that returns the mock resultCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test_mcp_client.py732 # Create an async mock that resolves to the mock resultCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test_mcp_client.py800 # Create an async mock that resolves to the mock resultCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test_mcp_client.py849 # Create an async mock that raises an exceptionCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test_mcp_client.py1344 # Create a mock embedded resource with unknown resource typeCOMMENT
MEDIUM…py/tests/strands/tools/mcp/test_mcp_instrumentation.py173 # Create a mock params object that doesn't have 'get' method but has '_meta' attributeCOMMENT
MEDIUM…sts/strands/tools/mcp/test_mcp_client_tool_provider.py333 # Create a mock MCP tool (not MCPAgentTool)COMMENT
MEDIUM…sts/strands/tools/mcp/test_mcp_client_tool_provider.py512 # Create a mock MCP toolCOMMENT
MEDIUM…sts/strands/tools/mcp/test_mcp_client_tool_provider.py555 # Create a mock MCP toolCOMMENT
MEDIUM…sts/strands/tools/mcp/test_mcp_client_tool_provider.py598 # Create a mock MCP toolCOMMENT
MEDIUMstrands-py/tests/strands/tools/mcp/test__compat.py870 # Creating the context manager defers the body, so no session traffic happens here.COMMENT
MEDIUM…ands-py/tests/strands/tools/executors/test_executor.py552 # Create a tool that yields a ToolInterruptEvent with an interrupt NOT pre-registered on the agentCOMMENT
MEDIUM⚡strands-py/tests/strands/types/test_session.py80 # Create a message with bytes contentCOMMENT
MEDIUM⚡strands-py/tests/strands/types/test_session.py86 # Create a SessionMessageCOMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_swarm.py528 # Create a simple agent that doesn't hand offCOMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_swarm.py531 # Create a swarm with just this agentCOMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_swarm.py615 # Create a different agent with same name as agent1COMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py339 # Create an agent that will hand off to another agentCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py390 # Create a swarm with reasonable limitsCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py827 # Create a failing agent (don't fail during creation, fail during execution)COMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py873 # Create a slow agentCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py1023 # Create a slow agentCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py1054 # Create an agent that will timeout during streamingCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py1094 # Create an agentCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py1134 # Create a mock swarm that produces events but no final resultCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_swarm.py1155 # Create an agentCOMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_base.py302 # Create an AgentResult with empty content to produce empty stringCOMMENT
114 more matches not shown…
AI Slop Vocabulary114 hits · 374 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml7 # Linter/formatter. Range matches strands-py and harness-py so the whole monorepoCOMMENT
MEDIUM.husky/lint-python.sh3# harness-py/ each carry their own [tool.ruff]; ruff resolves the nearest config per file,COMMENT
MEDIUM⚡harness-py/tests/test_agent.py549 # https://github.com/strands-agents/harness-sdk/issues/4480COMMENT
MEDIUM⚡harness-py/tests/test_agent.py832# https://github.com/strands-agents/harness-sdk/issues/4685COMMENT
MEDIUM⚡harness-py/tests/test_interventions.py30 # No allow-list: the classifier judges every call (the harness makes no read/write assumptions).COMMENT
MEDIUMharness-py/tests/test_config.py602 # Aligns with harness-ts: a non-string ``export`` fails at validation instead of later in ``_load_reference``.COMMENT
MEDIUMharness-py/tests/test_config.py615 # Aligns with harness-ts: a blank string is not "no interventions"; use null for that.COMMENT
MEDIUM⚡harness-py/tests/test_models.py171# https://github.com/strands-agents/harness-sdk/issues/4472COMMENT
MEDIUM⚡harness-py/tests/test_models.py265 # https://github.com/strands-agents/harness-sdk/issues/4852COMMENT
MEDIUM⚡harness-py/tests/plugins/test_environment.py73 # Depth 2 reaches harness-py/src (level 2) but the plugin still only lists to that depth.COMMENT
MEDIUMharness-py/src/strands_harness/options.py33# (the harness's tools read the agent-level ``sandbox=`` at call time); neither is exposed.COMMENT
MEDIUMharness-py/src/strands_harness/config.py169 # via ``Agent.as_tool()`` and appended to ``tools`` (the harness has no separate subagents param).COMMENT
MEDIUMharness-py/src/strands_harness/models.py89# Reasoning levels each provider's API accepts. The harness validates against the resolvedCOMMENT
MEDIUMharness-py/src/strands_harness/memory.py87 # Inject on every model call, not only on a fresh user ask: the harness runs multi-step tool loops, so anCOMMENT
MEDIUM⚡harness-py/src/strands_harness/agent.py421 # Hooks and the sandbox stay in agent_kwargs (the harness adds none) but are forwarded so subagent childrenCOMMENT
MEDIUM⚡harness-py/src/strands_harness/agent.py429 # An explicit ``memory_manager`` (or a ``MemoryManager`` passed as ``memory``) wins over the harness's memoryCOMMENT
MEDIUM⚡harness-py/src/strands_harness/agent.py430 # wiring and is not forwarded: a delegate shares harness-built stores read-only or gets none.COMMENT
MEDIUM⚡harness-py/src/strands_harness/agent.py434 # ``{}`` is on (the harness's defaults) even though it is falsy; ``_memory_config`` maps off to ``None``.COMMENT
MEDIUMharness-py/src/strands_harness/agent.py483 # plugins stay first so the tail is the harness's own.COMMENT
MEDIUMstrands-py/tests_integ/test_invalid_tool_names.py17 # Per https://github.com/strands-agents/harness-sdk/issues/1069 we want to ensure that invalid tool don't poisonCOMMENT
MEDIUMstrands-py/tests_integ/mcp/test_mcp_client.py75 # Start comprehensive server with tools, prompts, and resourcesCOMMENT
MEDIUMstrands-py/tests_integ/mcp/test_mcp_client.py314 """Test comprehensive MCP client with streamable HTTP transport."""STRING
MEDIUMstrands-py/tests_integ/models/test_model_openai.py228 # See https://github.com/strands-agents/harness-sdk/issues/320 for additional detailsCOMMENT
LOWstrands-py/tests/strands/tools/test_decorator.py1020 # The wrapper should preserve our format and just add the toolUseIdCOMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_graph.py2211 # Monotonic fake clock advanced explicitly; robust to how many times time.time() is called.COMMENT
MEDIUMstrands-py/tests/strands/multiagent/test_graph.py207 """Test comprehensive graph execution with diverse nodes and conditional edges."""STRING
MEDIUMstrands-py/tests/strands/multiagent/test_graph.py1271 """Test comprehensive self-loop functionality including conditions and reset behavior."""STRING
MEDIUM…rands-py/tests/strands/multiagent/a2a/test_executor.py2275# Regression coverage for https://github.com/strands-agents/harness-sdk/issues/2948: a clientCOMMENT
MEDIUMstrands-py/tests/strands/agent/test_agent_hooks.py410 # https://github.com/strands-agents/harness-sdk/issues/3623: retried calls still incur billable usage.COMMENT
MEDIUMstrands-py/tests/strands/models/test_anthropic.py255# Guards against https://github.com/strands-agents/harness-sdk/issues/3789: formats Anthropic cannotCOMMENT
MEDIUMstrands-py/tests/strands/models/test_anthropic.py343# Guards against https://github.com/strands-agents/harness-sdk/issues/3789: formats Anthropic cannotCOMMENT
MEDIUM⚡strands-py/tests/strands/models/test_bedrock.py893 # We used to hang on None, so ensure we don't regress: https://github.com/strands-agents/harness-sdk/issues/642COMMENT
MEDIUMstrands-py/tests/strands/models/test_bedrock.py3038# https://github.com/strands-agents/harness-sdk/issues/3759COMMENT
MEDIUM…trands/vended_plugins/context_offloader/test_plugin.py452 # See https://github.com/strands-agents/harness-sdk/issues/4017COMMENT
LOW…s/strands/vended_plugins/steering/core/test_handler.py278 # The context callback is wrapped in a lambda, so we just call all callbacksCOMMENT
LOW…s/strands/vended_plugins/steering/core/test_handler.py470 # Should not raise, just return earlyCOMMENT
LOW…s/strands/vended_plugins/steering/core/test_handler.py490 # Should not raise, just return earlyCOMMENT
MEDIUM…nds-py/tests/strands/vended_interventions/test_hitl.py640 without a per-file ``# type: ignore`` is tracked in harness-sdk#2800.STRING
MEDIUMstrands-py/src/strands/_exception_notes.py3# add_note was added in 3.11 - we hoist to a constant to facilitate testingCOMMENT
MEDIUMstrands-py/src/strands/tools/decorator.py154 # Deferring this complexity until there is clear demand and a robustCOMMENT
LOWstrands-py/src/strands/tools/decorator.py690 # Result is already in the expected format, just add toolUseIdCOMMENT
MEDIUMstrands-py/src/strands/tools/_tool_helpers.py7# https://github.com/strands-agents/harness-sdk/issues/998COMMENT
MEDIUMstrands-py/src/strands/tools/_caller.py141 # TODO: https://github.com/strands-agents/harness-sdk/issues/1311COMMENT
MEDIUMstrands-py/src/strands/tools/mcp/mcp_client.py455 # See: https://github.com/strands-agents/harness-sdk/issues/1440COMMENT
MEDIUMstrands-py/src/strands/event_loop/streaming.py78 # https://github.com/strands-agents/harness-sdk/issues/1069COMMENT
MEDIUMstrands-py/src/strands/models/openai_responses.py35# A major version bump is proposed in https://github.com/strands-agents/harness-sdk/pull/1370COMMENT
MEDIUMstrands-py/src/strands/models/openai_responses.py692 # tracked in https://github.com/strands-agents/harness-sdk/issues/3389.COMMENT
MEDIUMstrands-py/src/strands/models/openai.py249 # See https://github.com/strands-agents/harness-sdk/issues/1696COMMENT
MEDIUMstrands-py/src/strands/models/openai.py387 # TODO: Handle caching blocks https://github.com/strands-agents/harness-sdk/issues/1140COMMENT
MEDIUMstrands-py/src/strands/models/bedrock.py855 # TODO: Replace with systematic model configuration registry (https://github.com/strands-agents/harness-COMMENT
MEDIUM…_plugins/steering/context_providers/ledger_provider.py1"""Ledger context provider for comprehensive agent activity tracking.STRING
MEDIUMstrands-py/src/strands/hooks/registry.py260 # Related issue: https://github.com/strands-agents/harness-sdk/issues/330COMMENT
MEDIUMstrands-py/src/strands/telemetry/metrics.py423 """Generate a comprehensive summary of all collected metrics.STRING
MEDIUM…s-py/src/strands/session/repository_session_manager.py294 # Fix broken session histories: https://github.com/strands-agents/harness-sdk/issues/859COMMENT
MEDIUM.github/workflows/harness-cli-security-audit.yml4# tree. Reusable; called by release-harness-cli.yml. Does not block the release:COMMENT
MEDIUM.github/workflows/harness-cli-integration-test.yml10# Reusable too: release-harness-cli.yml calls it with an explicit `ref`; theCOMMENT
MEDIUM.github/workflows/harness-py-security-audit.yml3# Informational pip-audit of the harness-py (`strands-harness`) dependencyCOMMENT
MEDIUM.github/workflows/harness-py-security-audit.yml4# closure. Reusable; called by release-harness-py.yml. Mirrors the SDK'sCOMMENT
MEDIUM.github/workflows/harness-py-integration-test.yml3# Live-model integration tests for harness-py (`strands-harness`), againstCOMMENT
MEDIUM.github/workflows/harness-py-integration-test.yml9# Reusable too: release-harness-py.yml calls it with an explicit `ref`; theCOMMENT
54 more matches not shown…
Excessive Try-Catch Wrapping285 hits · 288 pts
SeverityFileLineSnippetContext
LOWharness-py/src/strands_harness/tools/subagent.py569 except Exception as exc:CODE
LOWharness-py/src/strands_harness/tools/web_fetch.py193 except Exception as exc:CODE
LOW…/src/strands_harness/tools/programmatic_tool_caller.py184 except Exception as error:CODE
LOWharness-py/src/strands_harness/tools/web_search.py67 except Exception as exc:CODE
LOWharness-py/src/strands_harness/tools/web_search.py92 except Exception as exc:CODE
LOWharness-py/src/strands_harness/tools/web_search.py119 except Exception as exc: # any backend failure becomes text the model can act onCODE
LOWharness-py/src/strands_harness/plugins/environment.py102 except Exception:CODE
LOWharness-py/src/strands_harness/plugins/environment.py119 except Exception:CODE
LOWharness-py/src/strands_harness/plugins/environment.py129 except Exception:CODE
LOWharness-py/src/strands_harness/plugins/environment.py144 except Exception:CODE
LOWstrands-py/tests_integ/conftest.py211 except Exception as e:CODE
LOWstrands-py/tests_integ/_ssm.py63 except Exception as error: # noqa: BLE001 - any failure means "unavailable", not "error".CODE
LOWstrands-py/tests_integ/_ssm.py98 except Exception as error: # noqa: BLE001 - any failure means "skip", not "error".CODE
LOWstrands-py/tests_integ/test_multiagent_graph.py501 except Exception as e:CODE
LOWstrands-py/tests_integ/test_multiagent_graph.py578 except Exception as e:CODE
LOWstrands-py/tests_integ/test_multiagent_graph.py833 except Exception as e:CODE
LOWstrands-py/tests_integ/test_multiagent_swarm.py34 except Exception as e:CODE
LOWstrands-py/tests_integ/test_a2a_executor.py82 except Exception as e:CODE
LOWstrands-py/tests_integ/memory/conftest.py83 except Exception: # noqa: BLE001 - best-effort cleanup.CODE
LOW…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py130 except Exception: # noqa: BLE001 - best-effort; don't mask test failures.CODE
LOW…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py154 except Exception: # noqa: BLE001 - best-effort.CODE
LOW…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py164 except Exception: # noqa: BLE001 - best-effort.CODE
MEDIUM…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py123def _cleanup() -> None:CODE
LOW…g/memory/test_bedrock_knowledge_base_memory_manager.py151 except Exception: # noqa: BLE001 - best-effort; don't mask test failures.CODE
LOWstrands-py/tests_integ/bidi/context.py318 except Exception as e:CODE
LOWstrands-py/tests_integ/bidi/context.py339 except Exception as e:CODE
LOWstrands-py/tests_integ/bidi/generators/audio.py101 except Exception as e:CODE
MEDIUMstrands-py/tests_integ/mcp/test_mcp_client.py50 print(f"Error while generating custom image: {e}")CODE
MEDIUMstrands-py/tests_integ/mcp/test_mcp_client.py44def generate_custom_image() -> MCPImageContent:CODE
LOWstrands-py/tests_integ/mcp/test_mcp_client.py49 except Exception as e:CODE
LOWstrands-py/tests_integ/mcp/test_mcp_client.py557 except Exception:CODE
LOWstrands-py/tests_integ/models/test_model_llamacpp.py537 except Exception as e:CODE
LOWstrands-py/tests_integ/models/test_mantle_routing.py60 except Exception as e: # noqa: BLE001 - any credential/import failure means "can't run here"CODE
LOWstrands-py/tests_integ/models/test_mantle_routing.py89 except Exception: # noqa: BLE001 - transport failure is undetermined, not "not served"CODE
LOWstrands-py/tests_integ/sandbox/conftest.py108 except Exception: # noqa: BLE001 - best-effort cleanupCODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py603def transformer(context, next_fn):CODE
LOWstrands-py/tests/strands/middleware/test_registry.py706 except Exception: # noqa: BLE001 — deliberately broad; must NOT catch CancelledErrorCODE
LOW…sts/strands/middleware/test_execute_tool_middleware.py253 except Exception:CODE
LOWstrands-py/tests/strands/tools/test_decorator_pep563.py139 except Exception as e:CODE
LOW⚡strands-py/tests/strands/tools/mcp/test_mcp_client.py956 except Exception:CODE
LOWstrands-py/tests/strands/types/test_exceptions.py331 except Exception as e:CODE
LOWstrands-py/tests/strands/multiagent/test_swarm.py855 except Exception:CODE
LOWstrands-py/tests/strands/multiagent/test_swarm.py898 except Exception:CODE
LOW…ts/strands/background_tasks/in_process/test_manager.py55 except Exception as error:CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py2640def invoke():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3400def invoke():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3438def invoke_abc():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3447def invoke_def():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3487def invoke_with_token():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3496def invoke_without_token():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3536def invoke():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3593def invoke():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3637def invoke_abc():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3646def invoke_def():CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py3700def invoke():CODE
LOWstrands-py/tests/strands/agent/test_agent.py3368 except Exception as e:CODE
LOWstrands-py/tests/strands/agent/test_agent.py3403 except Exception as e:CODE
LOWstrands-py/tests/strands/agent/test_agent.py3443 except Exception as e:CODE
LOWstrands-py/tests/strands/agent/test_agent.py3452 except Exception as e:CODE
LOWstrands-py/tests/strands/agent/test_agent.py3492 except Exception as e:CODE
225 more matches not shown…
Modern Structural Boilerplate251 hits · 250 pts
SeverityFileLineSnippetContext
LOWharness-py/src/strands_harness/config.py39__all__ = [CODE
LOWharness-py/src/strands_harness/config.py46logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/models.py28logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/__init__.py37__all__ = [CODE
LOWharness-py/src/strands_harness/telemetry.py23logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/agent.py62logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/tools/subagent.py37logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/tools/__init__.py26__all__ = [CODE
LOW…/src/strands_harness/tools/programmatic_tool_caller.py41logger = logging.getLogger(__name__)CODE
LOWharness-py/src/strands_harness/types/agent.py185__all__ = [STRING
LOWharness-py/src/strands_harness/plugins/__init__.py10__all__ = ["EnvironmentContext", "TodoItem", "Todos"]CODE
LOWstrands-py/tests_integ/conftest.py11logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/test_max_tokens_reached.py10logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/_ssm.py29logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/memory/conftest.py17logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/bidi/conftest.py10logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/bidi/context.py17logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/bidi/test_bidirectional_agent.py27logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/bidi/generators/audio.py14logger = logging.getLogger(__name__)CODE
LOWstrands-py/tests_integ/mcp/test_mcp_tool_provider.py15logger = logging.getLogger(__name__)CODE
LOW⚡strands-py/tests_integ/sandbox/conftest.py33logger = logging.getLogger(__name__)CODE
LOW…ds-py/tests/strands/tools/mcp/test_mcp_client_tasks.py85 def _setup_task_tool(self, mock_session, tool_name: str) -> None:CODE
LOWstrands-py/tests/strands/bidi/models/test_model.py24 def update_config(self, **model_config: Any) -> None:CODE
LOW…sts/strands/vended_plugins/skills/test_agent_skills.py84def _set_system_prompt(agent: MagicMock, value: str | list | None) -> None:CODE
LOWstrands-py/src/strands/interrupt.py157 def set_pending_tool_results(self, completed_tool_results: list["ToolResult"]) -> None:CODE
LOWstrands-py/src/strands/__init__.py21__all__ = [CODE
LOWstrands-py/src/strands/experimental/__init__.py9__all__ = ["checkpoint", "config_to_agent", "context_manager", "tools", "steering"]CODE
LOWstrands-py/src/strands/experimental/tools/__init__.py24__all__ = [CODE
LOW…nds-py/src/strands/experimental/tools/stop/__init__.py16__all__ = [CODE
LOW…s-py/src/strands/experimental/checkpoint/checkpoint.py38logger = logging.getLogger(__name__)CODE
LOW…nds-py/src/strands/experimental/checkpoint/__init__.py12__all__ = ["CHECKPOINT_SCHEMA_VERSION", "Checkpoint", "CheckpointPosition"]CODE
LOW…y/src/strands/experimental/context_manager/__init__.py18__all__ = [CODE
LOWstrands-py/src/strands/experimental/bidi/__init__.py16__all__ = ["agent", "hooks", "io", "models", "types"]CODE
LOW…nds-py/src/strands/experimental/bidi/types/__init__.py50__all__ = [CODE
LOWstrands-py/src/strands/experimental/bidi/io/__init__.py11__all__ = ["AudioIO", "AudioIOConfig", "AudioProcessorConfig", "ConsoleIO", "ConsoleIOConfig"]CODE
LOW…nds-py/src/strands/experimental/bidi/agent/__init__.py8__all__ = ["BidiAgent"]CODE
LOW…ds-py/src/strands/experimental/bidi/models/__init__.py27__all__ = [CODE
LOW…nds-py/src/strands/experimental/bidi/hooks/__init__.py14__all__ = [CODE
LOWstrands-py/src/strands/experimental/hooks/__init__.py14__all__ = [CODE
LOW…py/src/strands/experimental/hooks/multiagent/events.py22__all__ = [CODE
LOW…/src/strands/experimental/hooks/multiagent/__init__.py14__all__ = [CODE
LOWstrands-py/src/strands/tools/registry.py27logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/registry.py635 def _update_tool_config(self, tool_config: dict[str, Any], new_tool: NewToolDict) -> None:CODE
LOWstrands-py/src/strands/tools/decorator.py73logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/tools.py18logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/__init__.py11__all__ = [CODE
LOWstrands-py/src/strands/tools/loader.py17logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/watcher.py16logger = logging.getLogger(__name__)CODE
LOW…ands/tools/structured_output/structured_output_tool.py18logger = logging.getLogger(__name__)CODE
LOW…nds-py/src/strands/tools/structured_output/__init__.py6__all__ = ["convert_pydantic_to_tool_spec", "DEFAULT_STRUCTURED_OUTPUT_PROMPT"]CODE
LOW…/tools/structured_output/_structured_output_context.py14logger = logging.getLogger(__name__)CODE
LOW…/tools/structured_output/_structured_output_context.py77 def set_forced_mode(self, tool_choice: dict | None = None) -> None:CODE
LOWstrands-py/src/strands/tools/mcp/mcp_instrumentation.py32logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/mcp/__init__.py28__all__ = [CODE
LOWstrands-py/src/strands/tools/mcp/mcp_tasks.py238__all__ = [CODE
LOWstrands-py/src/strands/tools/mcp/mcp_agent_tool.py22logger = logging.getLogger(__name__)CODE
LOW⚡strands-py/src/strands/tools/mcp/mcp_client.py2497 async def set_tokens(self, tokens: OAuthToken) -> None:CODE
LOW⚡strands-py/src/strands/tools/mcp/mcp_client.py2503 async def set_client_info(self, client_info: OAuthClientInformationFull) -> None:CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py114logger = logging.getLogger(__name__)CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py678 async def _set_close_event() -> None:CODE
191 more matches not shown…
Modern AI Meta-Vocabulary81 hits · 239 pts
SeverityFileLineSnippetContext
MEDIUMREADME.md39Strands Agents is an open-source SDK for building and running AI agents in Python and TypeScript. Choose Strands when yoCODE
MEDIUMharness-py/README.md71 context_manager="auto", # "auto" | "agentic" | a ContextManager config/instance | FalseCODE
MEDIUM…/src/strands_harness/tools/programmatic_tool_caller.py58# Cap on the text returned to the model; a runaway ``print`` should not blow up the context window.COMMENT
MEDIUM.agents/references/voice-guide.md27 - [Multi-agent patterns](#multi-agent-patterns)CODE
MEDIUM.agents/skills/strands/references/scaffold-agent.md106## Finish the scaffoldCOMMENT
MEDIUMtest-infra/scripts/run-selective-ts.sh91 '^test-infra/scripts/run-selective-ts\.sh$' # this orchestration scriptCODE
MEDIUMstrands-py/AGENTS.md30│ ├── multiagent/ # Multi-agent orchestration (A2A, graphs, swarm)CODE
MEDIUM⚡strands-py/tests_integ/models/test_model_openai.py246 # Use gpt-4o-mini which has a smaller context window to make this test more reliableCOMMENT
MEDIUM⚡strands-py/tests_integ/models/test_model_openai.py256 # Create a very long text that should exceed context windowCOMMENT
MEDIUMstrands-py/tests_integ/models/test_model_llamacpp.py230 "penalty_last_n": 64, # Penalty context windowCODE
MEDIUM…py/tests/strands/test_tracking_id_history_invariant.py130 # The agentic ``summarize_context`` tool generates a summary and splices it straight intoCOMMENT
MEDIUM⚡strands-py/tests/strands/multiagent/test_graph.py1987 # Create a multi-agent that streams events but never yields a resultCOMMENT
MEDIUMstrands-py/tests/strands/vended_tools/test_web_fetch.py264 # No factory model and no host agent — agentic mode has nowhere to go.COMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py212 # Create multi-agent firstCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py215 # Sync multi-agentCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py228 # Verify multi-agent was createdCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py246 # Initialize multi-agentCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py1191 # Create mock multi-agentCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py1196 # Initialize multi-agentCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py1223 # Create mock multi-agentCOMMENT
MEDIUM⚡…sts/strands/session/test_repository_session_manager.py1228 # Initialize multi-agentCOMMENT
MEDIUM⚡…-py/tests/strands/session/test_file_session_manager.py470 # Create session and multi-agentCOMMENT
MEDIUM⚡…-py/tests/strands/session/test_file_session_manager.py474 # Read multi-agentCOMMENT
MEDIUM⚡…-py/tests/strands/session/test_file_session_manager.py489 # Create session and multi-agentCOMMENT
MEDIUM⚡…ds-py/tests/strands/session/test_s3_session_manager.py477 # Create session and multi-agentCOMMENT
MEDIUM⚡…ds-py/tests/strands/session/test_s3_session_manager.py481 # Read multi-agentCOMMENT
MEDIUM⚡…ds-py/tests/strands/session/test_s3_session_manager.py497 # Create session and multi-agentCOMMENT
MEDIUMstrands-py/src/strands/multiagent/graph.py1022 # For nested multi-agent systems, stream their events and collect resultCOMMENT
MEDIUMstrands-py/src/strands/multiagent/graph.py1025 # Forward nested multi-agent events with node contextCOMMENT
MEDIUMstrands-py/src/strands/agent/agent.py446 # Inject the model-driven context-management tools when running in agentic mode.COMMENT
MEDIUMstrands-py/src/strands/agent/agent.py500 # In agentic mode, surface live token usage to the model so it can decide when to compress.COMMENT
MEDIUMstrands-py/src/strands/models/openai_responses.py359 # - reasoning_text: full chain-of-thought (gpt-oss models)COMMENT
MEDIUMstrands-py/src/strands/models/_defaults.py22# Default context window limit (in tokens) when the model does not report one.COMMENT
MEDIUMstrands-py/src/strands/models/bedrock.py70# Models that hallucinate when receiving JSON content blocks in tool resultsCOMMENT
MEDIUMstrands-ts/AGENTS.md30│ ├── multiagent/ # Multi-agent orchestration (A2A, graphs, swarm)CODE
MEDIUMstrands-ts/src/__fixtures__/mock-message-model.ts272 // GuardContentBlock is handled by guardrails and doesn't generate model eventsCOMMENT
MEDIUMstrands-ts/src/models/bedrock.ts177 * @see https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.htmlCOMMENT
MEDIUMstrands-ts/src/models/bedrock.ts307 * @see https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.htmlCOMMENT
MEDIUMstrands-ts/src/models/bedrock.ts1210 // Bedrock guardrails only support png/jpeg formatsCOMMENT
MEDIUMstrands-ts/src/models/bedrock.ts1218 // Bedrock guardrails only support bytes source (not S3 or URL)COMMENT
MEDIUMstrands-ts/src/models/model.ts588 // Handle content redaction from guardrailsCOMMENT
MEDIUMstrands-ts/src/vended-tools/web-fetch/README.md91### Input — agentic modeCOMMENT
MEDIUMteam/designs/0006-cedar-authorization.md55Most agents today are single-user, but even in the single-user case, you don't want the agent to have the full permissioCODE
MEDIUMteam/designs/0006-cedar-authorization.md125See [Appendix E](#appendix-e-tool-set-swapping-vs-cedar) for a side-by-side comparison table. **The rule of thumb**: If CODE
MEDIUM⚡team/designs/0006-cedar-authorization.md243Cedar is purpose-built for authorization — `principal`, `action`, `resource`, and `context` are language primitives, notCODE
MEDIUM⚡team/designs/0006-cedar-authorization.md243Cedar is purpose-built for authorization — `principal`, `action`, `resource`, and `context` are language primitives, notCODE
MEDIUM⚡team/designs/0006-cedar-authorization.md247Building this plugin also led to a broader investigation into Cedar as an [intervention handler](#future-cedar-as-an-intCODE
MEDIUMteam/designs/0006-cedar-authorization.md928| 3 | [Can your governance keep pace with your AI ambitions? AI risk intelligence in the agentic era](https://aws.amazonCODE
MEDIUMteam/designs/0006-cedar-authorization.md929| 4 | [Agentic AI in the Enterprise Part 2: Guidance by Persona](https://aws.amazon.com/blogs/machine-learning/operationCODE
MEDIUMteam/designs/0007-intervention-primitive.md51Several independent tools already control agent behavior at runtime — [steering](https://strandsagents.com/docs/user-guiCODE
MEDIUMteam/designs/0003-context-management.md60[Recursive Language Models](https://arxiv.org/abs/2512.24601) train models to recursively process long prompts by chunkiCODE
MEDIUMteam/designs/0010-multimodal-i2t-evaluation.md22# The judge never sees the image — it cannot detect visual hallucinationsCOMMENT
MEDIUMteam/designs/0008-proactive-context-compression.md143**Context window limit on Model ([#1295](https://github.com/strands-agents/harness-sdk/issues/1295)).** The threshold chCODE
MEDIUMteam/designs/0011-context-strategy.md90### `"agentic"` — The agent decidesCOMMENT
MEDIUMteam/designs/0011-context-strategy.md491 // ContextNavigation plugin config (agentic only)COMMENT
MEDIUMteam/designs/0011-context-strategy.md496 // ContextDelegation plugin config (agentic only)COMMENT
MEDIUMteam/designs/0012-strandslator-design.md108- **[Adversarial and cross-language differential testing](https://gist.github.com/agent-of-mkmeral/5a4d0ce16a1242a711d77CODE
MEDIUMteam/designs/0012-strandslator-design.md108- **[Adversarial and cross-language differential testing](https://gist.github.com/agent-of-mkmeral/5a4d0ce16a1242a711d77CODE
MEDIUMteam/designs/0018-shared-agent-model-types.md63[`BidiModel`](https://github.com/strands-agents/harness-sdk/blob/3e3859e9c68fffc31c23e2f67b10037bc95493e2/strands-py/srcCODE
MEDIUMteam/designs/0011-memory-manager.md263### 2. Single store (no multi-store orchestration)COMMENT
21 more matches not shown…
Empty Error Handlers42 hits · 210 pts
SeverityFileLineSnippetContext
HIGHstrands-py/tests_integ/memory/conftest.py83except Exception: # noqa: BLE001 - best-effort cleanup.CODE
HIGH…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py130except Exception: # noqa: BLE001 - best-effort; don't mask test failures.CODE
HIGH…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py164except Exception: # noqa: BLE001 - best-effort.CODE
HIGH…ands-py/tests_integ/memory/_bedrock_kb_test_helpers.py154except Exception: # noqa: BLE001 - best-effort.CODE
HIGH…g/memory/test_bedrock_knowledge_base_memory_manager.py151except Exception: # noqa: BLE001 - best-effort; don't mask test failures.CODE
HIGHstrands-py/tests_integ/mcp/test_mcp_client.py557except Exception:CODE
HIGHstrands-py/tests_integ/models/providers.py60except requests.exceptions.ConnectionError:CODE
HIGHstrands-py/tests_integ/sandbox/conftest.py108except Exception: # noqa: BLE001 - best-effort cleanupCODE
HIGHstrands-py/tests/strands/tools/mcp/test_mcp_client.py956except Exception:CODE
HIGHstrands-py/tests/strands/multiagent/test_swarm.py855except Exception:CODE
HIGHstrands-py/tests/strands/multiagent/test_swarm.py898except Exception:CODE
HIGHstrands-py/tests/strands/models/conftest.py15except ImportError:CODE
HIGH…s/strands/vended_plugins/steering/core/test_handler.py289except Exception:CODE
HIGH…nds-py/tests/strands/vended_tools/test_http_request.py203except HttpRequestError:CODE
HIGH…rands-py/tests/strands/vended_tools/test_mcp_router.py84except Exception:CODE
HIGH…rands-py/tests/strands/vended_tools/test_mcp_router.py154except Exception:CODE
HIGH…rands-py/tests/strands/vended_tools/test_mcp_router.py409except Exception:CODE
HIGH…rands-py/tests/strands/vended_tools/test_mcp_router.py202except Exception:CODE
HIGHstrands-py/src/strands/tools/mcp/mcp_client.py1706except Exception:CODE
HIGHstrands-py/src/strands/memory/memory_manager.py576except Exception: # noqa: BLE001 - failures are logged in ``add``; swallow here.CODE
HIGH…-py/src/strands/background_tasks/in_process/_engine.py254except asyncio.CancelledError:CODE
HIGH…-py/src/strands/background_tasks/in_process/_engine.py306except Exception:CODE
HIGH…-py/src/strands/background_tasks/in_process/_engine.py142except RuntimeError:CODE
HIGH…py/src/strands/background_tasks/in_process/_manager.py342except RuntimeError:CODE
HIGH…py/src/strands/background_tasks/in_process/_manager.py213except asyncio.TimeoutError:CODE
HIGHstrands-py/src/strands/bidi/_async/_task_pool.py46except asyncio.CancelledError:CODE
HIGHstrands-py/src/strands/bidi/_audio/processor.py109except queue.Empty:CODE
HIGHstrands-py/src/strands/bidi/_audio/buffer.py38except queue.Full:CODE
HIGHstrands-py/src/strands/models/bedrock.py118except asyncio.QueueEmpty:CODE
HIGHstrands-py/src/strands/storage/local_file_storage.py209except (FileNotFoundError, NotADirectoryError):CODE
HIGHstrands-py/src/strands/storage/local_file_storage.py203except (FileNotFoundError, NotADirectoryError):CODE
HIGHstrands-py/src/strands/storage/local_file_storage.py145except OSError:CODE
HIGH…rands-py/src/strands/vended_tools/subagent/subagent.py245except (TypeError, ValueError):CODE
HIGHstrands-py/src/strands/session/file_session_manager.py155except OSError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py570except RuntimeError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py66except threading.BrokenBarrierError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py97except threading.BrokenBarrierError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py105except threading.BrokenBarrierError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py145except threading.BrokenBarrierError:CODE
HIGHstrands-mcp/tests/test_indexer_concurrency.py173except threading.BrokenBarrierError:CODE
HIGHstrands-mcp/src/strands_mcp_server/utils/indexer.py164except ValueError:CODE
HIGHstrands-cli/src/tui/project/worker.py88except Exception:CODE
Deep Nesting144 hits · 126 pts
SeverityFileLineSnippetContext
LOWharness-py/tests_integ/conftest.py81CODE
LOWharness-py/tests_integ/conftest.py99CODE
LOWharness-py/tests_integ/conftest.py86CODE
LOWharness-py/tests_integ/conftest.py104CODE
LOWharness-py/src/strands_harness/options.py80CODE
LOWharness-py/src/strands_harness/config.py103CODE
LOWharness-py/src/strands_harness/agent.py175CODE
LOWharness-py/src/strands_harness/agent.py238CODE
LOWharness-py/src/strands_harness/tools/subagent.py252CODE
LOWharness-py/src/strands_harness/tools/subagent.py497CODE
LOW…/src/strands_harness/tools/programmatic_tool_caller.py75CODE
LOWstrands-py/tests_integ/conftest.py28CODE
LOWstrands-py/tests_integ/conftest.py197CODE
LOW…ds-py/tests_integ/test_structured_output_agent_loop.py132CODE
LOWstrands-py/tests_integ/bidi/context.py202CODE
LOWstrands-py/tests_integ/bidi/context.py232CODE
LOWstrands-py/tests_integ/bidi/context.py279CODE
LOWstrands-py/tests_integ/bidi/test_bidirectional_agent.py39CODE
LOWstrands-py/tests_integ/bidi/test_bidirectional_agent.py174CODE
LOWstrands-py/tests_integ/mcp/test_mcp_client.py536CODE
LOWstrands-py/tests_integ/mcp/echo_server.py37CODE
LOWstrands-py/tests_integ/mcp/echo_server.py75CODE
LOWstrands-py/tests_integ/sandbox/conftest.py58CODE
LOWstrands-py/tests/strands/tools/test_decorator.py1355CODE
LOWstrands-py/tests/strands/tools/test_decorator.py1359CODE
LOWstrands-py/tests/strands/tools/mcp/test_mcp_client.py631CODE
LOW…rands-py/tests/strands/multiagent/a2a/test_executor.py2031CODE
LOWstrands-py/tests/strands/memory/test_extraction.py165CODE
LOWstrands-py/tests/strands/bidi/models/test_bedrock.py696CODE
LOW…ds-py/tests/strands/agent/test_conversation_manager.py315CODE
LOWstrands-py/tests/strands/agent/test_snapshot.py188CODE
LOWstrands-py/tests/strands/agent/test_agent_hooks.py657CODE
LOWstrands-py/tests/strands/agent/test_agent_hooks.py670CODE
LOW…trands/vended_plugins/context_offloader/test_plugin.py46CODE
LOWstrands-py/tests/strands/sandbox/test_posix_shell.py40CODE
LOWstrands-py/src/strands/tools/registry.py44CODE
LOWstrands-py/src/strands/tools/registry.py335CODE
LOWstrands-py/src/strands/tools/registry.py360CODE
LOWstrands-py/src/strands/tools/registry.py444CODE
LOWstrands-py/src/strands/tools/registry.py72CODE
LOWstrands-py/src/strands/tools/decorator.py119CODE
LOWstrands-py/src/strands/tools/decorator.py235CODE
LOWstrands-py/src/strands/tools/decorator.py316CODE
LOWstrands-py/src/strands/tools/decorator.py687CODE
LOWstrands-py/src/strands/tools/watcher.py80CODE
LOW…nds/tools/structured_output/structured_output_utils.py10CODE
LOW…nds/tools/structured_output/structured_output_utils.py82CODE
LOW…nds/tools/structured_output/structured_output_utils.py230CODE
LOW…nds/tools/structured_output/structured_output_utils.py364CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py905CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py1459CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py1639CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py1922CODE
LOWstrands-py/src/strands/tools/executors/_executor.py64CODE
LOWstrands-py/src/strands/tools/executors/_executor.py153CODE
LOWstrands-py/src/strands/multiagent/swarm.py782CODE
LOWstrands-py/src/strands/multiagent/graph.py629CODE
LOWstrands-py/src/strands/multiagent/graph.py826CODE
LOWstrands-py/src/strands/multiagent/graph.py983CODE
LOWstrands-py/src/strands/multiagent/graph.py1161CODE
84 more matches not shown…
Structural Annotation Overuse66 hits · 124 pts
SeverityFileLineSnippetContext
LOW⚡.agents/skills/docs-audit/SKILL.md27### Step 1: Fetch and classifyCOMMENT
LOW⚡.agents/skills/docs-audit/SKILL.md33### Step 2: Voice stack reviewCOMMENT
LOW⚡.agents/skills/docs-audit/SKILL.md43### Step 3: Accuracy checkCOMMENT
LOW.agents/skills/docs-audit/SKILL.md57### Step 4: AI-readability checkCOMMENT
LOW.agents/skills/docs-audit/SKILL.md65### Step 5: Competitive comparison (optional)COMMENT
LOW.agents/skills/docs-writer/SKILL.md20### Step 1: Load voice contextCOMMENT
LOW.agents/skills/docs-writer/SKILL.md28### Step 2: OutlineCOMMENT
LOW.agents/skills/docs-writer/SKILL.md39### Step 3: DraftCOMMENT
LOW.agents/skills/docs-writer/SKILL.md71### Step 4: ConstrainCOMMENT
LOW.agents/skills/docs-writer/SKILL.md94### Step 5: AuthenticateCOMMENT
LOW.agents/skills/docs-writer/SKILL.md102### Step 6: MetadataCOMMENT
LOW.agents/skills/docs-writer/SKILL.md115### Step 7: Run docs-reviewerCOMMENT
LOW⚡.agents/skills/docs-planner/SKILL.md18### Step 1: Inventory current docsCOMMENT
LOW⚡.agents/skills/docs-planner/SKILL.md22### Step 2: Identify gapsCOMMENT
LOW⚡.agents/skills/docs-planner/SKILL.md31### Step 3: PrioritizeCOMMENT
LOW⚡.agents/skills/docs-planner/SKILL.md40### Step 4: Produce the backlogCOMMENT
LOW⚡strands-py/src/strands/tools/mcp/mcp_client.py2457 # Step 4: Get the actual result for completed tasks (with error handling for race conditions)COMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2372 # Step 1: Create the taskCOMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2415 # Step 2: Poll until terminal status (with timeout protection)COMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2443 # Step 3: Handle terminal statusCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py126 # Step 1: start with presetCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py132 # Step 2: union with includeCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py136 # Step 3: subtract excludeCOMMENT
LOWstrands-ts/test/integ/tools/notebook.test.ts21 // Step 1: Create a notebookCOMMENT
LOW⚡strands-ts/test/integ/tools/notebook.test.ts32 // Step 2: Add content to the notebookCOMMENT
LOW⚡strands-ts/test/integ/tools/notebook.test.ts39 // Step 3: Read the notebookCOMMENT
LOWsite/docs/examples/python/agents_workflow.py46 # Step 1: Researcher Agent with enhanced web capabilitiesCOMMENT
LOWsite/docs/examples/python/agents_workflow.py71 # Step 2: Analyst Agent to verify factsCOMMENT
LOWsite/docs/examples/python/agents_workflow.py94 # Step 3: Writer Agent to create reportCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md93### Step 1: Create IAM RoleCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md110### Step 2: Set Environment VariablesCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md129### Step 3: Create ECR RepositoryCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md137### Step 4: Build and Push Docker ImageCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md158### Step 5: Create AgentCore RuntimeCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md170### Step 6: Verify DeploymentCOMMENT
LOW…mples/typescript/deploy_to_bedrock_agentcore/README.md184### Step 7: Test Your DeploymentCOMMENT
LOWsite/docs/examples/evals-sdk/evaluate_async.py28 ### Step 1: Define task ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_async.py43 ### Step 2: Create test cases ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py27 ### Step 1: Define task ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py53 ### Step 2: Create test cases ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py59 ### Step 3: Create evaluator ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py68 ### Step 4: Create dataset ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py72 ### Step 5: Run evaluation ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py27 ### Step 1: Define task ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_graph.py60 ### Step 2: Create test cases ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_graph.py72 ### Step 2: Create evaluator ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py88 ### Step 4: Create dataset ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py92 ### Step 5: Run evaluation ###COMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py24 ### Step 1: Define task ###COMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py33 # Step 2: Initialize the experiment generator for string typesCOMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py36 # Step 3: Generate experiment from scratch with specified topicsCOMMENT
LOW…mples/evals-sdk/experiment_generator/simple_dataset.py48 # Step 4: Run evaluations on the generated test casesCOMMENT
LOW…s/evals-sdk/experiment_generator/trajectory_dataset.py51 ### Step 1: Define task ###COMMENT
LOW⚡…s/evals-sdk/experiment_generator/trajectory_dataset.py68 ### Step 2: Initialize the experiment generator ###COMMENT
LOW⚡…s/evals-sdk/experiment_generator/trajectory_dataset.py71 ### Step 3: Generate experiment with tool context ###COMMENT
LOW…s/evals-sdk/experiment_generator/trajectory_dataset.py94 ### Step 4: Run evaluations on the generated test cases ###STRING
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py21 ### Step 1: Define task ###COMMENT
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py28 # Step 2: Initialize the experiment generator for string typesCOMMENT
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py31 # Step 3: Generate experiment with topic planning for better coverageCOMMENT
LOW…als-sdk/experiment_generator/topic_planning_dataset.py48 # Step 4: Run evaluations on the generated test casesCOMMENT
6 more matches not shown…
Cross-Language Confusion18 hits · 120 pts
SeverityFileLineSnippetContext
HIGH⚡harness-py/tests/tools/test_web_fetch.py208 assert f"&& head -c {web_fetch_module._MAX_BYTES} /tmp/f > /tmp/f.part && mv -f /tmp/f.part /tmp/f" in commandCODE
HIGHharness-py/src/strands_harness/config.py266"""Unset marker for optional keys that must not be explicit null; dumps use ``exclude_unset``."""STRING
HIGH⚡strands-py/tests_integ/sandbox/test_ssh.py25 result = await ssh_sandbox.execute("echo hello && echo err >&2")CODE
HIGH⚡strands-py/tests_integ/sandbox/test_ssh.py50 async for item in ssh_sandbox.execute_streaming("echo line1 && echo line2"):CODE
HIGH⚡strands-py/tests_integ/sandbox/test_ssh.py63 async for item in ssh_sandbox.execute_streaming("echo OUT && echo ERR >&2"):CODE
HIGH⚡strands-py/tests_integ/sandbox/test_docker.py58 result = await sandbox.execute("echo hello && echo err >&2")CODE
HIGH…sts/strands/middleware/test_execute_tool_middleware.py80 TS runs the middleware chain for unknown tools too (context.tool === undefined), lettingSTRING
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py88 assert _args(mock_stream_process) == BASE + ["--", "user@server.com", "cd /remote/path && echo hi"]CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py103 "cd /w && ls",CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py110 assert _args(mock_stream_process) == BASE + ["-i", "/home/user/.ssh/key", "--", "h", "cd /w && ls"]CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py125 "cd /w && ls",CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py139 "cd /w && ls",CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py158 assert _args(mock_stream_process) == BASE + ["--", "h", "cd /override && ls"]CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py164 assert _args(mock_stream_process) == BASE + ["--", "h", "cd /w && export FOO=bar BAZ=qux && echo $FOO"]CODE
HIGH⚡strands-py/tests/strands/sandbox/test_ssh.py172 assert _args(mock_stream_process) == BASE + ["--", "h", "cd /w && export FOO='$(whoami)' && echo $FOO"]CODE
HIGHstrands-py/src/strands/tools/decorator.py344 # Handle Optional[Type] case (represented as anyOf[Type, null])COMMENT
HIGH…nds/tools/structured_output/structured_output_utils.py104 # Check if this is an Optional[...] case (one null, one type)COMMENT
HIGHsite/scripts/api-generation-python.py13 pip install pydoc-markdown && python scripts/api-generation-python.py # fallbackSTRING
Verbosity Indicators43 hits · 84 pts
SeverityFileLineSnippetContext
LOW⚡strands-py/src/strands/tools/mcp/mcp_client.py2457 # Step 4: Get the actual result for completed tasks (with error handling for race conditions)COMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2372 # Step 1: Create the taskCOMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2415 # Step 2: Poll until terminal status (with timeout protection)COMMENT
LOWstrands-py/src/strands/tools/mcp/mcp_client.py2443 # Step 3: Handle terminal statusCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py126 # Step 1: start with presetCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py132 # Step 2: union with includeCOMMENT
LOW⚡strands-py/src/strands/types/_snapshot.py136 # Step 3: subtract excludeCOMMENT
LOWstrands-ts/test/integ/tools/notebook.test.ts21 // Step 1: Create a notebookCOMMENT
LOW⚡strands-ts/test/integ/tools/notebook.test.ts32 // Step 2: Add content to the notebookCOMMENT
LOW⚡strands-ts/test/integ/tools/notebook.test.ts39 // Step 3: Read the notebookCOMMENT
LOWsite/docs/examples/python/agents_workflow.py46 # Step 1: Researcher Agent with enhanced web capabilitiesCOMMENT
LOWsite/docs/examples/python/agents_workflow.py71 # Step 2: Analyst Agent to verify factsCOMMENT
LOWsite/docs/examples/python/agents_workflow.py94 # Step 3: Writer Agent to create reportCOMMENT
LOWsite/docs/examples/evals-sdk/evaluate_async.py28 ### Step 1: Define task ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_async.py43 ### Step 2: Create test cases ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py27 ### Step 1: Define task ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py53 ### Step 2: Create test cases ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py59 ### Step 3: Create evaluator ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py68 ### Step 4: Create dataset ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_swarm.py72 ### Step 5: Run evaluation ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py27 ### Step 1: Define task ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_graph.py60 ### Step 2: Create test cases ###COMMENT
LOWsite/docs/examples/evals-sdk/evaluate_graph.py72 ### Step 2: Create evaluator ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py88 ### Step 4: Create dataset ###COMMENT
LOW⚡site/docs/examples/evals-sdk/evaluate_graph.py92 ### Step 5: Run evaluation ###COMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py24 ### Step 1: Define task ###COMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py33 # Step 2: Initialize the experiment generator for string typesCOMMENT
LOW⚡…mples/evals-sdk/experiment_generator/simple_dataset.py36 # Step 3: Generate experiment from scratch with specified topicsCOMMENT
LOW…mples/evals-sdk/experiment_generator/simple_dataset.py48 # Step 4: Run evaluations on the generated test casesCOMMENT
LOW…s/evals-sdk/experiment_generator/trajectory_dataset.py51 ### Step 1: Define task ###COMMENT
LOW⚡…s/evals-sdk/experiment_generator/trajectory_dataset.py68 ### Step 2: Initialize the experiment generator ###COMMENT
LOW⚡…s/evals-sdk/experiment_generator/trajectory_dataset.py71 ### Step 3: Generate experiment with tool context ###COMMENT
LOW…s/evals-sdk/experiment_generator/trajectory_dataset.py94 ### Step 4: Run evaluations on the generated test cases ###STRING
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py21 ### Step 1: Define task ###COMMENT
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py28 # Step 2: Initialize the experiment generator for string typesCOMMENT
LOW⚡…als-sdk/experiment_generator/topic_planning_dataset.py31 # Step 3: Generate experiment with topic planning for better coverageCOMMENT
LOW…als-sdk/experiment_generator/topic_planning_dataset.py48 # Step 4: Run evaluations on the generated test casesCOMMENT
LOW⚡site/scripts/api-generation-typescript.ts211 // Step 1: Clean output directoryCOMMENT
LOW⚡site/scripts/api-generation-typescript.ts217 // Step 2: Run typedocCOMMENT
LOW⚡site/scripts/api-generation-typescript.ts228 // Step 3: Get all generated filesCOMMENT
LOW⚡site/scripts/api-generation-typescript.ts232 // Step 4: Process each file (skip the index file - we have our own)COMMENT
LOW⚡…te/src/content/docs/user-guide/sdk/agents/snapshots.ts102 // Step 1: Gather informationCOMMENT
LOW⚡…te/src/content/docs/user-guide/sdk/agents/snapshots.ts106 // Step 2: Analyze (might fail or produce poor results)COMMENT
Dead Code38 hits · 75 pts
SeverityFileLineSnippetContext
MEDIUMharness-py/tests/test_agent.py91CODE
MEDIUMharness-py/tests/test_subagent.py585CODE
MEDIUMstrands-py/tests_integ/test_multiagent_graph.py495CODE
MEDIUMstrands-py/tests_integ/test_multiagent_graph.py827CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py414CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py504CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py519CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py533CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py601CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py621CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py639CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py700CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py720CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py738CODE
MEDIUMstrands-py/tests/strands/middleware/test_registry.py764CODE
MEDIUM…s-py/tests/strands/middleware/test_agent_middleware.py271CODE
MEDIUM…sts/strands/middleware/test_agent_stream_middleware.py1375CODE
MEDIUM…sts/strands/middleware/test_execute_tool_middleware.py234CODE
MEDIUM…sts/strands/middleware/test_execute_tool_middleware.py891CODE
MEDIUM…ds-py/tests/strands/tools/mcp/test_mcp_client_tasks.py192CODE
MEDIUMstrands-py/tests/strands/tools/mcp/test__compat.py923CODE
MEDIUMstrands-py/tests/strands/tools/executors/conftest.py69CODE
MEDIUMstrands-py/tests/strands/memory/test_model_extractor.py189CODE
MEDIUMstrands-py/tests/strands/memory/test_model_extractor.py169CODE
MEDIUM…ests/strands/background_tasks/test_background_tasks.py298CODE
MEDIUMstrands-py/tests/strands/agent/test_agent_delegation.py122CODE
MEDIUMstrands-py/tests/strands/agent/test_agent_delegation.py453CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py251CODE
MEDIUMstrands-py/tests/strands/agent/test_agent.py2830CODE
MEDIUM…strands/agent/test_summarizing_conversation_manager.py35CODE
MEDIUMstrands-py/tests/strands/agent/test_agent_as_tool.py264CODE
MEDIUMstrands-py/tests/strands/agent/test_a2a_agent.py526CODE
MEDIUM…nds/agent/conversation_manager/test_agentic_context.py45CODE
MEDIUM…agent/conversation_manager/test_context_compression.py58CODE
MEDIUMstrands-py/tests/strands/models/test_ollama.py768CODE
MEDIUMstrands-py/tests/strands/models/routing/test_router.py709CODE
MEDIUMstrands-py/tests/strands/models/routing/test_router.py1092CODE
MEDIUM…sts/strands/models/routing/test_classifier_strategy.py404CODE
Redundant / Tautological Comments39 hits · 63 pts
SeverityFileLineSnippetContext
LOWstrands-py/tests_integ/bidi/test_bidirectional_agent.py138 # Check if provider is availableCOMMENT
LOWstrands-py/tests_integ/steering/test_model_steering.py170 # Check if the required tool was used in this messageCOMMENT
LOWstrands-py/tests/strands/event_loop/test_event_loop.py447 # Set tool_handler to None for this testCOMMENT
LOW⚡strands-py/tests/strands/models/test_litellm.py625 # Check if stream parameter is being setCOMMENT
LOWstrands-py/src/strands/tools/decorator.py257 # Check if we're starting the Args sectionCOMMENT
LOWstrands-py/src/strands/tools/decorator.py262 # Check if we're starting a new section (not Args)COMMENT
LOWstrands-py/src/strands/tools/loader.py166 # Check if the module attribute is a DecoratedFunctiontoolCOMMENT
LOW…nds/tools/structured_output/structured_output_utils.py75 # Check if required props are empty, if so, raise an error because it means there is a circular referenceCOMMENT
LOW…nds/tools/structured_output/structured_output_utils.py104 # Check if this is an Optional[...] case (one null, one type)COMMENT
LOW…nds/tools/structured_output/structured_output_utils.py389 # Check if this is a BaseModel subclassCOMMENT
LOWstrands-py/src/strands/multiagent/swarm.py890 # Check if handoff requested during executionCOMMENT
LOWstrands-py/src/strands/multiagent/graph.py856 # Check if it's an exception - fail fastCOMMENT
LOWstrands-py/src/strands/multiagent/graph.py969 # Check if at least one incoming edge condition is satisfiedCOMMENT
LOWstrands-py/src/strands/multiagent/a2a/executor.py304 # Check if agent returned with interrupts (input_required)COMMENT
LOWstrands-py/src/strands/event_loop/event_loop.py649 # Check if hooks want to retry the model callCOMMENT
LOWstrands-py/src/strands/event_loop/event_loop.py680 # Check if hooks want to retry the model callCOMMENT
LOWstrands-py/src/strands/event_loop/_retry.py135 # Check if we have an exception and reset state if no exceptionCOMMENT
LOWstrands-py/src/strands/event_loop/_retry.py146 # Check if we've exceeded max attemptsCOMMENT
LOW⚡strands-py/src/strands/agent/agent.py1861 # Check if all item in input list are dictionariesCOMMENT
LOW⚡strands-py/src/strands/agent/agent.py1863 # Check if all items are messagesCOMMENT
LOW⚡strands-py/src/strands/agent/agent.py1868 # Check if all items are content blocksCOMMENT
LOW⚡strands-py/src/strands/agent/agent.py1874 # Check if all items are interrupt responsesCOMMENT
LOWstrands-py/src/strands/agent/agent.py1839 # Check if the latest message is toolUseCOMMENT
LOW…rsation_manager/sliding_window_conversation_manager.py106 # Check if per_turn is enabledCOMMENT
LOW…/agent/conversation_manager/compression/pin_message.py44 # Check if adjacent partner shares a toolUseId and is pinnedCOMMENT
LOWstrands-py/src/strands/models/openai_responses.py446 # Check if stopped due to max_output_tokensCOMMENT
LOWstrands-py/src/strands/models/gemini.py764 # Check if the tool has function_declarations attribute and it's not emptyCOMMENT
LOW⚡strands-py/src/strands/models/bedrock.py1685 # Check if input is a dictionaryCOMMENT
LOW⚡strands-py/src/strands/models/bedrock.py1687 # Check if current dictionary has action: BLOCKED and detected: trueCOMMENT
LOWstrands-py/src/strands/models/bedrock.py482 # Check if tool_choice is forcing tool use ("any" or specific "tool")COMMENT
LOWstrands-py/src/strands/hooks/_type_inference.py67 # Check if it's a Union type (Union[A, B] or A | B)COMMENT
LOWstrands-py/src/strands/telemetry/metrics.py546 # Check if this trace contains tool info with toolUseIdCOMMENT
LOWstrands-py/src/strands/telemetry/tracer.py401 # Check if the message contains a tool resultCOMMENT
LOW…s-py/src/strands/vended_tools/a2a_client/a2a_client.py107 # Check if the endpoint is allowed via exact-match.COMMENT
LOWstrands-py/src/strands/session/s3_session_manager.py170 # Check if session already existsCOMMENT
LOW…s-py/src/strands/session/repository_session_manager.py144 # Check if we have a previous state to compare againstCOMMENT
LOWsite/docs/examples/python/mcp_calculator.py142 # Check if the user wants to exitSTRING
LOW…escript/deploy_to_bedrock_agentcore/create-iam-role.sh123# Check if role already existsCOMMENT
LOWsite/scripts/api-generation-python.py237 # Check if any part of the module path starts with underscoreCOMMENT
Magic Placeholder Names8 hits · 55 pts
SeverityFileLineSnippetContext
HIGHstrands-ts/src/models/google/model.ts38 * apiKey: 'your-api-key',COMMENT
HIGHstrands-ts/src/models/google/model.ts67 * apiKey: 'your-api-key'COMMENT
HIGHstrands-ts/src/models/google/model.ts72 * apiKey: 'your-api-key',COMMENT
HIGHstrands-ts/src/models/google/model.ts83 * const client = new GoogleGenAI({ apiKey: 'your-api-key' })COMMENT
HIGHstrands-ts/src/models/google/model.ts211 * const provider = new GoogleModel({ apiKey: 'your-api-key' })COMMENT
HIGHstrands-ts/src/models/google/index.ts9 * apiKey: 'your-api-key',COMMENT
HIGHsite/src/content/changelog/sdk/typescript-v0.2.1.md30 apiKey: 'your-api-key',CODE
HIGHsite/src/content/changelog/sdk/typescript-v0.2.1.md40const client = new GoogleGenAI({ apiKey: 'your-api-key' })CODE
Over-Commented Block39 hits · 36 pts
SeverityFileLineSnippetContext
LOW.agents/skills/pre-push/run-checks.sh1#!/usr/bin/env bashCOMMENT
LOW.agents/skills/pre-push/run-checks.sh21# --all Fix + check every area regardless of what changed.COMMENT
LOW.agents/skills/pre-push/run-checks.sh61 --all) FORCE_ALL=1; shift ;;COMMENT
LOWtest-infra/scripts/run-selective-ts.sh1#!/usr/bin/env bashCOMMENT
LOWtest-infra/scripts/run-selective-ts.sh101if [[ -z "$TS_SOURCE" ]]; thenCOMMENT
LOWstrands-py/tests/strands/memory/test_memory_manager.py1241 flushed = asyncio.ensure_future(mm.flush())COMMENT
LOWstrands-py/tests/strands/models/test_sagemaker.py301COMMENT
LOWstrands-py/tests/strands/models/test_sagemaker.py321 # assert len(formatted_messages) == 2COMMENT
LOWstrands-py/tests/strands/models/test_sagemaker.py341 # assert payload["tools"][0]["type"] == "function"COMMENT
LOWstrands-py/src/strands/tools/decorator.py141 # We are explicitly blocking the use of `pydantic.Field` within `Annotated`COMMENT
LOWstrands-py/src/strands/tools/executors/_executor.py321 ):COMMENT
LOWstrands-py/src/strands/models/llamaapi.py461 Yields:COMMENT
LOWstrands-py/src/strands/sandbox/constants.py21#: Pattern for validating environment variable names: a leading letter orCOMMENT
LOWstrands-ts/src/vended-plugins/goal/plugin.ts301 // attach to it without each having to lazy-create.COMMENT
LOWstrands-ts/src/agent/agent.ts621 ? config.retryStrategyCOMMENT
LOW.github/dependabot.yml1# Dependabot configuration.COMMENT
LOW.github/workflows/typescript-test-package-pack.yml1# End-to-end package install smoke test.COMMENT
LOW.github/workflows/pr-metrics-analyze.yml1name: PR Metrics (Analyze)COMMENT
LOW.github/workflows/catalog-editorial-review.yml41 EDITORIAL_LABEL: 'catalog: editorial-review'COMMENT
LOW.github/workflows/catalog-editorial-review.yml61 // head and at the base (contents API, data-only) with js-yaml andCOMMENT
LOW.github/workflows/catalog-editorial-review.yml281 // --- Package provenance: cross-check registry metadata ---------COMMENT
LOW.github/workflows/pr-metrics-label.yml1name: PR Metrics (Label)COMMENT
LOW.github/workflows/release-harness-py.yml1name: "Harness Python: Release"COMMENT
LOW.github/workflows/release-harness-cli.yml1name: "Harness CLI: Release"COMMENT
LOW.github/workflows/python-test-package-build.yml1# End-to-end wheel install smoke test.COMMENT
LOW.github/workflows/release-typescript.yml401 # Push the tag over git rather than letting `gh release createCOMMENT
LOW.github/workflows/release-harness-ts.yml1name: "Harness TypeScript: Release"COMMENT
LOWsite/docs/examples/deploy_to_eks/chart/values.yaml61 # cpu: 100mCOMMENT
LOWsite/docs/examples/deploy_to_eks/chart/values.yaml81 # labelSelector:COMMENT
LOWsite/scripts/changelog/enrich.ts1// Enrich a parsed line from its linked PR: area-* labels, breaking flag,COMMENT
LOWsite/scripts/changelog/parse-release-body.ts1// Parse the "New Contributors" section of a GitHub release body, and classifyCOMMENT
LOWsite/src/content.config.ts141 .strict(),COMMENT
LOWsite/src/config/navigation.yml1# Navigation configuration for Strands Agents SDK documentationCOMMENT
LOWsite/src/config/tags.yml1# Allowed tag vocabulary for user-guide pages. Drives the headlessCOMMENT
LOWsite/src/config/tags.yml21#COMMENT
LOWsite/src/config/models.ts1// Default model shown in the homepage code samples. Bump it here (or setCOMMENT
LOW…/docs/user-guide/sdk/interrupts-multi-agent_imports.ts1// @ts-nocheckCOMMENT
LOW…tent/docs/user-guide/sdk/tools/vended-tools-imports.ts1// @ts-nocheckCOMMENT
LOW…content/docs/user-guide/sdk/tools/executors_imports.ts1// @ts-nocheckCOMMENT
Hallucination Indicators3 hits · 30 pts
SeverityFileLineSnippetContext
CRITICALstrands-py/tests/strands/models/test_openai.py1384 openai_client.beta.chat.completions.parse.assert_called_once_with(CODE
CRITICALstrands-py/tests/strands/models/test_openai.py1905 mock_injected_client.beta.chat.completions.parse.assert_called_once()CODE
CRITICALstrands-py/tests/strands/models/test_bedrock.py3500 model.client.meta.service_model.shape_for.assert_called_once_with("GuardrailConverseImageFormat")CODE
Fake / Example Data14 hits · 13 pts
SeverityFileLineSnippetContext
LOW⚡…ds-py/tests_integ/test_structured_output_agent_loop.py179 assert result.structured_output.name == "John Doe"CODE
LOW…ds-py/tests_integ/test_structured_output_agent_loop.py290 assert person_result.structured_output.name == "John Doe"CODE
LOW⚡…ds-py/tests_integ/test_structured_output_agent_loop.py317 assert result.structured_output.name == "John Doe"CODE
LOW…ls/structured_output/test_structured_output_context.py95 test_result = SampleModel(name="John Doe", age=30, email="john@example.com")CODE
LOWstrands-py/tests/strands/agent/test_agent.py2455 {"image": {"format": "png", "source": {"bytes": b"fake_data"}}},CODE
LOWstrands-py/tests/strands/agent/test_agent.py209 return User(name="Jane Doe", age=30, email="jane@doe.com")STRING
LOWstrands-py/tests/strands/agent/test_agent_hooks.py103 return User(name="Jane Doe", age=30)CODE
LOWstrands-py/tests/strands/models/test_model.py325 obj = {"x": "lorem ipsum " * 1000}CODE
LOWstrands-py/src/strands/bidi/io/console/_io.py53 "placeholder": "",CODE
LOWstrands-py/src/strands/bidi/io/console/_io.py60 self._display = Display(self._config["placeholder"])CODE
LOWstrands-ts/docs/TESTING.md228 name: 'John Doe',CODE
LOWstrands-ts/docs/TESTING.md249 expect(user.name).toBe('John Doe')CODE
LOWstrands-ts/src/a2a/__tests__/adapters.test.ts34 const parts: Part[] = [{ kind: 'file', file: { bytes: encodeBase64('fake-data'), mimeType, name: 'test' } }]CODE
LOWstrands-cli/test/tui-agent-project.test.ts284 vi.stubEnv('MCP_TOKEN', 'placeholder')CODE
AI Structural Patterns14 hits · 12 pts
SeverityFileLineSnippetContext
LOWharness-py/src/strands_harness/agent.py238CODE
LOWharness-py/src/strands_harness/tools/subagent.py576CODE
LOW…s-py/tests_integ/interrupts/multiagent/test_session.py19CODE
LOW…ands-py/tests_integ/interrupts/multiagent/test_node.py18CODE
LOW…ands-py/tests_integ/interrupts/multiagent/test_node.py37CODE
LOWstrands-py/tests/strands/multiagent/test_swarm.py1411CODE
LOWstrands-py/tests/strands/memory/test_memory_manager.py70CODE
LOWstrands-py/src/strands/tools/mcp/mcp_client.py304CODE
LOWstrands-py/src/strands/multiagent/swarm.py269CODE
LOWstrands-py/src/strands/multiagent/graph.py508CODE
LOWstrands-py/src/strands/multiagent/a2a/server.py32CODE
LOWstrands-py/src/strands/bidi/agent/agent.py95CODE
LOWstrands-py/src/strands/agent/agent.py198CODE
LOW…rands-py/src/strands/vended_tools/subagent/subagent.py366CODE
Synthetic Comment Markers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHAGENTS.md85- **Self-review the diff** end to end as if you were the reviewer, and confirm you can truthfully check every box in theCODE
HIGH.github/PULL_REQUEST_TEMPLATE.md47- [ ] I have reviewed and understand every line of code in this PR, including any generated by AI tools, and I can explaCODE
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHsite/test/html-to-markdown.test.ts103 print("Hello")</code></pre>CODE
Example Usage Blocks4 hits · 3 pts
SeverityFileLineSnippetContext
LOW.agents/skills/pre-push/run-checks.sh14# Usage:COMMENT
LOWsite/docs/examples/python/weather_forecaster.py95# Example usageSTRING
LOW⚡site/docs/examples/python/file_operations.py90# Example usageSTRING
LOW…mples/python/multi_agent_example/teachers_assistant.py56# Example usageSTRING
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWstrands-py/src/strands/models/openai.py387 # TODO: Handle caching blocks https://github.com/strands-agents/harness-sdk/issues/1140COMMENT
Slop Phrases1 hit · 1 pts
SeverityFileLineSnippetContext
MEDIUMsite/docs/examples/python/weather_forecaster.py120 # This is just for demonstration purposesSTRING
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…ntent/docs/user-guide/sdk/agents/lifecycle-controls.ts86async function handleRequest(prompt: string, deadlineMs = 20_000) {CODE