AI Slop Code RIsk Monitor

WenyuChiou/awesome-agentic-ai-zh

A trilingual (繁中 / English / 简中) learning roadmap for agentic AI: from LLM basics to multi-agent systems, with 240+ curated resources and hands-on examples. 中文 AI agent 學習地圖。

21.0 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for WenyuChiou/awesome-agentic-ai-zh, a Python project with 7,516 GitHub stars. SynthScan examined 112,077 lines of code across 541 source files, recording 1622 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 21.0 (Elevated pattern signal); it is not an authorship estimate.

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

21.0
Adjusted Signal
21.0
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
7.5K
Stars
Python
Language
112.1K
Lines of Code
541
Files
1.6K
Pattern Hits
2026-10-12
Scan Date
0.08
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 56.9/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 8.6/100 · LOW

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

Agent Over-Engineering Ratio 42.0/100 · MEDIUM

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

PR Review Velocity Impact 67.5/100 · HIGH

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

What These Metrics Mean

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

Pattern-Signal History

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

Severity Breakdown

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

CRITICAL 0HIGH 45MEDIUM 338LOW 1239

Directory Score Breakdown

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

Pattern Findings

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

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

Hyper-Verbose Identifiers915 hits · 955 pts
SeverityFileLineSnippetContext
LOWexamples/stage-3/06-schema-design/test_anthropic.py35def test_bad_schema_can_select_wrong_tool():CODE
LOWexamples/stage-3/06-schema-design/test_anthropic.py47def test_good_schema_selects_temperature_tool():CODE
LOWexamples/stage-3/06-schema-design/test_anthropic.py59def test_good_schema_has_required_fields_and_enum():CODE
LOWexamples/stage-3/06-schema-design/test_anthropic.py68def test_application_rejects_untrusted_calls_for_both_schemas():CODE
LOWexamples/stage-3/06-schema-design/test_anthropic.py95def test_multiple_calls_are_not_partially_executed():CODE
LOWexamples/stage-3/06-schema-design/test.py41def test_bad_schema_can_select_wrong_tool():CODE
LOWexamples/stage-3/06-schema-design/test.py54def test_good_schema_selects_temperature_tool():CODE
LOWexamples/stage-3/06-schema-design/test.py66def test_good_schema_has_required_fields_and_enum():CODE
LOWexamples/stage-3/06-schema-design/test.py77def test_application_rejects_untrusted_calls_for_both_schemas():CODE
LOWexamples/stage-3/06-schema-design/test.py104def test_multiple_calls_are_not_partially_executed():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py44def test_tool_spec_contains_three_tools():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py49def test_calculator_rejects_unsafe_expressions():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py59def test_llm_selects_calculator():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py66def test_llm_selects_calendar():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py73def test_llm_uses_search_instead_of_calendar_for_news():CODE
LOW⚡…ples/stage-3/02-multi-tool-selection/test_anthropic.py80def test_untrusted_arguments_are_rejected():CODE
LOW…ples/stage-3/02-multi-tool-selection/test_anthropic.py95def test_multiple_calls_are_not_silently_partially_executed():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py53def test_tool_spec_contains_three_tools():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py60def test_calculator_rejects_unsafe_expressions():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py70def test_llm_selects_calculator():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py78def test_llm_selects_calendar():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py86def test_llm_uses_search_instead_of_calendar_for_news():CODE
LOW⚡examples/stage-3/02-multi-tool-selection/test.py94def test_no_tool_call_returns_none():CODE
LOWexamples/stage-3/02-multi-tool-selection/test.py105def test_untrusted_arguments_are_rejected():CODE
LOWexamples/stage-3/02-multi-tool-selection/test.py120def test_multiple_calls_are_not_silently_partially_executed():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py35def test_tools_handle_math_edges():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py43def test_population_ratio_uses_four_tool_steps():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py59def test_zero_population_path_returns_an_error():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py74def test_non_finite_and_oversized_numbers_are_rejected():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py86def test_invalid_call_is_marked_as_error():CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py106def test_max_tokens_is_not_a_final_answer():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py40def test_tools_handle_math_edges():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py49def test_population_ratio_uses_four_tool_steps():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py66def test_zero_population_path_returns_an_error():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py82def test_non_finite_and_oversized_numbers_are_rejected():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py95def test_react_loop_respects_max_iter():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py109def test_invalid_tool_calls_are_returned_as_data():CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py124def test_length_is_not_a_final_answer():CODE
LOWexamples/stage-3/01-function-calling/test_anthropic.py27def test_valid_call_completes_round_trip():CODE
LOWexamples/stage-3/01-function-calling/test_anthropic.py39def test_invalid_input_becomes_an_error_result():CODE
LOWexamples/stage-3/01-function-calling/test_anthropic.py50def test_unknown_tool_is_rejected():CODE
LOW⚡examples/stage-3/01-function-calling/test.py33def test_valid_call_completes_round_trip():CODE
LOW⚡examples/stage-3/01-function-calling/test.py43def test_invalid_json_never_runs_tool():CODE
LOW⚡examples/stage-3/01-function-calling/test.py48def test_extra_or_wrong_fields_are_rejected():CODE
LOW⚡examples/stage-3/01-function-calling/test.py55def test_unknown_tool_is_rejected():CODE
LOWexamples/stage-3/05-error-handling/test_anthropic.py34def test_fetch_weather_failure_plan():CODE
LOWexamples/stage-3/05-error-handling/test_anthropic.py58def test_repeated_errors_can_end_gracefully():CODE
LOWexamples/stage-3/05-error-handling/test_anthropic.py72def test_failed_result_is_marked_and_correlated():CODE
LOWexamples/stage-3/05-error-handling/test_anthropic.py85def test_invalid_input_and_terminal_reason_are_safe():CODE
LOWexamples/stage-3/05-error-handling/test.py41def test_fetch_weather_failure_plan():CODE
LOWexamples/stage-3/05-error-handling/test.py67def test_repeated_errors_can_end_gracefully():CODE
LOWexamples/stage-3/05-error-handling/test.py82def test_unknown_tool_returns_structured_error():CODE
LOWexamples/stage-3/05-error-handling/test.py95def test_malformed_arguments_return_structured_error():CODE
LOWexamples/stage-3/05-error-handling/test.py102def test_length_is_not_a_final_answer():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py49def test_calculator_rejects_unsafe_expressions():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py66def test_react_loop_single_tool_call():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py90def test_react_loop_multi_step():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py113def test_react_loop_respects_max_iter():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py132def test_invalid_tool_call_is_marked_as_error():CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py152def test_non_end_turn_is_not_a_final_answer():CODE
855 more matches not shown…
Modern AI Meta-Vocabulary332 hits · 836 pts
SeverityFileLineSnippetContext
MEDIUMROADMAP.en.md76Use [Discussions](https://github.com/WenyuChiou/awesome-agentic-ai-zh/discussions) for ideas; keep issues for defects, sCODE
MEDIUM⚡README.en.md9# awesome-agentic-ai-zhCOMMENT
MEDIUM⚡README.en.md19![GitHub stars](https://img.shields.io/github/stars/WenyuChiou/awesome-agentic-ai-zh?style=flat&logo=github)CODE
MEDIUM⚡README.en.md20[![Docs site](https://img.shields.io/badge/線上閱讀-立即開始-2ea44f?style=flat)](https://wenyuchiou.github.io/awesome-agentic-aiCODE
MEDIUM⚡README.en.md24> 📱 On a phone, read the [docs site](https://wenyuchiou.github.io/awesome-agentic-ai-zh/).CODE
MEDIUMREADME.en.md56git clone https://github.com/WenyuChiou/awesome-agentic-ai-zh.gitCODE
MEDIUMREADME.en.md170- Wrong content, broken links, or stale information: open an [Issue](https://github.com/WenyuChiou/awesome-agentic-ai-zhCODE
MEDIUMREADME.en.md193[![Contributors](https://contrib.rocks/image?repo=WenyuChiou/awesome-agentic-ai-zh)](https://github.com/WenyuChiou/awesoCODE
MEDIUMREADME.en.md200 url = {https://github.com/WenyuChiou/awesome-agentic-ai-zh}CODE
MEDIUMmkdocs.yml3site_url: https://wenyuchiou.github.io/awesome-agentic-ai-zh/CODE
MEDIUMmkdocs.yml4repo_url: https://github.com/WenyuChiou/awesome-agentic-ai-zhCODE
MEDIUMmkdocs.yml163 - 書本版: https://wenyuchiou.github.io/awesome-agentic-ai-zh/book/CODE
MEDIUMCAPSTONE.zh-Hans.md124. 想要反馈?把成品 + 自评贴到 [Discussion](https://github.com/WenyuChiou/awesome-agentic-ai-zh/discussions) 找人 peer review(可选,不强制)。CODE
MEDIUMCAPSTONE.zh-Hans.md97- 贴到 [Discussion](https://github.com/WenyuChiou/awesome-agentic-ai-zh/discussions) 的对应分类,附成品链接 + 你的 rubric 自评。CODE
MEDIUMCAPSTONE.en.md124. Want feedback? Post the artifact + your self-assessment to [Discussion](https://github.com/WenyuChiou/awesome-agenticCODE
MEDIUMCAPSTONE.en.md97- Post to the matching [Discussion](https://github.com/WenyuChiou/awesome-agentic-ai-zh/discussions) category with a linCODE
MEDIUM⚡CHANGELOG.md307- **chore** · 依 ★1000 門檻婉拒 [#115](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/115)、[#116](https://github.CODE
MEDIUM⚡CHANGELOG.md307- **chore** · 依 ★1000 門檻婉拒 [#115](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/115)、[#116](https://github.CODE
MEDIUM⚡CHANGELOG.md316- **chore** · 婉拒 [#115](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/115) 與 [#116](https://github.com/WenyCODE
MEDIUM⚡CHANGELOG.md316- **chore** · 婉拒 [#115](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/115) 與 [#116](https://github.com/WenyCODE
MEDIUM⚡CHANGELOG.md380- **refactor** · **七支腳本各自寫了一套「哪幾行是程式碼」,現在全部共用一份([#97](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/97))**。CODE
MEDIUM⚡CHANGELOG.md380- **refactor** · **七支腳本各自寫了一套「哪幾行是程式碼」,現在全部共用一份([#97](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/97))**。CODE
MEDIUM⚡CHANGELOG.md387- **fix** · **有一頁的四個標題在網站上是以「程式碼」的樣子呈現的,三個語系都一樣([#95](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/95))**。CODE
MEDIUM⚡CHANGELOG.md387- **fix** · **有一頁的四個標題在網站上是以「程式碼」的樣子呈現的,三個語系都一樣([#95](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/95))**。CODE
MEDIUM⚡CHANGELOG.md389- **chore** · **但要講清楚:這只修了六個之中的一個,不是「根因修好了」**。`scripts/` 底下還有五支各自寫了同一套「看到 fence 就翻轉」的邏輯——`check-hans-chars`、`check-imageCODE
MEDIUM⚡CHANGELOG.md389- **chore** · **但要講清楚:這只修了六個之中的一個,不是「根因修好了」**。`scripts/` 底下還有五支各自寫了同一套「看到 fence 就翻轉」的邏輯——`check-hans-chars`、`check-imageCODE
MEDIUM⚡CHANGELOG.md393- **chore** · **上一批說的「4344 個真實標題」在這個 commit 仍然是 4344,但「沒有變」是巧合,不是穩定**。舊解析器把那 12 個被吞掉的標題**算進去了**(它以為那些行不在 code block 裡),rCODE
MEDIUM⚡CHANGELOG.md393- **chore** · **上一批說的「4344 個真實標題」在這個 commit 仍然是 4344,但「沒有變」是巧合,不是穩定**。舊解析器把那 12 個被吞掉的標題**算進去了**(它以為那些行不在 code block 裡),rCODE
MEDIUM⚡CHANGELOG.md398- **fix** · **網站上有 151 個錨點連結是死的,而 gate 一直是綠的([#93](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/93))**。`scCODE
MEDIUM⚡CHANGELOG.md398- **fix** · **網站上有 151 個錨點連結是死的,而 gate 一直是綠的([#93](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/93))**。`scCODE
MEDIUM⚡CHANGELOG.md789- **i18n** · `*.zh-CN.md` → `*.zh-Hans.md` migration per BCP 47 / W3C compliance (`21b653d`). 25 files renamed, ~270 marCODE
MEDIUM⚡CHANGELOG.md789- **i18n** · `*.zh-CN.md` → `*.zh-Hans.md` migration per BCP 47 / W3C compliance (`21b653d`). 25 files renamed, ~270 marCODE
MEDIUM⚡CHANGELOG.md794- **outreach** · Day 1 PR sent: `punkpeye/awesome-mcp-servers#6135`, adding awesome-agentic-ai-zh to `## Tutorials` (`a0CODE
MEDIUMCHANGELOG.md341- **test** · **`check-links.py` 的 `main()` 從頭到尾沒有被測過,而判決就住在那裡([#102](https://github.com/WenyuChiou/awesome-agentic-ai-zhCODE
MEDIUMCHANGELOG.md341- **test** · **`check-links.py` 的 `main()` 從頭到尾沒有被測過,而判決就住在那裡([#102](https://github.com/WenyuChiou/awesome-agentic-ai-zhCODE
MEDIUMCHANGELOG.md358- **fix** · **`check-links.py` 報 14 個失敗,只有 5 個是真的([#94](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/94))*CODE
MEDIUMCHANGELOG.md358- **fix** · **`check-links.py` 報 14 個失敗,只有 5 個是真的([#94](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues/94))*CODE
MEDIUMCHANGELOG.md639- **content** · Stage 2 Exercise 2 (Few-Shot) now makes a **fair** zero-shot vs few-shot comparison (resolves #62, reporCODE
MEDIUMCHANGELOG.md820- Each commit SHA is clickable: `https://github.com/WenyuChiou/awesome-agentic-ai-zh/commit/<sha>`CODE
MEDIUMPROGRESS.zh-Hans.md13> 不确定选哪条?看 [`README.zh-Hans.md`](README.zh-Hans.md) 的双轨说明,或 [`branches/DESIGN.md`](branches/DESIGN.md)。卡住开 [Discussion](CODE
MEDIUM⚡README.zh-Hans.md9# awesome-agentic-ai-zhCOMMENT
MEDIUM⚡README.zh-Hans.md19![GitHub stars](https://img.shields.io/github/stars/WenyuChiou/awesome-agentic-ai-zh?style=flat&logo=github)CODE
MEDIUM⚡README.zh-Hans.md20[![在线文档站](https://img.shields.io/badge/線上閱讀-立即開始-2ea44f?style=flat)](https://wenyuchiou.github.io/awesome-agentic-ai-zh/CODE
MEDIUM⚡README.zh-Hans.md24> 📱 手机阅读请使用[在线文档站](https://wenyuchiou.github.io/awesome-agentic-ai-zh/)。CODE
MEDIUMREADME.zh-Hans.md56git clone https://github.com/WenyuChiou/awesome-agentic-ai-zh.gitCODE
MEDIUMREADME.zh-Hans.md170- 内容错误、失效链接或过时信息:请开 [Issue](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues)。CODE
MEDIUMREADME.zh-Hans.md193[![Contributors](https://contrib.rocks/image?repo=WenyuChiou/awesome-agentic-ai-zh)](https://github.com/WenyuChiou/awesoCODE
MEDIUMREADME.zh-Hans.md200 url = {https://github.com/WenyuChiou/awesome-agentic-ai-zh}CODE
MEDIUMPROGRESS.md13> 不確定選哪條?看 [`README.md`](README.md) 的雙軌說明,或 [`branches/DESIGN.md`](branches/DESIGN.md)。卡住開 [Discussion](https://github.cCODE
MEDIUM⚡README.md9# awesome-agentic-ai-zhCOMMENT
MEDIUM⚡README.md19![GitHub stars](https://img.shields.io/github/stars/WenyuChiou/awesome-agentic-ai-zh?style=flat&logo=github)CODE
MEDIUM⚡README.md20[![線上文件站](https://img.shields.io/badge/線上閱讀-立即開始-2ea44f?style=flat)](https://wenyuchiou.github.io/awesome-agentic-ai-zh/CODE
MEDIUM⚡README.md24> 📱 手機閱讀請使用[線上文件站](https://wenyuchiou.github.io/awesome-agentic-ai-zh/)。CODE
MEDIUMREADME.md56git clone https://github.com/WenyuChiou/awesome-agentic-ai-zh.gitCODE
MEDIUMREADME.md170- 內容錯誤、失效連結或過時資訊:請開 [Issue](https://github.com/WenyuChiou/awesome-agentic-ai-zh/issues)。CODE
MEDIUMREADME.md193[![Contributors](https://contrib.rocks/image?repo=WenyuChiou/awesome-agentic-ai-zh)](https://github.com/WenyuChiou/awesoCODE
MEDIUMREADME.md200 url = {https://github.com/WenyuChiou/awesome-agentic-ai-zh}CODE
MEDIUMROADMAP.md78要提想法請開 [Discussion](https://github.com/WenyuChiou/awesome-agentic-ai-zh/discussions);issue 留給缺陷、過時資訊或明確的新資源。CODE
MEDIUM⚡CONTRIBUTORS.md59| [@scott0127](https://github.com/scott0127) | **Stage 6 RAG 教材** — chunking strategies guide ([#2](https://github.com/WCODE
MEDIUM⚡CONTRIBUTORS.md59| [@scott0127](https://github.com/scott0127) | **Stage 6 RAG 教材** — chunking strategies guide ([#2](https://github.com/WCODE
272 more matches not shown…
Unused Imports190 hits · 186 pts
SeverityFileLineSnippetContext
LOWexamples/stage-3/06-schema-design/test_anthropic.py10CODE
LOW…ples/stage-3/06-schema-design/starter_bad_anthropic.py15CODE
LOWexamples/stage-3/06-schema-design/starter_good.py13CODE
LOWexamples/stage-3/06-schema-design/test.py14CODE
LOW…les/stage-3/06-schema-design/starter_good_anthropic.py15CODE
LOWexamples/stage-3/06-schema-design/starter_bad.py13CODE
LOW…ples/stage-3/02-multi-tool-selection/test_anthropic.py10CODE
LOW…s/stage-3/02-multi-tool-selection/starter_anthropic.py15CODE
LOWexamples/stage-3/02-multi-tool-selection/test.py14CODE
LOWexamples/stage-3/02-multi-tool-selection/starter.py19CODE
LOW…ples/stage-3/04-multi-step-reasoning/test_anthropic.py10CODE
LOW…s/stage-3/04-multi-step-reasoning/starter_anthropic.py15CODE
LOWexamples/stage-3/04-multi-step-reasoning/test.py14CODE
LOWexamples/stage-3/04-multi-step-reasoning/starter.py21CODE
LOWexamples/stage-3/01-function-calling/test_anthropic.py3CODE
LOW…mples/stage-3/01-function-calling/starter_anthropic.py11CODE
LOWexamples/stage-3/01-function-calling/test.py3CODE
LOWexamples/stage-3/01-function-calling/starter.py11CODE
LOWexamples/stage-3/05-error-handling/test_anthropic.py10CODE
LOWexamples/stage-3/05-error-handling/starter_anthropic.py16CODE
LOWexamples/stage-3/05-error-handling/test.py15CODE
LOWexamples/stage-3/05-error-handling/starter.py22CODE
LOW…amples/stage-3/03-react-from-scratch/test_anthropic.py13CODE
LOW…les/stage-3/03-react-from-scratch/starter_anthropic.py16CODE
LOW…les/stage-3/03-react-from-scratch/starter_anthropic.py19CODE
LOWexamples/stage-3/03-react-from-scratch/test.py16CODE
LOWexamples/stage-3/03-react-from-scratch/starter.py20CODE
LOWexamples/stage-4/05-typed-agent/test_anthropic.py3CODE
LOWexamples/stage-4/05-typed-agent/starter_anthropic.py3CODE
LOWexamples/stage-4/05-typed-agent/test.py3CODE
LOWexamples/stage-4/05-typed-agent/starter.py7CODE
LOWexamples/stage-4/03-graph-workflow/test_anthropic.py3CODE
LOWexamples/stage-4/03-graph-workflow/starter_anthropic.py6CODE
LOWexamples/stage-4/03-graph-workflow/test.py3CODE
LOWexamples/stage-4/03-graph-workflow/starter.py8CODE
LOWexamples/stage-4/02-multi-agent-roles/test_anthropic.py3CODE
LOW…ples/stage-4/02-multi-agent-roles/starter_anthropic.py13CODE
LOWexamples/stage-4/02-multi-agent-roles/test.py3CODE
LOWexamples/stage-4/02-multi-agent-roles/starter.py24CODE
LOWexamples/stage-4/02-multi-agent-roles/starter.py28CODE
LOW…stage-4/01-same-agent-two-frameworks/test_anthropic.py3CODE
LOW…ge-4/01-same-agent-two-frameworks/starter_anthropic.py14CODE
LOWexamples/stage-4/01-same-agent-two-frameworks/test.py9CODE
LOWexamples/stage-4/01-same-agent-two-frameworks/test.py12CODE
LOWexamples/stage-4/01-same-agent-two-frameworks/test.py20CODE
LOW…es/stage-4/01-same-agent-two-frameworks/test_crewai.py3CODE
LOW…amples/stage-4/01-same-agent-two-frameworks/starter.py18CODE
LOW…stage-4/01-same-agent-two-frameworks/starter_crewai.py17CODE
LOW…ples/stage-4/04-codeact-vs-json-tool/test_anthropic.py3CODE
LOW…s/stage-4/04-codeact-vs-json-tool/starter_anthropic.py6CODE
LOWexamples/stage-4/04-codeact-vs-json-tool/test.py3CODE
LOW…s/stage-4/04-codeact-vs-json-tool/test_docker_smoke.py8CODE
LOWexamples/stage-4/04-codeact-vs-json-tool/starter.py9CODE
LOW…amples/stage-5/tool-calling-tutor/evals/check_evals.py3CODE
LOW…mples/stage-2/01-prompt-eval-loop/starter_anthropic.py3CODE
LOWexamples/stage-2/01-prompt-eval-loop/starter.py3CODE
LOWexamples/stage-7/06-safe-execution/test.py3CODE
LOWexamples/stage-7/06-safe-execution/starter.py6CODE
LOWexamples/stage-7/04-sdk-advanced/test_anthropic.py3CODE
LOWexamples/stage-7/04-sdk-advanced/starter_anthropic.py13CODE
130 more matches not shown…
Empty Error Handlers31 hits · 155 pts
SeverityFileLineSnippetContext
HIGHexamples/stage-4/05-typed-agent/test.py32except ValidationError:CODE
HIGH…ples/stage-4/04-codeact-vs-json-tool/test_anthropic.py24except ValueError:CODE
HIGHexamples/stage-4/04-codeact-vs-json-tool/test.py22except (SyntaxError, ValueError):CODE
HIGHexamples/stage-7/03-observability/test.py45except ValueError:CODE
HIGH…amples/stage-7/01-multi-agent-debate/test_anthropic.py42except ValueError:CODE
HIGHexamples/stage-7/01-multi-agent-debate/test.py47except ValueError:CODE
HIGHscripts/check-anchors.py245except Exception:CODE
HIGHscripts/check-mirror-sync.py148except Exception:CODE
HIGHscripts/test_duplicate_repos.py149except Exception:CODE
HIGHscripts/test_check_links.py559except Exception:CODE
HIGHscripts/test_check_anchors.py428except Exception:CODE
HIGHscripts/refresh-stars.py177except (subprocess.SubprocessError, ValueError):CODE
HIGHscripts/check-reader-ux.py1154except (AttributeError, ValueError):CODE
HIGHscripts/test_reader_ux.py934except (AttributeError, ValueError):CODE
HIGHscripts/mutate_check_links.py182except (AttributeError, ValueError):CODE
HIGHscripts/check-stage-template.py121except Exception:CODE
HIGHscripts/check-catalog-counts.py158except (AttributeError, ValueError):CODE
HIGHscripts/check-2026-freshness.py320except Exception:CODE
HIGHscripts/test_mirror_parity.py265except (AttributeError, ValueError):CODE
HIGHscripts/zh-hans-localize.py267except Exception:CODE
HIGHscripts/test_anchor_slug_parity.py280except Exception:CODE
HIGHscripts/check-mirror-parity.py165except (AttributeError, ValueError):CODE
HIGHscripts/check-image-locale.py145except (AttributeError, ValueError):CODE
HIGHscripts/check-locale-links.py135except (AttributeError, ValueError):CODE
HIGHscripts/pr-link-audit.py276except (AttributeError, ValueError):CODE
HIGHscripts/sync-language-switchers.py32except Exception:CODE
HIGHscripts/check-hans-chars.py116except (AttributeError, ValueError):CODE
HIGHscripts/test_zh_hans_localize.py302except Exception:CODE
HIGHscripts/check-links.py371except (AttributeError, ValueError):CODE
HIGHscripts/check-duplicate-repos.py179except (AttributeError, ValueError):CODE
HIGHscripts/test_refresh_stars.py231except SystemExit:CODE
Cross-File Repetition11 hits · 55 pts
SeverityFileLineSnippetContext
HIGH…ples/stage-3/02-multi-tool-selection/test_anthropic.py0stage 3 練習 5 自我驗證 — path b(anthropic starter_anthropic.py)。 跑法: python test_anthropic.py 用 mock 取代 anthropic client、不打真 STRING
HIGH…ples/stage-3/04-multi-step-reasoning/test_anthropic.py0stage 3 練習 5 自我驗證 — path b(anthropic starter_anthropic.py)。 跑法: python test_anthropic.py 用 mock 取代 anthropic client、不打真 STRING
HIGHexamples/stage-3/05-error-handling/test_anthropic.py0stage 3 練習 5 自我驗證 — path b(anthropic starter_anthropic.py)。 跑法: python test_anthropic.py 用 mock 取代 anthropic client、不打真 STRING
HIGHexamples/stage-7/04-sdk-advanced/starter_anthropic.py0reject a provider response that contains no usable text.STRING
HIGHexamples/stage-7/04-sdk-advanced/starter.py0reject a provider response that contains no usable text.STRING
HIGHexamples/stage-7/03-observability/starter.py0reject a provider response that contains no usable text.STRING
HIGH…les/stage-7/01-multi-agent-debate/starter_anthropic.py0reject a provider response that contains no usable text.STRING
HIGHexamples/stage-7/01-multi-agent-debate/starter.py0reject a provider response that contains no usable text.STRING
HIGHwalkthroughs/build-first-agent-in-7-steps.zh-Hans.md0## motivation smoke-test the writable memory boundary. ## method use a fake response and the real chroma collection. ## STRING
HIGHwalkthroughs/build-first-agent-in-7-steps.en.md0## motivation smoke-test the writable memory boundary. ## method use a fake response and the real chroma collection. ## STRING
HIGHwalkthroughs/build-first-agent-in-7-steps.md0## motivation smoke-test the writable memory boundary. ## method use a fake response and the real chroma collection. ## STRING
Deep Nesting49 hits · 48 pts
SeverityFileLineSnippetContext
LOW…s/stage-3/02-multi-tool-selection/starter_anthropic.py47CODE
LOW…s/stage-3/02-multi-tool-selection/starter_anthropic.py58CODE
LOWexamples/stage-3/02-multi-tool-selection/starter.py54CODE
LOWexamples/stage-3/02-multi-tool-selection/starter.py65CODE
LOW…s/stage-3/04-multi-step-reasoning/starter_anthropic.py105CODE
LOWexamples/stage-3/04-multi-step-reasoning/starter.py162CODE
LOW…les/stage-3/03-react-from-scratch/starter_anthropic.py47CODE
LOW…les/stage-3/03-react-from-scratch/starter_anthropic.py58CODE
LOWexamples/stage-3/03-react-from-scratch/starter.py51CODE
LOWexamples/stage-3/03-react-from-scratch/starter.py62CODE
LOWexamples/stage-7/04-sdk-advanced/starter_anthropic.py44CODE
LOWscripts/repository_freshness.py206CODE
LOWscripts/repository_freshness.py243CODE
LOWscripts/repository_freshness.py271CODE
LOWscripts/repository_freshness.py557CODE
LOWscripts/check-workflow-security.py43CODE
LOWscripts/refresh-stars.py242CODE
LOWscripts/refresh-stars.py314CODE
LOWscripts/check-image-delivery.py191CODE
LOWscripts/check-reader-ux.py134CODE
LOWscripts/check-reader-ux.py250CODE
LOWscripts/check-reader-ux.py448CODE
LOWscripts/check-reader-ux.py665CODE
LOWscripts/check-reader-ux.py942CODE
LOWscripts/mutate_check_links.py178CODE
LOWscripts/mkdocs_hooks.py284CODE
LOWscripts/mkdocs_hooks.py308CODE
LOWscripts/test_stage01_models.py226CODE
LOWscripts/md_fences.py110CODE
LOWscripts/release_manifest.py161CODE
LOWscripts/release_manifest.py401CODE
LOWscripts/release_manifest.py482CODE
LOWscripts/release_manifest.py622CODE
LOWscripts/release_manifest.py413CODE
LOWscripts/release_manifest.py434CODE
LOWscripts/build-docs-tree.py79CODE
LOWscripts/check-2026-freshness.py92CODE
LOWscripts/check-2026-freshness.py211CODE
LOWscripts/test_anchor_slug_parity.py159CODE
LOWscripts/check-mirror-parity.py157CODE
LOWscripts/check-image-locale.py137CODE
LOWscripts/check-locale-links.py98CODE
LOWscripts/pr-link-audit.py85CODE
LOWscripts/sync-language-switchers.py128CODE
LOWscripts/sync-language-switchers.py219CODE
LOWscripts/sync-language-switchers.py326CODE
LOWscripts/check-links.py299CODE
LOWscripts/check-duplicate-repos.py79CODE
LOWscripts/test_refresh_stars.py471CODE
Over-Commented Block33 hits · 33 pts
SeverityFileLineSnippetContext
LOWmkdocs.yml121 - tablesCOMMENT
LOWrequirements-docs.txt1# Docs site (GitHub Pages) build dependencies — used by .github/workflows/docs.ymlCOMMENT
LOWscripts/refresh-stars.py21import subprocessCOMMENT
LOWscripts/refresh-stars.py41COMMENT
LOWscripts/refresh-stars.py61# 抓 markdown 內標註的 stars:`| Stars | ★ 12k+ |` 或 inline `★ 12k+`COMMENT
LOWscripts/refresh-stars.py381 # Second pass: prose counts on lines with NO GitHub URL at all.COMMENT
LOWscripts/check-stage-template.py61# template check at file level doesn't make sense.COMMENT
LOWscripts/mkdocs_hooks.py21"""COMMENT
LOWscripts/build-mdbook.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/zh-hans-localize.py61 # EXCLUDED on purpose (grep-verified unsafe — do NOT add):COMMENT
LOWscripts/zh-hans-localize.py81# Terms that are UNSAFE as blanket substrings but safe with a context guard.COMMENT
LOWscripts/zh-hans-localize.py101# lookbehind, so the separator is matched explicitly instead.COMMENT
LOWscripts/zh-hans-localize.py121 r"|[*_~`\[\]()]" # markdown emphasis / link syntaxCOMMENT
LOWscripts/zh-hans-localize.py141 # reader can see it; a wrong substitution silently corrupts a word in a gateCOMMENT
LOWscripts/check-links.py101 "(KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"COMMENT
LOWscripts/check-links.py121#COMMENT
LOWscripts/check-links.py421 baseline = load_unverifiable_baseline()COMMENT
LOWscripts/test_repo_scan_excludes.py41#COMMENT
LOW.github/FUNDING.yml1# Shows a "Sponsor" button at the top of this repository.COMMENT
LOW.github/workflows/anchor-validator.yml1name: Anchor ValidatorCOMMENT
LOW.github/workflows/lint.yml1name: Lint (content, freshness, and schema)COMMENT
LOW.github/workflows/lint.yml61 echo "Found $FOUND banned-word violations. See resources/style-guide.md §3."COMMENT
LOW.github/workflows/lint.yml101 echo "✓ No zh-TW residue."COMMENT
LOW.github/workflows/lint.yml181 python3 scripts/zh-hans-localize.py --checkCOMMENT
LOW.github/workflows/lint.yml201COMMENT
LOW.github/workflows/lint.yml221 # legitimate deltas are baselined, and it fails only when a deficit growsCOMMENT
LOW.github/workflows/lint.yml261COMMENT
LOW.github/workflows/lint.yml281 # Pins the conservative exemptions (missing sibling / switcher row /COMMENT
LOW.github/workflows/lint.yml321 # Network-free — every request is faked.COMMENT
LOW.github/workflows/lint.yml341 # entries are not reported. stdlib-only, network-free.COMMENT
LOW.github/workflows/lint.yml401 # Its own job because it needs the real mkdocs config loader — it asksCOMMENT
LOW.github/workflows/docs.yml1name: Site (mkdocs + mdBook) → GitHub PagesCOMMENT
LOW.github/workflows/stage-template-check.yml1name: Stage Template CheckCOMMENT
Excessive Try-Catch Wrapping35 hits · 32 pts
SeverityFileLineSnippetContext
LOWexamples/stage-7/06-safe-execution/starter.py51 except Exception:CODE
LOWexamples/stage-7/05-deploy/starter_anthropic.py106 except Exception as e: # noqa: BLE001CODE
LOWexamples/stage-7/05-deploy/starter.py111 except Exception as e: # noqa: BLE001CODE
LOWexamples/stage-7/02-eval/eval_core.py350 except Exception:CODE
LOWexamples/stage-7/03-observability/starter.py93 except Exception as exc:CODE
LOWexamples/stage-1/04-cross-provider/README.en.md103 except Exception:CODE
LOWexamples/stage-1/04-cross-provider/README.zh-Hans.md103 except Exception:CODE
LOWexamples/stage-1/04-cross-provider/README.md104 except Exception:CODE
LOWscripts/check-anchors.py245 except Exception:CODE
LOWscripts/check-anchors.py260 except Exception as e:CODE
LOWscripts/check-mirror-sync.py53 except Exception:CODE
LOWscripts/check-mirror-sync.py148 except Exception:CODE
LOWscripts/test_duplicate_repos.py149 except Exception:CODE
LOWscripts/repository_freshness.py433 except Exception as exc: # fail visibly; never call an exception healthyCODE
LOWscripts/test_check_links.py559 except Exception:CODE
LOWscripts/test_pr_link_audit.py264 except Exception as exc: # noqa: BLE001CODE
LOWscripts/test_check_anchors.py428 except Exception:CODE
LOWscripts/test_image_locale.py198 except Exception as exc: # noqa: BLE001CODE
LOWscripts/test_reader_ux.py942 except Exception as exc: # noqa: BLE001 - standalone test runnerSTRING
LOWscripts/test_catalog_counts.py164 except Exception as exc: # noqa: BLE001CODE
LOWscripts/check-stage-template.py121 except Exception:CODE
LOWscripts/check-2026-freshness.py320 except Exception:CODE
LOWscripts/check-2026-freshness.py344 except Exception as e:CODE
LOWscripts/test_mirror_parity.py277 except Exception as exc: # noqa: BLE001CODE
LOWscripts/zh-hans-localize.py267 except Exception:CODE
LOWscripts/test_anchor_slug_parity.py280 except Exception:CODE
LOWscripts/test_repository_freshness.py497 except Exception as exc:CODE
LOWscripts/test_hans_chars.py189 except Exception as exc: # noqa: BLE001CODE
LOWscripts/pr-link-audit.py308 except Exception as exc: # noqa: BLE001 — advisory tool must never fail CICODE
LOWscripts/sync-language-switchers.py32 except Exception:CODE
LOWscripts/test_zh_hans_localize.py302 except Exception:CODE
LOWscripts/test_locale_links.py159 except Exception as exc: # noqa: BLE001CODE
LOWwalkthroughs/build-first-agent-in-7-steps.zh-Hans.md626 except Exception as exc:CODE
LOWwalkthroughs/build-first-agent-in-7-steps.en.md626 except Exception as exc:CODE
LOWwalkthroughs/build-first-agent-in-7-steps.md624 except Exception as exc:CODE
Decorative Section Separators5 hits · 18 pts
SeverityFileLineSnippetContext
MEDIUM⚡scripts/test_freshness.py90# ── Hole #2: mirror locales are scanned ───────────────────────────────────────COMMENT
MEDIUM⚡scripts/test_freshness.py117# ── canonical_rel + per-file override inheritance ─────────────────────────────COMMENT
MEDIUMscripts/test_freshness.py62# ── Hole #1: DeepSeek regex space-form ────────────────────────────────────────COMMENT
MEDIUMscripts/test_freshness.py160# ── Ties to the REAL config (breaks if someone reverts the fixes) ─────────────COMMENT
MEDIUMscripts/test_freshness.py204# ── Machine-readable page freshness markers ──────────────────────────────────COMMENT
Cross-Language Confusion3 hits · 12 pts
SeverityFileLineSnippetContext
HIGHscripts/test_check_links.py520 mixed.write_text('{"unverifiable": ["https://a", 42, null]}',CODE
HIGHscripts/test_check_links.py495 list, a bare null) reached `data.get` and raised AttributeError, which tookSTRING
HIGHscripts/test_walkthrough_coherence.py248 "promptfoo eval && promptfoo view",CODE
Structural Annotation Overuse4 hits · 6 pts
SeverityFileLineSnippetContext
LOWexamples/stage-2/01-prompt-eval-loop/README.en.md15## Step 1: Run the no-model version firstCOMMENT
LOWexamples/stage-2/01-prompt-eval-loop/README.en.md25## Step 2: Confirm that the program calculates correctlyCOMMENT
LOW⚡scripts/refresh-stars.py299 if m_stars: # Step 1: same-lineCODE
LOW⚡scripts/refresh-stars.py301 if not line.lstrip().startswith("|"): # Step 2: entry-block only, never table rowsCODE
Overly Generic Function Names4 hits · 4 pts
SeverityFileLineSnippetContext
LOW…ples/stage-3/06-schema-design/starter_bad_anthropic.py29def process_data(data: str = "") -> str:CODE
LOWexamples/stage-3/06-schema-design/starter_good.py28def process_data(data: list[dict], operation: str) -> dict:CODE
LOW…les/stage-3/06-schema-design/starter_good_anthropic.py28def process_data(data: list[dict], operation: str) -> dict:CODE
LOWexamples/stage-3/06-schema-design/starter_bad.py28def process_data(data: str = "") -> str:CODE
Modern Structural Boilerplate4 hits · 4 pts
SeverityFileLineSnippetContext
LOWexamples/stage-3/05-error-handling/starter_anthropic.py32def set_weather_failures(plan: list[bool]) -> None:CODE
LOWexamples/stage-3/05-error-handling/starter.py38def set_weather_failures(plan: list[bool]) -> None:CODE
LOWscripts/check-mirror-sync.py133def set_gh_output(name: str, value: str) -> None:CODE
LOWscripts/md_fences.py65__all__ = [CODE
Verbosity Indicators2 hits · 3 pts
SeverityFileLineSnippetContext
LOW⚡scripts/refresh-stars.py299 if m_stars: # Step 1: same-lineCODE
LOW⚡scripts/refresh-stars.py301 if not line.lstrip().startswith("|"): # Step 2: entry-block only, never table rowsCODE
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMscripts/check-links.py126# and 33 links on that host plus 4 on deepseek-harness.github.io would have goneCOMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWstages/05-claude-code-ecosystem.en.md236- Success condition: both the fake-data test and one real `Write` add a line, and the log contains neither a prompt nor CODE
LOWresources/agent-paradigms.en.md85A local model can reduce the need to send Prompts to an external Provider. But an Agent with network, tool, or broad folCODE
AI Structural Patterns1 hit · 0 pts
SeverityFileLineSnippetContext
LOWscripts/test_reader_ux.py32CODE