SciTeX Linter - AST-based Python Linter

SciTeX Linter is an AST-based Python linter that enforces SciTeX reproducible research patterns. It provides six interfaces: CLI, Format (auto-fix), Python API, flake8 plugin, MCP server for AI agents, and Claude Code Hook.

Key Features

  • 45 Rules across 8 categories: Structure, Import, I/O, Plot, Stats, Path, Figure

  • Six Interfaces: CLI, Format (auto-fix), Python API, flake8 plugin (STX prefix), MCP server, Claude Code Hook

  • Lint + Execute: scitex-linter python script.py lints then runs your script

  • Claude Code Hook: Auto-lints Python files on every Write/Edit

  • Severity Filtering: --severity error to focus on blockers only

Quick Example

CLI:

# Lint a file
scitex-linter check script.py

# Lint then execute
scitex-linter python experiment.py --strict

# List all rules
scitex-linter rule

flake8:

# Uses STX prefix
flake8 --select STX script.py

Indices and tables