Token导航 LogoToken导航TokenDH.com
研究检索external-servicegithub未标认证来源可访问许可证需确认审计通过

clean-ai-slop清洁艾污渍

Agent Skill

clean-ai-slop 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

672

周安装

28

GitHub Stars

75

下载量

224
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:clean-ai-slop(清洁艾污渍)
来源仓库:https://github.com/tmdgusya/engineering-discipline
仓库路径:skills/clean-ai-slop
安装命令:
npx skills add https://github.com/tmdgusya/engineering-discipline --skill clean-ai-slop
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/tmdgusya/engineering-discipline --skill clean-ai-slop

简介

clean-ai-slop 作为 AI 生成代码的后置修正纪律,系统性移除过度注释、防御性编程和冗余抽象。

  • 适合维护大型代码库、关注长期可维护性的资深开发者和技术主管。
  • 通过硬性规则和软性建议两个层级确保代码行为不变的前提下提升可读性。
  • 需在代码生成后运行,依赖语言特定解析器且不修改功能逻辑,建议集成到 CI/CD 流程。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

AI Slop Cleaner

A corrective discipline for cleaning AI-generated code. Runs after code generation — whether from run-plan, a manual session, or any other source.

The core problem: LLMs produce code that works but carries distinctive smells. Over-commenting, unnecessary abstractions, defensive paranoia for impossible scenarios, verbose naming. Left unchecked, these accumulate into a codebase that is harder to read and maintain than hand-written code.

This skill removes those smells systematically, one category at a time, without changing behavior.

Hard Gates

These rules have no exceptions.

  1. Lock behavior before cleaning. Run existing tests. If coverage is insufficient, add regression tests for the code you're about to touch. No test coverage, no cleanup.
  2. One smell category per pass. Do not mix dead code removal with naming fixes. Complete one pass, verify, then start the next.
  3. Run tests after every pass. If tests fail, revert the pass and investigate. Do not proceed to the next category.
  4. Stay in scope. Only touch files that were generated or modified by AI. Do not expand into "nearby" code that looks like it could use improvement.
  5. Preserve behavior exactly. If a cleanup changes observable behavior — even if you think the new behavior is "better" — revert it. Behavior changes require a separate task.

When To Use

  • After run-plan completes and the implementation works but reads like AI wrote it
  • After any significant code generation session
  • When reviewing AI-generated PRs
  • When the user explicitly asks to clean up or deslop code

When NOT To Use

  • Code that was written by humans (different smells, different treatment)
  • When tests don't exist and can't be added quickly (lock behavior first)
  • Mid-implementation — finish the feature, then clean

Smell Categories

Passes execute in this order. Each pass completes fully before the next begins.

Pass 1: Dead Code

Remove code that serves no purpose.

  • Unused imports
  • Unused variables and parameters
  • Unreachable branches
  • Commented-out code blocks
  • Empty error handlers that swallow exceptions

Detection: compiler warnings, linter output, IDE grayed-out symbols. Trust the tooling.

Pass 2: Over-Commenting

Remove comments that restate what the code already says.

Targets:

  • // Initialize the counter above let counter = 0
  • // Return the result above return result
  • JSDoc that repeats the function signature with no additional insight
  • Section dividers that add no information (// --- Helper Functions ---)
  • File headers that describe what is obvious from the filename

Keep: comments that explain *why*, not *what*. Comments about non-obvious constraints. Links to external documentation or issues.

Pass 3: Unnecessary Abstractions

Remove indirection that serves no purpose.

Targets:

  • Helper functions called exactly once (inline them)
  • Wrapper classes that delegate everything to one inner object
  • Configuration objects for things that will never be configured
  • Factory functions that always produce the same thing
  • Interface/type definitions used by a single implementation with no plans for more

Test: if removing the abstraction makes the code shorter *and* equally readable, it was unnecessary.

Pass 4: Defensive Paranoia

Remove error handling for scenarios that cannot occur.

Targets:

  • Null checks on values that are guaranteed non-null by the type system
  • Try-catch blocks around code that cannot throw
  • Validation of internal function parameters (validate at system boundaries only)
  • Fallback values for required fields
  • Redundant type assertions

Keep: validation at system boundaries (user input, external APIs, file I/O). Error handling where the runtime genuinely can fail.

Pass 5: Verbose Naming

Shorten names that carry redundant information.

Targets:

  • getUserDataFromDatabasegetUser (where else would it come from?)
  • userAccountStatusstatus (when used inside a User class, the prefix is redundant)
  • handleButtonClickEventonClick
  • responseDataObjectresponse
  • tempVariableForCalculationtemp or inline it

Rule: a name should be as short as possible while remaining unambiguous in its scope. Longer scope = longer name. Short scope = short name.

Pass 6: LLM Filler

Remove artifacts of LLM generation style.

Targets:

  • Emoji in code, comments, or commit messages (unless the project uses them intentionally)
  • Conversational tone in comments ("Let's", "Now we need to", "Great!")
  • Excessive console.log / print statements added "for debugging"
  • Redundant type annotations where inference handles it
  • Overly structured code that follows a template pattern rather than the natural shape of the problem

Process

1. Identify scope (which files to clean)
2. Run existing tests — all must pass before starting
3. Add regression tests if coverage is thin
4. Execute Pass 1 → verify → commit
5. Execute Pass 2 → verify → commit
6. ... continue through all relevant passes
7. Run full test suite
8. Report summary of changes

Not every pass applies to every codebase. Skip passes that have zero findings. But execute in order — never jump ahead.

Anti-Patterns

ImpulseWhy It Fails
"I'll clean everything in one big pass"Mixed changes are impossible to debug when tests break
"This abstraction is bad, let me redesign it"Redesign is a separate task, not cleanup
"Tests pass, so I'll skip the per-pass verification"A later pass may interact with an earlier change
"This code nearby also looks sloppy"Scope creep. Only clean what's in scope
"The behavior is wrong anyway, I'll fix it while cleaning"Behavior changes require their own task with their own tests
"I don't need regression tests, the code is simple"Simple code breaks too. Lock behavior first

Red Flags

Stop and reconsider if you catch yourself thinking:

  • "This is taking too long, let me batch the remaining passes"
  • "I'll just quickly fix this other file too"
  • "The tests are probably fine, I don't need to run them again"
  • "This behavior should be different anyway"
  • "I don't need tests for this — it's just removing comments"

Completion Standard

Cleanup is done when:

  • All applicable passes have been executed in order
  • Tests passed after every individual pass
  • Full test suite passes at the end
  • No behavior has changed
  • Changes are scoped to the identified files only

If any of these are not met, the cleanup is not complete.

Minimal Checklist

During cleanup, verify against this list:

  • Behavior is locked with tests before starting
  • Current pass targets one smell category only
  • Tests passed after the current pass
  • No files outside the defined scope were touched
  • No behavior was changed

Transition

After cleanup is complete:

  • If the code was generated by run-plan → report results to the user
  • If implementation discipline was lacking during generation → consider applying karpathy in future sessions to prevent slop at the source

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.56%
按下载量换算77

Claude

32.44%
按下载量换算73

Cursor

18.25%
按下载量换算41

Gemini CLI

8.35%
按下载量换算19

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills