{"slug":"python","title":"Python","extensions":[".py",".pyi"],"entry_languages":["Python"],"prompts":707,"repos":64,"sample":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent","checks":10},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python","checks":7},{"repository":"tensorflow/tensorflow","slug":"tensorflow-tensorflow","checks":1},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain","checks":4},{"repository":"langgenius/dify","slug":"langgenius-dify","checks":15},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow","checks":14},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch","checks":8},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi","checks":7},{"repository":"django/django","slug":"django-django","checks":6},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui","checks":4},{"repository":"home-assistant/core","slug":"home-assistant-core","checks":12},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow","checks":7},{"repository":"python/cpython","slug":"python-cpython","checks":9},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown","checks":3},{"repository":"pallets/flask","slug":"pallets-flask","checks":11},{"repository":"TauricResearch/TradingAgents","slug":"tauricresearch-tradingagents","checks":3},{"repository":"browser-use/browser-use","slug":"browser-use-browser-use","checks":6},{"repository":"commaai/openpilot","slug":"commaai-openpilot","checks":2},{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill","checks":6},{"repository":"karpathy/nanochat","slug":"karpathy-nanochat","checks":1},{"repository":"vllm-project/vllm","slug":"vllm-project-vllm","checks":10},{"repository":"calesthio/OpenMontage","slug":"calesthio-openmontage","checks":2},{"repository":"getsentry/sentry","slug":"getsentry-sentry","checks":13},{"repository":"apache/airflow","slug":"apache-airflow","checks":20},{"repository":"docker/compose","slug":"docker-compose","checks":2},{"repository":"Aider-AI/aider","slug":"aider-ai-aider","checks":6},{"repository":"pola-rs/polars","slug":"pola-rs-polars","checks":13},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai","checks":9},{"repository":"python-poetry/poetry","slug":"python-poetry-poetry","checks":6},{"repository":"openai/openai-python","slug":"openai-openai-python","checks":6},{"repository":"celery/celery","slug":"celery-celery","checks":11},{"repository":"PostHog/posthog","slug":"posthog-posthog","checks":22},{"repository":"BerriAI/litellm","slug":"berriai-litellm","checks":24},{"repository":"stanfordnlp/dspy","slug":"stanfordnlp-dspy","checks":5},{"repository":"pydantic/pydantic","slug":"pydantic-pydantic","checks":14},{"repository":"apache/mxnet","slug":"apache-mxnet","checks":1},{"repository":"eosphoros-ai/DB-GPT","slug":"eosphoros-ai-db-gpt","checks":10},{"repository":"agent0ai/agent-zero","slug":"agent0ai-agent-zero","checks":1},{"repository":"sgl-project/sglang","slug":"sgl-project-sglang","checks":14},{"repository":"SWE-agent/SWE-agent","slug":"swe-agent-swe-agent","checks":6},{"repository":"bytedance/deer-flow","slug":"bytedance-deer-flow","checks":10},{"repository":"oraios/serena","slug":"oraios-serena","checks":7},{"repository":"semgrep/semgrep","slug":"semgrep-semgrep","checks":10},{"repository":"the-pr-agent/pr-agent","slug":"the-pr-agent-pr-agent","checks":7},{"repository":"emcie-co/parlant","slug":"emcie-co-parlant","checks":9},{"repository":"Unstructured-IO/unstructured","slug":"unstructured-io-unstructured","checks":9},{"repository":"prowler-cloud/prowler","slug":"prowler-cloud-prowler","checks":21},{"repository":"huggingface/tokenizers","slug":"huggingface-tokenizers","checks":6},{"repository":"awslabs/mcp","slug":"awslabs-mcp","checks":12},{"repository":"boto/boto3","slug":"boto-boto3","checks":6},{"repository":"openai/codex-security","slug":"openai-codex-security","checks":15},{"repository":"bytedance/trae-agent","slug":"bytedance-trae-agent","checks":6},{"repository":"openai/skills","slug":"openai-skills","checks":0},{"repository":"bridgecrewio/checkov","slug":"bridgecrewio-checkov","checks":8},{"repository":"p-e-w/heretic","slug":"p-e-w-heretic","checks":4},{"repository":"Azure/azure-cli","slug":"azure-azure-cli","checks":2},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python","checks":16},{"repository":"LMCache/LMCache","slug":"lmcache-lmcache","checks":13},{"repository":"anthropics/anthropic-sdk-python","slug":"anthropics-anthropic-sdk-python","checks":4},{"repository":"awslabs/agentcore-samples","slug":"awslabs-agentcore-samples","checks":13},{"repository":"smallcloudai/refact","slug":"smallcloudai-refact","checks":5},{"repository":"anthropics/claude-agent-sdk-python","slug":"anthropics-claude-agent-sdk-python","checks":5},{"repository":"salesforce/cloudsplaining","slug":"salesforce-cloudsplaining","checks":7},{"repository":"open-telemetry/opentelemetry-python","slug":"open-telemetry-opentelemetry-python","checks":9}],"tools":[{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},{"id":"ruff-check","method":"static_analysis","kind":"linting","languages":["python"],"upstream":"https://github.com/astral-sh/ruff","docs":"https://docs.astral.sh/ruff/linter/#exit-codes","autofix":true,"exit_codes":{"0":"no violations","1":"violations found","2":"invalid configuration, CLI options or internal error"},"repos":46,"share":72,"commands":["ruff check .","ruff check","ruff check . --fix"],"run":"ruff check .","via":"pre-commit hook ruff-check","triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"}]},{"id":"ci-matrix","method":"testing","kind":"version-matrix","languages":["*"],"upstream":"https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations","docs":null,"autofix":false,"exit_codes":{},"repos":36,"share":56,"commands":["analyze (include: 2)","analyze (include: 3)","analyze (language: 1)"],"run":"analyze (include: 2)","via":null,"triggers":["ci"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"pallets/flask","slug":"pallets-flask"}]},{"id":"ruff-format","method":"formatting","kind":"formatting","languages":["python"],"upstream":"https://github.com/astral-sh/ruff","docs":"https://docs.astral.sh/ruff/formatter/#exit-codes","autofix":true,"exit_codes":{"0":"already formatted","1":"files would be reformatted (--check)","2":"error"},"repos":32,"share":50,"commands":["ruff format .","ruff format --check .","ruff format"],"run":"ruff format .","via":"pre-commit hook ruff-format","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"}]},{"id":"mypy","method":"static_analysis","kind":"type-checking","languages":["python"],"upstream":"https://github.com/python/mypy","docs":"https://mypy.readthedocs.io/en/stable/command_line.html","autofix":false,"exit_codes":{"0":"no type errors","1":"type errors found","2":"crash or invalid invocation"},"repos":27,"share":42,"commands":["mypy","mypy --version","mypy --cache-dir=/dev/null --config-file pyproject.toml .'"],"run":"mypy","via":"pre-commit hook mypy","triggers":["pre_commit","ci","local"],"examples":[{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"pallets/flask","slug":"pallets-flask"}]},{"id":"pre-commit-hooks","method":"formatting","kind":"file-hygiene","languages":["*"],"upstream":"https://github.com/pre-commit/pre-commit-hooks","docs":null,"autofix":true,"exit_codes":{},"repos":25,"share":39,"commands":["pre-commit hook end-of-file-fixer","pre-commit hook check-yaml","pre-commit hook check-merge-conflict"],"run":null,"via":"pre-commit hook end-of-file-fixer","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"python/cpython","slug":"python-cpython"}]},{"id":"codeql","method":"static_analysis","kind":"security-scanning","languages":["*"],"upstream":"https://github.com/github/codeql","docs":null,"autofix":false,"exit_codes":{},"repos":18,"share":28,"commands":["uses github/codeql-action/analyze"],"run":null,"via":"GitHub Action github/codeql-action/analyze","triggers":["ci"],"examples":[{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"getsentry/sentry","slug":"getsentry-sentry"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"openai/openai-python","slug":"openai-openai-python"}]},{"id":"codespell","method":"formatting","kind":"spelling","languages":["*"],"upstream":"https://github.com/codespell-project/codespell","docs":null,"autofix":false,"exit_codes":{},"repos":16,"share":25,"commands":["codespell","codespell --toml pyproject.toml","codespell --toml pyproject.toml --write"],"run":"codespell --toml pyproject.toml --write","via":"pre-commit hook codespell","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"browser-use/browser-use","slug":"browser-use-browser-use"}]},{"id":"flake8","method":"static_analysis","kind":"linting","languages":["python"],"upstream":"https://github.com/PyCQA/flake8","docs":null,"autofix":false,"exit_codes":{},"repos":13,"share":20,"commands":["flake8 --select=S","flake8 .","flake8 . --ignore=E266,W503,E203,E501,W605,E128 --exclude .venv,contrib,ui,api,skills,mcp_server"],"run":"flake8 .","via":"pre-commit hook flake8","triggers":["pre_commit","ci","local"],"examples":[{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"django/django","slug":"django-django"},{"repository":"getsentry/sentry","slug":"getsentry-sentry"},{"repository":"Aider-AI/aider","slug":"aider-ai-aider"},{"repository":"celery/celery","slug":"celery-celery"}]},{"id":"uv-lock","method":"supply_chain","kind":"lockfile-check","languages":["python"],"upstream":"https://github.com/astral-sh/uv","docs":null,"autofix":true,"exit_codes":{},"repos":13,"share":20,"commands":["uv lock --check","uv lock --check --project cli","pre-commit hook uv-lock"],"run":"uv lock --check","via":"pre-commit hook uv-lock","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"openai/openai-python","slug":"openai-openai-python"}]},{"id":"pyright","method":"static_analysis","kind":"type-checking","languages":["python"],"upstream":"https://github.com/microsoft/pyright","docs":"https://microsoft.github.io/pyright/#/command-line","autofix":false,"exit_codes":{"0":"no errors","1":"errors reported","2":"fatal error","3":"config file could not be read or parsed","4":"illegal command-line parameters"},"repos":11,"share":17,"commands":["pyright","pyright --version","basedpyright --pythonpath .venv/bin/python --project tests/typing/pyrightconfig.json"],"run":"pyright","via":"pre-commit hook pyright","triggers":["pre_commit","ci","local"],"examples":[{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"browser-use/browser-use","slug":"browser-use-browser-use"},{"repository":"openai/openai-python","slug":"openai-openai-python"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"},{"repository":"pydantic/pydantic","slug":"pydantic-pydantic"}]},{"id":"black","method":"formatting","kind":"formatting","languages":["python"],"upstream":"https://github.com/psf/black","docs":null,"autofix":true,"exit_codes":{"0":"nothing to change","1":"files would be reformatted (--check)","123":"internal error"},"repos":9,"share":14,"commands":["black --check --diff .","black --exclude \"\\.venv","pre-commit hook black"],"run":"black --check --diff .","via":"pre-commit hook black","triggers":["pre_commit","ci","local"],"examples":[{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"django/django","slug":"django-django"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"Aider-AI/aider","slug":"aider-ai-aider"}]},{"id":"hypothesis","method":"testing","kind":"property-tests","languages":["python"],"upstream":"https://github.com/HypothesisWorks/hypothesis","docs":null,"autofix":false,"exit_codes":{},"repos":9,"share":14,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},{"id":"isort","method":"formatting","kind":"formatting","languages":["python"],"upstream":"https://github.com/PyCQA/isort","docs":null,"autofix":true,"exit_codes":{},"repos":8,"share":12,"commands":["isort --check-only --diff django tests scripts","pre-commit hook isort"],"run":"isort --check-only --diff django tests scripts","via":"pre-commit hook isort","triggers":["pre_commit","ci","local"],"examples":[{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"django/django","slug":"django-django"},{"repository":"Aider-AI/aider","slug":"aider-ai-aider"},{"repository":"celery/celery","slug":"celery-celery"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"sgl-project/sglang","slug":"sgl-project-sglang"}]},{"id":"pylint","method":"static_analysis","kind":"linting","languages":["python"],"upstream":"https://github.com/pylint-dev/pylint","docs":null,"autofix":false,"exit_codes":{},"repos":8,"share":12,"commands":["pylint $(printf tests/components/%s ${TESTS_GLOB})","pylint --disable=W,C,R,E -j 0 -rn -sn","pylint --disable=W,C,R,E -j 0 -rn -sn prowler/"],"run":"pylint comfy_api_nodes","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"tensorflow/tensorflow","slug":"tensorflow-tensorflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"},{"repository":"prowler-cloud/prowler","slug":"prowler-cloud-prowler"},{"repository":"Azure/azure-cli","slug":"azure-azure-cli"}]},{"id":"sphinx","method":"static_analysis","kind":"docs-build","languages":["python","docs"],"upstream":"https://github.com/sphinx-doc/sphinx","docs":null,"autofix":false,"exit_codes":{},"repos":8,"share":12,"commands":["sphinx-build -E -W -b dirhtml docs docs/_build/dirhtml","sphinx-build -E -a -W -b html -T . _build/html","sphinx-build -b gettext docs/source docs/build/gettext"],"run":"sphinx-build -j2 -b configcheck -d {envtmpdir}/doctrees docs docs/_build/configcheck","via":null,"triggers":["ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"celery/celery","slug":"celery-celery"},{"repository":"oraios/serena","slug":"oraios-serena"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},{"id":"unittest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/python/cpython","docs":null,"autofix":false,"exit_codes":{},"repos":8,"share":12,"commands":["unittest discover -s .github/scripts -p test_check_diff.py","unittest discover -s bin/test -p test_render_hobby_compose.py","unittest discover -s docker/tests -p test_*.py"],"run":"unittest discover -v -s scripts/","via":null,"triggers":["ci"],"examples":[{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"django/django","slug":"django-django"},{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill"},{"repository":"PostHog/posthog","slug":"posthog-posthog"}]},{"id":"bandit","method":"static_analysis","kind":"security-scanning","languages":["python"],"upstream":"https://github.com/PyCQA/bandit","docs":null,"autofix":false,"exit_codes":{},"repos":6,"share":9,"commands":["bandit","bandit -b bandit.json -r celery/","bandit -q -lll"],"run":"bandit","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"celery/celery","slug":"celery-celery"},{"repository":"prowler-cloud/prowler","slug":"prowler-cloud-prowler"},{"repository":"awslabs/mcp","slug":"awslabs-mcp"},{"repository":"bridgecrewio/checkov","slug":"bridgecrewio-checkov"}]},{"id":"dependency-review","method":"supply_chain","kind":"dependency-audit","languages":["*"],"upstream":"https://github.com/actions/dependency-review-action","docs":null,"autofix":false,"exit_codes":{},"repos":5,"share":8,"commands":["uses actions/dependency-review-action"],"run":null,"via":"GitHub Action actions/dependency-review-action","triggers":["ci"],"examples":[{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"awslabs/mcp","slug":"awslabs-mcp"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},{"id":"semgrep","method":"static_analysis","kind":"security-scanning","languages":["*"],"upstream":"https://github.com/semgrep/semgrep","docs":null,"autofix":false,"exit_codes":{},"repos":5,"share":8,"commands":["semgrep ci","semgrep --version","semgrep ci --suppress-errors"],"run":"semgrep ci","via":"pre-commit hook semgrep","triggers":["pre_commit","ci"],"examples":[{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill"},{"repository":"celery/celery","slug":"celery-celery"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"},{"repository":"semgrep/semgrep","slug":"semgrep-semgrep"},{"repository":"awslabs/mcp","slug":"awslabs-mcp"}]},{"id":"mkdocs","method":"static_analysis","kind":"docs-build","languages":["python","docs"],"upstream":"https://github.com/mkdocs/mkdocs","docs":null,"autofix":false,"exit_codes":{},"repos":4,"share":6,"commands":["mkdocs build","mkdocs build --strict"],"run":"mkdocs build","via":null,"triggers":["ci","local"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"pydantic/pydantic","slug":"pydantic-pydantic"},{"repository":"SWE-agent/SWE-agent","slug":"swe-agent-swe-agent"},{"repository":"salesforce/cloudsplaining","slug":"salesforce-cloudsplaining"}]},{"id":"pip-audit","method":"supply_chain","kind":"dependency-audit","languages":["python"],"upstream":"https://github.com/pypa/pip-audit","docs":null,"autofix":false,"exit_codes":{},"repos":2,"share":3,"commands":["pip-audit ${pip_audit_args[@]}","pip-audit --path /tmp/audit-env/lib/python*/site-packages","pip-audit --skip-editable --ignore-vuln PYSEC-2024-277 --ignore-vuln PYSEC-2026-89 --ignore-vuln PYSEC-2026-97 --ignore-vuln PYSEC-2026-597 --ignore-vuln PYSEC-2025-148 --ignore-vuln PYSEC-2025-183 --ignore-vuln PYSEC-2025-189 --ignore-vuln PYSEC-2025-190 --ignore-vuln PYSEC-2025-191 --ignore-vuln PYSEC-2025-192 --ignore-vuln PYSEC-2025-193 --ignore-vuln PYSEC-2025-194 --ignore-vuln PYSEC-2025-195 --ignore-vuln PYSEC-2025-196 --ignore-vuln PYSEC-2025-197 --ignore-vuln PYSEC-2025-210 --ignore-vuln PYSEC-2026-139 --ignore-vuln PYSEC-2025-211 --ignore-vuln PYSEC-2025-212 --ignore-vuln PYSEC-2025-213 --ignore-vuln PYSEC-2025-214 --ignore-vuln PYSEC-2025-215 --ignore-vuln PYSEC-2025-216 --ignore-vuln PYSEC-2025-217 --ignore-vuln PYSEC-2025-218 --ignore-vuln GHSA-f4j7-r4q5-qw2c --ignore-vuln GHSA-2wm9-hf6c-p5cr --ignore-vuln GHSA-36p7-vc44-83pf --ignore-vuln GHSA-xph7-9rjv-w5fr --ignore-vuln GHSA-4j2p-28q2-5m79' --"],"run":"pip-audit ${pip_audit_args[@]}","via":null,"triggers":["pre_commit","ci"],"examples":[{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},{"id":"gitleaks","method":"static_analysis","kind":"secret-scanning","languages":["*"],"upstream":"https://github.com/gitleaks/gitleaks","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":["pre-commit hook gitleaks"],"run":null,"via":"pre-commit hook gitleaks","triggers":["pre_commit","ci"],"examples":[{"repository":"awslabs/mcp","slug":"awslabs-mcp"}]},{"id":"lean","method":"formal","kind":"proofs","languages":["*"],"upstream":"https://github.com/leanprover/lean4","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"oraios/serena","slug":"oraios-serena"}]},{"id":"mutmut","method":"testing","kind":"mutation-testing","languages":["python"],"upstream":"https://github.com/boxed/mutmut","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":["mutmut run 2>&1"],"run":"mutmut run 2>&1","via":null,"triggers":["ci"],"examples":[{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]}],"headline":["ruff-format","ruff-check","mypy","pytest"],"raw_md":"https://awesomereviewers.com/raw/verify/python.md","raw_json":"https://awesomereviewers.com/raw/verify/python.json","url":"https://awesomereviewers.com/verify/python/","baseline":{"slug":"every-change","title":"Any change","topics":["Code Style","Naming Conventions"],"checks":[{"kind":"formatting","title":"Formatting","method":"formatting","method_slug":"formatting","catches":"Layout drift that buries the real change in the diff.","tool":{"id":"ruff-format","method":"formatting","kind":"formatting","languages":["python"],"upstream":"https://github.com/astral-sh/ruff","docs":"https://docs.astral.sh/ruff/formatter/#exit-codes","autofix":true,"exit_codes":{"0":"already formatted","1":"files would be reformatted (--check)","2":"error"},"repos":32,"share":50,"commands":["ruff format .","ruff format --check .","ruff format"],"run":"ruff format .","via":"pre-commit hook ruff-format","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"}]},"alternatives":[{"id":"black","repos":9,"share":14},{"id":"isort","repos":8,"share":12}],"note":null},{"kind":"linting","title":"Linting","method":"static_analysis","method_slug":"static-analysis","catches":"Bug-prone patterns, unused code and conventions the formatter does not cover.","tool":{"id":"ruff-check","method":"static_analysis","kind":"linting","languages":["python"],"upstream":"https://github.com/astral-sh/ruff","docs":"https://docs.astral.sh/ruff/linter/#exit-codes","autofix":true,"exit_codes":{"0":"no violations","1":"violations found","2":"invalid configuration, CLI options or internal error"},"repos":46,"share":72,"commands":["ruff check .","ruff check","ruff check . --fix"],"run":"ruff check .","via":"pre-commit hook ruff-check","triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"}]},"alternatives":[{"id":"flake8","repos":13,"share":20},{"id":"pylint","repos":8,"share":12}],"note":null},{"kind":"type-checking","title":"Type checking","method":"static_analysis","method_slug":"static-analysis","catches":"Wrong types, unhandled null or None, call signatures broken across modules.","tool":{"id":"mypy","method":"static_analysis","kind":"type-checking","languages":["python"],"upstream":"https://github.com/python/mypy","docs":"https://mypy.readthedocs.io/en/stable/command_line.html","autofix":false,"exit_codes":{"0":"no type errors","1":"type errors found","2":"crash or invalid invocation"},"repos":27,"share":42,"commands":["mypy","mypy --version","mypy --cache-dir=/dev/null --config-file pyproject.toml .'"],"run":"mypy","via":"pre-commit hook mypy","triggers":["pre_commit","ci","local"],"examples":[{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[{"id":"pyright","repos":11,"share":17}],"note":null},{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null}],"prompts":[{"slug":"sdk-python-use-descriptive-names","title":"Use descriptive names","description":"Choose names that clearly convey purpose and intent rather than generic or ambiguous terms. Names should be specific enough to understand functionality without requiring additional context.","repository":"strands-agents/sdk-python","domain":"ai-agents","topic":"Naming Conventions","language":"Python","updated":"2025-11-14","comments":19,"stars":4044,"raw":"https://awesomereviewers.com/raw/sdk-python-use-descriptive-names.md"},{"slug":"heretic-consistent-module-organization","title":"Consistent module organization","description":"Keep code organized by responsibility and centralize reusable logic. Concretely: - Centralize helpers: move shared implementations (plugin loading, dataset parsing, prompt helpers, is_notebook, prompt wrappers, etc.) into a single utils or plugin package and import them from one place. Avoid copy-pasting variations of the same logic across files — this...","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Code Style","language":"Python","updated":"2026-01-26","comments":16,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-consistent-module-organization.md"},{"slug":"litellm-avoid-code-duplication","title":"Avoid code duplication","description":"Eliminate redundant code by leveraging existing utilities, extracting reusable helper functions, and organizing logic in appropriate modules. Before implementing new functionality, check if similar logic already exists in the codebase that can be reused or extended.","repository":"BerriAI/litellm","domain":"llm-infra","topic":"Code Style","language":"Python","updated":"2025-08-19","comments":15,"stars":28310,"raw":"https://awesomereviewers.com/raw/litellm-avoid-code-duplication.md"},{"slug":"unstructured-eliminate-unnecessary-code","title":"eliminate unnecessary code","description":"Remove redundant operations, unnecessary code blocks, and verbose constructs to improve code clarity and maintainability. Focus on eliminating dead code, avoiding redundant loops, removing unnecessary conditional checks, and using more concise expressions where appropriate.","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Code Style","language":"Python","updated":"2025-06-09","comments":14,"stars":12116,"raw":"https://awesomereviewers.com/raw/unstructured-eliminate-unnecessary-code.md"},{"slug":"celery-readable-formatting-and-idioms","title":"Readable formatting and idioms","description":"Prioritize readability through consistent formatting and modern, simple idioms. For code style changes, ensure multiline constructs are formatted cleanly, complex conditions are made understandable (via extracted “effective” variables or small helpers), repeated patterns are factored out, and modern Python conventions are used.","repository":"celery/celery","domain":"orchestration","topic":"Code Style","language":"Python","updated":"2026-03-10","comments":12,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-readable-formatting-and-idioms.md"},{"slug":"sglang-eliminate-code-duplication","title":"eliminate code duplication","description":"Actively identify and eliminate code duplication by extracting common patterns into reusable components. When you notice repeated code blocks, similar conditional logic, or duplicate class definitions, consolidate them through extraction techniques.","repository":"sgl-project/sglang","domain":"llm-infra","topic":"Code Style","language":"Python","updated":"2025-08-21","comments":12,"stars":17245,"raw":"https://awesomereviewers.com/raw/sglang-eliminate-code-duplication.md"},{"slug":"unstructured-use-semantically-clear-names","title":"Use semantically clear names","description":"Choose variable, method, and class names that clearly express their purpose and functionality to avoid confusion and improve code readability. Names should accurately reflect what the code does rather than how it's implemented.","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Naming Conventions","language":"Python","updated":"2025-02-07","comments":12,"stars":12117,"raw":"https://awesomereviewers.com/raw/unstructured-use-semantically-clear-names.md"},{"slug":"mxnet-eliminate-redundant-constructs","title":"Eliminate redundant constructs","description":"Remove unnecessary coding patterns that add complexity without providing value. Focus on clarity and simplicity by: 1. Not using enumerate() when the index is unused:","repository":"apache/mxnet","domain":"ml-systems","topic":"Code Style","language":"Python","updated":"2021-09-17","comments":12,"stars":20801,"raw":"https://awesomereviewers.com/raw/mxnet-eliminate-redundant-constructs.md"},{"slug":"mcp-centralize-shared-utilities","title":"Centralize shared utilities","description":"When code has repeated “plumbing” (string templating/formatting, pagination/envelopes, client setup, session/ctx extraction, embedding serialization, etc.), move it into a shared helper/utility and keep stable imports/constants at module scope. This reduces drift, improves readability, and keeps formatting behavior consistent across tools.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Code Style","language":"Python","updated":"2026-07-27","comments":11,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-centralize-shared-utilities.md"},{"slug":"hermes-agent-collision-safe-identifier-mapping","title":"Collision-Safe Identifier Mapping","description":"Treat every identifier (tool name, command name, provider slug, theme name, thread key) as a runtime contract: you must generate, transform, and resolve it consistently, and preserve an unambiguous mapping between any emitted/sanitized UI value and the backend identity.","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Naming Conventions","language":"Python","updated":"2026-07-20","comments":11,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-collision-safe-identifier-mapping.md"},{"slug":"flask-idiomatic-minimal-python-constructs","title":"Idiomatic, minimal Python constructs","description":"Favor clear, idiomatic Python over verbose, manual, or unpythonic constructs, and avoid introducing unnecessary complexity or unrelated refactors just to satisfy a linter/type-checker. Specifically:","repository":"pallets/flask","domain":"app-frameworks","topic":"Code Style","language":"Python","updated":"2026-07-14","comments":11,"stars":75022,"raw":"https://awesomereviewers.com/raw/flask-idiomatic-minimal-python-constructs.md"},{"slug":"heretic-use-clear-names","title":"Use clear names","description":"Rule: choose concise, semantically accurate, and responsibility-respecting names for identifiers (variables, functions, classes, modules). Motivation: clear names reduce cognitive load, avoid ambiguity, and prevent leaking responsibilities across layers.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Naming Conventions","language":"Python","updated":"2026-02-11","comments":11,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-use-clear-names.md"}],"prompt_count":111},"changes":[{"slug":"security","title":"Authentication, input handling, secrets, permissions","topics":["Security"],"checks":[{"kind":"security-scanning","title":"Security scanning","method":"static_analysis","method_slug":"static-analysis","catches":"Injection, unsafe APIs and tainted data reaching a sink.","tool":{"id":"codeql","method":"static_analysis","kind":"security-scanning","languages":["*"],"upstream":"https://github.com/github/codeql","docs":null,"autofix":false,"exit_codes":{},"repos":18,"share":28,"commands":["uses github/codeql-action/analyze"],"run":null,"via":"GitHub Action github/codeql-action/analyze","triggers":["ci"],"examples":[{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"getsentry/sentry","slug":"getsentry-sentry"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"openai/openai-python","slug":"openai-openai-python"}]},"alternatives":[{"id":"bandit","repos":6,"share":9},{"id":"semgrep","repos":5,"share":8}],"note":null},{"kind":"secret-scanning","title":"Secret scanning","method":"static_analysis","method_slug":"static-analysis","catches":"Credentials and tokens committed to the repository.","tool":{"id":"gitleaks","method":"static_analysis","kind":"secret-scanning","languages":["*"],"upstream":"https://github.com/gitleaks/gitleaks","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":["pre-commit hook gitleaks"],"run":null,"via":"pre-commit hook gitleaks","triggers":["pre_commit","ci"],"examples":[{"repository":"awslabs/mcp","slug":"awslabs-mcp"}]},"alternatives":[],"note":null},{"kind":"dependency-audit","title":"Dependency audit","method":"supply_chain","method_slug":"supply-chain","catches":"Known-vulnerable or disallowed dependencies and licenses.","tool":{"id":"dependency-review","method":"supply_chain","kind":"dependency-audit","languages":["*"],"upstream":"https://github.com/actions/dependency-review-action","docs":null,"autofix":false,"exit_codes":{},"repos":5,"share":8,"commands":["uses actions/dependency-review-action"],"run":null,"via":"GitHub Action actions/dependency-review-action","triggers":["ci"],"examples":[{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"awslabs/mcp","slug":"awslabs-mcp"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},"alternatives":[{"id":"pip-audit","repos":2,"share":3}],"note":null}],"prompts":[{"slug":"checkov-prevent-sensitive-data-exposure","title":"Prevent sensitive data exposure","description":"Never log or store sensitive information (passwords, tokens, secrets) in clear text. This common security vulnerability can lead to credential leaks and unauthorized access.","repository":"bridgecrewio/checkov","domain":"security","topic":"Security","language":"Python","updated":"2025-02-05","comments":20,"stars":7667,"raw":"https://awesomereviewers.com/raw/checkov-prevent-sensitive-data-exposure.md"},{"slug":"checkov-protect-sensitive-data","title":"Protect sensitive data","description":"Never log, display, or store sensitive information like passwords, tokens, or secrets in clear text. This creates significant security vulnerabilities that could lead to unauthorized access and data breaches.","repository":"bridgecrewio/checkov","domain":"security","topic":"Security","language":"Python","updated":"2025-02-05","comments":16,"stars":7668,"raw":"https://awesomereviewers.com/raw/checkov-protect-sensitive-data.md"},{"slug":"hermes-agent-boundary-hardening-rules","title":"Boundary Hardening Rules","description":"Treat every transition from “untrusted / scoped data” into a sensitive sink (shell execution, subprocess credentials, HTTP fetch, filesystem writes, and API-triggered work) as a security seam. Enforce fail-closed policy at that seam:","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Security","language":"Python","updated":"2026-07-28","comments":15,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-boundary-hardening-rules.md"},{"slug":"mcp-fail-closed-input-sanitization","title":"Fail-Closed Input Sanitization","description":"All externally supplied values must be validated/escaped for the *exact* security-sensitive context they’re interpolated into, and security checks must be fail-closed (no bypass via fallbacks, parse differences, redirects, caches, or policy typos).","repository":"awslabs/mcp","domain":"ai-agents","topic":"Security","language":"Python","updated":"2026-07-28","comments":9,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-fail-closed-input-sanitization.md"},{"slug":"azure-cli-secure-untrusted-boundaries","title":"Secure Untrusted Boundaries","description":"When code crosses security boundaries (subprocess/PowerShell execution, network URLs, filesystem writes, or auth/TLS), treat user/environment input as untrusted and enforce safety rules:","repository":"Azure/azure-cli","domain":"cloud-infra","topic":"Security","language":"Python","updated":"2026-07-26","comments":8,"stars":4592,"raw":"https://awesomereviewers.com/raw/azure-cli-secure-untrusted-boundaries.md"},{"slug":"pr-agent-trust-boundaries-and-safe-parsing","title":"Trust Boundaries And Safe Parsing","description":"Treat any repo-controlled config, external webhook payload, or model-generated text as untrusted. Enforce trust boundaries and use safe parsing/validation to prevent SSRF/exfiltration, arbitrary file writes, and unsafe deserialization.","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"Security","language":"Python","updated":"2026-07-06","comments":8,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-trust-boundaries-and-safe-parsing.md"},{"slug":"openai-python-secure-auth-and-logging","title":"Secure Auth and Logging","description":"Security-sensitive code must ensure (1) the correct auth path is used without accidental overrides, (2) sensitive auth material is never leaked in logs, and (3) auth-mode “sentinels” and provider handles can’t be accidentally triggered or misused.","repository":"openai/openai-python","domain":"ai-agents","topic":"Security","language":"Python","updated":"2026-05-04","comments":8,"stars":30731,"raw":"https://awesomereviewers.com/raw/openai-python-secure-auth-and-logging.md"},{"slug":"last30days-skill-sanitize-untrusted-boundaries","title":"Sanitize Untrusted Boundaries","description":"Treat every externally sourced value (API results, URLs, cached artifacts, filesystem-derived error strings, CLI/config inputs) as untrusted at the boundary, and apply **context-specific hardening** before it can be rendered, logged, persisted, or used in a subprocess.","repository":"mvanhorn/last30days-skill","domain":"security","topic":"Security","language":"Python","updated":"2026-07-30","comments":6,"stars":57799,"raw":"https://awesomereviewers.com/raw/last30days-skill-sanitize-untrusted-boundaries.md"},{"slug":"ragflow-centralized-input-guards","title":"Centralized input guards","description":"Require a shared, spec-aligned “guard” step for any untrusted input used in security-sensitive contexts (SQL construction, dynamic table names, outbound URL fetch). Fail closed (raise a safe exception) before interpolation/requests, and reuse a single utility to avoid security-policy drift.","repository":"infiniflow/ragflow","domain":"llm-infra","topic":"Security","language":"Python","updated":"2026-04-30","comments":6,"stars":80174,"raw":"https://awesomereviewers.com/raw/ragflow-centralized-input-guards.md"},{"slug":"airflow-validate-user-controlled-paths","title":"Validate user-controlled paths","description":"Always validate and sanitize user-provided inputs used in file path operations to prevent path traversal attacks. Path traversal vulnerabilities can allow attackers to access unauthorized files outside the intended directory structure.","repository":"apache/airflow","domain":"orchestration","topic":"Security","language":"Python","updated":"2025-06-30","comments":6,"stars":40858,"raw":"https://awesomereviewers.com/raw/airflow-validate-user-controlled-paths.md"},{"slug":"prowler-least-privilege-principle","title":"Least privilege principle","description":"Always follow the principle of least privilege by granting the minimum permissions necessary for functionality. This applies to various security contexts:","repository":"prowler-cloud/prowler","domain":"security","topic":"Security","language":"Python","updated":"2025-06-03","comments":6,"stars":11834,"raw":"https://awesomereviewers.com/raw/prowler-least-privilege-principle.md"},{"slug":"codex-security-defensive-security-validation","title":"Defensive Security Validation","description":"Apply defensive validation rules anywhere code derives security decisions from paths, filesystem objects, executables, or integrity metadata. Guidelines","repository":"openai/codex-security","domain":"security","topic":"Security","language":"Python","updated":"2026-08-04","comments":5,"stars":9394,"raw":"https://awesomereviewers.com/raw/codex-security-defensive-security-validation.md"}],"prompt_count":48},{"slug":"interfaces","title":"Public APIs, signatures, error paths, nullability","topics":["API","Error Handling","Null Handling"],"checks":[{"kind":"type-checking","title":"Type checking","method":"static_analysis","method_slug":"static-analysis","catches":"Wrong types, unhandled null or None, call signatures broken across modules.","tool":{"id":"mypy","method":"static_analysis","kind":"type-checking","languages":["python"],"upstream":"https://github.com/python/mypy","docs":"https://mypy.readthedocs.io/en/stable/command_line.html","autofix":false,"exit_codes":{"0":"no type errors","1":"type errors found","2":"crash or invalid invocation"},"repos":27,"share":42,"commands":["mypy","mypy --version","mypy --cache-dir=/dev/null --config-file pyproject.toml .'"],"run":"mypy","via":"pre-commit hook mypy","triggers":["pre_commit","ci","local"],"examples":[{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[{"id":"pyright","repos":11,"share":17}],"note":null},{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null},{"kind":"property-tests","title":"Property-based tests","method":"testing","method_slug":"testing","catches":"Edge-case inputs nobody wrote a test for; invariants over generated data.","tool":{"id":"hypothesis","method":"testing","kind":"property-tests","languages":["python"],"upstream":"https://github.com/HypothesisWorks/hypothesis","docs":null,"autofix":false,"exit_codes":{},"repos":9,"share":14,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"azure-cli-actionable-error-propagation","title":"Actionable Error Propagation","description":"When handling failures, ensure your code (a) raises the right exception to control exit code/automation, (b) doesn’t silently ignore user intent or skip required checks, and (c) produces parameter-aware, actionable messages.","repository":"Azure/azure-cli","domain":"cloud-infra","topic":"Error Handling","language":"Python","updated":"2026-07-26","comments":18,"stars":4592,"raw":"https://awesomereviewers.com/raw/azure-cli-actionable-error-propagation.md"},{"slug":"mcp-avoid-silent-error-masking","title":"Avoid silent error masking","description":"Establish a team-wide error-handling contract: 1) Never swallow exceptions in production paths - Avoid bare `except: pass` / broad exception fallbacks that hide the real failure.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Error Handling","language":"Python","updated":"2026-07-30","comments":14,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-avoid-silent-error-masking.md"},{"slug":"pr-agent-exception-handling-policy","title":"Exception Handling Policy","description":"Adopt an exception-handling standard that distinguishes **critical control-flow** from **non-critical side effects**, while enforcing safe, observable exception patterns.","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"Error Handling","language":"Python","updated":"2026-06-12","comments":13,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-exception-handling-policy.md"},{"slug":"python-validate-inputs-explicitly","title":"Validate Inputs Explicitly","description":"Enforce each function’s documented input contract with early, explicit checks; raise specific exceptions with accurate messages (avoid asserts, silent fallbacks/defaults, and misleading error paths after normalization). Keep try/except blocks as narrow as possible—only around the operations that can fail.","repository":"TheAlgorithms/Python","domain":"docs","topic":"Error Handling","language":"Python","updated":"2026-05-05","comments":11,"stars":220912,"raw":"https://awesomereviewers.com/raw/python-validate-inputs-explicitly.md"},{"slug":"heretic-surface-errors-clearly","title":"Surface errors clearly","description":"Rule: Fail fast, validate assumptions, and distinguish user cancellation. Motivation - Hidden or silently handled errors lead to incorrect behavior, confusing UX, and hard-to-debug failures (e.g., silently ignoring invalid saved study settings, treating Ctrl+C as a legitimate choice, or swallowing invalid split specs).","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Error Handling","language":"Python","updated":"2026-01-20","comments":11,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-surface-errors-clearly.md"},{"slug":"unstructured-explicit-none-handling","title":"explicit None handling","description":"Always handle potential None values explicitly through defensive programming patterns, proper type annotations, and explicit checks to prevent runtime errors and improve code reliability.","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Null Handling","language":"Python","updated":"2025-07-16","comments":11,"stars":12116,"raw":"https://awesomereviewers.com/raw/unstructured-explicit-none-handling.md"},{"slug":"celery-deterministic-exception-handling","title":"Deterministic exception handling","description":"When handling errors, ensure (1) you don’t accidentally change which exception path fires, (2) recovery/cleanup is deterministic, and (3) any wrapping/aggregation preserves context and remains actionable.","repository":"celery/celery","domain":"orchestration","topic":"Error Handling","language":"Python","updated":"2026-03-25","comments":10,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-deterministic-exception-handling.md"},{"slug":"dify-safe-null-handling","title":"Safe null handling","description":"Handle null and undefined values safely by using appropriate fallback patterns, validating critical parameters early, and avoiding mutable default arguments.","repository":"langgenius/dify","domain":"llm-infra","topic":"Null Handling","language":"Python","updated":"2025-08-31","comments":10,"stars":114231,"raw":"https://awesomereviewers.com/raw/dify-safe-null-handling.md"},{"slug":"pr-agent-null-safe-defaults","title":"Null-safe Defaults","description":"When handling settings, parsed model outputs, and lookup results, assume values may be missing (None/empty), omitted, or of the wrong type. Prevent NoneType and KeyError crashes by applying a consistent null-safety pattern.","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"Null Handling","language":"Python","updated":"2025-08-14","comments":10,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-null-safe-defaults.md"},{"slug":"hermes-agent-use-null-safe-config-reads","title":"Use Null-Safe Config Reads","description":"Treat every potentially-null/nullable config subsection and external payload field as untrusted: normalize it before accessing deeper keys or calling methods.","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Null Handling","language":"Python","updated":"2026-07-20","comments":9,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-use-null-safe-config-reads.md"},{"slug":"mcp-accurate-api-contracts","title":"Accurate API Contracts","description":"For API/tool-facing code, treat the external API contract as non-negotiable: validate parameter bounds against the upstream model/docs, handle pagination only when the API is actually paginated, and ensure your client/tool surface (operation routing, errors, and side-effect metadata) is explicit and consistent.","repository":"awslabs/mcp","domain":"ai-agents","topic":"API","language":"Python","updated":"2026-07-20","comments":9,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-accurate-api-contracts.md"},{"slug":"openai-python-standardize-typed-errors","title":"Standardize Typed Errors","description":"Use consistent, typed exceptions at the point of failure, with structured context, and never rely on unchecked/bypassed paths that convert errors into later crashes.","repository":"openai/openai-python","domain":"ai-agents","topic":"Error Handling","language":"Python","updated":"2026-05-04","comments":9,"stars":30731,"raw":"https://awesomereviewers.com/raw/openai-python-standardize-typed-errors.md"}],"prompt_count":167},{"slug":"services","title":"Service and framework code","topics":["Fastify","NestJS","Spring","Axum","Celery","Temporal"],"checks":[{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null},{"kind":"version-matrix","title":"Version and platform matrix","method":"testing","method_slug":"testing","catches":"Breakage on a runtime version, OS or feature combination you did not run locally.","tool":{"id":"ci-matrix","method":"testing","kind":"version-matrix","languages":["*"],"upstream":"https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations","docs":null,"autofix":false,"exit_codes":{},"repos":36,"share":56,"commands":["analyze (include: 2)","analyze (include: 3)","analyze (language: 1)"],"run":"analyze (include: 2)","via":null,"triggers":["ci"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"celery-test-canvas-edge-cases","title":"Test Canvas Edge Cases","description":"When changing Celery task dispatch semantics (especially Canvas: chains/groups/chords, unroll/freeze, and composed workflows), add regression tests that:","repository":"celery/celery","domain":"orchestration","topic":"Celery","language":"Python","updated":"2026-04-06","comments":4,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-test-canvas-edge-cases.md"},{"slug":"sdk-python-ensure-deterministic-resume-behavior","title":"Ensure deterministic resume behavior","description":"When implementing persistence and resume functionality in durable execution systems, ensure that state is persisted at consistent event boundaries and that resume logic handles all execution states explicitly to maintain deterministic behavior.","repository":"strands-agents/sdk-python","domain":"ai-agents","topic":"Temporal","language":"Python","updated":"2025-11-10","comments":4,"stars":4044,"raw":"https://awesomereviewers.com/raw/sdk-python-ensure-deterministic-resume-behavior.md"},{"slug":"dify-offload-heavy-operations","title":"Offload heavy operations","description":"Move heavy operations, especially those involving large data processing or bulk deletions, from synchronous request handlers to asynchronous Celery tasks. This prevents request timeouts, improves user experience, and allows for better resource management.","repository":"langgenius/dify","domain":"llm-infra","topic":"Celery","language":"Python","updated":"2025-08-28","comments":2,"stars":114231,"raw":"https://awesomereviewers.com/raw/dify-offload-heavy-operations.md"},{"slug":"posthog-leverage-framework-capabilities","title":"leverage framework capabilities","description":"Structure workflows and activities to take full advantage of the orchestration framework's built-in capabilities for fault tolerance, retries, and durable execution rather than implementing custom solutions.","repository":"PostHog/posthog","domain":"data-systems","topic":"Temporal","language":"Python","updated":"2025-08-19","comments":2,"stars":28460,"raw":"https://awesomereviewers.com/raw/posthog-leverage-framework-capabilities.md"},{"slug":"prowler-task-signature-methods","title":"Task signature methods","description":"When chaining Celery tasks, choose the correct signature method: - Use `.s()` when a task needs the output from the previous task in the chain - Use `.si()` (immutable signature) when a task doesn''t need any output from the previous task","repository":"prowler-cloud/prowler","domain":"security","topic":"Celery","language":"Python","updated":"2025-06-23","comments":2,"stars":11834,"raw":"https://awesomereviewers.com/raw/prowler-task-signature-methods.md"},{"slug":"sentry-use-acks-late-for-reliability","title":"Use acks_late for reliability","description":"Configure Celery tasks with `acks_late=True` when task reliability is critical and you prefer to risk duplicate processing rather than task loss. This setting ensures tasks aren't acknowledged until successfully completed, allowing them to be reprocessed if a worker crashes or a deployment occurs during task execution.","repository":"getsentry/sentry","domain":"observability","topic":"Celery","language":"Python","updated":"2025-06-20","comments":2,"stars":41297,"raw":"https://awesomereviewers.com/raw/sentry-use-acks-late-for-reliability.md"}],"prompt_count":6},{"slug":"algorithms","title":"Algorithms, parsers, data transforms","topics":["Algorithms"],"checks":[{"kind":"property-tests","title":"Property-based tests","method":"testing","method_slug":"testing","catches":"Edge-case inputs nobody wrote a test for; invariants over generated data.","tool":{"id":"hypothesis","method":"testing","kind":"property-tests","languages":["python"],"upstream":"https://github.com/HypothesisWorks/hypothesis","docs":null,"autofix":false,"exit_codes":{},"repos":9,"share":14,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},"alternatives":[],"note":null},{"kind":"fuzzing","title":"Fuzzing","method":"testing","method_slug":"testing","catches":"Crashes, panics and hangs on malformed input, especially in parsers and decoders.","tool":null,"alternatives":[],"note":null},{"kind":"mutation-testing","title":"Mutation testing","method":"testing","method_slug":"testing","catches":"Tests that keep passing whatever the code does.","tool":{"id":"mutmut","method":"testing","kind":"mutation-testing","languages":["python"],"upstream":"https://github.com/boxed/mutmut","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":["mutmut run 2>&1"],"run":"mutmut run 2>&1","via":null,"triggers":["ci"],"examples":[{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},"alternatives":[],"note":null},{"kind":"proofs","title":"Proofs and specifications","method":"formal","method_slug":"formal","catches":"Design-level bugs in protocols and algorithms, checked against a specification.","tool":{"id":"lean","method":"formal","kind":"proofs","languages":["*"],"upstream":"https://github.com/leanprover/lean4","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"oraios/serena","slug":"oraios-serena"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"checkov-choose-optimal-algorithms","title":"Choose optimal algorithms","description":"Always select appropriate data structures and algorithms based on their performance characteristics and the specific operations your code needs to perform. This can significantly improve both code readability and execution efficiency.","repository":"bridgecrewio/checkov","domain":"security","topic":"Algorithms","language":"Python","updated":"2024-12-04","comments":8,"stars":7667,"raw":"https://awesomereviewers.com/raw/checkov-choose-optimal-algorithms.md"},{"slug":"langchain-deterministic-algorithm-correctness","title":"Deterministic Algorithm Correctness","description":"When implementing non-trivial algorithms (graph ordering, batching under constraints, multi-pass transformations), apply four requirements: 1) **Guarantee termination with explicit guards/invariants**","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Algorithms","language":"Python","updated":"2026-04-26","comments":7,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-deterministic-algorithm-correctness.md"},{"slug":"poetry-optimize-algorithmic-efficiency","title":"optimize algorithmic efficiency","description":"Choose efficient algorithms and data structures to avoid unnecessary computational complexity. Look for opportunities to replace expensive operations with more efficient alternatives, especially when dealing with collections and search operations.","repository":"python-poetry/poetry","domain":"devtools","topic":"Algorithms","language":"Python","updated":"2024-11-11","comments":7,"stars":33496,"raw":"https://awesomereviewers.com/raw/poetry-optimize-algorithmic-efficiency.md"},{"slug":"boto3-prevent-algorithmic-pitfalls","title":"Prevent algorithmic pitfalls","description":"Avoid common algorithmic errors that lead to incorrect results or inefficient code by following these practices: 1. **Never modify a collection while iterating over it**","repository":"boto/boto3","domain":"cloud-infra","topic":"Algorithms","language":"Python","updated":"2023-11-29","comments":7,"stars":9417,"raw":"https://awesomereviewers.com/raw/boto3-prevent-algorithmic-pitfalls.md"},{"slug":"hermes-agent-precise-matching-rules","title":"Precise Matching Rules","description":"When implementing parsing/classification logic, treat the input grammar as a contract: (1) constrain pattern matches to the intended envelope/boundaries/character sets (avoid prefix/superset regexes and overly broad Unicode ranges), (2) ensure every computed signal/metric is actually used in the final decision, and (3) add targeted regression tests for each...","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Algorithms","language":"Python","updated":"2026-07-18","comments":6,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-precise-matching-rules.md"},{"slug":"python-algorithm-correctness-standards","title":"Algorithm Correctness Standards","description":"When implementing algorithms, enforce correctness and reliability by following this checklist: 1) Validate stated preconditions (and document them) - If the algorithm only works for certain input ranges/shapes (e.g., cyclic sort requires values in 1..n with no duplicates), explicitly check those conditions and fail fast with a clear error.","repository":"TheAlgorithms/Python","domain":"docs","topic":"Algorithms","language":"Python","updated":"2026-05-05","comments":6,"stars":220912,"raw":"https://awesomereviewers.com/raw/python-algorithm-correctness-standards.md"},{"slug":"dspy-implement-algorithms-correctly","title":"implement algorithms correctly","description":"Ensure algorithmic implementations use correct patterns, handle edge cases gracefully, and avoid silent failures. This includes using proper mathematical functions, correct object access methods, and robust error handling for each operation.","repository":"stanfordnlp/dspy","domain":"ai-agents","topic":"Algorithms","language":"Python","updated":"2025-05-15","comments":6,"stars":27813,"raw":"https://awesomereviewers.com/raw/dspy-implement-algorithms-correctly.md"},{"slug":"mxnet-optimize-iteration-patterns","title":"Optimize iteration patterns","description":"When iterating through collections, choose the most efficient iteration pattern based on what information you actually need. If you only need the elements without using their indices, use direct iteration instead of enumerate:","repository":"apache/mxnet","domain":"ml-systems","topic":"Algorithms","language":"Python","updated":"2021-08-25","comments":6,"stars":20801,"raw":"https://awesomereviewers.com/raw/mxnet-optimize-iteration-patterns.md"},{"slug":"cpython-verify-algorithmic-equivalence","title":"Verify algorithmic equivalence","description":"When replacing an exact check or well-defined numeric algorithm with an optimized, approximated, or restructured version (e.g., a bit-length shortcut instead of a direct comparison, or a rewritten normalization loop), you must prove or thoroughly test that the new logic is mathematically equivalent to the original across all boundary values, not just...","repository":"python/cpython","domain":"app-frameworks","topic":"Algorithms","language":"Python","updated":"2026-10-29","comments":5,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-verify-algorithmic-equivalence.md"},{"slug":"last30days-skill-consistent-guarded-ranking","title":"Consistent, Guarded Ranking","description":"When implementing sorting/ranking or token-based relevance in retrieval pipelines, treat the algorithm as a system with strict contracts: 1) Keep ranking features consistent across stages","repository":"mvanhorn/last30days-skill","domain":"app-frameworks","topic":"Algorithms","language":"Python","updated":"2026-07-29","comments":5,"stars":57799,"raw":"https://awesomereviewers.com/raw/last30days-skill-consistent-guarded-ranking.md"},{"slug":"ragflow-deterministic-mapping-pipeline","title":"Deterministic Mapping Pipeline","description":"When implementing parsing/storage/retrieval logic (or any pipeline with downstream queries), design the algorithm so that *representations, keys, and batching decisions are stable and consistent*:","repository":"infiniflow/ragflow","domain":"llm-infra","topic":"Algorithms","language":"Python","updated":"2026-04-27","comments":5,"stars":80174,"raw":"https://awesomereviewers.com/raw/ragflow-deterministic-mapping-pipeline.md"},{"slug":"heretic-optimization-algorithm-compatibility","title":"Optimization algorithm compatibility","description":"When implementing or changing optimization code (samplers, objectives, and result selection), ensure algorithmic correctness, preserve sampler assumptions, and prefer explicit post-processing over ad‑hoc objective hacks.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Algorithms","language":"Python","updated":"2026-01-20","comments":5,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-optimization-algorithm-compatibility.md"}],"prompt_count":47},{"slug":"concurrency","title":"Threads, async code, locks, shared state","topics":["Concurrency"],"checks":[{"kind":"concurrency-model-checking","title":"Concurrency model checking","method":"formal","method_slug":"formal","catches":"Races and orderings that fail only under specific interleavings.","tool":null,"alternatives":[],"note":null},{"kind":"ub-detection","title":"Undefined-behaviour detection","method":"formal","method_slug":"formal","catches":"Memory-safety and aliasing violations in unsafe code.","tool":null,"alternatives":[],"note":null},{"kind":"property-tests","title":"Property-based tests","method":"testing","method_slug":"testing","catches":"Edge-case inputs nobody wrote a test for; invariants over generated data.","tool":{"id":"hypothesis","method":"testing","kind":"property-tests","languages":["python"],"upstream":"https://github.com/HypothesisWorks/hypothesis","docs":null,"autofix":false,"exit_codes":{},"repos":9,"share":14,"commands":[],"run":null,"via":null,"triggers":[],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"infiniflow/ragflow","slug":"infiniflow-ragflow"},{"repository":"PostHog/posthog","slug":"posthog-posthog"},{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"hermes-agent-nonblocking-concurrency-rules","title":"Nonblocking Concurrency Rules","description":"Establish a single concurrency standard: in async code, never block the event loop; in multi-thread/state-machine code, make ownership and cancellation atomic; and in cleanup/shutdown, use bounded, interrupt-friendly paths.","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Concurrency","language":"Python","updated":"2026-07-28","comments":14,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-nonblocking-concurrency-rules.md"},{"slug":"langchain-avoid-shared-mutable-state","title":"Avoid shared mutable state","description":"When working with concurrency (threads/async), ensure code is safe under parallel invocations and does not block or re-enter running event loops. Rules:","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Concurrency","language":"Python","updated":"2026-04-13","comments":9,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-avoid-shared-mutable-state.md"},{"slug":"celery-thread-safe-lifecycle-isolation","title":"Thread-safe lifecycle isolation","description":"When changing concurrency/background execution, ensure (a) state is isolated per thread/consumer/instance, and (b) shutdown/cleanup and exception signaling are coordinated with explicit synchronization.","repository":"celery/celery","domain":"orchestration","topic":"Concurrency","language":"Python","updated":"2026-03-12","comments":9,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-thread-safe-lifecycle-isolation.md"},{"slug":"mcp-safe-async-resource-handling","title":"Safe Async Resource Handling","description":"Shared resources (connections, clients, caches) must be concurrency-safe across async tool invocations. **Standard** 1. **Validate before publish**: never put a resource into a shared cache/map until it is known-good. This prevents race windows where other coroutines can use an unvalidated handle.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Concurrency","language":"Python","updated":"2026-07-30","comments":7,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-safe-async-resource-handling.md"},{"slug":"openai-python-avoid-event-loop-blocking","title":"Avoid event-loop blocking","description":"Do not perform blocking I/O or other long-running synchronous work on asyncio’s event loop (especially in async client construction). Offload to worker threads (e.g., `asyncio.to_thread`) and prefer lazy credential/platform resolution protected by an async lock.","repository":"openai/openai-python","domain":"ai-agents","topic":"Concurrency","language":"Python","updated":"2026-05-01","comments":7,"stars":30731,"raw":"https://awesomereviewers.com/raw/openai-python-avoid-event-loop-blocking.md"},{"slug":"sdk-python-choose-appropriate-synchronization","title":"Choose appropriate synchronization","description":"Select the correct synchronization mechanism based on your execution context and avoid unnecessary synchronization overhead. In async contexts with coroutines, locks are often unnecessary since coroutines run cooperatively in a single thread. Use `asyncio.Lock()` for async contexts and `threading.Lock()` for multi-threaded scenarios. When bridging sync and...","repository":"strands-agents/sdk-python","domain":"ai-agents","topic":"Concurrency","language":"Python","updated":"2025-11-07","comments":7,"stars":4044,"raw":"https://awesomereviewers.com/raw/sdk-python-choose-appropriate-synchronization.md"},{"slug":"lmcache-ensure-operation-completion-safety","title":"Ensure operation completion safety","description":"In concurrent code, ensure that operations complete safely before proceeding to prevent race conditions and data corruption. This applies to several scenarios:","repository":"LMCache/LMCache","domain":"llm-infra","topic":"Concurrency","language":"Python","updated":"2025-07-15","comments":7,"stars":3800,"raw":"https://awesomereviewers.com/raw/lmcache-ensure-operation-completion-safety.md"},{"slug":"ragflow-non-blocking-async-recovery","title":"Non-Blocking Async Recovery","description":"Concurrency standard: (1) keep async code non-blocking, (2) don’t change sync/async boundaries unless callers support it, and (3) make recovery/state transitions race-safe.","repository":"infiniflow/ragflow","domain":"llm-infra","topic":"Concurrency","language":"Python","updated":"2026-04-10","comments":6,"stars":80174,"raw":"https://awesomereviewers.com/raw/ragflow-non-blocking-async-recovery.md"},{"slug":"dify-concurrent-resource-management","title":"Concurrent resource management","description":"When implementing concurrent operations, properly manage shared resources to prevent race conditions and ensure system stability. Use database-level locking mechanisms like `SELECT ... FOR UPDATE SKIP LOCKED` to prevent concurrent access to the same data. Configure thread pools with appropriate limits and timeouts to avoid resource exhaustion. Separate...","repository":"langgenius/dify","domain":"llm-infra","topic":"Concurrency","language":"Python","updated":"2025-09-10","comments":6,"stars":114231,"raw":"https://awesomereviewers.com/raw/dify-concurrent-resource-management.md"},{"slug":"cpython-deterministic-concurrency-tests","title":"Deterministic concurrency tests","description":"When writing tests that try to trigger a race condition or verify thread-safety, do not rely on implicit timing (e.g. just calling `Thread.start()` and hoping the scheduler interleaves correctly, or sprinkling `time.sleep()` calls) to hit the narrow window under test. Such tests are flaky: they may pass hundreds of times and still miss the bug, or...","repository":"python/cpython","domain":"app-frameworks","topic":"Concurrency","language":"Python","updated":"2026-10-12","comments":5,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-deterministic-concurrency-tests.md"},{"slug":"openpilot-use-context-managers-concurrency","title":"use context managers concurrency","description":"When working with concurrent operations involving shared resources or processes, use context managers and explicit synchronization to ensure proper cleanup and thread safety. This prevents resource leaks, race conditions, and ensures graceful shutdown even when operations are interrupted.","repository":"commaai/openpilot","domain":"ml-systems","topic":"Concurrency","language":"Python","updated":"2025-08-13","comments":5,"stars":58214,"raw":"https://awesomereviewers.com/raw/openpilot-use-context-managers-concurrency.md"},{"slug":"litellm-background-task-coordination","title":"background task coordination","description":"When working with background tasks in async applications, ensure proper task lifecycle management and coordination to prevent memory leaks, race conditions, and resource conflicts.","repository":"BerriAI/litellm","domain":"llm-infra","topic":"Concurrency","language":"Python","updated":"2025-06-13","comments":5,"stars":28310,"raw":"https://awesomereviewers.com/raw/litellm-background-task-coordination.md"}],"prompt_count":30},{"slug":"networking","title":"Network calls, retries, timeouts, protocols","topics":["Networking","Axios"],"checks":[{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null},{"kind":"fuzzing","title":"Fuzzing","method":"testing","method_slug":"testing","catches":"Crashes, panics and hangs on malformed input, especially in parsers and decoders.","tool":null,"alternatives":[],"note":null}],"prompts":[{"slug":"checkov-restrict-public-access","title":"Restrict public access","description":"Cloud resources should be configured to restrict public network access by default to minimize potential attack surfaces. Always explicitly disable public-facing endpoints and network interfaces unless absolutely necessary for the service to function.","repository":"bridgecrewio/checkov","domain":"security","topic":"Networking","language":"Python","updated":"2025-05-13","comments":10,"stars":7667,"raw":"https://awesomereviewers.com/raw/checkov-restrict-public-access.md"},{"slug":"checkov-restrict-public-network","title":"Restrict public network","description":"Always configure cloud resources to restrict or disable public network access unless explicitly required for the application's functionality. Public network exposure increases the attack surface and should be minimized.","repository":"bridgecrewio/checkov","domain":"security","topic":"Networking","language":"Python","updated":"2025-05-13","comments":8,"stars":7668,"raw":"https://awesomereviewers.com/raw/checkov-restrict-public-network.md"},{"slug":"poetry-configure-http-requests-properly","title":"Configure HTTP requests properly","description":"When making HTTP requests, use standard library enums for status codes, set appropriate timeouts, and handle redirects efficiently. Avoid raw status code numbers in favor of HTTPStatus enums for better readability and maintainability. Always configure timeouts to prevent indefinite hanging, preferably making them configurable via environment variables with...","repository":"python-poetry/poetry","domain":"devtools","topic":"Networking","language":"Python","updated":"2024-02-26","comments":5,"stars":33496,"raw":"https://awesomereviewers.com/raw/poetry-configure-http-requests-properly.md"},{"slug":"cpython-preserve-protocol-semantics","title":"Preserve protocol semantics","description":"Network/HTTP code must strictly respect protocol contracts and avoid silent behavioral changes. When parsing values governed by an RFC grammar (e.g. Content-Length or chunk-size), validate against that grammar before handing them to a more permissive parser like `int()`, so unintended inputs (signs, underscores, `0x` prefixes, etc.) aren't accepted as...","repository":"python/cpython","domain":"cloud-infra","topic":"Networking","language":"Python","updated":"2026-10-23","comments":4,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-preserve-protocol-semantics.md"},{"slug":"openai-python-robust-aiohttp-networking","title":"Robust aiohttp Networking","description":"When implementing HTTP/multipart requests and streaming (SSE/chunked) parsing with aiohttp, follow these rules: - Prefer aiohttp’s built-in primitives for multipart bodies (e.g., MultipartWriter) instead of manually encoding file payloads or copying brittle logic from other clients.","repository":"openai/openai-python","domain":"ai-agents","topic":"Networking","language":"Python","updated":"2023-01-12","comments":3,"stars":30731,"raw":"https://awesomereviewers.com/raw/openai-python-robust-aiohttp-networking.md"},{"slug":"flask-http-protocol-correctness","title":"HTTP protocol correctness","description":"When writing code that touches network addressing or HTTP headers, follow the exact protocol semantics rather than relying on convenient shortcuts, since subtle deviations break compatibility.","repository":"pallets/flask","domain":"cloud-infra","topic":"Networking","language":"Python","updated":"2017-05-24","comments":3,"stars":75022,"raw":"https://awesomereviewers.com/raw/flask-http-protocol-correctness.md"},{"slug":"anthropic-sdk-python-manage-network-resources","title":"Manage network resources","description":"When working with streaming or TCP options, be explicit and defensive: 1) Closing streams: If you terminate a stream early (e.g., you don’t fully consume an HTTP/SSE iterator), ensure you close the underlying network resource—not just a wrapper/decoder that may not implement `close()`.","repository":"anthropics/anthropic-sdk-python","domain":"ai-agents","topic":"Networking","language":"Python","updated":"2025-10-16","comments":2,"stars":3392,"raw":"https://awesomereviewers.com/raw/anthropic-sdk-python-manage-network-resources.md"},{"slug":"lmcache-network-service-identification","title":"network service identification","description":"Use descriptive string identifiers instead of numeric ports or generic IDs when designing network services to avoid conflicts and improve maintainability. Different network services should have clearly distinguishable communication channels.","repository":"LMCache/LMCache","domain":"llm-infra","topic":"Networking","language":"Python","updated":"2025-07-29","comments":2,"stars":3800,"raw":"https://awesomereviewers.com/raw/lmcache-network-service-identification.md"},{"slug":"browser-use-validate-connection-timeouts","title":"validate connection timeouts","description":"Always validate network connection states and implement explicit timeout handling to prevent zombie connections and ensure robust network operations. Connection objects can appear valid while actually being disconnected, and network operations without timeouts can hang indefinitely.","repository":"browser-use/browser-use","domain":"ai-agents","topic":"Networking","language":"Python","updated":"2025-05-30","comments":2,"stars":69139,"raw":"https://awesomereviewers.com/raw/browser-use-validate-connection-timeouts.md"},{"slug":"openpilot-platform-specific-socket-configuration","title":"Platform-specific socket configuration","description":"When configuring TCP socket options, always check the platform and apply appropriate settings for each operating system. Different platforms support different socket options and may require different approaches for connection management.","repository":"commaai/openpilot","domain":"ml-systems","topic":"Networking","language":"Python","updated":"2025-02-16","comments":2,"stars":58214,"raw":"https://awesomereviewers.com/raw/openpilot-platform-specific-socket-configuration.md"}],"prompt_count":10},{"slug":"ui","title":"UI components and pages","topics":["React","Next","Next.js","Vue","Angular"],"checks":[{"kind":"browser-tests","title":"End-to-end browser tests","method":"testing","method_slug":"testing","catches":"User flows broken across components, routing and the network.","tool":null,"alternatives":[],"note":null},{"kind":"linting","title":"Linting","method":"static_analysis","method_slug":"static-analysis","catches":"Bug-prone patterns, unused code and conventions the formatter does not cover.","tool":{"id":"ruff-check","method":"static_analysis","kind":"linting","languages":["python"],"upstream":"https://github.com/astral-sh/ruff","docs":"https://docs.astral.sh/ruff/linter/#exit-codes","autofix":true,"exit_codes":{"0":"no violations","1":"violations found","2":"invalid configuration, CLI options or internal error"},"repos":46,"share":72,"commands":["ruff check .","ruff check","ruff check . --fix"],"run":"ruff check .","via":"pre-commit hook ruff-check","triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"}]},"alternatives":[{"id":"flake8","repos":13,"share":20},{"id":"pylint","repos":8,"share":12}],"note":null}],"prompts":[],"prompt_count":0},{"slug":"data","title":"Databases, migrations, caching","topics":["Database","Migrations","Caching"],"checks":[{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null},{"kind":"version-matrix","title":"Version and platform matrix","method":"testing","method_slug":"testing","catches":"Breakage on a runtime version, OS or feature combination you did not run locally.","tool":{"id":"ci-matrix","method":"testing","kind":"version-matrix","languages":["*"],"upstream":"https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations","docs":null,"autofix":false,"exit_codes":{},"repos":36,"share":56,"commands":["analyze (include: 2)","analyze (include: 3)","analyze (language: 1)"],"run":"analyze (include: 2)","via":null,"triggers":["ci"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"dify-sqlalchemy-20-patterns","title":"SQLAlchemy 2.0 patterns","description":"Migrate from legacy SQLAlchemy 1.x query patterns to modern 2.0 style for better performance, clarity, and future compatibility. This involves several key transformations:","repository":"langgenius/dify","domain":"llm-infra","topic":"Database","language":"Python","updated":"2025-08-31","comments":14,"stars":114231,"raw":"https://awesomereviewers.com/raw/dify-sqlalchemy-20-patterns.md"},{"slug":"hermes-agent-cache-scope-and-keys","title":"Cache Scope and Keys","description":"When adding or modifying caching/deduplication, ensure the cache identity (routing + key + scope) matches the exact contract where reuse is valid. Key rules:","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Caching","language":"Python","updated":"2026-07-28","comments":7,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-cache-scope-and-keys.md"},{"slug":"langchain-safe-caching-practices","title":"Safe caching practices","description":"Apply caching only when it is safe, bounded, and correct: 1) Avoid unbounded method memoization - Don’t use `functools.lru_cache/cache` directly on methods whose arguments can grow without a tight bound (risk of memory leaks). If you must cache, use a bounded cache (`maxsize=...`) or a different lifecycle.","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Caching","language":"Python","updated":"2026-05-01","comments":7,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-safe-caching-practices.md"},{"slug":"mcp-credential-aware-caching","title":"Credential-Aware Caching","description":"When caching heavyweight clients or connections, treat authentication identity (tokens/secret_arn/derived ARN) as part of cache correctness—not just cache performance.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Caching","language":"Python","updated":"2026-07-22","comments":6,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-credential-aware-caching.md"},{"slug":"posthog-cache-invalidation-consistency","title":"Cache invalidation consistency","description":"Ensure comprehensive and consistent cache invalidation patterns across all models that affect cached data. Every model that can impact cached content must have proper invalidation signals, and cache keys should be designed to enable targeted busting without affecting unrelated data.","repository":"PostHog/posthog","domain":"data-systems","topic":"Caching","language":"Python","updated":"2025-08-18","comments":6,"stars":28460,"raw":"https://awesomereviewers.com/raw/posthog-cache-invalidation-consistency.md"},{"slug":"django-use-connection-by-alias","title":"Use connection by alias","description":"When working with database operations in Django projects that might use multiple database backends, always access database features and operations through `connections[alias]` instead of the global `connection` object. This ensures your code works correctly regardless of which database backend is being used for a specific operation.","repository":"django/django","domain":"app-frameworks","topic":"Database","language":"Python","updated":"2025-06-27","comments":6,"stars":84182,"raw":"https://awesomereviewers.com/raw/django-use-connection-by-alias.md"},{"slug":"openai-python-cache-validity-and-bounds","title":"Cache validity and bounds","description":"When adding caching, ensure **(1) correctness via validity/refresh** and **(2) safety via bounds/staleness resistance**. ### 1) Align cache lifetime with real validity","repository":"openai/openai-python","domain":"ai-agents","topic":"Caching","language":"Python","updated":"2026-04-28","comments":5,"stars":30731,"raw":"https://awesomereviewers.com/raw/openai-python-cache-validity-and-bounds.md"},{"slug":"lmcache-cache-state-consistency","title":"Cache state consistency","description":"Ensure cache operations maintain consistent state and handle shared resources properly throughout the cache lifecycle. This includes proper key type management, safe eviction of shared entries, and accurate state tracking across different operational phases.","repository":"LMCache/LMCache","domain":"llm-infra","topic":"Caching","language":"Python","updated":"2025-07-26","comments":5,"stars":3800,"raw":"https://awesomereviewers.com/raw/lmcache-cache-state-consistency.md"},{"slug":"sentry-prevent-n1-database-queries","title":"Prevent N+1 database queries","description":"Avoid N+1 database queries by using appropriate Django ORM features like select_related(), prefetch_related(), and bulk operations. N+1 queries occur when you access related objects in a loop, causing additional database queries for each iteration.","repository":"getsentry/sentry","domain":"observability","topic":"Database","language":"Python","updated":"2025-07-08","comments":5,"stars":41297,"raw":"https://awesomereviewers.com/raw/sentry-prevent-n1-database-queries.md"},{"slug":"celery-cache-only-after-inputs","title":"Cache Only After Inputs","description":"When adding or using caching (e.g., @cached_property, sys.modules-dependent behavior, or internal resolution caches), ensure the cached value depends only on inputs that are already stable.","repository":"celery/celery","domain":"orchestration","topic":"Caching","language":"Python","updated":"2026-03-09","comments":4,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-cache-only-after-inputs.md"},{"slug":"sglang-optimize-cache-performance","title":"Optimize cache performance","description":"Prioritize cache performance by leveraging proven optimization techniques and avoiding performance anti-patterns. Use standard caching decorators like @lru_cache for functions that benefit from memoization, implement zero-copy operations when moving data between cache layers, and avoid unnecessary operations that degrade performance.","repository":"sgl-project/sglang","domain":"llm-infra","topic":"Caching","language":"Python","updated":"2025-08-19","comments":4,"stars":17245,"raw":"https://awesomereviewers.com/raw/sglang-optimize-cache-performance.md"},{"slug":"posthog-split-complex-migrations-incrementally","title":"Split complex migrations incrementally","description":"Break complex schema changes into multiple, sequential migrations to ensure deployment safety and proper data handling. Each migration should represent a single, atomic change that can succeed or fail independently.","repository":"PostHog/posthog","domain":"data-systems","topic":"Migrations","language":"Python","updated":"2025-08-18","comments":4,"stars":28460,"raw":"https://awesomereviewers.com/raw/posthog-split-complex-migrations-incrementally.md"}],"prompt_count":34},{"slug":"performance","title":"Hot paths and performance","topics":["Performance Optimization"],"checks":[],"prompts":[{"slug":"celery-avoid-unnecessary-work","title":"Avoid Unnecessary Work","description":"Prefer eliminating work that can’t affect observable behavior and prevent resource retention in hot paths. Apply this as a checklist: 1) Guard mode-dependent logic: if the subsystem doesn’t propagate updates (or the surrounding condition is false), skip the computation/action entirely.","repository":"celery/celery","domain":"orchestration","topic":"Performance Optimization","language":"Python","updated":"2026-04-08","comments":10,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-avoid-unnecessary-work.md"},{"slug":"hermes-agent-bounded-hot-path-work","title":"Bounded Hot-Path Work","description":"In performance-sensitive hot paths, ensure you (1) don’t repeat expensive work, (2) keep async/event-loop paths non-blocking, (3) bound external operations with finite timeouts, and (4) avoid unnecessary computation/materialization by prefiltering queries and projecting only what’s needed.","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Performance Optimization","language":"Python","updated":"2026-07-27","comments":9,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-bounded-hot-path-work.md"},{"slug":"ragflow-bound-work-and-queries","title":"Bound Work and Queries","description":"When improving performance, make sure code neither (a) fetches too much data, nor (b) does the same expensive work repeatedly, nor (c) runs unbounded workloads.","repository":"infiniflow/ragflow","domain":"llm-infra","topic":"Performance Optimization","language":"Python","updated":"2026-05-08","comments":9,"stars":80174,"raw":"https://awesomereviewers.com/raw/ragflow-bound-work-and-queries.md"},{"slug":"heretic-manage-tensors-proactively","title":"Manage tensors proactively","description":"Motivation: Large models and matrix ops can produce big ephemeral tensors, cross-device copies, and temporary allocations that lead to excessive memory use or OOMs. Adopt consistent, device-aware tensor handling, prefer built-in ops, and free large temporaries at clear boundaries.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Performance Optimization","language":"Python","updated":"2026-01-30","comments":8,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-manage-tensors-proactively.md"},{"slug":"sglang-eliminate-redundant-operations","title":"Eliminate redundant operations","description":"Avoid duplicate function calls, repeated tensor operations, and redundant computations that can significantly impact performance. Implement caching mechanisms for expensive operations and pre-allocate tensors when possible.","repository":"sgl-project/sglang","domain":"llm-infra","topic":"Performance Optimization","language":"Python","updated":"2025-08-22","comments":8,"stars":17245,"raw":"https://awesomereviewers.com/raw/sglang-eliminate-redundant-operations.md"},{"slug":"vllm-vectorize-over-python-loops","title":"Vectorize over Python loops","description":"Replace Python loops and list comprehensions with vectorized operations when processing tensors or performing repeated computations. This optimization reduces interpreter overhead and enables efficient parallel execution on modern hardware.","repository":"vllm-project/vllm","domain":"llm-infra","topic":"Performance Optimization","language":"Python","updated":"2025-07-08","comments":8,"stars":51730,"raw":"https://awesomereviewers.com/raw/vllm-vectorize-over-python-loops.md"},{"slug":"pr-agent-budget-aware-performance","title":"Budget-Aware Performance","description":"When code builds prompts, traverses trees, calls external APIs, or processes many items, make performance predictable by enforcing budgets, preventing pathological inputs, and removing redundant work.","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"Performance Optimization","language":"Python","updated":"2026-06-02","comments":7,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-budget-aware-performance.md"},{"slug":"mcp-enforce-resource-caps","title":"Enforce Resource Caps","description":"For MCP/agent tools, aggressively bound both *inputs* and *outputs* and always clean up on timeout/eviction. This prevents runaway memory, long-held locks, LLM context blow-ups, and leaked connections / consumed service concurrency.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Performance Optimization","language":"Python","updated":"2026-07-30","comments":6,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-enforce-resource-caps.md"},{"slug":"python-performance-sensitive-efficiency","title":"Performance-Sensitive Efficiency","description":"When optimizing, watch for *hidden* inefficiencies: avoid O(n) per-step operations, don’t duplicate expensive work, and don’t eagerly materialize/convert data unless needed.","repository":"TheAlgorithms/Python","domain":"docs","topic":"Performance Optimization","language":"Python","updated":"2026-05-02","comments":6,"stars":220912,"raw":"https://awesomereviewers.com/raw/python-performance-sensitive-efficiency.md"},{"slug":"cpython-optimize-hot-path-code","title":"Optimize hot-path code","description":"In performance-sensitive code (loops, frequently-called functions, parsers, I/O paths), eliminate redundant work and unnecessary indirection, and validate optimizations with measurements rather than assumptions.","repository":"python/cpython","domain":"app-frameworks","topic":"Performance Optimization","language":"Python","updated":"2026-10-28","comments":5,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-optimize-hot-path-code.md"},{"slug":"langchain-avoid-hidden-performance-traps","title":"Avoid Hidden Performance Traps","description":"Default rule: in performance-sensitive code, prevent hidden blowups and avoid expensive work being executed repeatedly in hot paths or on import. Apply this checklist:","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Performance Optimization","language":"Python","updated":"2025-12-28","comments":5,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-avoid-hidden-performance-traps.md"},{"slug":"posthog-cache-expensive-operations","title":"Cache expensive operations","description":"Identify and eliminate redundant expensive operations by implementing caching, memoization, or conditional execution. Look for repeated database queries, complex calculations, object creation, or data processing that can be cached or avoided entirely when not needed.","repository":"PostHog/posthog","domain":"data-systems","topic":"Performance Optimization","language":"Python","updated":"2025-08-14","comments":5,"stars":28460,"raw":"https://awesomereviewers.com/raw/posthog-cache-expensive-operations.md"}],"prompt_count":36},{"slug":"ai","title":"Model, prompt and LLM code","topics":["AI","Pytorch"],"checks":[{"kind":"unit-tests","title":"Unit and integration tests","method":"testing","method_slug":"testing","catches":"Behaviour regressions on the paths the tests exercise.","tool":{"id":"pytest","method":"testing","kind":"unit-tests","languages":["python"],"upstream":"https://github.com/pytest-dev/pytest","docs":"https://docs.pytest.org/en/stable/reference/exit-codes.html","autofix":false,"exit_codes":{"0":"all tests passed","1":"some tests failed","2":"interrupted by the user","3":"internal error","4":"command line usage error","5":"no tests were collected"},"repos":55,"share":86,"commands":["pytest","pytest -q","pytest -v"],"run":"pytest","via":null,"triggers":["pre_commit","ci","local"],"examples":[{"repository":"nousresearch/hermes-agent","slug":"nousresearch-hermes-agent"},{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"}]},"alternatives":[{"id":"unittest","repos":8,"share":12}],"note":null}],"prompts":[{"slug":"heretic-model-integration-rules","title":"Model integration rules","description":"When adding or changing model loading, quantization, LoRA/abliteration logic, or merging behavior, follow these explicit rules to ensure correctness, compatibility and reproducibility.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"AI","language":"Python","updated":"2026-02-01","comments":16,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-model-integration-rules.md"},{"slug":"litellm-prefer-openai-compatibility","title":"prefer OpenAI compatibility","description":"When integrating new LLM providers or AI services, prioritize OpenAI-compatible patterns and reuse existing utilities rather than creating separate implementations. This approach reduces code duplication, leverages battle-tested functionality, and maintains consistency across the codebase.","repository":"BerriAI/litellm","domain":"llm-infra","topic":"AI","language":"Python","updated":"2025-06-06","comments":12,"stars":28310,"raw":"https://awesomereviewers.com/raw/litellm-prefer-openai-compatibility.md"},{"slug":"sglang-improve-code-organization","title":"Improve code organization","description":"Prioritize clean code structure and readability in AI/ML codebases by avoiding inline conditionals, using descriptive expressions, and maintaining proper separation of concerns. This is especially important in machine learning systems where complex logic can quickly become unmaintainable.","repository":"sgl-project/sglang","domain":"llm-infra","topic":"AI","language":"Python","updated":"2025-08-25","comments":11,"stars":17245,"raw":"https://awesomereviewers.com/raw/sglang-improve-code-organization.md"},{"slug":"pytorch-device-agnostic-acceleration-code","title":"Device-agnostic acceleration code","description":"Avoid hardcoding specific device types like 'cuda' in AI code. Instead, use device-agnostic approaches such as device type variables or accelerator detection functions. This ensures code runs efficiently across different hardware accelerators (CUDA, ROCm, XPU, etc.) without modification.","repository":"pytorch/pytorch","domain":"ml-systems","topic":"AI","language":"Python","updated":"2025-07-07","comments":11,"stars":91345,"raw":"https://awesomereviewers.com/raw/pytorch-device-agnostic-acceleration-code.md"},{"slug":"vllm-avoid-magic-numbers","title":"Avoid magic numbers","description":"Replace hardcoded values and magic numbers in AI model code with named constants or configuration parameters. This improves maintainability, reduces errors, and makes code more adaptable to different model architectures.","repository":"vllm-project/vllm","domain":"llm-infra","topic":"AI","language":"Python","updated":"2025-07-07","comments":9,"stars":51730,"raw":"https://awesomereviewers.com/raw/vllm-avoid-magic-numbers.md"},{"slug":"promptfoo-fail-closed-evaluation-metrics","title":"Fail-closed evaluation metrics","description":"When implementing deterministic grading/scoring logic for model or agent outputs, design each rule to fail-closed on missing, ambiguous, or edge-case data rather than silently awarding a pass. Concretely:","repository":"promptfoo/promptfoo","domain":"ai-agents","topic":"AI","language":"Python","updated":"2026-08-28","comments":8,"stars":26565,"raw":"https://awesomereviewers.com/raw/promptfoo-fail-closed-evaluation-metrics.md"},{"slug":"pr-agent-model-safe-parameter-validation","title":"Model-Safe Parameter Validation","description":"Adopt a model/provider-aware configuration standard: before sending requests to LLM APIs, validate that every model-specific parameter (reasoning effort, thinking features, temperature constraints, system support) is supported for that exact model/provider, and apply overrides safely without accidentally changing unrelated limits.","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"AI","language":"Python","updated":"2026-07-10","comments":8,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-model-safe-parameter-validation.md"},{"slug":"langchain-preserve-ai-structure-invariants","title":"Preserve AI Structure Invariants","description":"When working with LLM/chat “auxiliary” content (reasoning, tool calls/results, structured content blocks, and usage/metadata), enforce structural invariants so provider/streaming/truncation logic can’t silently corrupt meaning.","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"AI","language":"Python","updated":"2026-04-23","comments":8,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-preserve-ai-structure-invariants.md"},{"slug":"dspy-handle-optional-dependencies-gracefully","title":"Handle optional dependencies gracefully","description":"When integrating with external AI libraries, models, or services, handle optional dependencies gracefully to avoid affecting users who don't need those features. Use local imports within class constructors or methods rather than module-level imports, and provide clear error messages when dependencies are missing.","repository":"stanfordnlp/dspy","domain":"ai-agents","topic":"AI","language":"Python","updated":"2024-10-29","comments":8,"stars":27813,"raw":"https://awesomereviewers.com/raw/dspy-handle-optional-dependencies-gracefully.md"},{"slug":"llama.cpp-leverage-existing-framework-functionality","title":"leverage existing framework functionality","description":"Before implementing custom solutions in AI model conversion code, thoroughly investigate whether the framework already provides the needed functionality. This applies to inheritance patterns, configuration handling, tensor operations, and mapping conventions.","repository":"ggml-org/llama.cpp","domain":"llm-infra","topic":"AI","language":"Python","updated":"2025-07-28","comments":7,"stars":83559,"raw":"https://awesomereviewers.com/raw/llama.cpp-leverage-existing-framework-functionality.md"},{"slug":"mcp-llm-interface-contracts","title":"LLM Interface Contracts","description":"When exposing APIs/tools to an LLM, treat docstrings, parameter semantics, and output size as an interface contract: make it unambiguous, match callable tool names exactly, structure “what to do” for reliable parsing, and cap context/token growth.","repository":"awslabs/mcp","domain":"ai-agents","topic":"AI","language":"Python","updated":"2026-07-20","comments":6,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-llm-interface-contracts.md"},{"slug":"heretic-preserve-dtype-and-shapes","title":"preserve dtype and shapes","description":"When writing PyTorch code, preserve tensor dtypes and devices and be explicit about vector/matrix shapes to avoid precision loss, incorrect broadcasting, and unnecessary CPU allocations.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Pytorch","language":"Python","updated":"2025-12-14","comments":6,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-preserve-dtype-and-shapes.md"}],"prompt_count":40},{"slug":"observability","title":"Logging, metrics, tracing","topics":["Logging","Observability"],"checks":[],"prompts":[{"slug":"azure-cli-scoped-accurate-warning-logs","title":"Scoped, Accurate Warning Logs","description":"When adding warnings/logs, treat them as part of the user experience: only emit warnings when they are actionable, accurate, and non-noisy—especially when runtime feature detection changes behavior.","repository":"Azure/azure-cli","domain":"cloud-infra","topic":"Logging","language":"Python","updated":"2026-07-26","comments":7,"stars":4592,"raw":"https://awesomereviewers.com/raw/azure-cli-scoped-accurate-warning-logs.md"},{"slug":"celery-logging-correctness-rules","title":"Logging Correctness Rules","description":"When adding or modifying logging: 1) **Match logging intent to behavior (level + visibility)** - If a user-supplied config or runtime option fails and a fallback happens, log at an appropriate user-visible level (often `warning`)—don’t silently continue.","repository":"celery/celery","domain":"orchestration","topic":"Logging","language":"Python","updated":"2026-04-09","comments":7,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-logging-correctness-rules.md"},{"slug":"vllm-follow-logging-best-practices","title":"Follow logging best practices","description":"Maintain high-quality logging throughout the codebase by following these best practices: 1. **Use appropriate log levels**: Reserve `debug` for detailed troubleshooting, `info` for general operational information, `warning` for potential issues, and `error`/`critical` for actual problems. Avoid excessive logging at higher levels.","repository":"vllm-project/vllm","domain":"llm-infra","topic":"Logging","language":"Python","updated":"2025-07-08","comments":7,"stars":51730,"raw":"https://awesomereviewers.com/raw/vllm-follow-logging-best-practices.md"},{"slug":"pr-agent-logging-consistency-and-safety","title":"Logging consistency and safety","description":"When writing/adjusting code, treat logging as part of error handling: - Use the right level: log request- or operation-failure conditions at `error`/`exception` (not `warning`).","repository":"the-pr-agent/pr-agent","domain":"ai-agents","topic":"Logging","language":"Python","updated":"2025-04-23","comments":7,"stars":12523,"raw":"https://awesomereviewers.com/raw/pr-agent-logging-consistency-and-safety.md"},{"slug":"dify-use-appropriate-log-levels","title":"Use appropriate log levels","description":"Choose the correct logging level based on the importance and purpose of the message. Use DEBUG for debugging information that's only useful during development, INFO for general operational information, WARNING for concerning conditions that don't prevent operation, and ERROR for actual errors. Remove meaningless debug prints and consider using conditional...","repository":"langgenius/dify","domain":"llm-infra","topic":"Logging","language":"Python","updated":"2025-08-14","comments":6,"stars":114231,"raw":"https://awesomereviewers.com/raw/dify-use-appropriate-log-levels.md"},{"slug":"core-use-appropriate-logging-levels","title":"Use appropriate logging levels","description":"Choose the correct logging level based on the nature and expected frequency of the event being logged. Follow these guidelines: **Use `debug` for application events:** The `info` level is reserved for system-level messages. Use `debug` for application-specific information like successful authentication, data processing steps, or operational status updates.","repository":"home-assistant/core","domain":"app-frameworks","topic":"Logging","language":"Python","updated":"2025-07-25","comments":6,"stars":80450,"raw":"https://awesomereviewers.com/raw/core-use-appropriate-logging-levels.md"},{"slug":"litellm-use-proper-logging-mechanisms","title":"Use proper logging mechanisms","description":"Always use the logging library instead of print statements and maintain consistent logging patterns throughout the codebase. Print statements should be avoided as they bypass proper log level controls, formatting, and routing. Instead, use appropriate logging methods like `verbose_logger.info()`, `verbose_logger.debug()`, or `verbose_logger.warning()`.","repository":"BerriAI/litellm","domain":"llm-infra","topic":"Logging","language":"Python","updated":"2025-07-15","comments":6,"stars":28310,"raw":"https://awesomereviewers.com/raw/litellm-use-proper-logging-mechanisms.md"},{"slug":"sentry-structure-logs-with-context","title":"Structure logs with context","description":"Use structured logging with appropriate context and log levels to maximize the value of log messages. Include relevant metadata with each log message to facilitate filtering and debugging:","repository":"getsentry/sentry","domain":"observability","topic":"Logging","language":"Python","updated":"2025-07-09","comments":6,"stars":41297,"raw":"https://awesomereviewers.com/raw/sentry-structure-logs-with-context.md"},{"slug":"opentelemetry-python-sanitize-observability-data-exports","title":"Sanitize observability data exports","description":"When exporting observability data (metrics, traces, logs) to external systems, properly sanitize all data fields to ensure compatibility and consistency. Key requirements:","repository":"open-telemetry/opentelemetry-python","domain":"observability","topic":"Observability","language":"Python","updated":"2024-05-23","comments":6,"stars":2061,"raw":"https://awesomereviewers.com/raw/opentelemetry-python-sanitize-observability-data-exports.md"},{"slug":"compose-add-logging-without-duplication","title":"Add logging without duplication","description":"When adding logging functionality to existing code, encapsulate the logging logic within methods or use parameters to avoid code duplication and maintain clean interfaces. Add informational logging (debug/info level) to provide visibility into system operations, especially for default behaviors and skipped actions, but avoid duplicating conditional checks...","repository":"docker/compose","domain":"orchestration","topic":"Logging","language":"Python","updated":"2020-05-06","comments":6,"stars":35858,"raw":"https://awesomereviewers.com/raw/compose-add-logging-without-duplication.md"},{"slug":"django-structure-logs-effectively","title":"Structure logs effectively","description":"When implementing logging in your application, structure your log messages and parameters consistently to improve readability, searchability, and integration with monitoring tools. Consider these practices:","repository":"django/django","domain":"app-frameworks","topic":"Logging","language":"Python","updated":"2025-06-27","comments":5,"stars":84182,"raw":"https://awesomereviewers.com/raw/django-structure-logs-effectively.md"},{"slug":"checkov-use-appropriate-logging-levels","title":"Use appropriate logging levels","description":"Select the correct logging level based on the importance and visibility requirements of the information. Choose WARNING for issues that should be visible by default and may require attention, INFO for general operational messages, and DEBUG for detailed information needed only during troubleshooting. Additionally, ensure log messages include sufficient...","repository":"bridgecrewio/checkov","domain":"security","topic":"Logging","language":"Python","updated":"2024-10-27","comments":5,"stars":7668,"raw":"https://awesomereviewers.com/raw/checkov-use-appropriate-logging-levels.md"}],"prompt_count":26},{"slug":"ci-config","title":"CI workflows and configuration files","topics":["CI/CD","Configurations"],"checks":[{"kind":"workflow-linting","title":"CI workflow linting","method":"static_analysis","method_slug":"static-analysis","catches":"Broken GitHub Actions syntax, script injection, over-broad token permissions.","tool":null,"alternatives":[],"note":null},{"kind":"file-hygiene","title":"File hygiene","method":"formatting","method_slug":"formatting","catches":"Invalid JSON, YAML or TOML, merge markers, trailing whitespace, oversized files.","tool":{"id":"pre-commit-hooks","method":"formatting","kind":"file-hygiene","languages":["*"],"upstream":"https://github.com/pre-commit/pre-commit-hooks","docs":null,"autofix":true,"exit_codes":{},"repos":25,"share":39,"commands":["pre-commit hook end-of-file-fixer","pre-commit hook check-yaml","pre-commit hook check-merge-conflict"],"run":null,"via":"pre-commit hook end-of-file-fixer","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langchain-ai/langchain","slug":"langchain-ai-langchain"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"fastapi/fastapi","slug":"fastapi-fastapi"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"python/cpython","slug":"python-cpython"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"heretic-configuration-ownership-and-determinism","title":"Configuration ownership and determinism","description":"Summary - Ensure configuration is explicit, owned by the correct component (application vs plugin), and deterministic so behavior is predictable and resumable.","repository":"p-e-w/heretic","domain":"ml-systems","topic":"Configurations","language":"Python","updated":"2026-02-01","comments":25,"stars":5002,"raw":"https://awesomereviewers.com/raw/heretic-configuration-ownership-and-determinism.md"},{"slug":"db-gpt-centralized-config-standards","title":"Centralized Config Standards","description":"When implementing new behavior behind feature flags or configuration (paths, env vars, index dimensions, toggles like text2gql), use centralized, documented config instead of hardcoded values or scattered env access.","repository":"eosphoros-ai/DB-GPT","domain":"ai-agents","topic":"Configurations","language":"Python","updated":"2025-10-30","comments":13,"stars":18703,"raw":"https://awesomereviewers.com/raw/db-gpt-centralized-config-standards.md"},{"slug":"checkov-centralize-environment-variables","title":"Centralize environment variables","description":"All environment variables should be defined in a centralized location (`checkov/common/util/env_vars_config.py`) rather than scattered throughout the codebase. This approach enhances maintainability, promotes consistency, and simplifies tracking of configuration settings.","repository":"bridgecrewio/checkov","domain":"security","topic":"Configurations","language":"Python","updated":"2025-06-23","comments":9,"stars":7668,"raw":"https://awesomereviewers.com/raw/checkov-centralize-environment-variables.md"},{"slug":"unstructured-validate-configuration-defaults","title":"validate configuration defaults","description":"Configuration parameters should be properly validated with appropriate defaults and clear handling of edge cases. Avoid using arbitrary defaults when values should be explicitly required, and ensure configuration validation distinguishes between None, empty, and zero values.","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Configurations","language":"Python","updated":"2025-01-10","comments":9,"stars":12116,"raw":"https://awesomereviewers.com/raw/unstructured-validate-configuration-defaults.md"},{"slug":"prowler-use-configurable-default-values","title":"Use configurable default values","description":"Make configuration values flexible and robust by avoiding hardcoded values and providing sensible defaults. This ensures your application works correctly even with incomplete configuration and supports different environments without code changes.","repository":"prowler-cloud/prowler","domain":"security","topic":"Configurations","language":"Python","updated":"2025-06-25","comments":8,"stars":11834,"raw":"https://awesomereviewers.com/raw/prowler-use-configurable-default-values.md"},{"slug":"celery-explicit-config-behavior","title":"Explicit config behavior","description":"Ensure configuration behavior is predictable, validated, and migration-friendly: - Precedence: When combining env vars, settings, and defaults, explicitly define and implement the precedence order (and document/announce any change). Avoid “surprising” priority flips.","repository":"celery/celery","domain":"orchestration","topic":"Configurations","language":"Python","updated":"2024-11-11","comments":8,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-explicit-config-behavior.md"},{"slug":"flask-robust-environment-config-handling","title":"Robust environment config handling","description":"Treat environment-variable driven configuration as untrusted, possibly malformed input, and handle it defensively and consistently. - Normalize and validate values read from the environment before use. Boolean-like flags (e.g. `FLASK_DEBUG`) must be compared case-insensitively and against a documented set of truthy/falsy strings, e.g. `val.lower() not in...","repository":"pallets/flask","domain":"cloud-infra","topic":"Configurations","language":"Python","updated":"2018-01-06","comments":8,"stars":75022,"raw":"https://awesomereviewers.com/raw/flask-robust-environment-config-handling.md"},{"slug":"serena-language-agnostic-configuration-design","title":"Language-agnostic configuration design","description":"Design configuration parameters to be language-agnostic when possible, use established configuration objects, and maintain consistency across language server implementations. Avoid language-specific CLI options or constructor parameters when the functionality could apply broadly.","repository":"oraios/serena","domain":"ai-agents","topic":"Configurations","language":"Python","updated":"2025-08-27","comments":7,"stars":14465,"raw":"https://awesomereviewers.com/raw/serena-language-agnostic-configuration-design.md"},{"slug":"hermes-agent-configyaml-first-policy","title":"Config.yaml First Policy","description":"Behavioral configuration must be owned by `config.yaml` (and documented), while environment variables must be limited to secrets or internal backward-compatibility bridges. Also ensure any filesystem default paths are profile-safe via `get_hermes_home()`.","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Configurations","language":"Python","updated":"2026-07-19","comments":6,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-configyaml-first-policy.md"},{"slug":"mcp-region-configuration-consistency","title":"Region configuration consistency","description":"Ensure configuration-dependent behavior (region/profile) is applied consistently from resolution through client creation through every API call. Rules:","repository":"awslabs/mcp","domain":"ai-agents","topic":"Configurations","language":"Python","updated":"2026-06-11","comments":6,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-region-configuration-consistency.md"},{"slug":"dspy-optional-configuration-parameters","title":"Optional configuration parameters","description":"Make configuration parameters optional with sensible defaults instead of requiring mandatory values, and only enable optional features when explicitly configured through environment variables or user settings.","repository":"stanfordnlp/dspy","domain":"ai-agents","topic":"Configurations","language":"Python","updated":"2025-09-03","comments":6,"stars":27813,"raw":"https://awesomereviewers.com/raw/dspy-optional-configuration-parameters.md"},{"slug":"sentry-feature-flag-rollouts","title":"Feature flag rollouts","description":"Use feature flags to gate new functionality for controlled rollouts. This allows for quick enabling/disabling without code reverts when issues arise, and supports gradual adoption through percentage-based rollouts.","repository":"getsentry/sentry","domain":"observability","topic":"Configurations","language":"Python","updated":"2025-07-10","comments":6,"stars":41297,"raw":"https://awesomereviewers.com/raw/sentry-feature-flag-rollouts.md"}],"prompt_count":68},{"slug":"dependencies","title":"Dependencies and lockfiles","topics":[],"checks":[{"kind":"dependency-audit","title":"Dependency audit","method":"supply_chain","method_slug":"supply-chain","catches":"Known-vulnerable or disallowed dependencies and licenses.","tool":{"id":"dependency-review","method":"supply_chain","kind":"dependency-audit","languages":["*"],"upstream":"https://github.com/actions/dependency-review-action","docs":null,"autofix":false,"exit_codes":{},"repos":5,"share":8,"commands":["uses actions/dependency-review-action"],"run":null,"via":"GitHub Action actions/dependency-review-action","triggers":["ci"],"examples":[{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"mvanhorn/last30days-skill","slug":"mvanhorn-last30days-skill"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"awslabs/mcp","slug":"awslabs-mcp"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},"alternatives":[{"id":"pip-audit","repos":2,"share":3}],"note":null},{"kind":"lockfile-check","title":"Lockfile consistency","method":"supply_chain","method_slug":"supply-chain","catches":"A lockfile that no longer matches its manifest.","tool":{"id":"uv-lock","method":"supply_chain","kind":"lockfile-check","languages":["python"],"upstream":"https://github.com/astral-sh/uv","docs":null,"autofix":true,"exit_codes":{},"repos":13,"share":20,"commands":["uv lock --check","uv lock --check --project cli","pre-commit hook uv-lock"],"run":"uv lock --check","via":"pre-commit hook uv-lock","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"crewaiinc/crewai","slug":"crewaiinc-crewai"},{"repository":"openai/openai-python","slug":"openai-openai-python"}]},"alternatives":[],"note":null},{"kind":"version-matrix","title":"Version and platform matrix","method":"testing","method_slug":"testing","catches":"Breakage on a runtime version, OS or feature combination you did not run locally.","tool":{"id":"ci-matrix","method":"testing","kind":"version-matrix","languages":["*"],"upstream":"https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations","docs":null,"autofix":false,"exit_codes":{},"repos":36,"share":56,"commands":["analyze (include: 2)","analyze (include: 3)","analyze (language: 1)"],"run":"analyze (include: 2)","via":null,"triggers":["ci"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[],"note":null}],"prompts":[],"prompt_count":0},{"slug":"tests","title":"The tests themselves","topics":["Testing"],"checks":[{"kind":"mutation-testing","title":"Mutation testing","method":"testing","method_slug":"testing","catches":"Tests that keep passing whatever the code does.","tool":{"id":"mutmut","method":"testing","kind":"mutation-testing","languages":["python"],"upstream":"https://github.com/boxed/mutmut","docs":null,"autofix":false,"exit_codes":{},"repos":1,"share":2,"commands":["mutmut run 2>&1"],"run":"mutmut run 2>&1","via":null,"triggers":["ci"],"examples":[{"repository":"BerriAI/litellm","slug":"berriai-litellm"}]},"alternatives":[],"note":null},{"kind":"version-matrix","title":"Version and platform matrix","method":"testing","method_slug":"testing","catches":"Breakage on a runtime version, OS or feature combination you did not run locally.","tool":{"id":"ci-matrix","method":"testing","kind":"version-matrix","languages":["*"],"upstream":"https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations","docs":null,"autofix":false,"exit_codes":{},"repos":36,"share":56,"commands":["analyze (include: 2)","analyze (include: 3)","analyze (language: 1)"],"run":"analyze (include: 2)","via":null,"triggers":["ci"],"examples":[{"repository":"langgenius/dify","slug":"langgenius-dify"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"comfyanonymous/ComfyUI","slug":"comfyanonymous-comfyui"},{"repository":"python/cpython","slug":"python-cpython"},{"repository":"microsoft/markitdown","slug":"microsoft-markitdown"},{"repository":"pallets/flask","slug":"pallets-flask"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"cpython-thorough-edge-case-verification","title":"Thorough edge-case verification","description":"Tests should fully exercise the behavior being verified, not just a single happy-path value that happens to pass even without the fix. Before adding a test, confirm it actually fails on the old code and genuinely covers the scenario it claims to: include boundary values (e.g. buffer-size multiples, signed-integer limits, timestamps around overflow points,...","repository":"python/cpython","domain":"app-frameworks","topic":"Testing","language":"Python","updated":"2026-10-28","comments":14,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-thorough-edge-case-verification.md"},{"slug":"litellm-mock-tests-in-testslitellm","title":"Mock tests in tests/litellm","description":"All new functionality must include mock tests placed in the `tests/litellm/` directory structure. Mock external API calls and dependencies rather than requiring real credentials or external services. This ensures tests can run reliably in CI/CD pipelines and are accessible to all contributors.","repository":"BerriAI/litellm","domain":"llm-infra","topic":"Testing","language":"Python","updated":"2025-08-30","comments":12,"stars":28310,"raw":"https://awesomereviewers.com/raw/litellm-mock-tests-in-testslitellm.md"},{"slug":"poetry-parameterize-similar-tests","title":"Parameterize similar tests","description":"Use `pytest.mark.parametrize` to consolidate similar test cases instead of duplicating test code. This approach improves maintainability, reduces code duplication, and ensures comprehensive test coverage across different scenarios.","repository":"python-poetry/poetry","domain":"devtools","topic":"Testing","language":"Python","updated":"2025-06-15","comments":12,"stars":33496,"raw":"https://awesomereviewers.com/raw/poetry-parameterize-similar-tests.md"},{"slug":"core-mock-external-dependencies-only","title":"Mock external dependencies only","description":"When writing tests for Home Assistant integrations, mock external library dependencies rather than Home Assistant internals like coordinators, entities, or config entries. Test integration behavior through proper setup and service calls instead of directly manipulating internal objects.","repository":"home-assistant/core","domain":"app-frameworks","topic":"Testing","language":"Python","updated":"2025-07-28","comments":11,"stars":80450,"raw":"https://awesomereviewers.com/raw/core-mock-external-dependencies-only.md"},{"slug":"python-automate-all-behavior-tests","title":"Automate All Behavior Tests","description":"For every algorithmic change (and every public function/class), require automated tests that lock in both correctness and failure modes. Minimum standard:","repository":"TheAlgorithms/Python","domain":"docs","topic":"Testing","language":"Python","updated":"2026-05-02","comments":10,"stars":220912,"raw":"https://awesomereviewers.com/raw/python-automate-all-behavior-tests.md"},{"slug":"hermes-agent-behavioral-regression-testing","title":"Behavioral Regression Testing","description":"When adding or modifying tests, favor *behavioral contract* coverage over brittle implementation/shape checks. Apply these rules: - **Test the outcome, not the shape**: drive the code through the real wiring/dispatch path and assert the externally observable behavior (e.g., callback fires once after a cap; command output path rewrites; retry-after falls...","repository":"nousresearch/hermes-agent","domain":"ai-agents","topic":"Testing","language":"Python","updated":"2026-07-28","comments":9,"stars":221948,"raw":"https://awesomereviewers.com/raw/hermes-agent-behavioral-regression-testing.md"},{"slug":"langchain-prefer-robust-testing-assertions","title":"Prefer Robust Testing Assertions","description":"When adding/changing tests, optimize for (1) clear intent, (2) stability against refactors, and (3) determinism. Practical rules: - Assert observable behavior, not intermediate implementation details. If you need to validate a request payload, mock the SDK client and inspect what was actually sent (not private helpers/step-by-step logic).","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Testing","language":"Python","updated":"2026-03-19","comments":9,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-prefer-robust-testing-assertions.md"},{"slug":"unstructured-write-clear-test-cases","title":"Write clear test cases","description":"Structure test cases for maximum readability and maintainability by following these principles: 1. Organize each test in three distinct parts separated by blank lines:","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Testing","language":"Python","updated":"2024-04-24","comments":9,"stars":12116,"raw":"https://awesomereviewers.com/raw/unstructured-write-clear-test-cases.md"},{"slug":"flask-use-idiomatic-pytest-features","title":"Use idiomatic pytest features","description":"Favor pytest''s built-in testing utilities over manual, imperative patterns to keep tests concise, correct, and maintainable. - Exception testing: use `pytest.raises(ExceptionType)` as a context manager instead of manual try/except blocks with `assert False` in the except clause. Code after the line that raises inside the `with` block is unreachable and...","repository":"pallets/flask","domain":"app-frameworks","topic":"Testing","language":"Python","updated":"2020-10-11","comments":9,"stars":75022,"raw":"https://awesomereviewers.com/raw/flask-use-idiomatic-pytest-features.md"},{"slug":"azure-cli-deterministic-recorded-testing","title":"Deterministic recorded testing","description":"For scenario/recording tests, keep behavior deterministic between record and replay, and ensure assertions cover defaults, required inputs, and optional fields.","repository":"Azure/azure-cli","domain":"cloud-infra","topic":"Testing","language":"Python","updated":"2026-07-24","comments":8,"stars":4592,"raw":"https://awesomereviewers.com/raw/azure-cli-deterministic-recorded-testing.md"},{"slug":"celery-meaningful-tests-for-guards","title":"Meaningful Tests For Guards","description":"When adding tests for new behavior, deprecations, or environment-dependent code paths, ensure the test actually exercises the intended branch (avoid vacuous passing) and assert the concrete observable effect.","repository":"celery/celery","domain":"orchestration","topic":"Testing","language":"Python","updated":"2026-04-22","comments":8,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-meaningful-tests-for-guards.md"},{"slug":"boto3-write-self-documenting-tests","title":"Write self-documenting tests","description":"Tests should clearly communicate their purpose and expectations without requiring readers to analyze implementation details or scroll through files. Each test should:","repository":"boto/boto3","domain":"cloud-infra","topic":"Testing","language":"Python","updated":"2015-05-20","comments":8,"stars":9417,"raw":"https://awesomereviewers.com/raw/boto3-write-self-documenting-tests.md"}],"prompt_count":52},{"slug":"docs","title":"Documentation and comments","topics":["Documentation"],"checks":[{"kind":"docs-build","title":"Docs build","method":"static_analysis","method_slug":"static-analysis","catches":"Broken cross-references, links and markup in documentation.","tool":{"id":"sphinx","method":"static_analysis","kind":"docs-build","languages":["python","docs"],"upstream":"https://github.com/sphinx-doc/sphinx","docs":null,"autofix":false,"exit_codes":{},"repos":8,"share":12,"commands":["sphinx-build -E -W -b dirhtml docs docs/_build/dirhtml","sphinx-build -E -a -W -b html -T . _build/html","sphinx-build -b gettext docs/source docs/build/gettext"],"run":"sphinx-build -j2 -b configcheck -d {envtmpdir}/doctrees docs docs/_build/configcheck","via":null,"triggers":["ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"apache/airflow","slug":"apache-airflow"},{"repository":"celery/celery","slug":"celery-celery"},{"repository":"oraios/serena","slug":"oraios-serena"},{"repository":"strands-agents/sdk-python","slug":"strands-agents-sdk-python"}]},"alternatives":[{"id":"mkdocs","repos":4,"share":6}],"note":null},{"kind":"spelling","title":"Spelling","method":"formatting","method_slug":"formatting","catches":"Typos in identifiers, comments and docs.","tool":{"id":"codespell","method":"formatting","kind":"spelling","languages":["*"],"upstream":"https://github.com/codespell-project/codespell","docs":null,"autofix":false,"exit_codes":{},"repos":16,"share":25,"commands":["codespell","codespell --toml pyproject.toml","codespell --toml pyproject.toml --write"],"run":"codespell --toml pyproject.toml --write","via":"pre-commit hook codespell","triggers":["pre_commit","ci","local"],"examples":[{"repository":"TheAlgorithms/Python","slug":"thealgorithms-python"},{"repository":"langflow-ai/langflow","slug":"langflow-ai-langflow"},{"repository":"pytorch/pytorch","slug":"pytorch-pytorch"},{"repository":"home-assistant/core","slug":"home-assistant-core"},{"repository":"pallets/flask","slug":"pallets-flask"},{"repository":"browser-use/browser-use","slug":"browser-use-browser-use"}]},"alternatives":[],"note":null}],"prompts":[{"slug":"python-docstring-standards","title":"Docstring Standards","description":"Apply a single documentation rule set across the codebase: - **Module/file docstring:** Each file should have a clear module-level docstring **before any imports**.","repository":"TheAlgorithms/Python","domain":"docs","topic":"Documentation","language":"Python","updated":"2026-05-05","comments":19,"stars":220912,"raw":"https://awesomereviewers.com/raw/python-docstring-standards.md"},{"slug":"langchain-docstrings-with-intent","title":"Docstrings With Intent","description":"Adopt a single documentation standard: every docstring/comment should (1) explain intent and observable behavior, (2) make responsibility/ownership explicit, (3) be traceable when tied to external or non-obvious defaults, (4) be safe when examples could do harm, and (5) follow established docstring conventions without duplicating type annotations.","repository":"langchain-ai/langchain","domain":"ai-agents","topic":"Documentation","language":"Python","updated":"2026-03-06","comments":15,"stars":136312,"raw":"https://awesomereviewers.com/raw/langchain-docstrings-with-intent.md"},{"slug":"unstructured-pep-257-docstring-compliance","title":"PEP 257 docstring compliance","description":"All public modules, classes, methods, and functions must have docstrings that follow PEP 257 formatting standards. This ensures consistent, professional documentation across the codebase.","repository":"Unstructured-IO/unstructured","domain":"llm-infra","topic":"Documentation","language":"Python","updated":"2025-01-23","comments":11,"stars":12116,"raw":"https://awesomereviewers.com/raw/unstructured-pep-257-docstring-compliance.md"},{"slug":"vllm-document-code-thoroughly","title":"Document code thoroughly","description":"Always include comprehensive documentation for your code through both\\ \\ docstrings and explanatory comments. \\n\\nFor classes, functions, and methods,\\ \\ add docstrings that explain:","repository":"vllm-project/vllm","domain":"llm-infra","topic":"Documentation","language":"Python","updated":"2025-07-07","comments":10,"stars":51730,"raw":"https://awesomereviewers.com/raw/vllm-document-code-thoroughly.md"},{"slug":"azure-cli-concise-correct-cli-help","title":"Concise, Correct CLI Help","description":"CLI help (per-flag short summaries, long summaries, and examples) must be readable, consistent, and executable. Apply these rules: - **Keep per-flag short text short:** Use a single, accurate sentence (with the default when appropriate). Do not exceed the short-help “lane” (avoid overflow).","repository":"Azure/azure-cli","domain":"cloud-infra","topic":"Documentation","language":"Python","updated":"2026-06-02","comments":8,"stars":4592,"raw":"https://awesomereviewers.com/raw/azure-cli-concise-correct-cli-help.md"},{"slug":"celery-document-behavior-changes","title":"Document Behavior Changes","description":"Update documentation every time code behavior changes or new public APIs are introduced. Apply this checklist: 1) Docstring accuracy: If you change semantics (error handling, return values, shutdown behavior, etc.), update the docstring to match reality.","repository":"celery/celery","domain":"orchestration","topic":"Documentation","language":"Python","updated":"2026-03-15","comments":8,"stars":28464,"raw":"https://awesomereviewers.com/raw/celery-document-behavior-changes.md"},{"slug":"mcp-document-behavior-accurately","title":"Document Behavior Accurately","description":"Ensure all agent-facing documentation (tool descriptions, docstrings, help text, and auto-enriched descriptions) is factually aligned with the actual implementation and is structured consistently.","repository":"awslabs/mcp","domain":"ai-agents","topic":"Documentation","language":"Python","updated":"2026-07-30","comments":7,"stars":9545,"raw":"https://awesomereviewers.com/raw/mcp-document-behavior-accurately.md"},{"slug":"dspy-complete-parameter-documentation","title":"Complete parameter documentation","description":"Ensure all public functions and classes have comprehensive docstrings that include parameter descriptions, type hints, return value documentation, and references to related implementations. This significantly improves usability by helping developers understand how to use APIs correctly and find related code.","repository":"stanfordnlp/dspy","domain":"ai-agents","topic":"Documentation","language":"Python","updated":"2025-09-03","comments":7,"stars":27813,"raw":"https://awesomereviewers.com/raw/dspy-complete-parameter-documentation.md"},{"slug":"pydantic-document-code-rationale","title":"Document code rationale","description":"Add clear comments that explain the \"why\" behind non-obvious code decisions, complex logic, or special-case handling. This is especially important when:","repository":"pydantic/pydantic","domain":"app-frameworks","topic":"Documentation","language":"Python","updated":"2025-06-12","comments":7,"stars":24377,"raw":"https://awesomereviewers.com/raw/pydantic-document-code-rationale.md"},{"slug":"opentelemetry-python-write-purposeful-comments","title":"Write purposeful comments","description":"Comments should explain \"why\" and \"how\" rather than restating what is already obvious from the code. Focus on providing additional context, usage examples, or explanations that would help other developers understand the intent and proper usage of the code.","repository":"open-telemetry/opentelemetry-python","domain":"observability","topic":"Documentation","language":"Python","updated":"2025-05-12","comments":6,"stars":2061,"raw":"https://awesomereviewers.com/raw/opentelemetry-python-write-purposeful-comments.md"},{"slug":"boto3-comprehensive-api-documentation","title":"Comprehensive API documentation","description":"Always provide comprehensive API documentation that includes accurate examples, complete parameter descriptions, and clarifications about parameter usage. This helps users understand how to properly use your API and reduces support questions.","repository":"boto/boto3","domain":"cloud-infra","topic":"Documentation","language":"Python","updated":"2024-05-14","comments":6,"stars":9417,"raw":"https://awesomereviewers.com/raw/boto3-comprehensive-api-documentation.md"},{"slug":"cpython-accurate-synced-documentation","title":"Accurate, synced documentation","description":"Docstrings, comments, and reference docs must always reflect the current, actual behavior of the code, and all related documentation locations must be updated together. Concretely:","repository":"python/cpython","domain":"docs","topic":"Documentation","language":"Python","updated":"2026-10-28","comments":5,"stars":77696,"raw":"https://awesomereviewers.com/raw/cpython-accurate-synced-documentation.md"}],"prompt_count":32}]}
