Scripts
September 17, 2026 ยท View on GitHub
The scripts/ directory holds developer tooling. It is not a Python package
that ships in the runtime product; everything here is for contributors working
in a repo checkout.
What This Directory Owns
- the unified test runner (
run_tests.py) that drives the unit, runtime smoke, eval, and GUI functional suites - UI and resource build helpers (
build_ui.py,process_qss.py,compile_translations.py) - developer install helpers (
install.sh,install_helpers.sh). Native runtime sidecar (llama.cpp/whisper.cpp) builds live in Capsize-Games/airunner-native;install.shdownloads the pinned bundle from there. - code-quality and reporting tooling (
code_quality_report.py,coverage_report.py, the dead-code scanners and unused-import checkers, the complexity reports,mypy_shortcut.py,security_audit.sh) - the out-of-band content-safety policy generator
(
build_policy_terms.py) - local dev orchestration under
scripts/dev/(run_services.sh,run_gui.sh,test_services.sh,stop_services.sh)
The architecture audit and package map are tracked in docs/architecture/architecture-complexity-audit.md and docs/architecture/layered_product_architecture.md.
Usage
Run the unit suite from a repo checkout:
./venv/bin/python scripts/run_tests.py --unit
Rebuild the UI assets after changing .ui or .qrc sources:
./venv/bin/python scripts/build_ui.py
Regenerate the content-safety policy data file from a plaintext term list
kept outside the repository (the default input lives under the gitignored
tmp/ directory; never commit the plaintext list):
venv/bin/python scripts/build_policy_terms.py --input tmp/policy_terms_source.txt
See scripts/run_tests.py --help for the full set of test targets.