Build and run agents you can see, understand and trust.
1673 matches across 14 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | tests/model_ollama_test.py | 23 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 25 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 112 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 114 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 198 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 200 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 311 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_ollama_test.py | 313 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 46 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 49 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 110 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 115 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 205 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 211 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 283 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 285 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 485 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_openai_chat_test.py | 487 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_ollama_test.py | 165 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_ollama_test.py | 167 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_ollama_test.py | 335 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_ollama_test.py | 337 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_xai_test.py | 247 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 249 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 334 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 336 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 30 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 32 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 105 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/formatter_xai_test.py | 107 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/workspace_docker_test.py | 62 | # ── docker daemon detection ──────────────────────────────────────── |
| MEDIUM | tests/workspace_docker_test.py | 89 | # ── helper tool for agent-integration test ──────────────────────── |
| MEDIUM | tests/workspace_docker_test.py | 136 | # ── offload tests ───────────────────────────────────────────────── |
| MEDIUM | tests/workspace_docker_test.py | 454 | # ── skill tests ──────────────────────────────────────────────────── |
| MEDIUM | tests/workspace_docker_test.py | 653 | # ── lifecycle tests ─────────────────────────────────────────────── |
| MEDIUM | tests/formatter_deepseek_test.py | 181 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_deepseek_test.py | 183 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_deepseek_test.py | 256 | # ------------------------------------------------------------------ |
| MEDIUM | tests/formatter_deepseek_test.py | 258 | # ------------------------------------------------------------------ |
| MEDIUM | tests/model_anthropic_test.py | 25 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 27 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 105 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 107 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 199 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 201 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 415 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/model_anthropic_test.py | 417 | # --------------------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 34 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 37 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 90 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 96 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 186 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 192 | # --------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 268 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 270 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 515 | # ------------------------------------------------------------------- |
| MEDIUM | tests/formatter_anthropic_test.py | 517 | # ------------------------------------------------------------------- |
| MEDIUM | tests/tracing_test.py | 207 | # ----------------------------------------------------------------------- |
| MEDIUM | tests/tracing_test.py | 209 | # ----------------------------------------------------------------------- |
| MEDIUM | tests/tracing_test.py | 334 | # ----------------------------------------------------------------------- |
| 411 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | tests/model_ollama_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_anthropic_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_gemini_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_dashscope_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_deepseek_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_openai_response_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_moonshot_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_openai_chat_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_xai_test.py | 0 | non-stream text response returns a single chatresponse. |
| HIGH | tests/model_ollama_test.py | 0 | stream text yields deltas then final with full content. |
| HIGH | tests/model_openai_response_test.py | 0 | stream text yields deltas then final with full content. |
| HIGH | tests/model_xai_test.py | 0 | stream text yields deltas then final with full content. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_anthropic_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_gemini_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_dashscope_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_moonshot_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_openai_response_test.py | 0 | set up shared message fixtures and expected ground-truth dicts. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_ollama_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_deepseek_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_anthropic_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_gemini_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_dashscope_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_moonshot_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_openai_response_test.py | 0 | chat formatter produces exact output for various subsets. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | url images in tool results are promoted to a follow-up user message. |
| HIGH | tests/formatter_moonshot_test.py | 0 | url images in tool results are promoted to a follow-up user message. |
| HIGH | tests/formatter_openai_response_test.py | 0 | url images in tool results are promoted to a follow-up user message. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_ollama_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_deepseek_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_anthropic_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_gemini_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_dashscope_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_moonshot_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_openai_response_test.py | 0 | multiagent formatter produces exact output for various subsets. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_ollama_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_xai_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_deepseek_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_anthropic_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_gemini_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_moonshot_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_openai_response_test.py | 0 | complex multi-step sequence with interleaved thinking, text, tool calls, and tool results. |
| HIGH | tests/formatter_openai_chat_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_ollama_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_xai_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_deepseek_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_anthropic_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_gemini_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_dashscope_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_moonshot_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/formatter_openai_response_test.py | 0 | hintblock flushes preceding content and becomes a user message. |
| HIGH | tests/model_anthropic_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| HIGH | tests/model_gemini_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| HIGH | tests/model_dashscope_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| HIGH | tests/model_deepseek_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| HIGH | tests/model_moonshot_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| HIGH | tests/model_openai_chat_test.py | 0 | non-stream tool call response creates toolcallblocks. |
| 97 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/agui_protocol_test.py | 46 | async def test_reply_start_to_run_started(self) -> None: |
| LOW | tests/agui_protocol_test.py | 60 | async def test_reply_end_to_run_finished(self) -> None: |
| LOW | tests/agui_protocol_test.py | 72 | async def test_exceed_max_iters_to_run_error(self) -> None: |
| LOW | tests/agui_protocol_test.py | 95 | async def test_model_call_start_to_step_started(self) -> None: |
| LOW | tests/agui_protocol_test.py | 106 | async def test_model_call_end_to_step_finished(self) -> None: |
| LOW | tests/agui_protocol_test.py | 181 | async def test_thinking_block_start(self) -> None: |
| LOW | tests/agui_protocol_test.py | 193 | async def test_thinking_block_delta(self) -> None: |
| LOW | tests/agui_protocol_test.py | 277 | async def test_tool_result_end_with_buffered_content(self) -> None: |
| LOW | tests/agui_protocol_test.py | 307 | async def test_tool_result_end_fallback_to_state(self) -> None: |
| LOW | tests/agui_protocol_test.py | 320 | async def test_tool_result_start_to_custom(self) -> None: |
| LOW | tests/agui_protocol_test.py | 333 | async def test_tool_result_text_delta_to_custom(self) -> None: |
| LOW | tests/agui_protocol_test.py | 346 | async def test_tool_result_data_delta_to_custom(self) -> None: |
| LOW | tests/agui_protocol_test.py | 420 | async def test_require_user_confirm(self) -> None: |
| LOW | tests/agui_protocol_test.py | 438 | async def test_require_external_execution(self) -> None: |
| LOW | tests/agui_protocol_test.py | 475 | async def test_external_execution_result(self) -> None: |
| LOW | tests/agui_protocol_test.py | 503 | def _assert_no_snake_case_keys(self, d: dict, context: str) -> None: |
| LOW | tests/agui_protocol_test.py | 514 | async def test_all_standard_events_produce_camel_case(self) -> None: |
| LOW | tests/model_ollama_test.py | 233 | async def test_stream_thinking_and_text( |
| LOW | tests/model_ollama_test.py | 349 | def test_tools_forwarded_no_choice(self) -> None: |
| LOW | tests/builtin_bash_test.py | 99 | async def test_command_substitution_blocked(self) -> None: |
| LOW | tests/builtin_bash_test.py | 115 | async def test_control_flow_blocked(self) -> None: |
| LOW | tests/builtin_bash_test.py | 146 | async def test_injection_check_before_readonly(self) -> None: |
| LOW | tests/builtin_bash_test.py | 199 | async def test_match_rule_prefix_pattern(self) -> None: |
| LOW | tests/builtin_bash_test.py | 225 | async def test_match_rule_wildcard_pattern(self) -> None: |
| LOW | tests/builtin_bash_test.py | 243 | async def test_match_rule_substring_pattern(self) -> None: |
| LOW | tests/builtin_bash_test.py | 261 | async def test_match_rule_escaped_characters(self) -> None: |
| LOW | tests/builtin_bash_test.py | 279 | async def test_generate_suggestions(self) -> None: |
| LOW | tests/builtin_bash_test.py | 295 | async def test_generate_suggestions_single_word(self) -> None: |
| LOW | tests/builtin_bash_test.py | 340 | async def test_rm_root_children_blocked(self) -> None: |
| LOW | tests/builtin_bash_test.py | 402 | async def test_rmdir_dangerous_paths_blocked(self) -> None: |
| LOW | tests/builtin_bash_test.py | 419 | async def test_safe_rm_commands_pass(self) -> None: |
| LOW | tests/builtin_bash_test.py | 442 | async def test_compound_commands_with_dangerous_removal(self) -> None: |
| LOW | tests/formatter_openai_chat_test.py | 352 | async def test_chat_formatter_thinking_dropped(self) -> None: |
| LOW | tests/formatter_openai_chat_test.py | 380 | async def test_chat_formatter_url_image_in_tool_result( |
| LOW | tests/formatter_openai_chat_test.py | 489 | async def test_multiagent_formatter(self) -> None: |
| LOW | tests/formatter_openai_chat_test.py | 542 | async def test_chat_formatter_complex_multi_step(self) -> None: |
| LOW | tests/formatter_openai_chat_test.py | 692 | async def test_chat_formatter_hint_block(self) -> None: |
| LOW | tests/permission_engine_test.py | 760 | async def test_git_commit_is_not_read_only(self) -> None: |
| LOW | tests/permission_engine_test.py | 770 | async def test_compound_command_with_dangerous_path(self) -> None: |
| LOW | tests/permission_engine_test.py | 783 | async def test_compound_command_all_read_only(self) -> None: |
| LOW | tests/permission_engine_test.py | 794 | async def test_compound_command_with_write_operation(self) -> None: |
| LOW | tests/permission_engine_test.py | 805 | async def test_output_redirection_to_dangerous_path(self) -> None: |
| LOW | tests/permission_engine_test.py | 148 | async def test_bypass_mode_with_deny_rule(self) -> None: |
| LOW | tests/permission_engine_test.py | 172 | async def test_bypass_mode_with_dangerous_path(self) -> None: |
| LOW | tests/permission_engine_test.py | 202 | async def test_accept_edits_mode_within_working_directory(self) -> None: |
| LOW | tests/permission_engine_test.py | 241 | async def test_accept_edits_mode_resolves_symlinked_working_directory( |
| LOW | tests/permission_engine_test.py | 294 | async def test_accept_edits_mode_outside_working_directory(self) -> None: |
| LOW | tests/permission_engine_test.py | 316 | async def test_explore_mode_read_operations(self) -> None: |
| LOW | tests/permission_engine_test.py | 329 | async def test_explore_mode_write_operations(self) -> None: |
| LOW | tests/permission_engine_test.py | 355 | async def test_bash_prefix_pattern_matching(self) -> None: |
| LOW | tests/permission_engine_test.py | 394 | async def test_bash_substring_pattern_matching(self) -> None: |
| LOW | tests/permission_engine_test.py | 473 | async def test_file_glob_pattern_matching(self) -> None: |
| LOW | tests/permission_engine_test.py | 498 | async def test_file_directory_pattern_matching(self) -> None: |
| LOW | tests/permission_engine_test.py | 558 | async def test_dangerous_file_blocks_write(self) -> None: |
| LOW | tests/permission_engine_test.py | 570 | async def test_dangerous_file_blocks_edit(self) -> None: |
| LOW | tests/permission_engine_test.py | 583 | async def test_dangerous_directory_blocks_write(self) -> None: |
| LOW | tests/permission_engine_test.py | 596 | async def test_dangerous_path_in_bash_command(self) -> None: |
| LOW | tests/permission_engine_test.py | 608 | async def test_dangerous_path_bypass_immune(self) -> None: |
| LOW | tests/permission_engine_test.py | 623 | async def test_dangerous_path_in_accept_edits_mode(self) -> None: |
| LOW | tests/permission_engine_test.py | 646 | async def test_safe_file_allows_write(self) -> None: |
| 368 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | src/agentscope/__init__.py | 5 | |
| LOW | src/agentscope/__init__.py | 5 | |
| LOW | src/agentscope/__init__.py | 9 | |
| LOW | src/agentscope/middleware/_base.py | 6 | |
| LOW | src/agentscope/middleware/_base.py | 7 | |
| LOW | src/agentscope/middleware/__init__.py | 4 | |
| LOW | src/agentscope/middleware/__init__.py | 5 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 15 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 22 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 23 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 23 | |
| LOW | src/agentscope/middleware/_tracing/__init__.py | 4 | |
| LOW | src/agentscope/middleware/_tracing/_trace.py | 46 | |
| LOW | src/agentscope/middleware/_tracing/_trace.py | 47 | |
| LOW | src/agentscope/middleware/_tracing/_trace.py | 48 | |
| LOW | src/agentscope/credential/_base.py | 9 | |
| LOW | src/agentscope/credential/_base.py | 9 | |
| LOW | src/agentscope/credential/_ollama.py | 10 | |
| LOW | src/agentscope/credential/_moonshot.py | 10 | |
| LOW | src/agentscope/credential/_dashscope.py | 10 | |
| LOW | src/agentscope/credential/__init__.py | 4 | |
| LOW | src/agentscope/credential/__init__.py | 5 | |
| LOW | src/agentscope/credential/__init__.py | 6 | |
| LOW | src/agentscope/credential/__init__.py | 7 | |
| LOW | src/agentscope/credential/__init__.py | 8 | |
| LOW | src/agentscope/credential/__init__.py | 9 | |
| LOW | src/agentscope/credential/__init__.py | 10 | |
| LOW | src/agentscope/credential/__init__.py | 11 | |
| LOW | src/agentscope/credential/__init__.py | 12 | |
| LOW | src/agentscope/credential/__init__.py | 13 | |
| LOW | src/agentscope/credential/_openai.py | 10 | |
| LOW | src/agentscope/credential/_xai.py | 10 | |
| LOW | src/agentscope/credential/_deepseek.py | 10 | |
| LOW | src/agentscope/credential/_gemini.py | 10 | |
| LOW | src/agentscope/credential/_anthropic.py | 10 | |
| LOW | src/agentscope/types/__init__.py | 4 | |
| LOW | src/agentscope/types/__init__.py | 4 | |
| LOW | src/agentscope/types/__init__.py | 8 | |
| LOW | src/agentscope/types/__init__.py | 9 | |
| LOW | src/agentscope/types/__init__.py | 9 | |
| LOW | src/agentscope/app/__init__.py | 6 | |
| LOW | src/agentscope/app/__init__.py | 7 | |
| LOW | src/agentscope/app/__init__.py | 7 | |
| LOW | src/agentscope/app/__init__.py | 7 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 12 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/__init__.py | 20 | |
| LOW | src/agentscope/app/_middleware/__init__.py | 4 | |
| LOW | src/agentscope/app/_middleware/__init__.py | 4 | |
| LOW | src/agentscope/app/_middleware/__init__.py | 5 | |
| 247 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | tests/builtin_bash_test.py | 138 | cmd = "(cd /tmp && ls)" |
| HIGH | tests/builtin_bash_test.py | 446 | "ls && rm -rf /", |
| HIGH | tests/builtin_bash_test.py | 447 | "cd /tmp && rm -rf /usr", |
| HIGH | tests/permission_engine_test.py | 776 | {"command": "ls -la && rm ~/.bashrc"}, |
| HIGH | tests/permission_engine_test.py | 788 | {"command": "ls -la && cat file.txt"}, |
| HIGH | tests/permission_engine_test.py | 799 | {"command": "ls -la && git commit -m 'test'"}, |
| HIGH | tests/mcp_streamable_http_client_test.py | 144 | "meta": null, |
| HIGH | tests/workspace_local_test.py | 1084 | '"finished_at":"2026-01-01T00:00:00","usage":null}' |
| HIGH | tests/workspace_local_test.py | 1127 | '"finished_at":null,"usage":null}' |
| HIGH | tests/workspace_local_test.py | 1135 | '"finished_at":"2026-01-02T00:00:00","usage":null}' |
| HIGH | tests/permission_bash_parser_test.py | 86 | "npm install && npm run build && npm test", |
| HIGH | tests/permission_bash_parser_test.py | 100 | ("npm run build || echo failed", ["npm run"]), |
| HIGH | tests/permission_bash_parser_test.py | 101 | ("git commit || git status", ["git commit", "git status"]), |
| HIGH | tests/permission_bash_parser_test.py | 296 | "ls -la && cat file.txt", |
| HIGH | tests/permission_bash_parser_test.py | 297 | "git status && git log", |
| HIGH | tests/permission_bash_parser_test.py | 298 | "pwd && ls", |
| HIGH | tests/permission_bash_parser_test.py | 299 | "cat file1.txt || cat file2.txt", |
| HIGH | tests/permission_bash_parser_test.py | 314 | "ls -la && git commit -m 'message'", |
| HIGH | tests/permission_bash_parser_test.py | 315 | "cat file.txt && rm file.txt", |
| HIGH | tests/permission_bash_parser_test.py | 316 | "git status && git push", |
| HIGH | tests/permission_bash_parser_test.py | 317 | "pwd || mkdir new_dir", |
| HIGH | tests/permission_bash_parser_test.py | 551 | "rm file1.txt && rm file2.txt", |
| HIGH | tests/permission_bash_parser_test.py | 555 | "touch new.txt && chmod +x new.txt", |
| HIGH | tests/permission_bash_parser_test.py | 559 | "cp src.txt dest.txt || mv src.txt dest.txt", |
| HIGH | tests/permission_bash_parser_test.py | 705 | "echo 'a' > file1.txt && echo 'b' > file2.txt", |
| HIGH | tests/permission_bash_parser_test.py | 709 | "cat file.txt > backup.txt || cp file.txt backup.txt", |
| HIGH | tests/permission_bash_parser_test.py | 1202 | "ls -la && cat file.txt", |
| HIGH | tests/permission_bash_parser_test.py | 1204 | "npm install || echo failed", |
| HIGH | tests/permission_bash_parser_test.py | 1216 | ("ls && rm $(find . -name '*.tmp')", "command_substitution"), |
| HIGH | tests/permission_bash_parser_test.py | 1219 | "echo start && for f in *.txt; do cat $f; done", |
| HIGH | tests/permission_bash_parser_test.py | 142 | "npm install && npm run build | tee log.txt", |
| HIGH | tests/permission_bash_parser_test.py | 169 | "npm install && npm run build && npm test && " |
| HIGH | tests/permission_bash_parser_test.py | 170 | "npm run lint && npm run format && npm run deploy" |
| HIGH | tests/permission_bash_parser_test.py | 189 | "npm run build && npm run test && npm run lint", |
| HIGH | tests/permission_bash_parser_test.py | 193 | "git add . && git commit && git push && git status", |
| HIGH | tests/permission_bash_parser_test.py | 1108 | "(cd /tmp && ls)", |
| HIGH | tests/permission_bash_parser_test.py | 82 | """Test compound commands with && operator.""" |
| HIGH | tests/permission_bash_parser_test.py | 98 | """Test compound commands with || operator.""" |
| HIGH | src/agentscope/workspace/_local_workspace.py | 111 | uv venv && uv pip install ... |
| HIGH | src/agentscope/workspace/_e2b/_e2b_workspace.py | 933 | f"ls -A {shlex.quote(SANDBOX_SKILLS_DIR)} 2>/dev/null || true", |
| HIGH | src/agentscope/workspace/_e2b/_e2b_workspace.py | 300 | "pkill -f _mcp_gateway_app.py || true", |
| HIGH | src/agentscope/workspace/_e2b/_e2b_workspace.py | 430 | f"2>/dev/null || true", |
| HIGH | src/agentscope/workspace/_docker/_docker_workspace.py | 432 | f"2>/dev/null || true", |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | src/agentscope/app/_deps.py | 21 | Return the caller's user ID from the ``X-User-ID`` request header. This is a placeholder dependency. Once an auth m |
| HIGH | src/agentscope/app/_deps.py | 81 | Return the application-wide workspace manager. Args: request (`Request`): The incoming FastAPI request. |
| HIGH | src/agentscope/app/_middleware/_protocol/_base.py | 126 | Deserialize event dictionary to AgentEvent object. Args: event_dict: Dictionary containing event da |
| HIGH | src/agentscope/app/_router/_session.py | 68 | Return all sessions belonging to the authenticated user for a given agent. Args: agent_id (`str`): Agen |
| HIGH | src/agentscope/app/_router/_session.py | 105 | Create (or resume) a session for a given agent and workspace. At most one session exists per ``(user_id, agent_id, |
| HIGH | src/agentscope/app/_router/_session.py | 192 | Update the model configuration of an existing session. Args: session_id (`str`): The session to update. |
| HIGH | src/agentscope/app/_router/_credential.py | 106 | Replace the payload of an existing credential. Args: credential_id (`str`): The credential to update. |
| HIGH | src/agentscope/app/_router/_agent.py | 148 | Partially update an existing agent configuration. Only the fields present in the request body are updated; all othe |
| HIGH | src/agentscope/app/_router/_schedule.py | 65 | Create a new schedule and register it with the scheduler. Args: body (`CreateScheduleRequest`): Schedule co |
| HIGH | src/agentscope/app/_router/_schedule.py | 123 | Partially update a schedule. Fields omitted from the request body keep their current values. Changing ``cron_ex |
| HIGH | src/agentscope/app/_router/_schedule.py | 209 | Return all sessions triggered by a given schedule. Args: schedule_id (`str`): ID of the schedule. u |
| HIGH | src/agentscope/workspace/_gateway_client.py | 137 | Invoke the upstream tool by POSTing to ``/mcps/{mcp}/tools/{tool}`` on the gateway. Args: * |
| HIGH | src/agentscope/workspace/_gateway_client.py | 388 | Look up a single tool by upstream name and wrap it. Falls back to :meth:`list_raw_tools` on cache miss, then |
| HIGH | src/agentscope/workspace/_docker/_docker_workspace.py | 1124 | Fetch a file from the container as raw bytes. Uses ``get_archive`` (tarfile stream) and extracts the first |
| HIGH | src/agentscope/agent/_agent.py | 816 | Check if the agent is waiting for the incoming event, if no, raise error. Args: event (`Use |
| HIGH | src/agentscope/agent/_agent.py | 1130 | Execute the given tool calls concurrently and yield the events. All tool calls are executed concurrently. If on |
| HIGH | src/agentscope/mcp/_mcp_client.py | 358 | Get a tool by name from the MCP server. The returned MCPTool object implements ToolProtocol and can be: |
| HIGH | src/agentscope/tool/_builtin/_bash_parser.py | 426 | Extract command prefixes from a bash command. Automatically handles compound commands (&&, ||, ;, |) and extrac |
| HIGH | src/agentscope/tool/_builtin/_bash_parser.py | 812 | Check if command contains structures that cannot be statically analyzed. This detects command substitut |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | tests/skill_loader_test.py | 18 | # Create a temporary directory for testing |
| MEDIUM | tests/skill_loader_test.py | 79 | # Create a directory without SKILL.md |
| MEDIUM | tests/builtin_grep_test.py | 21 | # Create a temporary directory with test files |
| MEDIUM | tests/builtin_file_cache_test.py | 143 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 186 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 271 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 21 | # Create a temporary directory |
| MEDIUM | tests/builtin_file_cache_test.py | 34 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 52 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 88 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 116 | # Create a file |
| MEDIUM | tests/builtin_file_cache_test.py | 250 | # Create a file |
| MEDIUM | tests/builtin_edit_test.py | 21 | # Create a temporary file for testing |
| MEDIUM | tests/task_tool_test.py | 296 | # Create a task |
| MEDIUM | tests/task_tool_test.py | 368 | # Create a task |
| MEDIUM | tests/task_tool_test.py | 421 | # Create a task |
| MEDIUM | tests/task_tool_test.py | 474 | # Create a task |
| MEDIUM | tests/task_tool_test.py | 597 | # Create a task |
| MEDIUM | tests/task_tool_test.py | 650 | # Create a task with initial metadata |
| MEDIUM | tests/workspace_local_test.py | 192 | # Create a test image data (1x1 red pixel PNG) |
| MEDIUM | tests/workspace_local_test.py | 626 | # Create a test skill |
| MEDIUM | tests/workspace_local_test.py | 670 | # Create a valid skill |
| MEDIUM | tests/workspace_local_test.py | 676 | # Create an invalid skill without SKILL.md |
| MEDIUM | tests/workspace_local_test.py | 689 | # Create an invalid skill with malformed frontmatter |
| MEDIUM | tests/toolkit_skill_test.py | 49 | # Create a minimal SKILL.md so LocalSkillLoader can load it |
| MEDIUM | tests/builtin_read_test.py | 22 | # Create a temporary file for testing |
| MEDIUM | tests/builtin_glob_test.py | 21 | # Create a temporary directory with test files |
| MEDIUM | src/agentscope/app/_middleware/_protocol/_base.py | 70 | # Create a new StreamingResponse with the converted stream |
| MEDIUM | src/agentscope/agent/_agent.py | 1166 | # Create a queue to collect events from all concurrent workers. |
| MEDIUM | src/agentscope/formatter/_formatter_base.py | 112 | # Create an identifier for such multimodal data for |
| MEDIUM | src/agentscope/tool/_utils.py | 91 | # Create a dynamic model with the function signature |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/compress_tool_result_test.py | 275 | |
| LOW | tests/compress_tool_result_test.py | 405 | |
| LOW | tests/compress_tool_result_test.py | 290 | |
| LOW | tests/compress_tool_result_test.py | 420 | |
| LOW | scripts/model_examples/run_tests.py | 293 | |
| LOW | scripts/model_examples/_utils.py | 9 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 67 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 370 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 432 | |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 521 | |
| LOW | src/agentscope/middleware/_tracing/_converter.py | 63 | |
| LOW | src/agentscope/middleware/_tracing/_trace.py | 136 | |
| LOW | src/agentscope/middleware/_tracing/_trace.py | 299 | |
| LOW | src/agentscope/middleware/_tracing/_utils.py | 15 | |
| LOW | src/agentscope/skill/_local_loader.py | 99 | |
| LOW | src/agentscope/workspace/_local_workspace.py | 475 | |
| LOW | src/agentscope/workspace/_local_workspace.py | 530 | |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 568 | |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 610 | |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 621 | |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 678 | |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 728 | |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 1123 | |
| LOW | …gentscope/embedding/_dashscope_multimodal_embedding.py | 90 | |
| LOW | src/agentscope/agent/_agent.py | 256 | |
| LOW | src/agentscope/agent/_agent.py | 496 | |
| LOW | src/agentscope/agent/_agent.py | 812 | |
| LOW | src/agentscope/agent/_agent.py | 903 | |
| LOW | src/agentscope/agent/_agent.py | 1223 | |
| LOW | src/agentscope/agent/_agent.py | 1931 | |
| LOW | src/agentscope/agent/_agent.py | 2080 | |
| LOW | src/agentscope/agent/_agent.py | 2146 | |
| LOW | src/agentscope/agent/_agent.py | 2275 | |
| LOW | src/agentscope/agent/_agent.py | 2376 | |
| LOW | src/agentscope/state/_state.py | 37 | |
| LOW | src/agentscope/formatter/_gemini_formatter.py | 63 | |
| LOW | src/agentscope/formatter/_gemini_formatter.py | 130 | |
| LOW | src/agentscope/formatter/_gemini_formatter.py | 339 | |
| LOW | src/agentscope/formatter/_formatter_base.py | 70 | |
| LOW | src/agentscope/formatter/_formatter_base.py | 176 | |
| LOW | src/agentscope/formatter/_deepseek_formatter.py | 33 | |
| LOW | src/agentscope/formatter/_moonshot_formatter.py | 24 | |
| LOW | src/agentscope/formatter/_moonshot_formatter.py | 83 | |
| LOW | src/agentscope/formatter/_moonshot_formatter.py | 354 | |
| LOW | src/agentscope/formatter/_anthropic_formatter.py | 31 | |
| LOW | src/agentscope/formatter/_anthropic_formatter.py | 246 | |
| LOW | src/agentscope/formatter/_anthropic_formatter.py | 390 | |
| LOW | src/agentscope/formatter/_openai_formatter.py | 86 | |
| LOW | src/agentscope/formatter/_openai_formatter.py | 212 | |
| LOW | src/agentscope/formatter/_openai_formatter.py | 429 | |
| LOW | src/agentscope/formatter/_dashscope_formatter.py | 122 | |
| LOW | src/agentscope/formatter/_dashscope_formatter.py | 150 | |
| LOW | src/agentscope/formatter/_dashscope_formatter.py | 234 | |
| LOW | src/agentscope/formatter/_dashscope_formatter.py | 475 | |
| LOW | src/agentscope/formatter/_xai_formatter.py | 50 | |
| LOW | src/agentscope/formatter/_xai_formatter.py | 267 | |
| LOW | src/agentscope/formatter/_openai_response_formatter.py | 106 | |
| LOW | src/agentscope/formatter/_openai_response_formatter.py | 400 | |
| LOW | src/agentscope/formatter/_ollama_formatter.py | 71 | |
| LOW | src/agentscope/formatter/_ollama_formatter.py | 116 | |
| 27 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | scripts/model_examples/run_tests.py | 87 | except Exception: |
| LOW | src/agentscope/_utils/_common.py | 68 | except Exception: |
| LOW | src/agentscope/_utils/_common.py | 174 | except Exception as e: |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 164 | except Exception: |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 297 | except Exception: |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 407 | except Exception: |
| LOW | src/agentscope/middleware/_tracing/_extractor.py | 428 | except Exception: |
| LOW | …agentscope/app/_middleware/_tool_offload_middleware.py | 235 | except Exception as exc: # pylint: disable=broad-except |
| LOW | src/agentscope/app/_router/_workspace.py | 102 | except Exception: |
| LOW | …c/agentscope/app/_manager/_docker_workspace_manager.py | 342 | except Exception: |
| LOW | …c/agentscope/app/_manager/_docker_workspace_manager.py | 367 | except Exception: |
| LOW | src/agentscope/app/_manager/_background_task_manager.py | 280 | except Exception: # pylint: disable=broad-except |
| LOW | src/agentscope/app/_manager/_workspace_manager.py | 246 | except Exception: |
| LOW | src/agentscope/app/_manager/_e2b_workspace_manager.py | 358 | except Exception: |
| LOW | src/agentscope/app/_manager/_e2b_workspace_manager.py | 383 | except Exception: |
| LOW | …entscope/app/_manager/_scheduler/_scheduler_manager.py | 264 | except Exception: |
| LOW | src/agentscope/skill/_local_loader.py | 91 | except Exception as e: |
| LOW | src/agentscope/skill/_local_loader.py | 165 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 270 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 327 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 346 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 398 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 616 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 841 | except Exception as e: |
| LOW | src/agentscope/workspace/_local_workspace.py | 865 | except Exception as e: |
| LOW | src/agentscope/workspace/_gateway_client.py | 336 | except Exception: |
| LOW | src/agentscope/workspace/_gateway_client.py | 519 | except Exception: |
| LOW | src/agentscope/workspace/_gateway_client.py | 630 | except Exception: |
| LOW | src/agentscope/workspace/_utils.py | 118 | except Exception as e: # noqa: BLE001 |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 379 | except Exception: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 387 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 940 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 343 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 458 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 496 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 711 | except Exception as e: # noqa: BLE001 |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 746 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 848 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 873 | except Exception as e: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 916 | except Exception: |
| LOW | src/agentscope/workspace/_e2b/_e2b_workspace.py | 983 | except Exception as e: # noqa: BLE001 |
| LOW | …/agentscope/workspace/_mcp_gateway/_mcp_gateway_app.py | 123 | except Exception as e: # noqa: BLE001 |
| LOW | …/agentscope/workspace/_mcp_gateway/_mcp_gateway_app.py | 168 | except Exception as e: # noqa: BLE001 |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 365 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 369 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 373 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 380 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 308 | except Exception as e: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 344 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 460 | except Exception as e: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 521 | except Exception as e: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 754 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 905 | except Exception as e: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 933 | except Exception as e: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 1009 | except Exception: |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 1041 | except Exception as e: |
| LOW | src/agentscope/agent/_agent.py | 385 | except Exception as e: |
| LOW | src/agentscope/agent/_agent.py | 2024 | except Exception as e: |
| LOW | src/agentscope/mcp/_mcp_client.py | 241 | except Exception: |
| LOW | src/agentscope/mcp/_mcp_client.py | 272 | except Exception as e: |
| 16 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/builtin_file_cache_test.py | 147 | # Read the file to cache it |
| LOW | tests/builtin_file_cache_test.py | 190 | # Read the file to cache it |
| LOW | tests/builtin_file_cache_test.py | 275 | # Read the file |
| LOW | tests/builtin_file_cache_test.py | 92 | # Read the file first |
| LOW | tests/builtin_file_cache_test.py | 120 | # Read the file first |
| LOW | tests/builtin_edit_test.py | 86 | # Write file with duplicate content |
| LOW | tests/builtin_edit_test.py | 101 | # Write file with duplicate content |
| LOW | src/agentscope/app/_middleware/_protocol/_base.py | 64 | # Check if the response is a streaming response |
| LOW | src/agentscope/skill/_local_loader.py | 44 | # Check if SKILL.md exists |
| LOW | src/agentscope/skill/_local_loader.py | 111 | # Check if directory exists |
| LOW | src/agentscope/workspace/_local_workspace.py | 367 | # Check if SKILL.md exists |
| LOW | src/agentscope/agent/_agent.py | 1263 | # Check if the tool is available |
| LOW | src/agentscope/agent/_agent.py | 736 | # Check if res is an async generator (streaming response) |
| LOW | src/agentscope/agent/_agent.py | 1702 | # Check if the reserved part has tool results that don't have the |
| LOW | src/agentscope/state/_state.py | 50 | # Check if cache is still valid |
| LOW | src/agentscope/formatter/_gemini_formatter.py | 49 | # Check if media type is supported |
| LOW | src/agentscope/formatter/_anthropic_formatter.py | 224 | # Check if media type is supported |
| LOW | src/agentscope/formatter/_ollama_formatter.py | 49 | # Check if media type is supported |
| LOW | src/agentscope/tool/_base.py | 181 | # Check if filename matches dangerous files (case-insensitive) |
| LOW | src/agentscope/tool/_base.py | 188 | # Check if any path segment matches dangerous directories |
| LOW | src/agentscope/tool/_types.py | 131 | # Check if the two definitions are from the same BaseModel |
| LOW | src/agentscope/tool/_response.py | 130 | # Check if the last block is also a TextBlock |
| LOW | src/agentscope/tool/_builtin/_read.py | 216 | # Read file content with aiofiles |
| LOW | src/agentscope/tool/_builtin/_write.py | 175 | # Check if file path is in any working directory |
| LOW | src/agentscope/tool/_builtin/_write.py | 181 | # Check if file_path is inside working_dir |
| LOW | src/agentscope/tool/_builtin/_write.py | 279 | # Check if file exists, it must be read first if it exists |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 561 | # Check if environment variables are safe |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 565 | # Check if the command is a safe command that doesn't need permission |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 167 | # Check if it's a compound command |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 202 | # Check if it starts with a read-only prefix |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 218 | # Check if base command is in safe commands |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 293 | # Check if this is a file-manipulating command |
| LOW | src/agentscope/tool/_builtin/_bash_parser.py | 859 | # Check if this node is a dangerous type |
| LOW | src/agentscope/tool/_builtin/_edit.py | 197 | # Check if file path is in any working directory |
| LOW | src/agentscope/tool/_builtin/_edit.py | 203 | # Check if file_path is inside working_dir |
| LOW | src/agentscope/tool/_builtin/_bash.py | 334 | # Check if pattern is a prefix pattern (ends with :*) |
| LOW | src/agentscope/tool/_builtin/_bash.py | 339 | # Check if pattern has unescaped wildcards |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | src/agentscope/agent/_agent.py | 519 | # Step 1: Checking agent input: |
| LOW | src/agentscope/agent/_agent.py | 526 | # Step 2: Handling agent event if applicable |
| LOW | src/agentscope/agent/_agent.py | 546 | # Step 3: Enter the reasoning-acting loop until reaching max_iters or |
| LOW | src/agentscope/agent/_agent.py | 627 | # Step 4: Handling the max iteration executed |
| LOW | src/agentscope/agent/_agent.py | 1258 | # Step 1: Check and parse the tool call input: |
| LOW | src/agentscope/agent/_agent.py | 1300 | # Step 2: Check permission by toolkit and permission engine |
| LOW | src/agentscope/agent/_agent.py | 1315 | # Step 3: Handle the permission and execute the tool call if allowed |
| LOW | src/agentscope/agent/_agent.py | 1378 | # Step 4: Delegate raw execution to _acting (middleware hook point) |
| LOW | src/agentscope/agent/_agent.py | 1393 | # Step 5: Truncate the tool result if exceed |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | src/agentscope/middleware/_base.py | 87 | |
| MEDIUM | src/agentscope/middleware/_base.py | 110 | |
| MEDIUM | src/agentscope/middleware/_base.py | 156 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | examples/web_ui/frontend/src/vite-env.d.ts | 1 | /// <reference types="vite/client" /> |
| LOW | src/agentscope/workspace/_docker/_docker_workspace.py | 1081 | stderr: list[bytes] = [] |
| LOW | src/agentscope/tool/_constants.py | 61 | "fdisk", |
| LOW | src/agentscope/tool/_constants.py | 101 | # |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/workspace_local_test.py | 510 | {"helper.py": "def helper():\n return 42\n"}, |