trackmcp
Back to directory
ChuprinaDaria

Vibecode-Cleaner-Fartrun

View on GitHub

Not another AI reviewing AI. Rust-powered code scanner that actually reads your codebase — zero extra tokens consumed. 29 MCP tools: security vulns, dead code, health checks, save points, frozen files. Finds problems. Farts at you. Hasselhoff approves.

140 stars PythonOthers Updated Jul 31, 2026

Documentation

MseeP.ai Security Assessment Badge

code
____ _    ___  _____ ___  __  _ __  __
  / __// \  | _ \|_   _| _ \| || | \ \/ /
 | _|_| o | |   /  | | | v /| \/ |  \  /
 |_|  |___| |_|\_\ |_| |_|_\|_||_|  |_|
  fartrun — vibe-coder safety net, with farts

  →  Scanning project at ~/my-app

  ✓  Save Points: 3 (latest: "before big refactor")
  ✓  Frozen files: 2
  ✓  Detected stack: React 18, FastAPI, PostgreSQL

  ✓  Context7 MCP: installed
  ✓  Frozen-files hook: active (Edit/Write on frozen files is blocked)

  →  Health: 87/100 — 3 dead functions, 2 missing tests
  →  Security: 1 high (exposed .env in git history)
  💨 The Thunderclap — Someone will find this. Soon.

Health Scanner Accuracy

StackAccuracy
Python (general)97%
Go97%
TypeScript / NestJS / React99%
FastAPI + React/Next.js96%
Django + DRF + Celery91%
Overall~95%

> v3.1.0 — Multi-LLM provider support + incremental health scanner.

> Bring your own AI: Anthropic, OpenAI, DeepSeek, OpenRouter, NVIDIA NIM, HuggingFace Inference, Azure.

> Incremental scans — only changed files get re-analyzed. 634 tests. Full source, open MIT.

> PRs welcome. See Contributing.


Why This Isn't Another AI Checking AI

Every other scanner sends your code to a cloud, burns tokens analyzing it, and charges you for the privilege. Fartrun does none of that.

  • Rust-compiled modules run locally. 10 security modules + 9-phase health scanner. No API calls. No tokens consumed. No code leaves your machine. Ever.
  • Fast. Tree-sitter AST parsing across thousands of files. Not "fast for a cloud service" — actually fast.
  • Optional AI tips via Haiku (~$0.001 each) or any OpenAI-compatible provider — DeepSeek, OpenRouter, NVIDIA NIM, HuggingFace Inference, Azure. Bring your own key. That's the only money involved, and it's optional.
  • No telemetry. No cloud. No "we only use your code to improve our service." Just a local scan and a fart.

What It Does

FeatureDetails
Security Scanner10 Rust modules — processes, network, filesystem, secrets, supply chain, git hooks, container escape, autostart, crontab, env leak
Health Scanner9-phase project audit — dead code, tech debt, test coverage, git hygiene, docs quality, framework checks, Context7 fix recommendations
Token MonitorTracks Claude Code spending, cache efficiency, model comparison, budget forecasts. Reads your JSONL diaries. Locally. Judges silently.
MCP Server29 tools, stdio + HTTP/SSE. Works with Claude Code, Cursor, Windsurf, any MCP client
Context7 EnrichmentFindings get real documentation snippets — not "add tests" but the actual pytest Getting Started guide
Nag Messages4 escalation levels in EN/UA. From *"Tokens: 45K. Calories burned: 0."* to *"GG. 1.2M tokens. Touch grass."*
Win95 GUIPyQt5 desktop app. 8 pages. Popup notifications. Hasselhoff wizard. Peak aesthetic.

AI Provider Configuration

By default, Fartrun uses Claude Haiku for tips and explanations. You can switch to any OpenAI-compatible provider:

ProviderBase URLModel example
Anthropic (default)`claude-haiku-4-5-20251001`
DeepSeek`https://api.deepseek.com``deepseek-coder`
OpenRouter`https://openrouter.ai/api/v1``openai/gpt-4o`
NVIDIA NIM`https://integrate.api.nvidia.com/v1``deepseek-ai/deepseek-v4-flash`
HuggingFace`https://router.huggingface.co/v1``meta-llama/Llama-3.3-70B-Instruct`
Azure OpenAI`https://.openai.azure.com/...``gpt-4o`

Configure in `config.toml`:

toml
[ai]
provider = "openai"
api_key = "sk-..."
model = "deepseek-coder"
base_url = "https://api.deepseek.com"

Or via env vars: `ANTHROPIC_API_KEY`, `DEEPSEEK_API_KEY`, `OPENROUTER_API_KEY`, `NVIDIA_API_KEY`, `HF_API_KEY`, `AZURE_API_KEY`, `OPENAI_API_KEY`.

The old `[haiku]` config still works — zero breaking changes.


Quick Start

bash
npx fartrun@latest install

Downloads the binary for your OS and configures MCP in Claude Code, Cursor & Windsurf automatically.

MCP install output
bash
npx fartrun@latest install --claude    # Claude Code only
npx fartrun@latest install --cursor    # Cursor only
npx fartrun@latest install --windsurf  # Windsurf only

Desktop (binary)

Download from Releases.

From source

bash
git clone https://github.com/ChuprinaDaria/Vibecode-Cleaner-Fartrun.git
cd Vibecode-Cleaner-Fartrun
pip install -e ".[http,watch]"  # Core + HTTP MCP server + GUI watch mode

# Optional: Rust crates for native speed (10-100x faster scans)
# Prerequisites: Rust toolchain (rustup) + maturin
#   curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh   # Linux/macOS
#   winget install Rustlang.Rustup                                   # Windows
#   pip install -e ".[build]"                                        # installs maturin
cd crates/health && maturin develop --release && cd ../..
cd crates/sentinel && maturin develop --release && cd ../..

# Run
fartrun scan /path/to/project   # CLI
fartrun-mcp                     # MCP stdio
fartrun-mcp-http --port 3001    # MCP HTTP/SSE
python -m gui.app               # Desktop GUI (requires PyQt5)

> Extras: `[http]` HTTP MCP server · `[watch]` GUI test-watch mode · `[build]` Rust crate build (maturin) · `[ai]` extra LLM providers · `[security]` pip-audit · `[dev]` test suite

CLI

bash
fartrun scan /path/to/project    # Health scan → MD report
fartrun save "before refactoring" # Save point
fartrun rollback 1                # Undo everything
fartrun gui                       # Win95 GUI
Health scan CLI output

After a full health scan you get a `.md` report in `.fartrun/reports/` — already formatted for Claude Code context. Paste it into your prompt or let the MCP tool feed it directly. No copy-pasting JSON, no parsing logs. Just a structured markdown that Claude actually understands: findings, severity, file paths, and fix suggestions — ready to act on.

Health report output

MCP Setup (manual)

If you prefer manual config over `npx fartrun@latest install`:

Claude Code — stdio

json
{
  "mcpServers": {
    "fartrun": { "command": "fartrun-mcp" }
  }
}

Cursor / Windsurf — HTTP

bash
fartrun mcp --http --port 3001
json
{
  "mcpServers": {
    "fartrun": { "url": "http://localhost:3001/sse" }
  }
}

MCP Tools (29)

CategoryTools
Health`run_health_scan`, `get_health_summary`, `get_unused_code`, `get_tech_debt`, `get_security_issues`, `get_module_graph`, `get_complexity_report`, `get_git_health`, `get_test_coverage`, `get_docs_quality`, `get_ui_issues`, `get_framework_check`, `get_outdated_deps`, `get_config_map`, `generate_health_report`
Status`get_status`, `get_activity`, `detect_project_stack`, `search_code`
Prompts`build_prompt`
Save Points`create_save_point`, `rollback_save_point`, `list_save_points`
Frozen Files`freeze_file`, `unfreeze_file`, `list_frozen`
Integrations`install_context7`, `uninstall_context7`, `list_prompts`

Farts & Hasselhoff

Two fart sounds. That's it. We didn't need more.

FindingYou hear
Something's offA polite, restrained poot. A gentleman's warning.
Something's very offThe full experience. Neighbors will ask questions.

Optional: Hasselhoff Mode

For those who need _inspiration_ to fix their code, enable Hasselhoff mode. Three songs. Handpicked. Peer-reviewed by David himself (not really).

SongWhen it playsMotivational effect
Looking for FreedomCritical findings detectedYou're looking for freedom from your own code. You won't find it.
True SurvivorYou actually fix everythingCongratulations survivor. The Hoff is proud.
DuEaster eggIf you know, you know. If you don't — you're not ready.

Hasselhoff used to appear for everything. Container started? Hasselhoff. You opened a terminal? Hasselhoff. Beta testers staged an intervention. Now he only shows up when summoned.

He's still watching though.


Cross-Platform

LinuxmacOSWindows
Notificationsnotify-sendosascriptPowerShell toast
Soundpw-play / paplay / aplayafplayPowerShell SoundPlayer
Firewallufw / nftables / iptablessocketfilterfw / pfnetsh advfirewall
Config`~/.config/claude-monitor/``~/Library/Application Support/``%APPDATA%\claude-monitor\`

Wall of Scans

Real scan results from real projects. No names, no shame — just the output.

Got a scan screenshot? Drop it in a PR or issue — it helps improve the scanner.

See what others found: `reviews/`


Buy Me a Toilet Paper

This project is free. Forever. No premium tier. No "enterprise edition."

If Fartrun saved you from mass embarrassment:

Buy Me a Toilet Paper

All donations go toward toilet paper, coffee, and finding the perfect fart sound for the next severity level.


Made By

Daria ChuprinaLazysoft, Wroclaw

LinkedIn · GitHub · Threads · Reddit · Email


Documentation

Full technical wiki: **Wiki →**

14 pages covering architecture, all CLI commands, MCP tools reference, health scanner phases, security modules, plugin system, configuration, and how AI agents should use findings.


Contributing

PRs welcome. Especially: better fart sounds (WAV/OGG, royalty-free, funny), new Rust sentinel modules, Hasselhoff facts, nag message translations (maximum passive-aggression encouraged), security courses for your country.


License

MIT — see LICENSE for the real one.

Plus the supplementary Fart & Run License v1.0 (for vibes):

> 1. You may fart and run, but you must attribute the original farter.

> 2. You may not mass-fart on production servers you don't own.

> 3. Hasselhoff appearances are AS-AVAILABLE, not guaranteed.

> 4. Nag messages are a feature. Disabling them voids your warranty (you never had one).

> 5. The "Silent But Deadly" mode is exactly what it sounds like. And doesn't sound like.


Made with flatulence in Wroclaw, Poland

Frequently asked questions

What is Vibecode-Cleaner-Fartrun?

Vibecode-Cleaner-Fartrun is Not another AI reviewing AI. Rust-powered code scanner that actually reads your codebase — zero extra tokens consumed. 29 MCP tools: security vulns, dead code, health checks, save points, frozen files. Finds problems. Farts at you. Hasselhoff approves.

How do I install Vibecode-Cleaner-Fartrun?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is Vibecode-Cleaner-Fartrun open source?

Yes — it is hosted on GitHub at https://github.com/ChuprinaDaria/Vibecode-Cleaner-Fartrun and has 140 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP