Fully Local Manus AI. No APIs, No $200 monthly bills. Enjoy an autonomous agent that thinks, browses the web, and code for the sole cost of electricity. 🔔 Official updates only via twitter @Martin993886460 (Beware of fake account)
337 matches across 11 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | tests/test_memory.py | 49 | index = self.memory.push("user", "Hello") |
| HIGH | tests/test_memory.py | 56 | self.memory.push("user", "Hello") |
| HIGH | tests/test_memory.py | 62 | mem_begin_idx = self.memory.push("user", "Hi i want you to make...") |
| HIGH | tests/test_memory.py | 63 | self.memory.push("assistant", "<code>") |
| HIGH | tests/test_memory.py | 64 | self.memory.push("user", "sys feedback: error") |
| HIGH | tests/test_memory.py | 65 | self.memory.push("assistant", "<corrected code>") |
| HIGH | tests/test_memory.py | 66 | mem_end_idx = self.memory.push("user", "according to search...") |
| HIGH | tests/test_memory.py | 72 | self.memory.push("user", "Hello") |
| HIGH | tests/test_memory.py | 77 | self.memory.push("user", "Hello") |
| HIGH | tests/test_memory.py | 83 | self.memory.push("user", "Hello") |
| HIGH | tests/test_memory.py | 84 | self.memory.push("assistant", "Hi") |
| HIGH | sources/interaction.py | 292 | self.current_agent.memory.push('user', self.last_query) |
| HIGH | sources/interaction.py | 293 | self.current_agent.memory.push('assistant', self.last_answer) |
| HIGH | sources/memory.py | 277 | memory.push('user', "hello") |
| HIGH | sources/memory.py | 278 | memory.push('assistant', "how can i help you?") |
| HIGH | sources/memory.py | 279 | memory.push('user', "why do i get this cuda error?") |
| HIGH | sources/memory.py | 297 | memory.push('assistant', sample_text) |
| HIGH | sources/browser.py | 256 | driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})") |
| HIGH | sources/browser.py | 799 | original_zoom = self.driver.execute_script("return document.body.style.zoom || 1;") |
| HIGH | sources/llm_provider.py | 550 | \n\n```json\n{\n \"plan\": [\n {\n \"agent\": \"Web\",\n \"id\": \"1\",\n \"need\": null,\n \"ta |
| HIGH | sources/agents/mcp_agent.py | 59 | self.memory.push('user', prompt) |
| HIGH | sources/agents/browser_agent.py | 182 | self.memory.push('user', prompt) |
| HIGH | sources/agents/browser_agent.py | 345 | mem_begin_idx = self.memory.push('user', self.search_prompt(user_prompt)) |
| HIGH | sources/agents/browser_agent.py | 428 | mem_last_idx = self.memory.push('user', prompt) |
| HIGH | sources/agents/casual_agent.py | 27 | self.memory.push('user', prompt) |
| HIGH | sources/agents/planner_agent.py | 168 | self.memory.push('user', prompt) |
| HIGH | sources/agents/file_agent.py | 30 | self.memory.push('user', prompt) |
| HIGH | sources/agents/code_agent.py | 51 | self.memory.push('user', prompt) |
| HIGH | sources/agents/agent.py | 177 | self.memory.push('assistant', answer) |
| HIGH | sources/agents/agent.py | 280 | self.memory.push('user', feedback) |
| HIGH | sources/agents/agent.py | 282 | self.memory.push('user', feedback) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/test_browser_agent_parsing.py | 48 | def test_extract_links_no_links(self): |
| LOW | tests/test_browser_agent_parsing.py | 53 | def test_extract_links_single_link(self): |
| LOW | tests/test_browser_agent_parsing.py | 72 | def test_extract_form_checkbox(self): |
| LOW | tests/test_browser_agent_parsing.py | 94 | def test_clean_links_with_slash(self): |
| LOW | tests/test_browser_agent_parsing.py | 110 | def test_parse_answer_extracts_links(self): |
| LOW | tests/test_browser_agent_parsing.py | 117 | def test_parse_answer_no_notes(self): |
| LOW | tests/test_browser_agent_parsing.py | 124 | def test_select_link_unvisited(self): |
| LOW | tests/test_browser_agent_parsing.py | 132 | def test_select_link_all_visited(self): |
| LOW | tests/test_browser_agent_parsing.py | 145 | def test_jsonify_search_results(self): |
| LOW | tests/test_browser_agent_parsing.py | 160 | def test_jsonify_search_results_empty(self): |
| LOW | tests/test_browser_agent_parsing.py | 165 | def test_jsonify_search_results_partial(self): |
| LOW | tests/test_browser_agent_parsing.py | 174 | def test_stringify_search_results(self): |
| LOW | tests/test_browser_agent_parsing.py | 196 | def test_select_unvisited_all_new(self): |
| LOW | tests/test_utility.py | 12 | def test_get_color_map_returns_dict(self): |
| LOW | tests/test_utility.py | 17 | def test_get_color_map_has_required_keys(self): |
| LOW | tests/test_utility.py | 24 | def test_get_color_map_values_are_strings(self): |
| LOW | tests/test_searx_search.py | 20 | def test_initialization_with_env_variable(self): |
| LOW | tests/test_searx_search.py | 27 | def test_initialization_no_base_url(self): |
| LOW | tests/test_searx_search.py | 56 | def test_execute_request_exception(self): |
| LOW | tests/test_searx_search.py | 76 | def test_execution_failure_check_error(self): |
| LOW | tests/test_searx_search.py | 81 | def test_execution_failure_check_no_error(self): |
| LOW | tests/test_litellm_provider.py | 14 | def test_litellm_provider_registered(self): |
| LOW | tests/test_litellm_provider.py | 19 | def test_litellm_not_in_unsafe_providers(self): |
| LOW | tests/test_litellm_provider.py | 24 | def test_litellm_no_api_key_required_at_init(self): |
| LOW | tests/test_litellm_provider.py | 29 | def test_litellm_local_not_supported(self): |
| LOW | tests/test_litellm_provider.py | 38 | def test_litellm_fn_returns_content(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 51 | def test_litellm_fn_passes_drop_params(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 64 | def test_litellm_fn_passes_model(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 78 | def test_litellm_fn_passes_api_key_from_env(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 92 | def test_litellm_fn_omits_api_key_when_not_set(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 105 | def test_litellm_fn_raises_on_empty_response(self, mock_completion): |
| LOW | tests/test_litellm_provider.py | 115 | def test_litellm_fn_raises_on_api_error(self, mock_completion): |
| LOW | tests/test_provider.py | 54 | def test_unresolvable_hostname(self): |
| LOW | tests/test_memory.py | 82 | def test_save_and_load_memory(self): |
| LOW | tests/test_chromedriver_update.py | 30 | def test_get_chromedriver_version_success(self, mock_run): |
| LOW | tests/test_chromedriver_update.py | 38 | def test_get_chromedriver_version_failure(self, mock_run): |
| LOW | tests/test_chromedriver_update.py | 44 | def test_get_chromedriver_version_timeout(self, mock_run): |
| LOW | tests/test_chromedriver_update.py | 60 | def test_incompatible_versions(self, mock_driver_ver, mock_chrome_ver): |
| LOW | tests/test_chromedriver_update.py | 67 | def test_no_chrome_version_assumes_compatible(self, mock_chrome_ver): |
| LOW | tests/test_chromedriver_update.py | 74 | def test_no_driver_version_assumes_compatible(self, mock_driver_ver, mock_chrome_ver): |
| LOW | tests/test_minimax_provider.py | 14 | def test_minimax_provider_registered(self): |
| LOW | tests/test_minimax_provider.py | 20 | def test_minimax_in_unsafe_providers(self): |
| LOW | tests/test_minimax_provider.py | 26 | def test_minimax_api_key_required(self): |
| LOW | tests/test_minimax_provider.py | 35 | def test_minimax_local_not_supported(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 46 | def test_minimax_uses_correct_base_url(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 69 | def test_minimax_custom_base_url(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 89 | def test_minimax_uses_temperature_one(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 107 | def test_minimax_returns_response_content(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 124 | def test_minimax_handles_empty_response(self, mock_openai_class): |
| LOW | tests/test_minimax_provider.py | 140 | def test_minimax_handles_api_error(self, mock_openai_class): |
| LOW | tests/test_planner_agent_parsing.py | 53 | def test_parse_malformed_json_returns_empty(self): |
| LOW | tests/test_planner_agent_parsing.py | 64 | def test_parse_truncated_json_returns_empty(self): |
| LOW | tests/test_planner_agent_parsing.py | 75 | def test_parse_no_blocks_returns_empty(self): |
| LOW | tests/test_planner_agent_parsing.py | 84 | def test_parse_invalid_agent_returns_empty(self): |
| LOW | tests/test_planner_agent_parsing.py | 94 | def test_parse_multiple_tasks(self): |
| LOW | tests/test_tools_parsing.py | 29 | def test_load_exec_block_single_block(self): |
| LOW | tests/test_tools_parsing.py | 45 | def test_load_exec_block_multiple_blocks(self): |
| LOW | tests/test_tools_parsing.py | 69 | def test_load_exec_block_with_save_path(self): |
| LOW | tests/test_tools_parsing.py | 85 | def test_load_exec_block_with_indentation(self): |
| LOW | tests/test_tools_parsing.py | 102 | def test_load_exec_block_no_blocks(self): |
| 21 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | api.py | 5 | |
| LOW | api.py | 7 | |
| LOW | api.py | 8 | |
| LOW | api.py | 9 | |
| LOW | cli.py | 3 | |
| LOW | cli.py | 4 | |
| LOW | cli.py | 10 | |
| LOW | cli.py | 10 | |
| LOW | tests/test_searx_search.py | 7 | |
| LOW | tests/test_provider.py | 5 | |
| LOW | tests/test_provider.py | 6 | |
| LOW | tests/test_provider.py | 7 | |
| LOW | tests/test_memory.py | 4 | |
| LOW | tests/test_planner_agent_parsing.py | 2 | |
| LOW | tests/test_logger.py | 4 | |
| LOW | tests/test_logger.py | 5 | |
| LOW | llm_server/app.py | 4 | |
| LOW | llm_server/sources/cache.py | 1 | |
| LOW | sources/interaction.py | 1 | |
| LOW | sources/interaction.py | 2 | |
| LOW | sources/interaction.py | 2 | |
| LOW | sources/memory.py | 1 | |
| LOW | sources/memory.py | 7 | |
| LOW | sources/memory.py | 7 | |
| LOW | sources/memory.py | 7 | |
| LOW | sources/memory.py | 7 | |
| LOW | sources/memory.py | 12 | |
| LOW | sources/logger.py | 1 | |
| LOW | sources/logger.py | 2 | |
| LOW | sources/logger.py | 2 | |
| LOW | sources/logger.py | 2 | |
| LOW | sources/logger.py | 2 | |
| LOW | sources/logger.py | 3 | |
| LOW | sources/text_to_speech.py | 6 | |
| LOW | sources/text_to_speech.py | 6 | |
| LOW | sources/text_to_speech.py | 6 | |
| LOW | sources/text_to_speech.py | 6 | |
| LOW | sources/text_to_speech.py | 19 | |
| LOW | sources/text_to_speech.py | 19 | |
| LOW | sources/text_to_speech.py | 22 | |
| LOW | sources/text_to_speech.py | 22 | |
| LOW | sources/browser.py | 9 | |
| LOW | sources/browser.py | 9 | |
| LOW | sources/browser.py | 9 | |
| LOW | sources/browser.py | 12 | |
| LOW | sources/browser.py | 16 | |
| LOW | sources/browser.py | 25 | |
| LOW | sources/browser.py | 32 | |
| LOW | sources/schemas.py | 2 | |
| LOW | sources/schemas.py | 2 | |
| LOW | sources/language.py | 1 | |
| LOW | sources/language.py | 1 | |
| LOW | sources/language.py | 1 | |
| LOW | sources/language.py | 2 | |
| LOW | sources/router.py | 5 | |
| LOW | sources/router.py | 16 | |
| LOW | sources/tools/fileFinder.py | 4 | |
| LOW | sources/tools/__init__.py | 1 | |
| LOW | sources/tools/__init__.py | 2 | |
| LOW | sources/tools/__init__.py | 3 | |
| 29 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | api.py | 215 | except Exception as e: |
| MEDIUM | api.py | 217 | pretty_print(f"An error occurred: {str(e)}", color="error") |
| LOW | api.py | 281 | except Exception as e: |
| MEDIUM | api.py | 201 | def think_wrapper(interaction, query): |
| LOW | cli.py | 69 | except Exception as e: |
| LOW | llm_server/sources/ollama_handler.py | 37 | except Exception as e: |
| LOW | llm_server/sources/llamacpp_handler.py | 36 | except Exception as e: |
| LOW | sources/memory.py | 114 | except Exception as e: |
| LOW | sources/memory.py | 129 | except Exception as e: |
| LOW | sources/speech_to_text.py | 53 | except Exception: |
| LOW | sources/speech_to_text.py | 62 | except Exception: |
| LOW | sources/logger.py | 34 | except Exception as e: |
| LOW | sources/browser.py | 307 | except Exception as e: |
| LOW | sources/browser.py | 320 | except Exception as e: |
| LOW | sources/browser.py | 656 | except Exception as e: |
| LOW | sources/browser.py | 660 | except Exception as e: |
| LOW | sources/browser.py | 90 | except Exception: |
| LOW | sources/browser.py | 104 | except Exception: |
| LOW | sources/browser.py | 138 | except Exception as e: |
| LOW | sources/browser.py | 241 | except Exception as e: |
| LOW | sources/browser.py | 252 | except Exception as e: |
| LOW | sources/browser.py | 296 | except Exception as e: |
| LOW | sources/browser.py | 373 | except Exception as e: |
| LOW | sources/browser.py | 415 | except Exception as e: |
| LOW | sources/browser.py | 471 | except Exception as e: |
| LOW | sources/browser.py | 496 | except Exception as e: |
| LOW | sources/browser.py | 509 | except Exception as e: |
| LOW | sources/browser.py | 518 | except Exception as e: |
| LOW | sources/browser.py | 552 | except Exception as e: |
| LOW | sources/browser.py | 559 | except Exception as e: |
| LOW | sources/browser.py | 619 | except Exception as e: |
| LOW | sources/browser.py | 719 | except Exception: |
| LOW | sources/browser.py | 723 | except Exception as sel_e: |
| LOW | sources/browser.py | 747 | except Exception as e: |
| LOW | sources/browser.py | 787 | except Exception as e: |
| LOW | sources/browser.py | 807 | except Exception as e: |
| LOW | sources/language.py | 72 | except Exception as e: |
| LOW | sources/llm_provider.py | 94 | except Exception as e: |
| LOW | sources/llm_provider.py | 156 | except Exception as e: |
| MEDIUM | sources/llm_provider.py | 157 | pretty_print(f"An error occurred: {str(e)}", color="failure") |
| LOW | sources/llm_provider.py | 162 | except Exception as e: |
| LOW | sources/llm_provider.py | 192 | except Exception as e: |
| LOW | sources/llm_provider.py | 229 | except Exception as e: |
| LOW | sources/llm_provider.py | 248 | except Exception as e: |
| LOW | sources/llm_provider.py | 280 | except Exception as e: |
| LOW | sources/llm_provider.py | 303 | except Exception as e: |
| LOW | sources/llm_provider.py | 326 | except Exception as e: |
| LOW | sources/llm_provider.py | 346 | except Exception as e: |
| LOW | sources/llm_provider.py | 413 | except Exception as e: |
| LOW | sources/llm_provider.py | 438 | except Exception as e: |
| LOW | sources/llm_provider.py | 471 | except Exception as e: |
| LOW | sources/llm_provider.py | 542 | except Exception as e: |
| LOW | sources/router.py | 57 | except Exception as e: |
| LOW | sources/router.py | 411 | except Exception as e: |
| MEDIUM | sources/router.py | 412 | pretty_print(f"Error in estimate_complexity: {str(e)}", color="failure") |
| MEDIUM | sources/router.py | 437 | pretty_print(f"Error finding planner agent. Please add a planner agent to the list of agents.", color="failure") |
| LOW | sources/router.py | 462 | except Exception as e: |
| MEDIUM | sources/router.py | 469 | pretty_print(f"Error choosing agent.", color="failure") |
| LOW | sources/tools/fileFinder.py | 32 | except Exception as e: |
| LOW | sources/tools/PyInterpreter.py | 50 | except Exception as e: |
| 10 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | frontend/agentic-seek-front/src/setupTests.js | 1 | // jest-dom adds custom jest matchers for asserting on DOM nodes. |
| LOW | searxng/settings.yml | 21 | new_issue_url: https://github.com/searxng/searxng/issues/new |
| LOW | searxng/settings.yml | 41 | autocomplete_min: 4 |
| LOW | searxng/settings.yml | 121 | static_use_hash: false |
| LOW | searxng/settings.yml | 141 | # style of simple theme: auto, light, dark |
| LOW | searxng/settings.yml | 161 | # - doi_resolver |
| LOW | searxng/settings.yml | 181 | # proxify_results: true |
| LOW | searxng/settings.yml | 201 | # see https://www.python-httpx.org/advanced/#changing-the-verification-defaults |
| LOW | searxng/settings.yml | 221 | # uncomment below section only if you have more than one network interface |
| LOW | searxng/settings.yml | 241 | # # these plugins are enabled if nothing is configured .. |
| LOW | searxng/settings.yml | 261 | # '(www\.)?twitter\.com$': 'nitter.example.com' |
| LOW | searxng/settings.yml | 281 | off_when_debug: true |
| LOW | searxng/settings.yml | 621 | engine: cloudflareai |
| LOW | searxng/settings.yml | 781 | official_api_documentation: |
| LOW | searxng/settings.yml | 1301 | # base_url: http://localhost:7700 |
| LOW | searxng/settings.yml | 1521 | - https://pximg.example.org |
| LOW | searxng/settings.yml | 1701 | - name: rottentomatoes |
| LOW | searxng/settings.yml | 1821 | |
| LOW | searxng/settings.yml | 1881 | |
| LOW | searxng/settings.yml | 1921 | |
| LOW | searxng/settings.yml | 2121 | # - name: wikicommons.images |
| LOW | searxng/settings.yml | 2141 | # |
| LOW | searxng/settings.yml | 2181 | # limit: 10 |
| LOW | searxng/settings.yml | 2541 | # of access tokens under tokens. |
| LOW | searxng/settings.yml | 2561 | # disabled: true |
| LOW | searxng/settings.yml | 2581 | # Be careful when enabling this engine if you are |
| LOW | sources/browser.py | 841 | # https://browserleaks.com/ |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | start_services.sh | 41 | # Check if Docker daemon is running |
| LOW | start_services.sh | 66 | # Check if Docker Compose is installed |
| LOW | start_services.sh | 81 | # Check if docker-compose.yml exists |
| LOW | searxng/setup_searxng.sh | 9 | # Check if Docker is installed |
| LOW | searxng/setup_searxng.sh | 17 | # Check if Docker daemon is running |
| LOW | searxng/setup_searxng.sh | 42 | # Check if Docker Compose is installed |
| LOW | searxng/setup_searxng.sh | 54 | # Check if docker-compose.yml exists |
| LOW | scripts/linux_install.sh | 7 | # Check if uv is installed |
| LOW | scripts/macos_install.sh | 7 | # Check if uv is installed |
| LOW | scripts/macos_install.sh | 14 | # Check if homebrew is installed |
| LOW | sources/echo_filter.py | 48 | # Check if this exact sequence exists in the last spoken text |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | sources/tools/PyInterpreter.py | 0 | provide feedback based on the output of the code execution |
| HIGH | sources/tools/C_Interpreter.py | 0 | provide feedback based on the output of the code execution |
| HIGH | sources/tools/GoInterpreter.py | 0 | provide feedback based on the output of the code execution |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | llm_server/sources/ollama_handler.py | 16 | |
| LOW | sources/text_to_speech.py | 67 | |
| LOW | sources/browser.py | 419 | |
| LOW | sources/browser.py | 526 | |
| LOW | sources/browser.py | 595 | |
| LOW | sources/browser.py | 625 | |
| LOW | sources/browser.py | 681 | |
| LOW | sources/llm_provider.py | 126 | |
| LOW | sources/tools/tools.py | 154 | |
| LOW | sources/tools/searxSearch.py | 29 | |
| LOW | sources/tools/webSearch.py | 28 | |
| LOW | sources/tools/webSearch.py | 60 | |
| LOW | sources/agents/browser_agent.py | 198 | |
| LOW | sources/agents/planner_agent.py | 63 | |
| LOW | sources/agents/agent.py | 255 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | searxng/settings.yml | 269 | # Alternatively you can use external files for configuring the "Hostnames plugin": |
| MEDIUM | searxng/settings.yml | 908 | # Or you can use the html non-stable engine, activated by default |
| MEDIUM | searxng/settings.yml | 1993 | # Or you can use the html non-stable engine, activated by default |
| MEDIUM | searxng/settings.yml | 2157 | # Or you can use the html non-stable engine, activated by default |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | llm_router/dl_safetensors.sh | 10 | # Define the URL and filename |
| MEDIUM | searxng/setup_searxng.sh | 50 | # Create a directory for SearXNG config if it doesn’t exist |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/test_tools_parsing.py | 158 | def process_data(data): |
| LOW | tests/test_tools_parsing.py | 175 | self.assertEqual(blocks[1], '\ndef process_data(data):\n return data.upper()\n') |
| LOW | llm_server/sources/decorator.py | 7 | def my_function(): |
| LOW | sources/utility.py | 110 | def my_function(): |