Repository Analysis

agentscope-ai/agentscope

Build and run agents you can see, understand and trust.

39.0 Strong AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of agentscope-ai/agentscope, a Python project with 29,931 GitHub stars. SynthScan v2.0 examined 246,350 lines of code across 970 source files, recording 5105 pattern matches distributed across 21 syntactic categories. The overall adjusted score of 39.0 places this repository in the Strong AI signal band.

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

39.0
Adjusted Score
39.0
Raw Score
100%
Time Factor
2026-08-28
Last Push
29.9K
Stars
Python
Language
246.3K
Lines of Code
970
Files
5.1K
Pattern Hits
2026-08-29
Scan Date
0.49
HC Hit Rate

What These Metrics Mean

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

Score History

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

Severity Breakdown

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

CRITICAL 2HIGH 477MEDIUM 1206LOW 3420

Directory Score Breakdown

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

Pattern Findings

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

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators1132 hits · 3632 pts
SeverityFileLineSnippetContext
MEDIUMtests/mem0_middleware_test.py199# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py201# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py276# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py278# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py844# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py846# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py38# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py40# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py128# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py130# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py533# ----------------------------------------------------------------------COMMENT
MEDIUMtests/mem0_middleware_test.py535# ----------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py23# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py25# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py112# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py114# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py202# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py204# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py347# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/model_ollama_test.py349# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py188 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py190 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py242 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py244 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py312 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py314 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py393 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py395 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py487 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py489 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py580 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py582 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py803 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py805 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py830 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py832 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py924 # ------------------------------------------------------------------COMMENT
MEDIUMtests/storage_sql_test.py926 # ------------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py46 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py49 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py110 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py115 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py205 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py211 # ---------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py283 # -------------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py285 # -------------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py587 # -------------------------------------------------------------------COMMENT
MEDIUMtests/formatter_openai_chat_test.py589 # -------------------------------------------------------------------COMMENT
MEDIUMtests/permission_engine_test.py687# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/permission_engine_test.py689# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/backend_opensandbox_test.py30# ── OpenSandbox availability check ─────────────────────────────────COMMENT
MEDIUMtests/backend_opensandbox_test.py60 # ── exec ───────────────────────────────────────────────────────COMMENT
MEDIUMtests/backend_opensandbox_test.py91 # ── file I/O ───────────────────────────────────────────────────COMMENT
MEDIUMtests/backend_opensandbox_test.py111 # ── derived filesystem helpers (shell-based) ───────────────────COMMENT
MEDIUMtests/hub_router_test.py266 # ── browse ────────────────────────────────────────────────────COMMENT
MEDIUMtests/hub_router_test.py332 # ── install: MCP ──────────────────────────────────────────────COMMENT
MEDIUMtests/hub_router_test.py576 # ── workspace <-> library ─────────────────────────────────────COMMENT
MEDIUMtests/hub_router_test.py700 # ── install: skill ────────────────────────────────────────────COMMENT
MEDIUMtests/formatter_ollama_test.py170 # ------------------------------------------------------------------COMMENT
MEDIUMtests/formatter_ollama_test.py172 # ------------------------------------------------------------------COMMENT
1072 more matches not shown…
Hyper-Verbose Identifiers1923 hits · 1773 pts
SeverityFileLineSnippetContext
LOWtests/embedding_openai_test.py154 async def test_retry_on_transient_error(CODE
LOWtests/mem0_middleware_test.py207 def test_missing_user_id_raises(self) -> None:CODE
LOWtests/mem0_middleware_test.py260 def test_client_alone_does_not_warn(self) -> None:CODE
LOWtests/mem0_middleware_test.py266 def test_only_one_of_chat_or_embedding_without_config_raises(CODE
LOWtests/mem0_middleware_test.py852 async def test_memory_msg_and_tool_hint_both_present(self) -> None:CODE
LOWtests/mem0_middleware_test.py146 def test_list_of_user_msgs_joined(self) -> None:CODE
LOWtests/mem0_middleware_test.py151 def test_resumption_events_return_none(self) -> None:CODE
LOWtests/mem0_middleware_test.py186 def test_plain_list_of_strings(self) -> None:CODE
LOWtests/mem0_middleware_test.py223 def test_neither_client_nor_models_nor_config_raises(self) -> None:CODE
LOWtests/mem0_middleware_test.py231 def test_client_wins_over_other_backend_kwargs_with_warning(CODE
LOWtests/mem0_middleware_test.py304 async def test_retrieve_inject_write(self) -> None:CODE
LOWtests/mem0_middleware_test.py380 async def test_memory_message_lands_after_user_message(self) -> None:CODE
LOWtests/mem0_middleware_test.py415 async def test_no_memories_no_injection(self) -> None:CODE
LOWtests/mem0_middleware_test.py434 async def test_search_failure_does_not_break_reply(self) -> None:CODE
LOWtests/mem0_middleware_test.py451 async def test_scope_search_by_agent_false_drops_agent_id(CODE
LOWtests/mem0_middleware_test.py470 async def test_sync_client_rejected(self) -> None:CODE
LOWtests/mem0_middleware_test.py490 async def test_async_method_wrapped_by_sync_decorator_accepted(CODE
LOWtests/mem0_middleware_test.py567 async def test_tools_listed_and_hint_in_prompt(self) -> None:CODE
LOWtests/mem0_middleware_test.py607 async def test_middleware_does_not_mutate_toolkit(self) -> None:CODE
LOWtests/mem0_middleware_test.py675 async def test_async_search_accepts_per_call_top_k(self) -> None:CODE
LOWtests/mem0_middleware_test.py695 async def test_tools_auto_allow_permission(self) -> None:CODE
LOWtests/mem0_middleware_test.py714 async def test_search_memory_dedupes_across_keywords(self) -> None:CODE
LOWtests/mem0_middleware_test.py736 async def test_search_memory_failure_returns_error_chunk(self) -> None:CODE
LOWtests/mem0_middleware_test.py757 async def test_add_memory_two_tier_fallback(self) -> None:CODE
LOWtests/mem0_middleware_test.py811 async def test_add_memory_does_not_persist_thinking(self) -> None:CODE
LOWtests/compress_context_test.py143 async def _call_api_with_structured_output(CODE
LOWtests/compress_context_test.py176def _make_failing_compression_agent(CODE
LOWtests/compress_context_test.py861 async def test_split_multi_tool_pairs_reaches_stable_boundary(CODE
LOWtests/compress_context_test.py1183 async def test_context_compression_clears_evicted_read_cache(self) -> None:CODE
LOWtests/compress_context_test.py1255 async def test_context_compression_keeps_reserved_read_cache(CODE
LOWtests/compress_context_test.py1334 async def test_context_compression_clears_unreferenced_read_cache(CODE
LOWtests/compress_context_test.py1392 async def test_context_compression_injects_instructions_as_hint(CODE
LOWtests/compress_context_test.py1457 async def test_context_compression_overflow_retry_keeps_instructions(CODE
LOWtests/compress_context_test.py1523 async def test_max_image_num_without_offloader(self) -> None:CODE
LOWtests/compress_context_test.py1727 async def test_max_image_num_with_offloader(self) -> None:CODE
LOWtests/compress_context_test.py1944 async def test_max_image_num_default(self) -> None:CODE
LOWtests/compress_context_test.py2140 async def test_summary_failure_truncates_context(self) -> None:CODE
LOWtests/compress_context_test.py2154 async def test_offload_reminder_is_not_duplicated(self) -> None:CODE
LOWtests/agui_protocol_test.py73 async def test_raw_json_stream_is_converted(self) -> None:CODE
LOWtests/agui_protocol_test.py88 async def test_sse_data_frame_is_converted(self) -> None:CODE
LOWtests/agui_protocol_test.py108 async def test_sse_heartbeat_is_passed_through(self) -> None:CODE
LOWtests/agui_protocol_test.py115 async def test_sse_data_frame_with_crlf_is_converted(self) -> None:CODE
LOWtests/agui_protocol_test.py135 async def test_fastapi_sse_response_is_converted(self) -> None:CODE
LOWtests/agui_protocol_test.py164 async def test_fastapi_json_response_is_not_converted(self) -> None:CODE
LOWtests/agui_protocol_test.py198 async def test_reply_start_to_run_started(self) -> None:CODE
LOWtests/agui_protocol_test.py212 async def test_reply_end_to_run_finished(self) -> None:CODE
LOWtests/agui_protocol_test.py225 async def test_exceed_max_iters_to_run_error(self) -> None:CODE
LOWtests/agui_protocol_test.py237 async def test_deprecated_exceed_max_iters_to_custom(self) -> None:CODE
LOWtests/agui_protocol_test.py259 async def test_model_call_start_to_step_started(self) -> None:CODE
LOWtests/agui_protocol_test.py270 async def test_model_call_end_to_step_finished(self) -> None:CODE
LOWtests/agui_protocol_test.py346 async def test_thinking_block_start(self) -> None:CODE
LOWtests/agui_protocol_test.py358 async def test_thinking_block_delta(self) -> None:CODE
LOWtests/agui_protocol_test.py442 async def test_tool_result_end_with_buffered_content(self) -> None:CODE
LOWtests/agui_protocol_test.py472 async def test_tool_result_end_fallback_to_state(self) -> None:CODE
LOWtests/agui_protocol_test.py485 async def test_tool_result_start_to_custom(self) -> None:CODE
LOWtests/agui_protocol_test.py498 async def test_tool_result_text_delta_to_custom(self) -> None:CODE
LOWtests/agui_protocol_test.py511 async def test_tool_result_data_delta_to_custom(self) -> None:CODE
LOWtests/agui_protocol_test.py585 async def test_require_user_confirm(self) -> None:CODE
LOWtests/agui_protocol_test.py603 async def test_require_external_execution(self) -> None:CODE
LOWtests/agui_protocol_test.py640 async def test_external_execution_result(self) -> None:CODE
1863 more matches not shown…
Cross-File Repetition301 hits · 1505 pts
SeverityFileLineSnippetContext
HIGHtests/service_cancel_dispatcher_test.py0yield the event loop a few times so spawned tasks make progress.STRING
HIGHtests/service_index_task_consumer_test.py0yield the event loop a few times so spawned tasks make progress.STRING
HIGHtests/service_wakeup_dispatcher_test.py0yield the event loop a few times so spawned tasks make progress.STRING
HIGHtests/model_ollama_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_anthropic_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_gemini_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_dashscope_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_deepseek_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_openai_response_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_moonshot_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_openai_chat_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/model_xai_test.py0non-stream text response returns a single chatresponse.STRING
HIGHtests/formatter_openai_chat_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_anthropic_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_gemini_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_dashscope_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_moonshot_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_openai_response_test.py0set up shared message fixtures and expected ground-truth dicts.STRING
HIGHtests/formatter_openai_chat_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_ollama_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_deepseek_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_anthropic_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_gemini_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_dashscope_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_moonshot_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_openai_response_test.py0chat formatter produces exact output for various subsets.STRING
HIGHtests/formatter_openai_chat_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_ollama_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_deepseek_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_anthropic_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_gemini_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_dashscope_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_moonshot_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_openai_response_test.py0multiagent formatter produces exact output for various subsets.STRING
HIGHtests/formatter_openai_chat_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_ollama_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_xai_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_deepseek_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_anthropic_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_gemini_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_moonshot_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_openai_response_test.py0complex multi-step sequence with interleaved thinking, text, tool calls, and tool results.STRING
HIGHtests/formatter_openai_chat_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_ollama_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_xai_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_deepseek_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_anthropic_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_gemini_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_dashscope_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_moonshot_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_openai_response_test.py0hintblock flushes preceding content and becomes a user message.STRING
HIGHtests/formatter_openai_chat_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/formatter_anthropic_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/formatter_gemini_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/formatter_dashscope_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/formatter_moonshot_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/formatter_openai_response_test.py0multimodal hintblock becomes a single user message with text + image.STRING
HIGHtests/backend_opensandbox_test.py0a program's stdout/exit code are captured into ``execresult``.STRING
HIGHtests/backend_e2b_test.py0a program's stdout/exit code are captured into ``execresult``.STRING
HIGHtests/backend_daytona_test.py0a program's stdout/exit code are captured into ``execresult``.STRING
241 more matches not shown…
Unused Imports805 hits · 740 pts
SeverityFileLineSnippetContext
LOWtests/tool_lazy_annotations_test.py9CODE
LOWtests/rag_vdb_elasticsearch_test.py4CODE
LOWtests/workspace_bubblewrap_test.py5CODE
LOWtests/tts_gemini_test.py79CODE
LOWtests/service_workspace_files_test.py9CODE
LOWtests/rag_vdb_mongodb_test.py4CODE
LOWsrc/agentscope/__init__.py5CODE
LOWsrc/agentscope/__init__.py5CODE
LOWsrc/agentscope/__init__.py9CODE
LOWsrc/agentscope/__init__.py9CODE
LOWsrc/agentscope/__init__.py10CODE
LOWsrc/agentscope/middleware/_base.py8CODE
LOWsrc/agentscope/middleware/_base.py9CODE
LOWsrc/agentscope/middleware/_base.py10CODE
LOWsrc/agentscope/middleware/_tts_middleware.py18CODE
LOWsrc/agentscope/middleware/__init__.py4CODE
LOWsrc/agentscope/middleware/__init__.py5CODE
LOWsrc/agentscope/middleware/__init__.py6CODE
LOWsrc/agentscope/middleware/__init__.py7CODE
LOWsrc/agentscope/middleware/__init__.py7CODE
LOWsrc/agentscope/middleware/__init__.py7CODE
LOWsrc/agentscope/middleware/__init__.py12CODE
LOWsrc/agentscope/middleware/__init__.py13CODE
LOWsrc/agentscope/middleware/_rag.py61CODE
LOWsrc/agentscope/middleware/_rag.py62CODE
LOWsrc/agentscope/middleware/_rag.py62CODE
LOWsrc/agentscope/middleware/_budget.py11CODE
LOWsrc/agentscope/middleware/_longterm_memory/__init__.py4CODE
LOWsrc/agentscope/middleware/_longterm_memory/__init__.py5CODE
LOWsrc/agentscope/middleware/_longterm_memory/__init__.py6CODE
LOW…iddleware/_longterm_memory/_agentic_memory/__init__.py4CODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py8CODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py25CODE
LOW…ddleware/_longterm_memory/_mem0/_agentscope_adapter.py32CODE
LOW…ddleware/_longterm_memory/_mem0/_agentscope_adapter.py55CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_tools.py19CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_tools.py29CODE
LOW…entscope/middleware/_longterm_memory/_mem0/__init__.py4CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py13CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py40CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py41CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py42CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py43CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_utils.py8CODE
LOW…agentscope/middleware/_longterm_memory/_reme/_tools.py16CODE
LOW…agentscope/middleware/_longterm_memory/_reme/_tools.py25CODE
LOW…entscope/middleware/_longterm_memory/_reme/__init__.py12CODE
LOW…scope/middleware/_longterm_memory/_reme/_middleware.py33CODE
LOW…scope/middleware/_longterm_memory/_reme/_middleware.py56CODE
LOW…scope/middleware/_longterm_memory/_reme/_middleware.py57CODE
LOW…gentscope/middleware/_longterm_memory/_reme/_config.py15CODE
LOW…agentscope/middleware/_longterm_memory/_reme/_utils.py8CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py15CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py22CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py23CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py23CODE
LOWsrc/agentscope/middleware/_tracing/__init__.py4CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py47CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py48CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py49CODE
745 more matches not shown…
Cross-Language Confusion85 hits · 536 pts
SeverityFileLineSnippetContext
HIGHtests/builtin_bash_test.py584 "ls && rm -rf /",CODE
HIGHtests/builtin_bash_test.py585 "cd /tmp && rm -rf /usr",CODE
HIGHtests/builtin_bash_test.py245 cmd = "(cd /tmp && ls)"CODE
HIGHtests/permission_engine_test.py564 {"command": "ls -la && rm ~/.bashrc"},CODE
HIGHtests/permission_engine_test.py576 {"command": "ls -la && cat file.txt"},CODE
HIGHtests/permission_engine_test.py587 {"command": "ls -la && git commit -m 'test'"},CODE
HIGHtests/mcp_streamable_http_client_test.py144 "meta": null,STRING
HIGHtests/model_gemini_test.py749 """additionalProperties removed; anyOf[X, null] inlined to X."""STRING
HIGHtests/workspace_local_test.py1298 '"finished_at":null},'CODE
HIGHtests/workspace_local_test.py1301 '"created_at":"2026-01-01T00:00:00","finished_at":null}'CODE
HIGHtests/workspace_local_test.py1304 '"usage":null,'CODE
HIGHtests/workspace_local_test.py1306 '"finished_reason":null,"structured_output":null,'CODE
HIGHtests/workspace_local_test.py1307 '"error":null}'CODE
HIGHtests/workspace_local_test.py1358 '"usage":null,'CODE
HIGHtests/workspace_local_test.py1359 '"finished_at":null,'CODE
HIGHtests/workspace_local_test.py1360 '"finished_reason":null,"structured_output":null,'CODE
HIGHtests/workspace_local_test.py1361 '"error":null}'CODE
HIGHtests/workspace_local_test.py1367 '"created_at":"2026-01-02T00:00:00","finished_at":null}'CODE
HIGHtests/workspace_local_test.py1370 '"usage":null,'CODE
HIGHtests/workspace_local_test.py1372 '"finished_reason":null,"structured_output":null,'CODE
HIGHtests/workspace_local_test.py1373 '"error":null}'CODE
HIGHtests/backend_local_test.py389 ["/bin/sh", "-c", "true && echo chained"],CODE
HIGHtests/tts_dashscope_test.py151 resp = await model.push("ignored")CODE
HIGHtests/tts_dashscope_test.py566 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py567 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py593 res = await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py603 await model.push("Hi")CODE
HIGHtests/tts_dashscope_test.py604 await model.push(" there")CODE
HIGHtests/tts_dashscope_test.py608 await model.push(" friend!")CODE
HIGHtests/tts_dashscope_test.py618 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py621 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py632 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py633 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py677 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py708 await model.push("Hi")CODE
HIGHtests/tts_dashscope_test.py709 await model.push(" there")CODE
HIGHtests/tts_dashscope_test.py975 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py976 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py1001 res = await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1014 await model.push("Hi")CODE
HIGHtests/tts_dashscope_test.py1015 await model.push(" there")CODE
HIGHtests/tts_dashscope_test.py1019 await model.push(" friend!")CODE
HIGHtests/tts_dashscope_test.py1032 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1037 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py1053 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1054 await model.push(" world")CODE
HIGHtests/tts_dashscope_test.py1066 res = await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1111 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1168 await model.push("Hi")CODE
HIGHtests/tts_dashscope_test.py1169 await model.push(" there")CODE
HIGHtests/tts_dashscope_test.py659 await model.push("Hello")CODE
HIGHtests/tts_dashscope_test.py1092 await model.push("Hello")CODE
HIGHtests/backend_applecontainer_test.py95 ["sh", "-c", "echo hello && echo world"],CODE
HIGHtests/backend_applecontainer_test.py98 self.assertEqual(argv[-3:], ["sh", "-c", "echo hello && echo world"])CODE
HIGHtests/permission_bash_parser_test.py86 "npm install && npm run build && npm test",CODE
HIGHtests/permission_bash_parser_test.py100 ("npm run build || echo failed", ["npm run"]),CODE
HIGHtests/permission_bash_parser_test.py101 ("git commit || git status", ["git commit", "git status"]),CODE
HIGHtests/permission_bash_parser_test.py323 "ls -la && cat file.txt",CODE
HIGHtests/permission_bash_parser_test.py324 "git status && git log",CODE
HIGHtests/permission_bash_parser_test.py325 "pwd && ls",CODE
25 more matches not shown…
Docstring Block Structure91 hits · 455 pts
SeverityFileLineSnippetContext
HIGHsrc/agentscope/_utils/_mixin.py11Get a dictionary item through attribute-style access. Args: key (`str`): The requesSTRING
HIGHsrc/agentscope/app/deps.py38Return the caller's user ID from the ``X-User-ID`` request header. Args: x_user_id (`str`): Value of the ``STRING
HIGHsrc/agentscope/app/deps.py231Return the application-wide knowledge base service. Args: request (`Request`): The incoming FasSTRING
HIGHsrc/agentscope/app/deps.py262Return the application-wide knowledge base manager. Args: request (`Request`): The incoming FasSTRING
HIGHsrc/agentscope/app/deps.py290Return the application-wide blob store. Args: request (`Request`): The incoming FastAPI requestSTRING
HIGHsrc/agentscope/app/deps.py321Return the parser registry configured on the app. Args: request (`Request`): The incoming FastASTRING
HIGHsrc/agentscope/app/deps.py352Return the chunker classes configured on the app. Args: request (`Request`): The incoming FastASTRING
HIGHsrc/agentscope/app/_app.py50Key the hubs by id, rejecting duplicates. Args: hubs (`list | None`): The hubs passed to :func:STRING
HIGHsrc/agentscope/app/middleware/_protocol/_base.py201Deserialize event dictionary to AgentEvent object. Args: event_dict: Dictionary containing event daSTRING
HIGHsrc/agentscope/app/_router/_channel.py87Load a channel and assert the caller owns it. Args: channel_id (`str`): The channel to load. user_iSTRING
HIGHsrc/agentscope/app/_router/_chat.py61Trigger a chat run for the specified session. Events produced during the run are published to the message bus and STRING
HIGHsrc/agentscope/app/_router/_session.py196Return all sessions for an agent as enriched :class:`SessionView` entries. Each entry bundles what the chat UI STRING
HIGHsrc/agentscope/app/_router/_session.py295Create (or resume) a session for a given agent and workspace. At most one session exists per ``(user_id, agent_id, STRING
HIGHsrc/agentscope/app/_router/_session.py416Request interruption of an in-progress reply for a session. Thin HTTP wrapper around :meth:`ChatService.interrupt`;STRING
HIGHsrc/agentscope/app/_router/_session.py459Update the configuration of an existing session. Rejected while a chat run holds the session: the agent snapshots STRING
HIGHsrc/agentscope/app/_router/_session.py651Return the unified :class:`SessionStatus` for a session. Ownership validation, cluster-liveness probing, and parkedSTRING
HIGHsrc/agentscope/app/_router/_credential.py120Replace the payload of an existing credential. Args: credential_id (`str`): The credential to update. STRING
HIGHsrc/agentscope/app/_router/_hub.py40Return the hub under ``hub_id`` or raise 404. Args: hubs (`dict[str, HubT]`): The registered huSTRING
HIGHsrc/agentscope/app/_router/_agent.py176Create and persist a new agent configuration. Args: body (`CreateAgentRequest`): Agent configurSTRING
HIGHsrc/agentscope/app/_router/_agent.py228Partially update an existing agent configuration. Only the fields present in the request body are updated; all otheSTRING
HIGHsrc/agentscope/app/_router/_schedule.py74Create a new schedule and register it with the scheduler. The referenced agent may be either the viewer's own or onSTRING
HIGHsrc/agentscope/app/_router/_schedule.py143Partially update a schedule. Fields omitted from the request body keep their current values. Changing ``cron_exSTRING
HIGHsrc/agentscope/app/_router/_schedule.py231Return all sessions triggered by a given schedule. Args: schedule_id (`str`): ID of the schedule. uSTRING
HIGHsrc/agentscope/app/_service/_download_token.py62Return the user a token was granted to, for this path. The path is not read out of the token but re-derived from thSTRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py128Delegate creation to the manager, mapping policy errors. Args: user_id (`str`): TheSTRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py370Persist an uploaded document and enqueue it for indexing. Streams ``stream`` into the blob store (so the bytes STRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py459List documents of a knowledge base, filtered and paginated. Service-mode source of truth: reads from storage, NSTRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py530Batch-fetch documents for status polling. The endpoint backing this method accepts a comma-separated list STRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py577Fetch one document record, or 404. Args: user_id (`str`): The viewer user id — owneSTRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py621List one page of a document's chunks in ``chunk_index`` order. ``page`` / ``page_size`` translate to the dense-STRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py682Open the original uploaded file of a document for streaming. The bytes come straight from the blob store — the STRING
HIGHsrc/agentscope/app/_service/_knowledge_base.py814Search a knowledge base by text query. Args: user_id (`str`): The viewer user id — STRING
HIGHsrc/agentscope/app/_service/_embedding.py29Construct an embedding model from an already-resolved credential. This is the record-in variant used by owner-interSTRING
HIGHsrc/agentscope/app/_service/_embedding.py100Resolve a credential through :class:`ResourceAccessService` and build the corresponding embedding model. Args: STRING
HIGHsrc/agentscope/app/_service/_workspace.py200Return the workspace backing a session. Args: user_id (`str`): The authenticated user ID. STRING
HIGHsrc/agentscope/app/_service/_workspace.py226Report where a session sits and the git state of that place. Args: user_id (`str`): The authenticatSTRING
HIGHsrc/agentscope/app/_service/_workspace.py261Load a session and open the workspace it is bound to. Args: user_id (`str`): The authenticated userSTRING
HIGHsrc/agentscope/app/_service/_workspace.py325Return the user a token was granted to, for this path. The path is not read out of the token but re-derived froSTRING
HIGHsrc/agentscope/app/_service/_workspace.py352Check a manifest and return the skill's root directory name. Args: manifest (`UploadManifest`): TheSTRING
HIGHsrc/agentscope/app/_service/_workspace.py448Emit a tar of the uploaded files, chunk by chunk. Args: manifest (`UploadManifest`): The validated STRING
HIGHsrc/agentscope/app/_service/_mcp_render.py108Turn a card plus the user's answers into a connectable client. Args: card (`MCPCard`): The hub STRING
HIGHsrc/agentscope/app/_service/_model.py15Build a chat model instance from a stored credential and config. Credentials are resolved through :class:`ResourceASTRING
HIGHsrc/agentscope/app/_manager/_chat_run_registry.py43Create and register an asyncio task that runs ``coro``. The task auto-removes from the registry when it finisheSTRING
HIGHsrc/agentscope/app/rag/__init__.py51Lazy-load attributes that would cause an import cycle. ``run_worker`` is lazy-imported because :mod:`.index_worker`STRING
HIGHsrc/agentscope/app/rag/index_worker/__main__.py54Import ``module:attribute`` and return the attribute. Args: dotted (`str`): A ``module:attributSTRING
HIGHsrc/agentscope/app/rag/knowledge_base_manager/_base.py133Create a new knowledge base for the given user. Implementations must: 1. validate ``embedding_model_coSTRING
HIGHsrc/agentscope/app/rag/knowledge_base_manager/_base.py284Resolve a runtime :class:`KnowledgeBase` handle for one KB. Implementations are responsible for: - looSTRING
HIGH…e/app/rag/knowledge_base_manager/_collection_per_kb.py155Resolve a :class:`KnowledgeBase` runtime for one knowledge base. Looks the record up in storage (raising STRING
HIGHsrc/agentscope/app/storage/_base.py117Create or update an installed-MCP record. The record's ``client.name`` is unique per user — the workspace STRING
HIGHsrc/agentscope/app/storage/_base.py209Create or update an installed-skill record. The record's ``name`` is unique per user, for the same reason STRING
HIGHsrc/agentscope/app/storage/_redis_storage.py429Create or update an installed-MCP record for the given user. Keeps the name index in step with the write: the nSTRING
HIGHsrc/agentscope/app/storage/_redis_storage.py568Create or update an installed-skill record for the user. Mirrors :meth:`upsert_mcp` — see it for the name-indexSTRING
HIGHsrc/agentscope/app/storage/_sql/_storage.py270Build a dialect-native atomic upsert statement. A single ``INSERT ... ON CONFLICT DO UPDATE`` (Postgres / STRING
HIGHsrc/agentscope/app/storage/_sql/_storage.py1340Persist a channel record and its bot-uniqueness column. Args: record (`ChannelRecord`): STRING
HIGHsrc/agentscope/app/_tool/_team_tool_base.py111Return the team this session **leads**. Args: leader_only (`str`): What only the leSTRING
HIGHsrc/agentscope/app/hub/_skill/_base.py75Fetch a single card by its hub-local id, with ``SKILL.md``. Args: user_id (`str`): STRING
HIGHsrc/agentscope/app/hub/_skill/_base.py99Open the skill archive for streaming. Returns rather than yields so the format is known before the firsSTRING
HIGHsrc/agentscope/app/hub/_skill/_claw_hub.py226Send a request to the ClawHub API with rate-limit handling. Args: method (`str`): TSTRING
HIGHsrc/agentscope/app/hub/_skill/_claw_hub.py285Open a skill archive via ``GET /api/v1/download``. The response headers are awaited here — so a missing skill oSTRING
HIGHsrc/agentscope/app/hub/_skill/_claw_hub.py548Browse or search the ClawHub registry in one request. With ``q`` the search endpoint is used, which ranks by reSTRING
31 more matches not shown…
Excessive Try-Catch Wrapping243 hits · 248 pts
SeverityFileLineSnippetContext
LOWtests/test_e2e_api.py51 except Exception:CODE
LOWtests/test_e2e_api.py90 except Exception:CODE
LOWtests/_daytona_live_utils.py46 except Exception:CODE
LOWscripts/model_examples/run_tests.py87 except Exception:CODE
LOWsrc/agentscope/_utils/_common.py135 except Exception:CODE
LOWsrc/agentscope/_utils/_common.py243 except Exception as e:CODE
LOWsrc/agentscope/middleware/_rag.py280 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/middleware/_rag.py730 except Exception: # pylint: disable=broad-exceptCODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py774 except Exception:CODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py908 except Exception:CODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py949 except Exception:CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_tools.py135 except Exception as e: # noqa: BLE001CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_tools.py230 except Exception as e: # noqa: BLE001CODE
MEDIUM…scope/middleware/_longterm_memory/_mem0/_middleware.py715def _bg() -> None:CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py343 except Exception as e: # noqa: BLE001CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py707 except Exception as e: # noqa: BLE001CODE
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py734 except Exception as e: # noqa: BLE001CODE
LOW…agentscope/middleware/_longterm_memory/_reme/_tools.py146 except Exception as e: # noqa: BLE001CODE
LOW…scope/middleware/_longterm_memory/_reme/_middleware.py518 except Exception as e: # noqa: BLE001CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py164 except Exception:CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py307 except Exception:CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py431 except Exception:CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py452 except Exception:CODE
LOWsrc/agentscope/app/message_bus/_redis_message_bus.py645 except Exception: # pylint: disable=broad-exceptCODE
LOW…c/agentscope/app/middleware/_team_member_middleware.py91 except Exception: # pylint: disable=broad-exceptCODE
LOW…/agentscope/app/middleware/_tool_offload_middleware.py174 except Exception as exc: # pylint: disable=broad-exceptCODE
LOW…/agentscope/app/middleware/_tool_offload_middleware.py257 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_router/_workspace.py87 except Exception as e:CODE
LOWsrc/agentscope/app/_router/_workspace.py187 except Exception as e:CODE
LOWsrc/agentscope/app/_router/_workspace.py373 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_knowledge_base.py432 except Exception:CODE
LOWsrc/agentscope/app/_service/_knowledge_base.py898 except Exception: # noqa: BLE001 — cleanup onlyCODE
LOWsrc/agentscope/app/_service/_index_sweeper.py109 except Exception: # noqa: BLE001 — keep the loop aliveCODE
LOWsrc/agentscope/app/_service/_index_sweeper.py143 except Exception: # noqa: BLE001 — keep iteratingCODE
LOWsrc/agentscope/app/_service/_channel.py170 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_channel.py224 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_chat.py280 except Exception as e:CODE
LOWsrc/agentscope/app/_service/_chat.py423 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_chat.py504 except Exception:CODE
LOWsrc/agentscope/app/_service/_chat.py868 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_chat.py998 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_chat.py1185 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_chat.py1344 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_session.py412 except Exception as e:CODE
LOWsrc/agentscope/app/_service/_session.py558 except Exception as e:CODE
LOWsrc/agentscope/app/_service/_session.py722 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_workspace.py525 except Exception as exc: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_workspace.py552 except Exception as exc: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_index_worker.py310 except Exception as exc: # noqa: BLE001 — terminal error sinkCODE
LOWsrc/agentscope/app/_service/_index_worker.py599 except Exception: # noqa: BLE001 — last-resort logCODE
LOWsrc/agentscope/app/_service/_index_task_consumer.py140 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_index_task_consumer.py158 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_service/_model.py67 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_cancel_dispatcher.py131 except Exception:CODE
LOWsrc/agentscope/app/_manager/_cancel_dispatcher.py191 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_cancel_dispatcher.py220 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_background_task_manager.py349 except Exception as e: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_wakeup_dispatcher.py173 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_wakeup_dispatcher.py186 except Exception: # pylint: disable=broad-exceptCODE
LOWsrc/agentscope/app/_manager/_wakeup_dispatcher.py265 except Exception: # pylint: disable=broad-exceptCODE
183 more matches not shown…
Deep Nesting146 hits · 134 pts
SeverityFileLineSnippetContext
LOWtests/workspace_bubblewrap_test.py606CODE
LOWtests/compress_tool_result_test.py325CODE
LOWtests/compress_tool_result_test.py481CODE
LOWtests/compress_tool_result_test.py340CODE
LOWtests/compress_tool_result_test.py496CODE
LOWexamples/long_term_memory/agentic_memory/main.py115CODE
LOWexamples/long_term_memory/mem0/oss_demo.py93CODE
LOWexamples/long_term_memory/reme/reme_demo.py127CODE
LOWscripts/model_examples/run_tests.py293CODE
LOWscripts/model_examples/_utils.py15CODE
LOWsrc/agentscope/_utils/_common.py269CODE
LOWsrc/agentscope/_utils/_common.py313CODE
LOWsrc/agentscope/middleware/_tts_middleware.py51CODE
LOWsrc/agentscope/middleware/_rag.py196CODE
LOWsrc/agentscope/middleware/_rag.py682CODE
LOWsrc/agentscope/middleware/_budget.py98CODE
LOW…leware/_longterm_memory/_agentic_memory/_middleware.py709CODE
LOW…ddleware/_longterm_memory/_mem0/_agentscope_adapter.py172CODE
LOW…ddleware/_longterm_memory/_mem0/_agentscope_adapter.py191CODE
LOW…agentscope/middleware/_longterm_memory/_mem0/_utils.py55CODE
LOW…agentscope/middleware/_longterm_memory/_reme/_utils.py51CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py67CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py394CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py456CODE
LOWsrc/agentscope/middleware/_tracing/_extractor.py545CODE
LOWsrc/agentscope/middleware/_tracing/_converter.py63CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py137CODE
LOWsrc/agentscope/middleware/_tracing/_utils.py15CODE
LOWsrc/agentscope/pipeline/_goal_pipeline.py93CODE
LOWsrc/agentscope/app/_router/_session.py764CODE
LOWsrc/agentscope/app/_router/_session.py807CODE
LOWsrc/agentscope/app/_service/_chat.py634CODE
LOWsrc/agentscope/app/_service/_session.py477CODE
LOWsrc/agentscope/app/_service/_workspace.py567CODE
LOWsrc/agentscope/app/channel/_base.py334CODE
LOWsrc/agentscope/app/channel/_stream.py71CODE
LOWsrc/agentscope/app/channel/_dingtalk/_channel.py198CODE
LOWsrc/agentscope/app/channel/_dingtalk/_channel.py291CODE
LOWsrc/agentscope/app/channel/_discord/_channel.py159CODE
LOWsrc/agentscope/app/channel/_discord/_channel.py306CODE
LOWsrc/agentscope/app/channel/_feishu/_channel.py181CODE
LOWsrc/agentscope/app/channel/_feishu/_channel.py376CODE
LOWsrc/agentscope/app/channel/_feishu/_channel.py555CODE
LOWsrc/agentscope/app/channel/_feishu/_channel.py652CODE
LOWsrc/agentscope/app/hub/_skill/_claw_hub.py277CODE
LOWsrc/agentscope/skill/_local_loader.py100CODE
LOWsrc/agentscope/workspace/_base.py1004CODE
LOWsrc/agentscope/workspace/_base.py1060CODE
LOWsrc/agentscope/workspace/_gateway_client.py583CODE
LOWsrc/agentscope/workspace/_daytona/_daytona_workspace.py357CODE
LOW…workspace/_applecontainer/_applecontainer_workspace.py303CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_workspace.py502CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_backend.py80CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_backend.py205CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_backend.py324CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_backend.py121CODE
LOW…/agentscope/workspace/_mcp_gateway/_mcp_gateway_app.py190CODE
LOW…gentscope/workspace/_bubblewrap/_bubblewrap_backend.py199CODE
LOWsrc/agentscope/workspace/_docker/_docker_backend.py136CODE
LOWsrc/agentscope/workspace/_docker/_docker_workspace.py202CODE
86 more matches not shown…
Self-Referential Comments38 hits · 117 pts
SeverityFileLineSnippetContext
MEDIUMtests/skill_loader_test.py19 # Create a temporary directory for testingCOMMENT
MEDIUMtests/skill_loader_test.py80 # Create a directory without SKILL.mdCOMMENT
MEDIUMtests/rag_vdb_milvus_lite_test.py79 # Creating an existing collection is a no-opCOMMENT
MEDIUMtests/builtin_grep_test.py22 # Create a temporary directory with test filesCOMMENT
MEDIUMtests/builtin_file_cache_test.py143 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py186 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py306 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py21 # Create a temporary directoryCOMMENT
MEDIUMtests/builtin_file_cache_test.py34 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py52 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py88 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py116 # Create a fileCOMMENT
MEDIUMtests/builtin_file_cache_test.py285 # Create a fileCOMMENT
MEDIUMtests/rag_vdb_qdrant_test.py90 # Creating an existing collection is a no-opCOMMENT
MEDIUMtests/builtin_edit_test.py21 # Create a temporary file for testingCOMMENT
MEDIUMtests/task_tool_test.py312 # Create a taskCOMMENT
MEDIUMtests/task_tool_test.py388 # Create a taskCOMMENT
MEDIUMtests/task_tool_test.py443 # Create a taskCOMMENT
MEDIUMtests/task_tool_test.py498 # Create a taskCOMMENT
MEDIUMtests/task_tool_test.py627 # Create a taskCOMMENT
MEDIUMtests/task_tool_test.py682 # Create a task with initial metadataCOMMENT
MEDIUMtests/workspace_local_test.py851 # Create a valid skillCOMMENT
MEDIUMtests/workspace_local_test.py857 # Create an invalid skill without SKILL.mdCOMMENT
MEDIUMtests/workspace_local_test.py276 # Create a test image data (1x1 red pixel PNG)COMMENT
MEDIUMtests/workspace_local_test.py807 # Create a test skillCOMMENT
MEDIUMtests/workspace_local_test.py870 # Create an invalid skill with malformed frontmatterCOMMENT
MEDIUMtests/toolkit_skill_test.py49 # Create a minimal SKILL.md so LocalSkillLoader can load itCOMMENT
MEDIUMtests/builtin_read_test.py26 # Create a temporary file for testingCOMMENT
MEDIUMtests/rag_vdb_mongodb_test.py364 # Creating an existing collection is a no-opCOMMENT
MEDIUMtests/builtin_glob_test.py22 # Create a temporary directory with test filesCOMMENT
MEDIUMexamples/pipeline/goal/goal_pipeline.py26 # Create the executor agentCOMMENT
MEDIUMexamples/pipeline/goal/goal_pipeline.py45 # Create the verifier agentCOMMENT
MEDIUMsrc/agentscope/app/middleware/_protocol/_base.py75 # Create a new StreamingResponse with the converted streamCOMMENT
MEDIUMsrc/agentscope/workspace/_docker/_docker_workspace.py319 # Create the backend now that the container is running. AllCOMMENT
MEDIUMsrc/agentscope/agent/_agent.py2051 # Create a queue to collect events from all concurrent workers.COMMENT
MEDIUMsrc/agentscope/state/_state.py287 # Create a new assistant message with the current reply IDCOMMENT
MEDIUMsrc/agentscope/formatter/_formatter_base.py148 # Create an identifier for such multimodal data forCOMMENT
MEDIUMsrc/agentscope/tool/_utils.py111 # Create a dynamic model with the function signatureCOMMENT
Modern Structural Boilerplate96 hits · 96 pts
SeverityFileLineSnippetContext
LOWtests/test_e2e_api.py57def _setup_module() -> None:CODE
LOWtests/service_team_failure_report_test.py76 async def update_session_state(self, *_: object, **__: object) -> None:CODE
LOWtests/service_chat_channel_delivery_test.py125 async def update_session_state(self, *_: object, **__: object) -> None:CODE
LOWtests/service_chat_run_context_test.py65 async def update_session_state(self, *_: object, **__: object) -> None:CODE
LOWtests/backend_applecontainer_test.py303 async def _setup_container(cls) -> None:CODE
LOWsrc/agentscope/__init__.py16__all__ = [CODE
LOWsrc/agentscope/_utils/_common.py23def set_id_factory(factory: Callable[[], str]) -> None:CODE
LOWsrc/agentscope/_utils/_common.py52def set_timestamp_factory(factory: Callable[[], str]) -> None:CODE
LOWsrc/agentscope/middleware/__init__.py15__all__ = [CODE
LOWsrc/agentscope/middleware/_longterm_memory/__init__.py8__all__ = [CODE
LOW…iddleware/_longterm_memory/_agentic_memory/__init__.py6__all__ = ["AgenticMemoryMiddleware"]CODE
LOW…entscope/middleware/_longterm_memory/_mem0/__init__.py6__all__ = ["Mem0Middleware"]CODE
LOW…entscope/middleware/_longterm_memory/_reme/__init__.py14__all__ = [CODE
LOWsrc/agentscope/middleware/_tracing/__init__.py6__all__ = [CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py73def _set_span_success_status(span: "Span") -> None:CODE
LOWsrc/agentscope/middleware/_tracing/_trace.py79def _set_span_error_status(span: "Span", e: BaseException) -> None:CODE
LOWsrc/agentscope/pipeline/__init__.py7__all__ = [CODE
LOWsrc/agentscope/credential/__init__.py16__all__ = [CODE
LOWsrc/agentscope/types/__init__.py19__all__ = [CODE
LOWsrc/agentscope/app/__init__.py9__all__ = [CODE
LOWsrc/agentscope/app/message_bus/__init__.py9__all__ = [CODE
LOWsrc/agentscope/app/middleware/__init__.py11__all__ = [CODE
LOWsrc/agentscope/app/middleware/_protocol/__init__.py7__all__ = [CODE
LOWsrc/agentscope/app/_router/__init__.py19__all__ = [CODE
LOWsrc/agentscope/app/_router/_schema/__init__.py91__all__ = [CODE
LOWsrc/agentscope/app/access/__init__.py24__all__ = [CODE
LOWsrc/agentscope/app/_service/__init__.py27__all__ = [CODE
LOWsrc/agentscope/app/_service/_projectors/__init__.py11__all__ = [CODE
LOWsrc/agentscope/app/_manager/__init__.py11__all__ = [CODE
LOWsrc/agentscope/app/_manager/_scheduler/__init__.py6__all__ = [CODE
LOW…/agentscope/app/_manager/_scheduler/_tools/__init__.py9__all__ = [CODE
LOWsrc/agentscope/app/rag/__init__.py79__all__ = [CODE
LOW…/agentscope/app/rag/knowledge_base_manager/__init__.py25__all__ = [CODE
LOWsrc/agentscope/app/rag/blob_store/__init__.py7__all__ = [CODE
LOWsrc/agentscope/app/storage/__init__.py68__all__ = [CODE
LOWsrc/agentscope/app/storage/_redis_storage.py191 async def _set_with_ttl(self, key: str, value: str) -> None:CODE
LOWsrc/agentscope/app/storage/_sql/__init__.py12__all__ = ["AsyncSQLAlchemyStorage"]CODE
LOWsrc/agentscope/app/storage/_model/__init__.py38__all__ = [CODE
LOWsrc/agentscope/app/channel/__init__.py29__all__ = [CODE
LOWsrc/agentscope/app/channel/_dingtalk/__init__.py6__all__ = ["DingTalkChannel"]CODE
LOWsrc/agentscope/app/channel/_dingtalk/_tools/__init__.py10__all__ = [CODE
LOWsrc/agentscope/app/channel/_discord/__init__.py5__all__ = ["DiscordChannel"]CODE
LOWsrc/agentscope/app/channel/_feishu/__init__.py5__all__ = ["FeishuChannel"]CODE
LOWsrc/agentscope/app/channel/_feishu/_tools/__init__.py15__all__ = [CODE
LOWsrc/agentscope/app/workspace_manager/__init__.py18__all__ = [CODE
LOWsrc/agentscope/app/_tool/__init__.py40__all__ = [CODE
LOWsrc/agentscope/app/hub/__init__.py21__all__ = [CODE
LOWsrc/agentscope/app/hub/_skill/__init__.py8__all__ = [CODE
LOWsrc/agentscope/app/hub/_mcp/__init__.py8__all__ = [CODE
LOWsrc/agentscope/skill/__init__.py7__all__ = [CODE
LOWsrc/agentscope/workspace/_base.py1536 async def _setup_skills(self) -> None:CODE
LOWsrc/agentscope/workspace/__init__.py17__all__ = [CODE
LOWsrc/agentscope/workspace/_sandboxed_base.py435 async def _setup_mcp_gateway(self) -> None:CODE
LOWsrc/agentscope/workspace/_e2b/__init__.py12__all__ = ["E2BWorkspace", "E2BBackend"]CODE
LOWsrc/agentscope/workspace/_daytona/__init__.py12__all__ = [CODE
LOWsrc/agentscope/workspace/_applecontainer/__init__.py18__all__ = ["AppleContainerBackend", "AppleContainerWorkspace"]CODE
LOWsrc/agentscope/workspace/_k8s/__init__.py12__all__ = ["K8sWorkspace", "K8sBackend"]CODE
LOWsrc/agentscope/workspace/_bubblewrap/__init__.py7__all__ = ["BubblewrapBackend", "BubblewrapWorkspace"]CODE
LOW…ntscope/workspace/_bubblewrap/_bubblewrap_workspace.py339 async def _setup_mcp_gateway(self) -> None:CODE
LOWsrc/agentscope/workspace/_opensandbox/__init__.py12__all__ = ["OpenSandboxWorkspace", "OpenSandboxBackend"]CODE
36 more matches not shown…
Modern AI Meta-Vocabulary27 hits · 87 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml113# ------------ RAG ------------COMMENT
MEDIUMpyproject.toml188 # RAG parser tests — used to generate PDF fixtures in-memoryCOMMENT
MEDIUMpyproject.toml214# The Alembic scaffolding for the SQL storage backend lives in theCOMMENT
MEDIUMtests/middleware_rag_test.py439 # embedding model isn't multimodal — the model only saw text.COMMENT
MEDIUMdocs/changelog.md89## RAGCOMMENT
MEDIUMexamples/rag/README.md1# RAG ExamplesCOMMENT
MEDIUMexamples/rag/integrate_with_agent.py177 # ---- Mode 2: agentic ----COMMENT
MEDIUMexamples/long_term_memory/mem0/README.md45# chat + embedding model. mem0 defaults for everything else.COMMENT
MEDIUMscripts/model_examples/README.md17├── openai_chat_multiagent.py # OpenAI Chat Completions – multi-agent conversationCODE
MEDIUMscripts/model_examples/deepseek_call.py30# Example 1: Simple user message (streaming, with chain-of-thought)COMMENT
MEDIUMsrc/agentscope/middleware/_rag.py303# Shared helpers — used by both the tool (agentic mode) and theCOMMENT
MEDIUMsrc/agentscope/middleware/_rag.py472 # Agent-driven search (agentic mode, the default)STRING
MEDIUM…leware/_longterm_memory/_agentic_memory/_middleware.py764 # Cap each file to avoid flooding the context window.COMMENT
MEDIUM…leware/_longterm_memory/_agentic_memory/_middleware.py777 # Truncate large files to avoid flooding the context window.COMMENT
MEDIUMsrc/agentscope/app/_service/_chat.py839 # (own embedding model + vector store), so the middleware canCOMMENT
MEDIUM…agentscope/model/_dashscope/_models/qwen3.6-flash.yaml25 # Max chain-of-thought is independent of max_tokens.COMMENT
MEDIUM…agentscope/model/_dashscope/_models/qwen3.7-flash.yaml25 # Max chain-of-thought is independent of max_tokens.COMMENT
MEDIUM…agentscope/model/_dashscope/_models/qwen3.5-flash.yaml25 # Max chain-of-thought is independent of max_tokens.COMMENT
MEDIUM…c/agentscope/model/_dashscope/_models/qwen3.8-max.yaml25 # Max chain-of-thought is 262144 tokens, independent of max_tokens.COMMENT
MEDIUM…agentscope/model/_moonshot/_models/kimi-k2.7-code.yaml15# which shares the same context window.COMMENT
MEDIUM…/model/_moonshot/_models/kimi-k2.7-code-highspeed.yaml15# which shares the same context window.COMMENT
MEDIUM…ope/model/_xai/_models/grok-4.20-multi-agent-0309.yaml14# the context window, matching the ratio of providers that do publish one.COMMENT
MEDIUM…e/model/_xai/_models/grok-4.20-0309-non-reasoning.yaml13# the context window, matching the ratio of providers that do publish one.COMMENT
MEDIUM…scope/model/_xai/_models/grok-4.20-0309-reasoning.yaml14# the context window, matching the ratio of providers that do publish one.COMMENT
MEDIUMsrc/agentscope/model/_xai/_models/grok-build-0.1.yaml14# the context window, matching the ratio of providers that do publish one.COMMENT
MEDIUMsrc/agentscope/model/_xai/_models/grok-4.3.yaml16# the context window, matching the ratio of providers that do publish one.COMMENT
MEDIUMsrc/agentscope/model/_xai/_models/grok-4.5.yaml16# the context window, matching the ratio of providers that do publish one.COMMENT
Verbosity Indicators49 hits · 59 pts
SeverityFileLineSnippetContext
LOWtests/middleware_budget_test.py382 # Step 1: model produces a tool call that requires confirmationCOMMENT
LOWtests/service_agent_interrupt_test.py207 # Step 1: Publish interrupt (simulating API endpoint)COMMENT
LOWtests/service_agent_interrupt_test.py216 # Step 2: Verify agent was interruptedCOMMENT
LOWtests/service_agent_interrupt_test.py223 # Step 3: Verify chat-run task is doneCOMMENT
LOWsrc/agentscope/agent/_agent.py974 # Step 1: Checking agent input:COMMENT
LOWsrc/agentscope/agent/_agent.py981 # Step 2: Handling agent event if applicableCOMMENT
LOWsrc/agentscope/agent/_agent.py1015 # Step 3: Enter the reasoning-acting loop until reaching max_itersCOMMENT
LOWsrc/agentscope/agent/_agent.py1255 # Step 1: Analyze the current contextCOMMENT
LOWsrc/agentscope/agent/_agent.py1312 # Step 2: Check Time InjectionCOMMENT
LOWsrc/agentscope/agent/_agent.py1370 # Step 3: Check Plan TasksCOMMENT
LOWsrc/agentscope/agent/_agent.py1383 # Step 4: Context LengthCOMMENT
LOWsrc/agentscope/agent/_agent.py2284 # Step 1: Check and parse the tool call input:COMMENT
LOWsrc/agentscope/agent/_agent.py2326 # Step 2: Check permission by toolkit and permission engineCOMMENT
LOWsrc/agentscope/agent/_agent.py2335 # Step 3: Handle the permission and execute the tool call if allowedCOMMENT
LOWsrc/agentscope/agent/_agent.py2428 # Step 4: Delegate raw execution to _acting (middleware hook point)COMMENT
LOWsrc/agentscope/agent/_agent.py2444 # Step 5: Truncate the tool result if exceedCOMMENT
LOWsrc/agentscope/agent/_agent.py3256 # Step 1: Check executable and awaiting tool callsCOMMENT
LOWsrc/agentscope/agent/_agent.py3299 # Step 2: Check structured output if no blocked tool callsCOMMENT
LOWsrc/agentscope/agent/_agent.py3402 # Step 3: Exit with the final message, or continue reasoningCOMMENT
LOWsrc/agentscope/permission/_engine.py150 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py157 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py168 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py175 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py194 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py201 # Step 6: Mode fallback → ASK the userCOMMENT
LOWsrc/agentscope/permission/_engine.py248 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py255 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py266 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py273 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py280 # Step 5: Allow rulesCOMMENT
LOWsrc/agentscope/permission/_engine.py286 # Step 6: Mode fallback → DENY (invocation is not read-only)COMMENT
LOWsrc/agentscope/permission/_engine.py330 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py337 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py348 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py355 # Step 4: Tool's own check_permissions (working-directory auto-allowCOMMENT
LOWsrc/agentscope/permission/_engine.py375 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py382 # Step 6: Mode fallback → ASK the userCOMMENT
LOWsrc/agentscope/permission/_engine.py439 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py446 # Step 2: Ask rules → ASK (honor explicit user intent to be prompted)COMMENT
LOWsrc/agentscope/permission/_engine.py457 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py464 # Step 4: Tool's own check_permissions — ALLOW / DENY returned;COMMENT
LOWsrc/agentscope/permission/_engine.py476 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py483 # Step 6: Mode fallback → ALLOW everything else (BYPASS)COMMENT
LOWsrc/agentscope/permission/_engine.py530 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py537 # Step 2: Ask rules → DENY (converted; no user available to answer)COMMENT
LOWsrc/agentscope/permission/_engine.py548 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py555 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py574 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py581 # Step 6: Mode fallback → DENY (no user available to confirm)COMMENT
Structural Annotation Overuse49 hits · 59 pts
SeverityFileLineSnippetContext
LOWtests/middleware_budget_test.py382 # Step 1: model produces a tool call that requires confirmationCOMMENT
LOWtests/service_agent_interrupt_test.py207 # Step 1: Publish interrupt (simulating API endpoint)COMMENT
LOWtests/service_agent_interrupt_test.py216 # Step 2: Verify agent was interruptedCOMMENT
LOWtests/service_agent_interrupt_test.py223 # Step 3: Verify chat-run task is doneCOMMENT
LOWsrc/agentscope/agent/_agent.py974 # Step 1: Checking agent input:COMMENT
LOWsrc/agentscope/agent/_agent.py981 # Step 2: Handling agent event if applicableCOMMENT
LOWsrc/agentscope/agent/_agent.py1015 # Step 3: Enter the reasoning-acting loop until reaching max_itersCOMMENT
LOWsrc/agentscope/agent/_agent.py1255 # Step 1: Analyze the current contextCOMMENT
LOWsrc/agentscope/agent/_agent.py1312 # Step 2: Check Time InjectionCOMMENT
LOWsrc/agentscope/agent/_agent.py1370 # Step 3: Check Plan TasksCOMMENT
LOWsrc/agentscope/agent/_agent.py1383 # Step 4: Context LengthCOMMENT
LOWsrc/agentscope/agent/_agent.py2284 # Step 1: Check and parse the tool call input:COMMENT
LOWsrc/agentscope/agent/_agent.py2326 # Step 2: Check permission by toolkit and permission engineCOMMENT
LOWsrc/agentscope/agent/_agent.py2335 # Step 3: Handle the permission and execute the tool call if allowedCOMMENT
LOWsrc/agentscope/agent/_agent.py2428 # Step 4: Delegate raw execution to _acting (middleware hook point)COMMENT
LOWsrc/agentscope/agent/_agent.py2444 # Step 5: Truncate the tool result if exceedCOMMENT
LOWsrc/agentscope/agent/_agent.py3256 # Step 1: Check executable and awaiting tool callsCOMMENT
LOWsrc/agentscope/agent/_agent.py3299 # Step 2: Check structured output if no blocked tool callsCOMMENT
LOWsrc/agentscope/agent/_agent.py3402 # Step 3: Exit with the final message, or continue reasoningCOMMENT
LOWsrc/agentscope/permission/_engine.py150 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py157 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py168 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py175 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py194 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py201 # Step 6: Mode fallback → ASK the userCOMMENT
LOWsrc/agentscope/permission/_engine.py248 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py255 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py266 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py273 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py280 # Step 5: Allow rulesCOMMENT
LOWsrc/agentscope/permission/_engine.py286 # Step 6: Mode fallback → DENY (invocation is not read-only)COMMENT
LOWsrc/agentscope/permission/_engine.py330 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py337 # Step 2: Ask rules → ASK (with suggestions)COMMENT
LOWsrc/agentscope/permission/_engine.py348 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py355 # Step 4: Tool's own check_permissions (working-directory auto-allowCOMMENT
LOWsrc/agentscope/permission/_engine.py375 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py382 # Step 6: Mode fallback → ASK the userCOMMENT
LOWsrc/agentscope/permission/_engine.py439 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py446 # Step 2: Ask rules → ASK (honor explicit user intent to be prompted)COMMENT
LOWsrc/agentscope/permission/_engine.py457 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py464 # Step 4: Tool's own check_permissions — ALLOW / DENY returned;COMMENT
LOWsrc/agentscope/permission/_engine.py476 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py483 # Step 6: Mode fallback → ALLOW everything else (BYPASS)COMMENT
LOWsrc/agentscope/permission/_engine.py530 # Step 1: Deny rules — highest priority (all modes)COMMENT
LOWsrc/agentscope/permission/_engine.py537 # Step 2: Ask rules → DENY (converted; no user available to answer)COMMENT
LOWsrc/agentscope/permission/_engine.py548 # Step 3: Read-only fast path → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py555 # Step 4: Tool's own check_permissionsCOMMENT
LOWsrc/agentscope/permission/_engine.py574 # Step 5: Allow rules → ALLOWCOMMENT
LOWsrc/agentscope/permission/_engine.py581 # Step 6: Mode fallback → DENY (no user available to confirm)COMMENT
Redundant / Tautological Comments35 hits · 53 pts
SeverityFileLineSnippetContext
LOWtests/builtin_file_cache_test.py147 # Read the file to cache itCOMMENT
LOWtests/builtin_file_cache_test.py190 # Read the file to cache itCOMMENT
LOWtests/builtin_file_cache_test.py310 # Read the fileCOMMENT
LOWtests/builtin_file_cache_test.py92 # Read the file firstCOMMENT
LOWtests/builtin_file_cache_test.py120 # Read the file firstCOMMENT
LOWtests/builtin_edit_test.py86 # Write file with duplicate contentCOMMENT
LOWtests/builtin_edit_test.py101 # Write file with duplicate contentCOMMENT
LOWsrc/agentscope/skill/_local_loader.py45 # Check if SKILL.md existsCOMMENT
LOWsrc/agentscope/skill/_local_loader.py112 # Check if directory existsCOMMENT
LOWsrc/agentscope/workspace/_local_workspace.py349 # Check if SKILL.md existsCOMMENT
LOW…workspace/_applecontainer/_applecontainer_workspace.py312 # Check if the image is already available locally.COMMENT
LOW…workspace/_applecontainer/_applecontainer_workspace.py395 # Check if the container is already running.COMMENT
LOWsrc/agentscope/embedding/_dashscope/_model.py270 # Check if adding this item would exceed any limit.COMMENT
LOWsrc/agentscope/agent/_agent.py2289 # Check if the tool is availableCOMMENT
LOWsrc/agentscope/agent/_agent.py1543 # Check if res is an async generator (streaming response)COMMENT
LOWsrc/agentscope/agent/_agent.py2759 # Check if the reserved part has tool results that don't have theCOMMENT
LOWsrc/agentscope/state/_state.py59 # Check if cache is still validCOMMENT
LOWsrc/agentscope/formatter/_gemini_formatter.py49 # Check if media type is supportedCOMMENT
LOWsrc/agentscope/formatter/_anthropic_formatter.py295 # Check if media type is supportedCOMMENT
LOWsrc/agentscope/formatter/_ollama_formatter.py49 # Check if media type is supportedCOMMENT
LOWsrc/agentscope/tool/_base.py437 # Check if filename matches dangerous files (case-insensitive)COMMENT
LOWsrc/agentscope/tool/_base.py444 # Check if any path segment matches dangerous directoriesCOMMENT
LOWsrc/agentscope/tool/_types.py131 # Check if the two definitions are from the same BaseModelCOMMENT
LOWsrc/agentscope/tool/_response.py156 # Check if the last block is also a TextBlockCOMMENT
LOWsrc/agentscope/tool/_builtin/_read.py500 # Read file content via backendCOMMENT
LOWsrc/agentscope/tool/_builtin/_write.py252 # Check if file exists, it must be read first if it existsCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py233 # Check if base command is in safe commandsCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py612 # Check if environment variables are safeCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py616 # Check if the command is a safe command that doesn't need permissionCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py179 # Check if it's a compound commandCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py217 # Check if it starts with a read-only prefixCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py332 # Check if this is a file-manipulating commandCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash_parser.py910 # Check if this node is a dangerous typeCOMMENT
LOWsrc/agentscope/tool/_builtin/_bash.py425 # Check if pattern is a prefix pattern (ends with :*)STRING
LOWsrc/agentscope/tool/_builtin/_bash.py430 # Check if pattern has unescaped wildcardsSTRING
Hallucination Indicators2 hits · 30 pts
SeverityFileLineSnippetContext
CRITICALtests/tts_gemini_test.py139 self.mock_client.aio.models.generate_content.assert_not_called()CODE
CRITICALtests/tts_gemini_test.py149 self.mock_client.aio.models.generate_content.assert_not_called()CODE
Over-Commented Block26 hits · 24 pts
SeverityFileLineSnippetContext
LOWpyproject.toml121 "pandas",COMMENT
LOWexamples/long_term_memory/mem0/oss_demo.py201 )COMMENT
LOWexamples/long_term_memory/mem0/oss_demo.py221 #COMMENT
LOWexamples/long_term_memory/reme/reme_demo.py261 # One middleware, shared across both sessions. ReMe is embeddedCOMMENT
LOWexamples/web_ui/frontend/src/vite-env.d.ts1/// <reference types="vite/client" />COMMENT
LOW…ntend/src/components/dialog/WorkingDirectoryDialog.tsx101 // The answer, and the single source of truth: whatever the inputCOMMENT
LOWexamples/web_ui/frontend/src/hooks/useMessages.ts301 }COMMENT
LOW.github/workflows/github-monitor.yml1# ─────────────────────────────────────────────────────────────────────────────COMMENT
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py301COMMENT
LOWsrc/agentscope/app/_bus_ops.py141# Three helpers implementing one protocol, whose only job is to makeCOMMENT
LOWsrc/agentscope/app/_lifespan.py181 )COMMENT
LOWsrc/agentscope/app/message_bus/_base.py501 Registry key to delete.COMMENT
LOWsrc/agentscope/app/_router/_chat.py101 # ------------------------------------------------------------------COMMENT
LOWsrc/agentscope/app/_service/_chat.py661 # them, and may happen before either is resolved.COMMENT
LOWsrc/agentscope/app/_service/_index_worker.py421 )COMMENT
LOWsrc/agentscope/app/storage/_sql/_storage.py401 ).scalar_one()COMMENT
LOWsrc/agentscope/app/storage/_sql/_alembic/alembic.ini1# Alembic configuration for the AgentScope SQL storage backend.COMMENT
LOWsrc/agentscope/app/_tool/_agent_invite.py361 # rules are anchored to the leader's workspace, which theCOMMENT
LOWsrc/agentscope/app/_tool/_agent_create.py41 system_prompt_template=_DEFAULT_SYSTEM_PROMPT_TEMPLATE,COMMENT
LOWsrc/agentscope/workspace/_gateway_shim.py21"""COMMENT
LOWsrc/agentscope/workspace/_opensandbox/_constants.py21#: Per-command timeout for first-time bootstrap shell commands.COMMENT
LOWsrc/agentscope/permission/_engine.py261 tool_input,COMMENT
LOWsrc/agentscope/tool/_constants.py61 "fdisk",COMMENT
LOWsrc/agentscope/tool/_constants.py101#COMMENT
LOWsrc/agentscope/tool/_builtin/_backend.py141 Subclasses must implement three abstract primitives — ``exec_shell``,COMMENT
LOWsrc/agentscope/tool/_builtin/_backend.py161 #: .. important::COMMENT
Fake / Example Data24 hits · 24 pts
SeverityFileLineSnippetContext
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json174 "placeholder": "我的智能体"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json217 "placeholder": "简要描述此智能体的专长;允许被邀请时必填。"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json237 "placeholder": "会话名称"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json258 "placeholder": "我的知识库"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json262 "placeholder": "描述知识库用途"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json292 "placeholder": "我的知识库"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json296 "placeholder": "描述知识库用途"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json420 "placeholder": "选择模型",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json431 "placeholder": "选择 Embedding 模型",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json440 "placeholder": "选择分块策略",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json460 "placeholder": "选择维度",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/zh.json464 "placeholder": "选择权限模式",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json174 "placeholder": "My agent"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json217 "placeholder": "Briefly describe this agent's expertise; required when invitable is on."CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json237 "placeholder": "Session name"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json258 "placeholder": "My knowledge base"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json262 "placeholder": "Describe what this knowledge base is for."CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json292 "placeholder": "My knowledge base"CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json296 "placeholder": "Describe what this knowledge base is for."CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json420 "placeholder": "Select a model",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json431 "placeholder": "Select an embedding model",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json440 "placeholder": "Select a chunker",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json460 "placeholder": "Select a dimension",CODE
LOWexamples/web_ui/frontend/src/i18n/locales/en.json464 "placeholder": "Select permission mode",CODE
AI Structural Patterns24 hits · 23 pts
SeverityFileLineSnippetContext
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py143CODE
LOWsrc/agentscope/app/_app.py78CODE
LOWsrc/agentscope/app/_router/_knowledge_base.py312CODE
LOWsrc/agentscope/app/_router/_knowledge_base.py465CODE
LOW…ope/app/_manager/_scheduler/_tools/_schedule_create.py163CODE
LOW…ope/app/workspace_manager/_docker_workspace_manager.py65CODE
LOW…app/workspace_manager/_bubblewrap_workspace_manager.py40CODE
LOW…workspace_manager/_applecontainer_workspace_manager.py50CODE
LOW…pp/workspace_manager/_opensandbox_workspace_manager.py57CODE
LOW…tscope/app/workspace_manager/_k8s_workspace_manager.py43CODE
LOW…pe/app/workspace_manager/_daytona_workspace_manager.py48CODE
LOW…tscope/app/workspace_manager/_e2b_workspace_manager.py66CODE
LOWsrc/agentscope/app/hub/_skill/_claw_hub.py86CODE
LOWsrc/agentscope/workspace/_e2b/_e2b_workspace.py75CODE
LOWsrc/agentscope/workspace/_daytona/_daytona_workspace.py79CODE
LOW…workspace/_applecontainer/_applecontainer_workspace.py89CODE
LOWsrc/agentscope/workspace/_k8s/_k8s_workspace.py60CODE
LOW…ntscope/workspace/_bubblewrap/_bubblewrap_workspace.py77CODE
LOW…scope/workspace/_opensandbox/_opensandbox_workspace.py49CODE
LOWsrc/agentscope/workspace/_docker/_docker_workspace.py52CODE
LOWsrc/agentscope/agent/_agent.py115CODE
LOWsrc/agentscope/model/_ollama/_model.py56CODE
LOWsrc/agentscope/model/_openai_chat/_model.py111CODE
LOWsrc/agentscope/tool/_builtin/_grep.py320CODE
Dead Code7 hits · 14 pts
SeverityFileLineSnippetContext
MEDIUMtests/tool_middleware_test.py331CODE
MEDIUMtests/service_inbox_middleware_test.py208CODE
MEDIUMtests/service_inbox_middleware_test.py114CODE
MEDIUMtests/service_inbox_middleware_test.py125CODE
MEDIUMsrc/agentscope/middleware/_base.py99CODE
MEDIUMsrc/agentscope/middleware/_base.py122CODE
MEDIUMsrc/agentscope/middleware/_base.py168CODE
AI Slop Vocabulary1 hit · 2 pts
SeverityFileLineSnippetContext
LOW…scope/middleware/_longterm_memory/_mem0/_middleware.py296 # tools — so just pass through.COMMENT
Overly Generic Function Names1 hit · 0 pts
SeverityFileLineSnippetContext
LOWtests/workspace_local_test.py605 {"helper.py": "def helper():\n return 42\n"},STRING