{"id":50503195,"url":"https://github.com/HugoLopes45/llmstrip","last_synced_at":"2026-06-19T07:00:38.334Z","repository":{"id":339635559,"uuid":"1162760272","full_name":"HugoLopes45/llmstrip","owner":"HugoLopes45","description":"Strip LLM writing patterns from prose, code comments, and commits — CLI, Claude Code skill, Cursor rule, and LLM system prompt.","archived":false,"fork":false,"pushed_at":"2026-03-29T12:19:38.000Z","size":886,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-03T04:20:39.994Z","etag":null,"topics":["ai-humanizer","ai-tools","ai-writing","anthropic","claude","claude-code","claude-code-skills","claude-skills","cli","cursor","developer-tools","git-hooks","humanize","linter","llm","opencode","productivity","rust","text-processing"],"latest_commit_sha":null,"homepage":"https://github.com/HugoLopes45/llmstrip","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HugoLopes45.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-20T16:57:44.000Z","updated_at":"2026-03-29T12:19:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/HugoLopes45/llmstrip","commit_stats":null,"previous_names":["hugolopes45/unai","hugolopes45/llmstrip"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/HugoLopes45/llmstrip","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoLopes45%2Fllmstrip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoLopes45%2Fllmstrip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoLopes45%2Fllmstrip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoLopes45%2Fllmstrip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HugoLopes45","download_url":"https://codeload.github.com/HugoLopes45/llmstrip/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HugoLopes45%2Fllmstrip/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34520432,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-humanizer","ai-tools","ai-writing","anthropic","claude","claude-code","claude-code-skills","claude-skills","cli","cursor","developer-tools","git-hooks","humanize","linter","llm","opencode","productivity","rust","text-processing"],"created_at":"2026-06-02T13:30:32.505Z","updated_at":"2026-06-19T07:00:38.317Z","avatar_url":"https://github.com/HugoLopes45.png","language":"Rust","funding_links":[],"categories":["Starter Stacks"],"sub_categories":["Code / PR / Team Governance"],"readme":"# llmstrip\n\nStrip AI patterns from text and code. Prompt + linter.\n\n\u003e 25× excess frequency of `delve` post-ChatGPT. 280+ excess words identified. 34 structural rules. Grounded in peer-reviewed data.\n\n![demo](assets/demo.gif)\n\n## Two ways to use it\n\n**Interactive — the prompt (recommended)**\n\nPaste the system prompt into any LLM, or use the Claude Code skill. The LLM rewrites your text using all 34 rules, including structural patterns that no regex can catch.\n\n**Automation — the binary**\n\nRun `llmstrip --report --fail` in CI or as a git hook. Same rules, deterministic, no network, no runtime.\n\n## Install the prompt\n\n**Claude Code skill:**\n\n```bash\nmkdir -p ~/.claude/skills/llmstrip\ncurl -sL https://raw.githubusercontent.com/HugoLopes45/llmstrip/main/prompts/claude-code.md \\\n  \u003e ~/.claude/skills/llmstrip/SKILL.md\n```\n\nOr from the repo: `make install-skill`\n\nType `/llmstrip` in any Claude Code session to clean the current file.\n\n**Other tools:**\n\n```bash\nmake install-cursor    # Cursor — .cursor/rules/llmstrip.mdc\nmake install-copilot   # GitHub Copilot — .github/copilot-instructions.md\nmake install-windsurf  # Windsurf\nmake install-zed       # Zed\nmake install-all       # All of the above\n```\n\nOr copy `prompts/system-prompt.md` into any LLM's system prompt directly.\n\n## Install the binary\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/HugoLopes45/llmstrip/main/scripts/install.sh | sh\n```\n\nOr via Cargo:\n\n```bash\ncargo install --git https://github.com/HugoLopes45/llmstrip\n```\n\n## Use cases\n\n### Filter every Claude response automatically\n\n```bash\n# .claude/settings.json — PostToolUse hook\n{\n  \"hooks\": {\n    \"PostToolUse\": [{\n      \"matcher\": \".*\",\n      \"hooks\": [{\"type\": \"command\", \"command\": \"llmstrip\"}]\n    }]\n  }\n}\n```\n\n### Strip AI prose\n\n```bash\necho \"Let me delve into this robust and comprehensive approach.\" | llmstrip\n# -\u003e Let me dig into this solid and thorough approach.\n```\n\n### Clean AI-generated code comments\n\n```bash\nllmstrip --report --mode code service.py\n\n# Mode: code  |  4 finding(s)\n#\n# HIGH (1)\n#   line 2: LLM docstring boilerplate: 'this function serves as'\n#\n# MEDIUM (3)\n#   line 1: Type-in-name: use 'user' instead of 'userDataObject'\n```\n\n### Catch AI commit messages before they land\n\n```bash\n# .git/hooks/commit-msg\n#!/bin/sh\nllmstrip --mode code --rules commits --report --fail --min-severity high \"$1\"\n```\n\n## CI gate\n\nBlock AI-written release notes in CI:\n\n```bash\nllmstrip --report --fail --min-severity high release-notes.md\n```\n\n## Rules\n\n34 rules across two levels:\n\n**Word-level (Rules 1-24):** significance inflation, banned vocabulary (delve, robust, leveraging, seamlessly...), copula avoidance, sycophantic openers, chatbot closers, filler phrases, excessive hedging.\n\n**Structural (Rules 25-34):** compound clause addiction, mini-essay paragraphs, sentence-initial transition saturation, paired construction overuse, noun phrase bloat, self-congratulation framing, abstraction level monotony, missing contractions, forward projection cliche, resume verbs.\n\nFull list: [`rules/`](rules/)\n\n## Research\n\nRules are grounded in peer-reviewed corpus studies:\n\n- **Kobak et al. (2025)** — 15M PubMed abstracts. `delve` appeared 25× more often post-ChatGPT. 280+ excess words. [arXiv:2406.07016](https://arxiv.org/abs/2406.07016)\n- **Liang et al. (2024)** — 950K+ papers. `pivotal`, `intricate`, `realm` doubled post-2023. [arXiv:2404.01268](https://arxiv.org/abs/2404.01268)\n- **Juzek \u0026 Ward (2025)** — RLHF causes it. Human raters prefer formal-sounding output. Models overfit. [arXiv:2412.11385](https://arxiv.org/abs/2412.11385)\n\n## Contribute a pattern\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md). Open an issue with the pattern, a before/after, and a corpus source if you have one. Label it `new-rule`.\n\n## License\n\nMIT.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHugoLopes45%2Fllmstrip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FHugoLopes45%2Fllmstrip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHugoLopes45%2Fllmstrip/lists"}