- name
- ort-lint
- description
- Lint and format ONNX Runtime code. Use this skill when asked to lint, format, or check code style for C++ or Python files in ONNX Runtime.
# Linting and Formatting ONNX Runtime Code
ONNX Runtime uses [lintrunner](https://github.com/suo/lintrunner) for both C++ (clang-format) and Python (ruff).
## Setup (one-time)
```bash
pip install -r requirements-lintrunner.txt
lintrunner init
```
## Commands
```bash
lintrunner -a # auto-fix changed files
lintrunner -a --all-files # auto-fix all files
lintrunner -a path/to/file.py path/to/other_file.cc # auto-fix specific files
lintrunner f --all-files # format Python files only
lintrunner # check without fixing (dry run)
```
## Style rules
### C++
- Google C++ Style with modifications (see `docs/Coding_Conventions_and_Standards.md` for full details)
- Max line length: 120 characters, but **aim for 80** when possible
- Configured in `.clang-format` and `.clang-tidy`
### Python
- Google Python Style Guide (extension of PEP 8)
- Max line length: 120 characters
- Configured in `pyproject.toml`
## Agent tips
- **Activate a Python virtual environment** before installing dependencies. See "Python > Virtual environment" in `AGENTS.md`.
- If lintrunner is not yet set up, install and initialize first (see [Setup](#setup-one-time)).
- Prefer `lintrunner -a` (changed files only) over `--all-files` unless the user asks for a full sweep.
在 GitHub 查看