All skills
Skillintermediate
SPy Language - Dev Reference
SPy Language - Dev Reference — reference document from Claude Code knowledge pack.
Claude Code Knowledge Pack7/10/2026
Overview
SPy Language - Dev Reference
General behavior of claude code
- NEVER run tests automatically unless explicitly asked
- when asked to write a test, write just the test without trying to fix it
- avoid writing useless comments: if you need to write a comment, explain WHY the code does something instead of WHAT it does
Common Commands
- When running tests, always use the venv: e.g. `./venv/bin/pytest'
- Run all tests:
pytest - Run single test:
pytest spy/tests/path/to/test_file.py::TestClass::test_function - Run backend-specific tests:
pytest -m interpor-m Cor-m doppler - Type checking:
mypy - Test shortcut:
source pytest-shortcut.sh(enablespas pytest alias with tab completion)
Compile SPy Code
spy your_file.spy # Execute (default)
spy -C your_file.spy # Generate C code
spy -c your_file.spy # Compile to executable
spy -O 1 -g your_file.spy # With optimization and debug symbols
Code Style Guidelines
- Use strict typing (mypy enforced)
- Classes: PascalCase (
CompilerTest) - Functions/methods: snake_case (
compile_module()) - Constants: SCREAMING_SNAKE_CASE (
ALL_BACKENDS) - Organize imports by standard Python conventions
- Prefer specific imports:
from spy.errors import SPyError - Tests inherit from
CompilerTestbase class - Use backend-specific decorators for test filtering (
@only_interp,@skip_backends)
GH PR Guidelines
- When creating a PR, describe what you did, but don't include the "test plan" section.