A local code knowledge graph that gives AI coding tools precise review context over MCP and a CLI.
Done-0/fuck-u-code
A CLI that scores the code quality of a project across 14 languages and produces a report with an overall score and per-file rankings.
- Stars
- 7,306
- Forks
- 328
- Open issues
- 26
- Last commit
- last month
What is it?
fuck-u-code is a command-line tool that estimates how much "legacy mess" a codebase contains. It runs seven checks covering complexity, size, comments, error handling, naming, duplication and structure, then combines them into an overall score from 0 to 100 and a per-file score where higher means worse.
Analysis uses tree-sitter for syntax parsing and supports Go, JavaScript, TypeScript, Python, Java, C, C++, Rust, C#, Lua, PHP, Ruby, Swift and Shell. Results can be printed as colored terminal output, Markdown, JSON or HTML, and the interface is available in English, Chinese and Russian. Configuration is read from `.fuckucoderc.json` or other supported formats, and `.gitignore` rules are respected.
Optionally, an AI review step sends the worst-scoring files to OpenAI-compatible, Anthropic, DeepSeek, Gemini or Ollama models. The core analysis runs offline. The project also ships an MCP server so tools such as Claude Code and Cursor can invoke the analysis directly.
Key features
- 01Scores code across seven quality dimensions and reports an overall 0-100 score.
- 02Ranks files by a per-file "shit-gas" index to surface the worst offenders.
- 03Parses 14 languages with tree-sitter.
- 04Outputs console, Markdown, JSON or HTML reports.
- 05Runs core analysis offline; optional AI review via multiple providers.
- 06Provides an MCP server for AI coding tools.
Use cases
- Getting a quick quality snapshot of a legacy codebase before refactoring.
- Finding the most complex or duplicated files to prioritize cleanup.
- Adding a code quality report to a review or CI workflow via JSON or Markdown output.
- Letting an AI coding assistant check code quality through MCP.
Quick start
- 1
Install the CLI globally from npm
npm install -g eff-u-code - 2
Analyze the current directory
fuck-u-code analyze
Things to know
- AI code review needs an external API key or a local Ollama instance.
- The npm package is named eff-u-code, while the command is fuck-u-code.
Topics
FAQ
- What is fuck-u-code?
- A CLI that scores the code quality of a project across 14 languages and produces a report with an overall score and per-file rankings. fuck-u-code is a command-line tool that estimates how much "legacy mess" a codebase contains. It runs seven checks covering complexity, size, comments, error handling, naming, duplication and structure, then combines them into an overall score from 0 to 100 and a per-file score where higher means worse.
- Is fuck-u-code free to use? What license does it have?
- fuck-u-code is open source under the MIT license. Check the license terms before using it in commercial products.
- Is fuck-u-code still maintained?
- Updated within 6 months. The last commit to fuck-u-code was on Sep 7, 2026.
- What can I use fuck-u-code for?
- Getting a quick quality snapshot of a legacy codebase before refactoring. Finding the most complex or duplicated files to prioritize cleanup. Adding a code quality report to a review or CI workflow via JSON or Markdown output. Letting an AI coding assistant check code quality through MCP.
- How do I install fuck-u-code?
- Install the CLI globally from npm: npm install -g eff-u-code Analyze the current directory: fuck-u-code analyze
- Where can I get fuck-u-code?
- The source code and installation instructions are on GitHub: https://github.com/Done-0/fuck-u-code
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A CLI tool that opens a local GitHub-style web viewer for reviewing git commit diffs, with comments you can copy as AI prompts.
A CLI and web tool that packs an entire code repository into one AI-friendly file for feeding to LLMs like Claude or ChatGPT.
An extremely fast Python linter and code formatter written in Rust, with over 900 lint rules and Black-compatible formatting.
A cross-platform terminal emulator built on web technologies, extensible through plugins and themes.
A zero-configuration linter and formatter for JavaScript and TypeScript that wires up Biome, ESLint, or Oxlint with preset rules in one command.