Documentation

Get started with StableStack

Run your first scan in under a minute. Free tier includes 19 checks — upgrade for all 132.

Quick Start

1

Install StableStack

$ pip install stablestack
2

Run it

stablestack

StableStack auto-detects your source directories and scans them. It never writes to your repo unless you explicitly run stablestack init.

3

(Optional) Wire up Claude Code

stablestack init

Installs pyproject.toml config, .stablestackignore, and Claude Code slash commands (/check, /fix-production). Use --minimal for just the config, or --no-commands to skip the slash commands.

4

Review and fix issues

StableStack outputs prioritized findings with clear explanations and fix suggestions. Or use /check in Claude Code to have it fix them for you.

Free vs Paid

Free

19 checks

Security, quality, C#, and project rules — no signup required:

  • • SEC001–SEC006, SEC012 – Security essentials
  • • CS001–CS003 – C# / Unity essentials
  • • SESS002 – Session safety
  • • SCHEMA001–SCHEMA002 – Schema validation
  • • PROJ001, PROJ005 – Project setup
  • • QUAL001, QUAL009 – Code quality
  • • STRUCT001 – Structure
  • • ASYNC001 – Async essentials
Paid

All 132 checks

Full suite with license key:

  • • Determinism, async safety, concurrency
  • • Type safety, code quality, performance
  • • Frontend, testing, infrastructure, memory
  • View pricing →

CLI Options

--ci

CI Mode

Exit with code 1 if any errors are found. Perfect for CI/CD pipelines.

stablestack src/ --ci
--format json

JSON Output

Output results as JSON for programmatic processing.

stablestack src/ --format json > results.json
--fix

Auto-fix

Automatically fix issues where possible.

stablestack src/ --fix
--watch

Watch Mode

Re-run checks automatically when files change.

stablestack src/ --watch
--disable

Disable Rules

Disable specific rules by ID.

stablestack src/ --disable QUAL005,QUAL006

Claude Code Integration

Run stablestack init once in your repo to install slash commands for Claude Code. StableStack never writes to your repo without this explicit opt-in.

/check

Run checks and fix issues

Runs StableStack on your project, reviews findings, and fixes issues automatically — starting with the most critical.

/fix-production

Monitor and fix CI/CD builds

Auto-detects your CI/CD platform (GitHub Actions, Vercel, Amplify, Netlify, etc.), monitors builds, and keeps fixing until production is green.

Deterministic AI Caching

Eliminate redundant LLM API calls. Same prompt, same result — served from disk cache instead of hitting the API again.

Install

stablestack deterministic-ai

Installs stablestack_cache.py into your project root, adds .cache/ to .gitignore, and sets up a /deterministic-ai slash command for Claude Code.

Usage

from stablestack_cache import cache

@cache
def get_summary(text: str) -> str:
    response = client.chat.completions.create(
        model="gpt-4",
        messages=[{"role": "user", "content": text}]
    )
    return response.choices[0].message.content

# First call hits the API, subsequent calls return from disk
get_summary("Summarize Q4 results")  # API call
get_summary("Summarize Q4 results")  # From cache — free and instant

Utilities

from stablestack_cache import clear_cache, get_cache_stats

clear_cache()           # Wipe all cached results
get_cache_stats()       # Returns dict with file counts and sizes

Enable verbose logging with STABLESTACK_CACHE_VERBOSE=1 to see cache hits and misses.

Configuration

Configure StableStack in your pyproject.toml:

[tool.stablestack]
# Enable only specific rules
enable = ["DET001", "DET002", "SEC001", "SEC002"]

# Or disable specific rules
disable = ["QUAL005", "QUAL006"]

# Path patterns
include = ["src/**/*.py"]
exclude = ["**/migrations/**", "**/test_*.py"]

Ready to dive deeper?

Explore all 132 checks available in StableStack.

View all checks