🤗 smolagents: a barebones library for agents that think in code.
This report summarizes scanner evidence for huggingface/smolagents, a Python project with 29,772 GitHub stars. SynthScan examined 46,181 lines of code across 176 source files, recording 805 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 27.8 (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.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 605 finding(s).
Are imports declared and package/API names verified? 36 finding(s).
Are wrappers, guards, and repeated structures necessary? 543 finding(s).
Which changes need focused human review? 805 finding(s).
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.
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.
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.
The scanner identified 805 distinct pattern matches across 20 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_models.py | 0 | get weather in the next days at given location. secretly this tool does not care about the location, it hates the weathe | STRING |
| HIGH | tests/test_tools.py | 0 | get weather in the next days at given location. secretly this tool does not care about the location, it hates the weathe | STRING |
| HIGH | examples/agent_from_any_llm.py | 0 | get weather in the next days at given location. secretly this tool does not care about the location, it hates the weathe | STRING |
| HIGH | tests/test_tools.py | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/zh/tutorials/tools.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/hi/tutorials/tools.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/en/tutorials/tools.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/zh/guided_tour.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/hi/guided_tour.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/ko/guided_tour.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/en/guided_tour.md | 0 | this is a tool that returns the most downloaded model of a given task on the hugging face hub. it returns the name of th | STRING |
| HIGH | docs/source/zh/_config.py | 0 | # installation ! pip install smolagents # to install from source instead of the last release, comment the command above | STRING |
| HIGH | docs/source/hi/_config.py | 0 | # installation ! pip install smolagents # to install from source instead of the last release, comment the command above | STRING |
| HIGH | docs/source/ko/_config.py | 0 | # installation ! pip install smolagents # to install from source instead of the last release, comment the command above | STRING |
| HIGH | docs/source/es/_config.py | 0 | # installation ! pip install smolagents # to install from source instead of the last release, comment the command above | STRING |
| HIGH | docs/source/en/_config.py | 0 | # installation ! pip install smolagents # to install from source instead of the last release, comment the command above | STRING |
| HIGH | docs/source/zh/examples/web_browser.md | 0 | searches for text on the current page via ctrl + f and jumps to the nth occurrence. args: text: the text to search for n | STRING |
| HIGH | docs/source/en/examples/web_browser.md | 0 | searches for text on the current page via ctrl + f and jumps to the nth occurrence. args: text: the text to search for n | STRING |
| HIGH | src/smolagents/vision_web_browser.py | 0 | searches for text on the current page via ctrl + f and jumps to the nth occurrence. args: text: the text to search for n | STRING |
| HIGH | docs/source/zh/examples/web_browser.md | 0 | closes any visible modal or pop-up on the page. use this to dismiss pop-up windows! this does not work on cookie consent | STRING |
| HIGH | docs/source/ko/examples/web_browser.md | 0 | closes any visible modal or pop-up on the page. use this to dismiss pop-up windows! this does not work on cookie consent | STRING |
| HIGH | docs/source/en/examples/web_browser.md | 0 | closes any visible modal or pop-up on the page. use this to dismiss pop-up windows! this does not work on cookie consent | STRING |
| HIGH | src/smolagents/vision_web_browser.py | 0 | closes any visible modal or pop-up on the page. use this to dismiss pop-up windows! this does not work on cookie consent | STRING |
| HIGH | docs/source/zh/examples/web_browser.md | 0 | you can use helium to access websites. don't bother about the helium driver, it's already managed. we've already ran "fr | STRING |
| HIGH | docs/source/ko/examples/web_browser.md | 0 | you can use helium to access websites. don't bother about the helium driver, it's already managed. we've already ran "fr | STRING |
| HIGH | docs/source/en/examples/web_browser.md | 0 | you can use helium to access websites. don't bother about the helium driver, it's already managed. we've already ran "fr | STRING |
| HIGH | docs/source/zh/examples/web_browser.md | 0 | please navigate to https://en.wikipedia.org/wiki/chicago and give me a sentence containing the word "1992" that mentions | STRING |
| HIGH | docs/source/ko/examples/web_browser.md | 0 | please navigate to https://en.wikipedia.org/wiki/chicago and give me a sentence containing the word "1992" that mentions | STRING |
| HIGH | docs/source/en/examples/web_browser.md | 0 | please navigate to https://en.wikipedia.org/wiki/chicago and give me a sentence containing the word "1992" that mentions | STRING |
| HIGH | src/smolagents/vision_web_browser.py | 0 | please navigate to https://en.wikipedia.org/wiki/chicago and give me a sentence containing the word "1992" that mentions | STRING |
| HIGH | docs/source/zh/examples/web_browser.md | 0 | i'm trying to find how hard i have to work to get a repo in github.com/trending. can you navigate to the profile for the | STRING |
| HIGH | docs/source/ko/examples/web_browser.md | 0 | i'm trying to find how hard i have to work to get a repo in github.com/trending. can you navigate to the profile for the | STRING |
| HIGH | docs/source/en/examples/web_browser.md | 0 | i'm trying to find how hard i have to work to get a repo in github.com/trending. can you navigate to the profile for the | STRING |
| HIGH | src/smolagents/vision_web_browser.py | 0 | i'm trying to find how hard i have to work to get a repo in github.com/trending. can you navigate to the profile for the | STRING |
| HIGH | docs/source/zh/examples/multiagents.md | 0 | visits a webpage at the given url and returns its content as a markdown string. args: url: the url of the webpage to vis | STRING |
| HIGH | docs/source/hi/examples/multiagents.md | 0 | visits a webpage at the given url and returns its content as a markdown string. args: url: the url of the webpage to vis | STRING |
| HIGH | docs/source/en/examples/multiagents.md | 0 | visits a webpage at the given url and returns its content as a markdown string. args: url: the url of the webpage to vis | STRING |
| HIGH | docs/source/zh/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. returns a string representation of the result. the table is named 'recei | STRING |
| HIGH | docs/source/hi/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. returns a string representation of the result. the table is named 'recei | STRING |
| HIGH | docs/source/en/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. returns a string representation of the result. the table is named 'recei | STRING |
| HIGH | examples/text_to_sql.py | 0 | allows you to perform sql queries on the table. returns a string representation of the result. the table is named 'recei | STRING |
| HIGH | docs/source/zh/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. beware that this tool's output is a string representation of the executi | STRING |
| HIGH | docs/source/hi/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. beware that this tool's output is a string representation of the executi | STRING |
| HIGH | docs/source/ko/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. beware that this tool's output is a string representation of the executi | STRING |
| HIGH | docs/source/en/examples/text_to_sql.md | 0 | allows you to perform sql queries on the table. beware that this tool's output is a string representation of the executi | STRING |
| HIGH | docs/source/zh/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. date_time: the date and | STRING |
| HIGH | docs/source/hi/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. date_time: the date and | STRING |
| HIGH | docs/source/ko/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. date_time: the date and | STRING |
| HIGH | docs/source/en/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. date_time: the date and | STRING |
| HIGH | docs/source/zh/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. should be a place name, | STRING |
| HIGH | docs/source/hi/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. should be a place name, | STRING |
| HIGH | docs/source/ko/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. should be a place name, | STRING |
| HIGH | docs/source/en/tutorials/building_good_agents.md | 0 | returns the weather report. args: location: the name of the place that you want the weather for. should be a place name, | STRING |
| HIGH | docs/source/ko/tutorials/building_good_agents.md | 0 | {{ agent.description }} args: task: long detailed description of the task. additional_args: dictionary of extra inputs t | STRING |
| HIGH | docs/source/en/tutorials/building_good_agents.md | 0 | {{ agent.description }} args: task: long detailed description of the task. additional_args: dictionary of extra inputs t | STRING |
| HIGH | src/smolagents/prompts/code_agent.yaml | 0 | {{ agent.description }} args: task: long detailed description of the task. additional_args: dictionary of extra inputs t | STRING |
| HIGH | src/smolagents/prompts/structured_code_agent.yaml | 0 | {{ agent.description }} args: task: long detailed description of the task. additional_args: dictionary of extra inputs t | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/test_remote_executors.py | 28 | def test_send_tools_empty_tools(self): | CODE |
| LOW⚡ | tests/test_remote_executors.py | 36 | def test_send_variables_with_empty_dict_is_noop(self): | CODE |
| LOW⚡ | tests/test_remote_executors.py | 42 | def test_send_variables_non_empty_generates_executable_deserializer_code(self): | CODE |
| LOW | tests/test_remote_executors.py | 61 | def test_send_variables_allow_pickle_handles_prefixed_payload(self): | CODE |
| LOW | tests/test_remote_executors.py | 75 | def test_deserialize_final_answer_rejects_unprefixed_payload(self): | CODE |
| LOW | tests/test_remote_executors.py | 80 | def test_send_tools_with_default_wikipedia_search_tool(self): | CODE |
| LOW | tests/test_remote_executors.py | 190 | def test_final_answer_patterns(self, code_action, expected_result): | STRING |
| LOW | tests/test_remote_executors.py | 209 | def test_custom_final_answer_with_custom_inputs(self): | STRING |
| LOW | tests/test_remote_executors.py | 285 | def test_execute_multiline_output(self): | STRING |
| LOW | tests/test_remote_executors.py | 292 | def test_execute_image_output(self): | STRING |
| LOW | tests/test_remote_executors.py | 305 | def test_syntax_error_handling(self): | STRING |
| LOW | tests/test_remote_executors.py | 344 | def test_final_answer_patterns(self, code_action, expected_result): | STRING |
| LOW | tests/test_remote_executors.py | 363 | def test_custom_final_answer_with_custom_inputs(self): | STRING |
| LOW | tests/test_remote_executors.py | 478 | def test_blaxel_executor_instantiation_without_blaxel_sdk(self): | STRING |
| LOW | tests/test_remote_executors.py | 489 | def test_blaxel_executor_instantiation_with_blaxel_sdk( | STRING |
| LOW | tests/test_remote_executors.py | 531 | def test_blaxel_executor_custom_parameters( | STRING |
| LOW | tests/test_remote_executors.py | 578 | def test_blaxel_executor_cleanup(self, mock_settings, mock_sandbox_instance, mock_create_kernel): | STRING |
| LOW⚡ | tests/test_utils.py | 168 | def test_get_source_standard_class(): | CODE |
| LOW⚡ | tests/test_utils.py | 176 | def test_get_source_standard_function(): | CODE |
| LOW⚡ | tests/test_utils.py | 184 | def test_get_source_ipython_errors_empty_cells(ipython_shell): | CODE |
| LOW⚡ | tests/test_utils.py | 192 | def test_get_source_ipython_errors_definition_not_found(ipython_shell): | CODE |
| LOW⚡ | tests/test_utils.py | 200 | def test_get_source_ipython_errors_type_error(): | CODE |
| LOW | tests/test_utils.py | 467 | def test_parse_json_blob_with_valid_json(raw_json, expected_data, expected_blob): | CODE |
| LOW | tests/test_utils.py | 484 | def test_parse_json_blob_with_invalid_json(raw_json): | CODE |
| LOW | tests/test_utils.py | 520 | def test_agent_gradio_app_template_excludes_class_keyword(): | CODE |
| LOW | tests/conftest.py | 16 | def patch_multi_step_agent_with_suppressed_logging(): | CODE |
| LOW | tests/conftest.py | 19 | def init_with_suppressed_logging(self, *args, verbosity_level=LogLevel.OFF, **kwargs): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 207 | def complex_docstring_types_func(): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 224 | def keywords_in_description_func(): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 241 | def test_get_json_schema_example(self): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 298 | def test_get_json_schema_raises(self, request, fixture_name, should_fail): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 319 | def test_schema_basic_structure(self, valid_func): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 395 | def test_typed_docstring_parsing(self, typed_docstring_func): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 414 | def test_mismatched_docstring_types(self, mismatched_types_func): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 422 | def test_complex_docstring_types(self, complex_docstring_types_func): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 442 | def test_type_in_description_handling(self, request, fixture_name, expected_description): | CODE |
| LOW | tests/test_function_type_hints_utils.py | 450 | def test_with_special_words_in_description_func(self, keywords_in_description_func): | CODE |
| LOW | tests/test_mcp_client.py | 29 | def structured_output_server_script(): | CODE |
| LOW | tests/test_mcp_client.py | 55 | def test_mcp_client_with_syntax(echo_server_script: str): | CODE |
| LOW | tests/test_mcp_client.py | 64 | def test_mcp_client_with_structured_output(structured_output_server_script: str): | CODE |
| LOW | tests/test_mcp_client.py | 87 | def test_mcp_client_without_structured_output(structured_output_server_script: str): | CODE |
| LOW | tests/test_mcp_client.py | 105 | def test_mcp_client_try_finally_syntax(echo_server_script: str): | CODE |
| LOW | tests/test_import.py | 6 | def test_import_smolagents_without_extras(monkeypatch): | CODE |
| LOW | tests/test_monitoring.py | 66 | def test_code_agent_metrics_max_steps(self): | CODE |
| LOW | tests/test_monitoring.py | 86 | def test_code_agent_metrics_generation_error(self): | CODE |
| LOW | tests/test_monitoring.py | 100 | def test_streaming_agent_text_output(self): | CODE |
| LOW | tests/test_monitoring.py | 119 | def test_streaming_agent_image_output(self): | CODE |
| LOW | tests/test_monitoring.py | 156 | def test_streaming_with_agent_error(self): | CODE |
| LOW | tests/test_monitoring.py | 190 | def test_replay_with_chatmessage(self): | CODE |
| LOW | tests/test_monitoring.py | 205 | def test_logger_log_task_does_not_crash_on_stray_markup_or_control_chars(self): | CODE |
| LOW | tests/test_monitoring.py | 228 | def test_logger_log_task_accepts_non_string_payloads(self): | CODE |
| LOW | tests/test_gradio_ui.py | 43 | def test_upload_file_default_types(self): | CODE |
| LOW | tests/test_gradio_ui.py | 57 | def test_upload_file_default_types_disallowed(self): | CODE |
| LOW | tests/test_gradio_ui.py | 90 | def test_upload_file_invalid_type(self): | CODE |
| LOW | tests/test_gradio_ui.py | 101 | def test_upload_file_special_chars(self): | CODE |
| LOW | tests/test_gradio_ui.py | 122 | def test_upload_file_custom_types(self): | CODE |
| LOW | tests/test_gradio_ui.py | 138 | def test_stream_to_gradio_memory_step(self, mock_pull_messages): | CODE |
| LOW | tests/test_gradio_ui.py | 153 | def test_stream_to_gradio_stream_delta(self): | CODE |
| LOW | tests/test_gradio_ui.py | 165 | def test_stream_to_gradio_multiple_deltas(self): | CODE |
| LOW | tests/test_gradio_ui.py | 188 | def test_stream_to_gradio_parameters(self, task, task_images, reset_memory, additional_args): | CODE |
| 313 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | README.md | 256 | ## How strong are open models for agentic workflows? | COMMENT |
| MEDIUM⚡ | README.md | 260 | [Find the benchmarking code here](https://github.com/huggingface/smolagents/blob/main/examples/smolagents_benchmark/run. | CODE |
| MEDIUM⚡ | README.md | 263 | <img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/smolagents/benchmark_code_ag | CODE |
| MEDIUM | docs/source/zh/examples/rag.md | 1 | # Agentic RAG | COMMENT |
| MEDIUM | docs/source/zh/examples/multiagents.md | 1 | # 编排 multi-agent 系统 🤖🤝🤖 | COMMENT |
| MEDIUM | docs/source/zh/examples/multiagents.md | 103 | ## 构建我们的 multi-agent 系统 🤖🤝🤖 | COMMENT |
| MEDIUM | docs/source/hi/guided_tour.md | 76 | model_id="ollama_chat/llama3.2", # This model is a bit weak for agentic behaviours though | CODE |
| MEDIUM | docs/source/hi/examples/rag.md | 1 | # एजेंटिक RAG | COMMENT |
| MEDIUM | docs/source/ko/guided_tour.md | 185 | model_id="ollama_chat/llama3.2", # This model is a bit weak for agentic behaviours though | CODE |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 1 | # Agentic RAG[[agentic-rag]] | COMMENT |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 1 | # Agentic RAG[[agentic-rag]] | COMMENT |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 5 | ## RAG(검색 증강 생성) 소개[[introduction-to-retrieval-augmented-generation-rag]] | COMMENT |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 28 | ## Agentic RAG: 더 강력한 접근 방식[[agentic-rag-a-more-powerful-approach]] | COMMENT |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 28 | ## Agentic RAG: 더 강력한 접근 방식[[agentic-rag-a-more-powerful-approach]] | COMMENT |
| MEDIUM⚡ | docs/source/ko/examples/rag.md | 32 | ### Agentic RAG의 주요 장점[[key-benefits-of-agentic-rag]] | COMMENT |
| MEDIUM | docs/source/ko/examples/rag.md | 45 | ## Agentic RAG 시스템 구축하기[[building-an-agentic-rag-system]] | COMMENT |
| MEDIUM | docs/source/ko/examples/rag.md | 45 | ## Agentic RAG 시스템 구축하기[[building-an-agentic-rag-system]] | COMMENT |
| MEDIUM | docs/source/ko/examples/rag.md | 187 | ## Agentic RAG의 실제 적용 사례[[practical-applications-of-agentic-rag]] | COMMENT |
| MEDIUM | docs/source/ko/tutorials/building_good_agents.md | 12 | ### 최고의 에이전트 시스템은 가장 단순합니다: 워크플로우를 최대한 단순하게 만드세요[[the-best-agentic-systems-are-the-simplest:-simplify-the-workflow-as-mu | COMMENT |
| MEDIUM⚡ | docs/source/es/_toctree.yml | 32 | # title: Master your knowledge base with agentic RAG | COMMENT |
| MEDIUM⚡ | docs/source/es/_toctree.yml | 32 | # title: Master your knowledge base with agentic RAG | COMMENT |
| MEDIUM⚡ | docs/source/es/_toctree.yml | 34 | # title: Orchestrate a multi-agent system | COMMENT |
| MEDIUM | docs/source/en/guided_tour.md | 198 | model_id="ollama_chat/llama3.2", # This model is a bit weak for agentic behaviours though | CODE |
| MEDIUM | docs/source/en/conceptual_guides/intro_agents.md | 3 | ## An introduction to agentic systems. | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 1 | # Agentic RAG | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 5 | ## Introduction to Retrieval-Augmented Generation (RAG) | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 9 | ### Why Use RAG? | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 19 | ### Limitations of Traditional RAG | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 28 | ## Agentic RAG: A More Powerful Approach | COMMENT |
| MEDIUM⚡ | docs/source/en/examples/rag.md | 32 | ### Key Benefits of Agentic RAG | COMMENT |
| MEDIUM | docs/source/en/examples/rag.md | 45 | ## Building an Agentic RAG System | COMMENT |
| MEDIUM | docs/source/en/examples/rag.md | 187 | ## Practical Applications of Agentic RAG | COMMENT |
| MEDIUM | docs/source/en/examples/multiagents.md | 1 | # Orchestrate a multi-agent system 🤖🤝🤖 | COMMENT |
| MEDIUM | docs/source/en/examples/multiagents.md | 100 | ## Build our multi-agent system 🤖🤝🤖 | COMMENT |
| MEDIUM | docs/source/en/tutorials/secure_code_execution.md | 472 | ### Approach 2: Running the entire agentic system in a sandbox | STRING |
| MEDIUM | docs/source/en/tutorials/building_good_agents.md | 12 | ### The best agentic systems are the simplest: simplify the workflow as much as you can | COMMENT |
| MEDIUM | examples/inspect_multiagent_run.py | 18 | # Then we run the agentic part! | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_import.py | 9 | # Create a virtual environment | COMMENT |
| MEDIUM | tests/test_gradio_ui.py | 104 | # Create a new temporary file with special characters | COMMENT |
| MEDIUM | tests/test_local_python_executor.py | 588 | # Create a generator expression that filters an infinite sequence | STRING |
| MEDIUM | tests/test_models.py | 445 | # Create a mock response for successful call | COMMENT |
| MEDIUM | tests/test_models.py | 455 | # Create a 429 rate limit error | COMMENT |
| MEDIUM | tests/test_models.py | 570 | # Create a mock response that contains a stop sequence in the middle | COMMENT |
| MEDIUM⚡ | tests/test_memory.py | 238 | # Create a mock ChatCompletion-like object (this is what was causing the error) | COMMENT |
| MEDIUM⚡ | tests/test_memory.py | 244 | # Create a ChatMessage with raw field containing the non-serializable object | COMMENT |
| MEDIUM⚡ | tests/test_serialization.py | 799 | # Create an object that needs pickle | COMMENT |
| MEDIUM | tests/test_serialization.py | 666 | # Create a simple test image | COMMENT |
| MEDIUM⚡ | tests/test_tools.py | 616 | # Define a test function with type hints and docstring | COMMENT |
| MEDIUM | tests/test_tools.py | 102 | # Define a tool class with the test type value | COMMENT |
| MEDIUM | tests/test_tools.py | 631 | # Create a tool from the function | COMMENT |
| MEDIUM | tests/test_tools.py | 1038 | # Create a tool with the appropriate signature | COMMENT |
| MEDIUM | tests/test_all_docs.py | 171 | # Initialize the class if needed | COMMENT |
| MEDIUM⚡ | tests/test_agents.py | 1006 | # Create a simple agent with mocked model | COMMENT |
| MEDIUM⚡ | tests/test_agents.py | 1548 | # Create a managed agent | COMMENT |
| MEDIUM⚡ | tests/test_agents.py | 1553 | # Create a main agent with the managed agent | COMMENT |
| MEDIUM | tests/test_agents.py | 1092 | # Create a dummy agent | COMMENT |
| MEDIUM | tests/test_agents.py | 1117 | # Create a test agent with a list of callbacks | COMMENT |
| MEDIUM | tests/test_agents.py | 1497 | # Create a test agent dictionary | COMMENT |
| MEDIUM | tests/test_agents.py | 1616 | # Create a valid agent first | COMMENT |
| MEDIUM | tests/test_agents.py | 2066 | # Create a ToolCallingAgent instance with the test tool | COMMENT |
| MEDIUM | tests/test_agents.py | 2070 | # Create a memory step for process_tool_calls | COMMENT |
| MEDIUM | tests/test_agents.py | 2285 | # Create a test agent dictionary | COMMENT |
| MEDIUM | examples/open_deep_research/scripts/cookies.py | 710 | # Create a RequestsCookieJar instance | COMMENT |
| MEDIUM | examples/open_deep_research/scripts/mdconvert.py | 644 | # Create the extraction directory if it doesn't exist | COMMENT |
| MEDIUM⚡ | examples/server/main.py | 9 | # Create an MCP client to connect to the MCP server | COMMENT |
| MEDIUM⚡ | examples/server/main.py | 16 | # Create a CodeAgent with a specific model and the tools from the MCP client | COMMENT |
| MEDIUM⚡ | examples/server/main.py | 23 | # Define the shutdown handler to disconnect the MCP client | COMMENT |
| MEDIUM | examples/plan_customization/plan_customization.py | 115 | # Define a task that will benefit from planning | COMMENT |
| MEDIUM | examples/async_agent/main.py | 17 | # Create a simple agent instance (customize as needed) | COMMENT |
| MEDIUM | src/smolagents/vision_web_browser.py | 77 | memory_step.observations_images = [image.copy()] # Create a copy to ensure it persists, important! | STRING |
| MEDIUM | src/smolagents/gradio_ui.py | 119 | # Create the tool call message | COMMENT |
| MEDIUM | src/smolagents/local_python_executor.py | 307 | # Create a new ThreadPoolExecutor for each call to avoid threading issues | COMMENT |
| MEDIUM | src/smolagents/local_python_executor.py | 1638 | # Define the actual execution logic | COMMENT |
| MEDIUM | src/smolagents/remote_executors.py | 158 | # Create a new class that inherits from the original FinalAnswerTool | COMMENT |
| MEDIUM | src/smolagents/remote_executors.py | 926 | # Create the sandbox | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/open_deep_research/scripts/text_web_browser.py | 304 | except NameError: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 274 | except Exception: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 992 | except FileNotFoundError: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 994 | except IsADirectoryError: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 996 | except PermissionError: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 318 | except Exception: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 864 | except Exception: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 921 | except Exception: | CODE |
| HIGH | examples/open_deep_research/scripts/mdconvert.py | 443 | except Exception: | CODE |
| HIGH | src/smolagents/utils.py | 221 | except SyntaxError: | CODE |
| HIGH | src/smolagents/utils.py | 151 | except json.JSONDecodeError: | CODE |
| HIGH | src/smolagents/agent_types.py | 279 | except ModuleNotFoundError: | CODE |
| HIGH | src/smolagents/agent_types.py | 105 | except ModuleNotFoundError: | CODE |
| HIGH | src/smolagents/remote_executors.py | 49 | except ModuleNotFoundError: | CODE |
| HIGH | src/smolagents/remote_executors.py | 1075 | except Exception: | CODE |
| HIGH | src/smolagents/remote_executors.py | 212 | except ImportError: | CODE |
| HIGH | src/smolagents/remote_executors.py | 241 | except ImportError: | CODE |
| HIGH | src/smolagents/_function_type_hints_utils.py | 429 | except ModuleNotFoundError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/multiple_tools.py | 53 | Converts a specified amount from one currency to another using the ExchangeRate-API. Args: amount: The | STRING |
| HIGH | examples/multiple_tools.py | 149 | Fetches the current time for a given location using the World Time API. Args: location: The location fo | STRING |
| HIGH | examples/multiple_tools.py | 196 | Fetches a summary of a Wikipedia page for a given query. Args: query: The search term to look up on Wik | STRING |
| HIGH | src/smolagents/models.py | 561 | Process the input messages and return the model's response. Parameters: messages (`list[dict[str, s | STRING |
| HIGH | src/smolagents/models.py | 861 | A class that uses Hugging Face's Transformers library for language model interaction. This model allows you to load | STRING |
| HIGH | src/smolagents/models.py | 1457 | A class to interact with Hugging Face's Inference Providers for language model interaction. This model allows you t | STRING |
| HIGH | src/smolagents/models.py | 1860 | A model class for interacting with Amazon Bedrock Server models through the Bedrock API. This class provides a | STRING |
| HIGH | src/smolagents/tools.py | 607 | Creates a [`Tool`] from a Space given its id on the Hub. Args: space_id (`str`): | STRING |
| HIGH | src/smolagents/utils.py | 199 | Extract code blocs from the LLM's output. If a valid code block is passed, it returns it directly. Args: | STRING |
| HIGH | src/smolagents/remote_executors.py | 308 | Deserialize final answer with format detection. Accepts explicit prefix-based formats only: - "safe:" f | STRING |
| HIGH | src/smolagents/serialization.py | 77 | Convert Python objects to JSON-serializable format with type markers. Args: obj: Object to convert. | STRING |
| HIGH | src/smolagents/serialization.py | 253 | Serialize object to string. Args: obj: Object to serialize allow_pickle: If Fa | STRING |
| HIGH | src/smolagents/serialization.py | 296 | Deserialize string with format detection. Args: data: Serialized string (with "safe:" or " | STRING |
| HIGH | src/smolagents/_function_type_hints_utils.py | 98 | This function generates a JSON schema for a given function, based on its docstring and type hints. This is most | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_local_python_executor.py | 2228 | def run_in_thread(): | CODE |
| LOW⚡ | tests/test_local_python_executor.py | 1415 | except Exception as e: | STRING |
| LOW | tests/test_local_python_executor.py | 2245 | except Exception as e: | STRING |
| LOW | tests/test_local_python_executor.py | 2788 | except Exception as e: | STRING |
| MEDIUM | tests/test_serialization.py | 907 | def serialize_data(data, index): | CODE |
| LOW | tests/test_serialization.py | 912 | except Exception as e: | CODE |
| LOW | tests/test_all_docs.py | 153 | except Exception: | CODE |
| LOW | docs/source/zh/examples/multiagents.md | 93 | except Exception as e: | CODE |
| LOW | docs/source/zh/tutorials/building_good_agents.md | 95 | except Exception as e: | CODE |
| LOW | docs/source/hi/examples/multiagents.md | 92 | except Exception as e: | CODE |
| LOW | docs/source/hi/tutorials/building_good_agents.md | 96 | except Exception as e: | CODE |
| LOW | docs/source/ko/examples/multiagents.md | 90 | except Exception as e: | CODE |
| LOW | docs/source/ko/tutorials/building_good_agents.md | 95 | except Exception as e: | CODE |
| LOW | docs/source/en/examples/multiagents.md | 90 | except Exception as e: | CODE |
| LOW | docs/source/en/tutorials/secure_code_execution.md | 73 | except Exception as e: | CODE |
| LOW | docs/source/en/tutorials/secure_code_execution.md | 402 | except Exception as e: | STRING |
| MEDIUM | docs/source/en/tutorials/secure_code_execution.md | 403 | print(f"Error during cleanup: {e}") | STRING |
| LOW | docs/source/en/tutorials/building_good_agents.md | 95 | except Exception as e: | CODE |
| LOW | examples/smolagents_benchmark/run.py | 166 | except Exception as e: | CODE |
| MEDIUM | examples/smolagents_benchmark/run.py | 167 | print("Error on ", augmented_question, e) | CODE |
| LOW | examples/open_deep_research/run_gaia.py | 244 | except Exception as e: | STRING |
| MEDIUM | examples/open_deep_research/run_gaia.py | 245 | print("Error on ", augmented_question, e) | STRING |
| LOW | examples/open_deep_research/run_gaia.py | 280 | except Exception as e: | STRING |
| MEDIUM | examples/open_deep_research/run_gaia.py | 281 | print("Error when loading records: ", e) | STRING |
| LOW | examples/open_deep_research/scripts/reformulator.py | 37 | except Exception: | CODE |
| MEDIUM⚡ | examples/open_deep_research/scripts/mdconvert.py | 915 | print(f"Error in converting: {e}") | CODE |
| LOW⚡ | examples/open_deep_research/scripts/mdconvert.py | 914 | except Exception as e: | CODE |
| LOW⚡ | examples/open_deep_research/scripts/mdconvert.py | 921 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 274 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 318 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 443 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 514 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 553 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 618 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 864 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 950 | except Exception: | CODE |
| LOW | examples/open_deep_research/scripts/visual_qa.py | 127 | except Exception as e: | CODE |
| LOW | examples/open_deep_research/scripts/visual_qa.py | 183 | except Exception: | CODE |
| LOW | examples/plan_customization/plan_customization.py | 132 | except Exception as e: | CODE |
| LOW | examples/plan_customization/plan_customization.py | 159 | except Exception as resume_error: | CODE |
| LOW | examples/async_agent/main.py | 41 | except Exception as e: | CODE |
| LOW | src/smolagents/models.py | 199 | except Exception: | CODE |
| LOW | src/smolagents/models.py | 404 | except Exception as e: | CODE |
| LOW | src/smolagents/models.py | 974 | except Exception as e: | CODE |
| LOW | src/smolagents/local_python_executor.py | 1169 | except Exception as e: | CODE |
| LOW | src/smolagents/local_python_executor.py | 1254 | except Exception as e: | CODE |
| LOW | src/smolagents/local_python_executor.py | 1262 | except Exception as exit_exc: | CODE |
| LOW | src/smolagents/local_python_executor.py | 1655 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 106 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 617 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 803 | except Exception: | CODE |
| LOW | src/smolagents/agents.py | 849 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1324 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1330 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1479 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1490 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1699 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1711 | except Exception as e: | CODE |
| LOW | src/smolagents/agents.py | 1734 | except Exception as e: | CODE |
| LOW | src/smolagents/cli.py | 140 | except Exception: | CODE |
| 10 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_tools.py | 64 | CODE | |
| LOW | tests/test_tools.py | 65 | CODE | |
| LOW | tests/test_agents.py | 1387 | CODE | |
| LOW | examples/smolagents_benchmark/run.py | 188 | CODE | |
| LOW | examples/open_deep_research/scripts/gaia_scorer.py | 34 | CODE | |
| LOW | examples/open_deep_research/scripts/text_web_browser.py | 55 | CODE | |
| LOW | examples/open_deep_research/scripts/text_web_browser.py | 263 | CODE | |
| LOW | examples/open_deep_research/scripts/run_agents.py | 72 | CODE | |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 237 | CODE | |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 337 | CODE | |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 420 | CODE | |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 927 | CODE | |
| LOW | examples/plan_customization/plan_customization.py | 62 | CODE | |
| LOW | examples/plan_customization/plan_customization.py | 100 | CODE | |
| LOW | src/smolagents/gradio_ui.py | 378 | CODE | |
| LOW | src/smolagents/models.py | 220 | CODE | |
| LOW | src/smolagents/models.py | 288 | CODE | |
| LOW | src/smolagents/models.py | 332 | CODE | |
| LOW | src/smolagents/models.py | 1309 | CODE | |
| LOW | src/smolagents/models.py | 1591 | CODE | |
| LOW | src/smolagents/models.py | 1707 | CODE | |
| LOW | src/smolagents/memory.py | 248 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 156 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 396 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 540 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 638 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 730 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 794 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 825 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 941 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 962 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1026 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1159 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1236 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1309 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1380 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 1417 | CODE | |
| LOW | src/smolagents/local_python_executor.py | 645 | CODE | |
| LOW | src/smolagents/tools.py | 1361 | CODE | |
| LOW | src/smolagents/tools.py | 144 | CODE | |
| LOW | src/smolagents/tool_validation.py | 157 | CODE | |
| LOW | src/smolagents/tool_validation.py | 49 | CODE | |
| LOW | src/smolagents/tool_validation.py | 80 | CODE | |
| LOW | src/smolagents/tool_validation.py | 90 | CODE | |
| LOW | src/smolagents/tool_validation.py | 190 | CODE | |
| LOW | src/smolagents/agents.py | 294 | CODE | |
| LOW | src/smolagents/agents.py | 416 | CODE | |
| LOW | src/smolagents/agents.py | 436 | CODE | |
| LOW | src/smolagents/agents.py | 540 | CODE | |
| LOW | src/smolagents/agents.py | 639 | CODE | |
| LOW | src/smolagents/agents.py | 1276 | CODE | |
| LOW | src/smolagents/agents.py | 1638 | CODE | |
| LOW | src/smolagents/cli.py | 188 | CODE | |
| LOW | src/smolagents/utils.py | 140 | CODE | |
| LOW | src/smolagents/utils.py | 551 | CODE | |
| LOW | src/smolagents/default_tools.py | 387 | CODE | |
| LOW | src/smolagents/default_tools.py | 408 | CODE | |
| LOW | src/smolagents/agent_types.py | 79 | CODE | |
| LOW | src/smolagents/agent_types.py | 181 | CODE | |
| LOW | src/smolagents/remote_executors.py | 481 | CODE | |
| 8 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/source/zh/guided_tour.md | 89 | api_key="YOUR_API_KEY" # 如果需要可以替换为 API key | CODE |
| HIGH | docs/source/hi/guided_tour.md | 78 | api_key="YOUR_API_KEY" # replace with API key if necessary | CODE |
| HIGH | docs/source/ko/guided_tour.md | 187 | api_key="YOUR_API_KEY", # replace with API key if necessary | CODE |
| HIGH | docs/source/en/guided_tour.md | 200 | api_key="YOUR_API_KEY", # replace with API key if necessary | CODE |
| HIGH | examples/agent_from_any_llm.py | 29 | api_key="your-api-key", # replace with API key if necessary | CODE |
| HIGH | examples/multiple_tools.py | 27 | api_key = "your_api_key" # Replace with your API key from https://weatherstack.com/ | CODE |
| HIGH | examples/multiple_tools.py | 67 | api_key = "your_api_key" # Replace with your actual API key from https://www.exchangerate-api.com/ | CODE |
| HIGH | examples/multiple_tools.py | 98 | api_key = "your_api_key" # Replace with your actual API key from https://newsapi.org/ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | e2b.toml | 1 | # This is a config for E2B sandbox template. | COMMENT |
| LOW | tests/test_utils.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_function_type_hints_utils.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_search.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_monitoring.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_gradio_ui.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_local_python_executor.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_default_tools.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_final_answer.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_models.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_serialization.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | tests/test_tools.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_telemetry.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_all_docs.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_agents.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/test_types.py | 1 | # coding=utf-8 | COMMENT |
| LOW | tests/utils/markers.py | 1 | # coding=utf-8 | COMMENT |
| LOW | docs/source/es/_toctree.yml | 1 | - title: Primeros Pasos | COMMENT |
| LOW | docs/source/es/_toctree.yml | 21 | # - title: Conceptual guides | COMMENT |
| LOW | docs/source/es/_toctree.yml | 41 | # - local: examples/async_agent | COMMENT |
| LOW | examples/rag_using_chromadb.py | 21 | knowledge_base = datasets.load_dataset("m-ric/huggingface_doc", split="train") | COMMENT |
| LOW | examples/structured_output_tool.py | 1 | # How to run with uv: | COMMENT |
| LOW | examples/multiple_tools.py | 221 | # If you want to use the ToolCallingAgent instead, uncomment the following lines as they both will work | COMMENT |
| LOW | examples/open_deep_research/scripts/reformulator.py | 81 | # """.strip()}]}) | COMMENT |
| LOW | src/smolagents/gradio_ui.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/models.py | 1 | # Copyright 2024 The HuggingFace Inc. team. All rights reserved. | COMMENT |
| LOW | src/smolagents/local_python_executor.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/monitoring.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/tools.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/__init__.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/agents.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/cli.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/utils.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/default_tools.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/mcp_client.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/agent_types.py | 1 | # coding=utf-8 | COMMENT |
| LOW | src/smolagents/remote_executors.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/serialization.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | src/smolagents/_function_type_hints_utils.py | 1 | #!/usr/bin/env python | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_utils.py | 333 | CODE | |
| LOW | tests/test_utils.py | 226 | CODE | |
| LOW | examples/structured_output_tool.py | 19 | CODE | |
| LOW | src/smolagents/memory.py | 12 | CODE | |
| LOW | src/smolagents/tools.py | 17 | CODE | |
| LOW | src/smolagents/tools.py | 64 | CODE | |
| LOW | src/smolagents/__init__.py | 19 | CODE | |
| LOW | src/smolagents/__init__.py | 20 | CODE | |
| LOW | src/smolagents/__init__.py | 21 | CODE | |
| LOW | src/smolagents/__init__.py | 22 | CODE | |
| LOW | src/smolagents/__init__.py | 23 | CODE | |
| LOW | src/smolagents/__init__.py | 24 | CODE | |
| LOW | src/smolagents/__init__.py | 25 | CODE | |
| LOW | src/smolagents/__init__.py | 26 | CODE | |
| LOW | src/smolagents/__init__.py | 27 | CODE | |
| LOW | src/smolagents/__init__.py | 28 | CODE | |
| LOW | src/smolagents/__init__.py | 29 | CODE | |
| LOW | src/smolagents/__init__.py | 30 | CODE | |
| LOW | src/smolagents/__init__.py | 31 | CODE | |
| LOW | src/smolagents/__init__.py | 32 | CODE | |
| LOW | src/smolagents/agents.py | 45 | CODE | |
| LOW | src/smolagents/utils.py | 38 | CODE | |
| LOW | src/smolagents/mcp_client.py | 18 | CODE | |
| LOW | src/smolagents/mcp_client.py | 30 | CODE | |
| LOW | src/smolagents/remote_executors.py | 896 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_import.py | 25 | # Check if the import was successful | COMMENT |
| LOW | tests/test_tools.py | 115 | # Check if we expect this to raise an exception | COMMENT |
| LOW | examples/multiple_tools.py | 38 | if data.get("error"): # Check if there's an error in the response | CODE |
| LOW | examples/open_deep_research/scripts/mdconvert.py | 624 | # Return the result | COMMENT |
| LOW | src/smolagents/local_python_executor.py | 611 | # Check if it is a docstring: first statement in class body which is a string literal expression | COMMENT |
| LOW | src/smolagents/tools.py | 182 | # Check if all elements are strings | COMMENT |
| LOW | src/smolagents/tool_validation.py | 198 | # Check if the assignment is more complex than simple literals | COMMENT |
| LOW | src/smolagents/agents.py | 1463 | # Check if the tool exists | COMMENT |
| LOW | src/smolagents/cli.py | 265 | # Check if we should run in interactive mode | COMMENT |
| LOW | src/smolagents/utils.py | 572 | # Check if we should retry | COMMENT |
| LOW | src/smolagents/remote_executors.py | 183 | # Check if all keys are strings (JSON-compatible) | COMMENT |
| LOW | src/smolagents/remote_executors.py | 389 | # Check if the error is a FinalAnswerException | COMMENT |
| LOW | src/smolagents/remote_executors.py | 614 | # Check if image exists, unless forced to rebuild | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/open_deep_research/scripts/text_web_browser.py | 55 | def set_address(self, uri_or_path: str, filter_year: int | None = None) -> None: | CODE |
| LOW | examples/open_deep_research/scripts/text_web_browser.py | 92 | def _set_page_content(self, content: str) -> None: | CODE |
| LOW | src/smolagents/gradio_ui.py | 464 | __all__ = ["stream_to_gradio", "GradioUI"] | CODE |
| LOW | src/smolagents/models.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/smolagents/models.py | 2082 | __all__ = [ | CODE |
| LOW | src/smolagents/memory.py | 18 | __all__ = ["AgentMemory"] | CODE |
| LOW | src/smolagents/local_python_executor.py | 39 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/smolagents/local_python_executor.py | 1768 | __all__ = ["evaluate_python_code", "LocalPythonExecutor"] | CODE |
| LOW | src/smolagents/monitoring.py | 33 | __all__ = ["AgentLogger", "LogLevel", "Monitor", "TokenUsage", "Timing"] | CODE |
| LOW | src/smolagents/tools.py | 67 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/smolagents/tools.py | 1415 | __all__ = [ | STRING |
| LOW | src/smolagents/agents.py | 369 | def _setup_managed_agents(self, managed_agents: list | None = None) -> None: | CODE |
| LOW | src/smolagents/utils.py | 41 | __all__ = ["AgentError"] | CODE |
| LOW | src/smolagents/default_tools.py | 687 | __all__ = [ | CODE |
| LOW | src/smolagents/mcp_client.py | 27 | __all__ = ["MCPClient"] | CODE |
| LOW | src/smolagents/agent_types.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/smolagents/agent_types.py | 284 | __all__ = ["AgentType", "AgentImage", "AgentText", "AgentAudio"] | CODE |
| LOW | src/smolagents/remote_executors.py | 42 | __all__ = ["BlaxelExecutor", "E2BExecutor", "ModalExecutor", "DockerExecutor"] | CODE |
| LOW | src/smolagents/serialization.py | 36 | __all__ = ["SerializationError", "SafeSerializer"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/source/en/examples/rag.md | 51 | ### Step 1: Install Required Dependencies | COMMENT |
| LOW | docs/source/en/examples/rag.md | 67 | ### Step 2: Prepare the Knowledge Base | COMMENT |
| LOW | docs/source/en/examples/rag.md | 102 | ### Step 3: Create a Retriever Tool | COMMENT |
| LOW | docs/source/en/examples/rag.md | 149 | ### Step 4: Create an Advanced Retrieval Agent | COMMENT |
| LOW | docs/source/en/examples/rag.md | 171 | ### Step 5: Run the Agent to Answer Questions | COMMENT |
| LOW | docs/source/en/tutorials/inspect_runs.md | 124 | ### Step 1: Install Dependencies | COMMENT |
| LOW | docs/source/en/tutorials/inspect_runs.md | 130 | ### Step 2: Set Up Environment Variables | COMMENT |
| LOW | docs/source/en/tutorials/inspect_runs.md | 162 | ### Step 3: Initialize the `SmolagentsInstrumentor` | COMMENT |
| LOW | docs/source/en/tutorials/inspect_runs.md | 173 | ### Step 4: Run your smolagent | COMMENT |
| LOW | docs/source/en/tutorials/inspect_runs.md | 205 | ### Step 5: View Traces in Langfuse | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | examples/open_deep_research/scripts/mdconvert.py | 442 | alt_text = shape._element._nvXxPr.cNvPr.attrib.get("descr", "") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/async_agent/main.py | 30 | CODE | |
| LOW | src/smolagents/models.py | 906 | CODE | |
| LOW | src/smolagents/models.py | 1514 | CODE | |
| LOW | src/smolagents/agents.py | 294 | CODE | |
| LOW | src/smolagents/agents.py | 1527 | CODE | |
| LOW | src/smolagents/utils.py | 531 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/rag_using_chromadb.py | 27 | ## For your own PDFs, you can use the following code to load them into source_docs | COMMENT |
| LOW | examples/open_deep_research/run_gaia.py | 147 | # WARNING: this dataset is gated: make sure you visit the repo to require access. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_function_type_hints_utils.py | 85 | def process_data(items: list[str], config: dict[str, float], point: tuple[int, int]) -> dict: | CODE |
| LOW⚡ | tests/test_serialization.py | 453 | def my_function(): | CODE |
| LOW⚡ | tests/test_tools.py | 617 | def test_function(items: list[str]) -> str: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/smolagents/local_python_executor.py | 634 | # For declarations without values (x: int), just return None | COMMENT |
| LOW | src/smolagents/local_python_executor.py | 1462 | # Constant -> just return the value | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_serialization.py | 742 | person = Person(name="Bob", address=Address(street="123 Main St", city="NYC")) | CODE |
| LOW | tests/test_serialization.py | 747 | assert result["address"]["street"] == "123 Main St" | CODE |