{"repo":"w1ckedxt/cynical-sally","free":true,"listed":false,"github":"https://github.com/w1ckedxt/cynical-sally","clone":"git clone https://github.com/w1ckedxt/cynical-sally.git","description":"Brutally honest senior-engineer code reviews for Claude Code, Cursor & Windsurf - and your terminal. Scores, evidence-backed issues, usable fixes.","language":"TypeScript","stars":92,"topics":["cli","explain","mcp","refactor","sally","cynicalsally","ai","ai-code-review","claude","claude-code"],"license":"MIT","category":"mcp-servers","readme_excerpt":"Cynical Sally Brutally honest code reviews. In your terminal and your AI editor. Because \"You're absolutely right\" is probably absolutely wrong. npm i -g @cynicalsally/cli · MCP server for Claude Code, Cursor &amp; Windsurf --- Your AI pair programmer is lying to you. Sally isn't. She's the senior engineer your code hoped it'd never meet. Scores from 0 to 10, real issues backed by evidence, and fixes you can actually use. Works as a CLI tool and as an MCP server in Claude Code, Cursor, and Windsurf. Install Or run without installing: Requirements: Node.js 18+ See exactly what leaves your machine Sending code to a server you don't control deserves more than \"trust me.\" So Sally lets you verify it instead : --dry-run collects everything as if it were about to roast — then sends nothing . Instead it prints the exact payload: every file path, byte size, and token estimate; which files were held back and why ( .env , keys, certs, binaries, .gitignore matches, size limits); and writes a local SHA-256 receipt to .sally/ so you can verify byte-for-byte what would have been uploaded. Secret files ( .env , SSH keys, certs, credential files) are skipped on your machine before anything is sent — verify it yourself with --dry-run . Only review code you're allowed to upload. Local reports land in .sally/ — add it to your .gitignore : See Privacy & Security below for the full data-flow. Quick Start Roast Options Get your repo's verdict — and a badge to prove it Let Sally judge your whole re","default_branch":null,"files":null,"tree":[],"storefront":"/r/w1ckedxt","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/w1ckedxt/cynical-sally/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}