Skip to content

Code Validation

Gee-Code automatically validates code files after every Write and Edit operation. Validation is non-blocking — results are reported as warnings that help the AI self-correct, but they never prevent the file from being saved.

When the AI writes or edits a file:

  1. Detects the file type from its extension
  2. Runs the appropriate validators (syntax checkers, linters)
  3. Reports any issues back to the AI
  4. The AI sees the issues and can fix them immediately

This creates a fast feedback loop where syntax errors and lint issues are caught and corrected within the same turn.

LanguageExtensionsValidators
Python.pyast.parse syntax + ruff linting
JavaScript/TypeScript.js, .jsx, .ts, .tsxquick-lint-js
JSON.jsonjson.loads syntax check
YAML.yaml, .ymlyaml.safe_load syntax check
Shell.sh, .bash, .zshbash -n syntax + shellcheck
HTML.html, .htmPython html.parser
Swift.swiftswiftc -parse syntax check
  • Error — syntax errors, parse failures. The AI is prompted to fix these immediately.
  • Warning — lint issues, unused imports, style violations. Reported but not critical.

Some validators use external tools. If the tool isn’t installed, validation gracefully skips it.

/validate # Show which validators are available
/validate install # Install recommended validators
Terminal window
pip install ruff
Terminal window
brew install quick-lint-js # macOS
npm install -g quick-lint-js # npm
Terminal window
brew install shellcheck # macOS
apt install shellcheck # Ubuntu/Debian
/validate # Show status
/validate off # Disable auto-validation
/validate on # Re-enable

Each validator has a 5-second timeout to keep the feedback loop fast.