@@ -112,6 +112,7 @@ optional-dependencies.db = [
112112 " sqlalchemy-spanner>=1.14" ,
113113]
114114optional-dependencies.dev = [
115+ " codespell[toml]==2.4.2" ,
115116 " flit>=3.10" ,
116117 # Lint tools used by scripts/run_precommit_checks.sh (which runs them directly,
117118 # without the pre-commit framework). Formatters that rewrite files are pinned
@@ -300,6 +301,17 @@ line_length = 200
300301single_line_exclusions = []
301302known_third_party = [ " a2a" , " google.adk" ]
302303
304+ [tool .codespell ]
305+ # Real words/identifiers that codespell misreads as typos:
306+ # hel/serie/strin -> substrings in test fixtures; te -> local variable;
307+ # rouge -> the ROUGE metric; unparseable -> valid spelling variant;
308+ # re-use/re-used -> intentional hyphenation; lamda -> Google LaMDA project.
309+ ignore-words-list = " hel,serie,strin,te,rouge,unparseable,re-use,re-used,lamda"
310+ # CHANGELOG.md is generated from commit messages; lockfiles, notebooks, JSON
311+ # fixtures, bundled JS/source maps, and the vendored CLI browser bundle are
312+ # generated or data files, not prose we own.
313+ skip = " *CHANGELOG.md,*.lock,*.ipynb,*.json,*.js,*.map,*/cli/browser/*"
314+
303315[tool .mypy ]
304316mypy_path = [ " src" ]
305317exclude = [ " contributing/samples/" , " tests/" ]
0 commit comments