docs/agents/linter-architecture.md
IMPORTANT: All C++ linters MUST use the centralized dispatcher for performance.
ci/lint_cpp/run_all_checkers.pyuv run python ci/lint_cpp/run_all_checkers.py <file_path>.claude/hooks/lint-on-save.py)ci/lint_cpp/your_checker.py inheriting from FileContentCheckershould_process_file(file_path: str) -> bool (filter which files to check)check_file_content(file_content: FileContent) -> list[str] (check logic)run_all_checkers.py (see create_checkers())bash lint --cpptest_*.py scripts that scan files independentlylint bash scriptci/lint_cpp/serial_printf_checker.py - Simple pattern matching checkerci/lint_cpp/using_namespace_fl_in_examples_checker.py - Regex-based checkerci/lint_cpp/static_in_headers_checker.py - Complex multi-condition checker