The Quality Hub is SnakeFlow’s most powerful feature: a comprehensive code quality system that runs 85+ checks in parallel and streams results live to the sidebar as each check completes.
The legacy sequential build pipeline (devManager.pipeline.*, lint → typecheck → test → build in one terminal) was removed — use custom checks in Quality Hub for the same commands, or rely on built-in and CLI providers. Ctrl+Alt+F runs all enabled Quality Hub checks.
Profile & Quality Settings
Setting
Purpose
devManager.quality.profile
Active quality profile (strict / balanced / vibe). Sets default enabled/severity for all checks.
devManager.quality.warnAsFail
Whether warnings count as failures (profile / true / false).
devManager.quality.strictMode
Enable extra strict checks off by default in every profile.
devManager.quality.autoGateDuplicates.enabled
Auto-disable a built-in check when a better CLI tool for the same task is detected.
devManager.quality.degradedStrict
Softer strict mode: missing tools → warn instead of fail.
Warn as fail
devManager.quality.warnAsFail controls whether warnings count as failures: inherit from profile (profile), always (true), or never (false).
Strict mode
devManager.quality.strictMode enables extra strict checks that are off by default in every profile.
Auto-gate duplicates
devManager.quality.autoGateDuplicates.enabled auto-disables a built-in check when a better CLI tool for the same task is detected (for example Gitleaks over regex secret scanning).
Profiles in practice:strict — everything on, warnings count as failures. balanced — same checks enabled, warnings stay warnings. vibe — only high-signal CLI tooling by default; tune per provider with *.enabled. Per-provider settings always override the profile.
Secret scanning: enable Gitleaks when the CLI is installed; it auto-gates regex Secret Leaks. Use SnakeFlow: Quality Hub Doctor to see which CLIs are missing.
Check Categories
Built-in (70+)
Mostly pure Node.js heuristics; some built-ins call npx or local CLIs (tsc, ESLint, Biome, YAMLlint, Spectral, …)
and skip when unavailable. Covers project health, code size, security, architecture, TypeScript/React/Next.js
hints, ORM schema and migration hygiene (No Manual Migrations,
Migrations CI Gate, Squawk
extras), and more.
CLI Tools (20+)
External tools (Semgrep, Trivy, Checkov, hadolint, etc.). Returns skip gracefully if the tool is not installed.
Custom Checks
Project-specific checks — any package script or shell command, integrated into the Quality Hub panel.
How It Works
Click Run (play) in the Quality Hub panel title bar — or press Ctrl+Alt+F, or run SnakeFlow: Run Quality Checks from the Command Palette. For a faster loop on a large repo, use SnakeFlow: Run Quality Checks (changed files only) (or Run Changed Files Only on a single check / category) so providers scope work to git-changed files where supported.
While checks run, Stop (square icon) appears in the title bar — use it to cancel the full run.
Checks run in parallel; results appear in the sidebar as each check completes.
Use inline actions on a row: Run This Check (re-run one provider), Copy Result, or Stop This Check while it is still running.
On a category header (Built-in, CLI, Custom), use Run Category Checks or Stop Category Checks to scope the run.
Send to Chat — sends the aggregated report to your editor’s AI chat (see Report to Chat for auto-send options).
Save — writes the same style of report as a Markdown file under .snakeflow/ in your project root (timestamped filename). You can open it from the notification.
From the Command Palette you can Refresh Quality Results (re-render the tree) or Clear Quality Results (reset the panel).
Title bar order (when not running): Run → Send to Chat → Save report → Configure (opens Settings filtered to devManager.quality) → Add custom check → Remove custom check.
Skipping Directories
The extension has 70+ built-in exclusions: node_modules, dist, build, __pycache__, target, vendor, .venv, .next, .nuxt, .svelte-kit, coverage, etc.
Add project-specific directories that are not already excluded:
"devManager.quality.skipDirs": [
"generated",
"proto-gen",
"legacy",
".output",
"storybook-static"
]
Skipping Files
Use devManager.quality.skipFiles to exclude specific paths or patterns from checks that walk source files (line counts, TODOs, import depth, test ratio, and similar) and from Semgrep result aggregation.
"devManager.quality.skipFiles": [
"docs/generated/api.md",
"*.vsix",
"**/generated-types.ts"
]
Use forward slashes relative to the project root. Forms supported: exact relative path, patterns like *.vsix, or suffix globs such as **/file.ext.
Performance Settings
"devManager.quality.timeout": 30,
"devManager.quality.maxBuffer": 50
Setting
Default
Description
timeout
30
Max runtime per check in minutes
maxBuffer
50
Max stdout buffer per check in MB
Max buffer
devManager.quality.maxBuffer — max stdout buffer per check in MB (default 50).
Report to Chat
"devManager.quality.chatReport": "onFail",
"devManager.quality.chatPrompt": "Analyze these results and prioritize the 3 most important issues to fix."
chatReport value
Behavior
auto
After every run, open chat with the report
onFail (default)
Open chat only when there are failures
manual
Never auto-send; use Send to Chat when you want
never
Do not send to chat
Chat prompt
devManager.quality.chatPrompt — optional text prepended when sending the report.
Quick Links
Built-in Checks → — project health, heuristics, and optional local tools