[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71EVS9N29H8TFCMP279X2KH":3,"skill-same:01M71EVS9N29H8TFCMP279X2KH":76},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":48,"linkOnly":49,"markdownContent":50,"markdownBody":51,"frontMatter":52,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":57,"repositoryHtmlUrl":58,"repositoryHomepageUrl":6,"ownerHtmlUrl":59,"ownerBlogUrl":6,"ownerDescription":60,"updatedAt":61,"install":62,"resources":75},"01M71EVS9N29H8TFCMP279X2KH","unslop",null,"Unified de-slop pass: code simplification + comment rot detection + design slop check. Run after completing features or before PRs to strip AI-generated generic patterns.","shyamsridhar123\u002Fkevin-copilot","shyamsridhar123","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F117464342?v=4","01M71ESN8NA3Z6Z47CJS9WBT0B","Shyam Sridhar","01M71ESNA9HE4YA6ZZSCNYCGJR",8,"MIT","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Funslop\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[5,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],"simplification","generic","prs","features","slop","changes","for","path","de","slop check","design","patterns","generated","code simplification","check","file","code","run","directory","2026-11-10 10:12:30",false,"---\nname: unslop\ndescription: \"Unified de-slop pass: code simplification + comment rot detection + design slop check. Run after completing features or before PRs to strip AI-generated generic patterns.\"\nargument-hint: \"[blank for recent changes, or file\u002Fdirectory path]\"\n---\n\n# \u002Funslop — Strip AI Slop from Your Codebase\n\nThree parallel analysis passes that detect and report AI-generated \"slop\" — generic, template-looking, over-enthusiastic output that makes code, comments, and UI feel artificial.\n\n## When to Use\n\n- After completing a feature — check for slop before PR\n- Before code review — pre-clean your changes\n- When code \"feels AI-generated\" but you can't pinpoint why\n- Periodic codebase hygiene — run on a directory\n- After a long AI-assisted session to audit quality\n\n## Argument Parsing\n\nParse `$ARGUMENTS` for these tokens:\n\n| Token | Example | Effect |\n|-------|---------|--------|\n| `fix` | `\u002Funslop fix` | Auto-apply safe fixes after reporting |\n| `\u003Cpath>` | `\u002Funslop src\u002Fcomponents\u002F` | Scope to specific file or directory |\n| (none) | `\u002Funslop` | Analyze all files changed since the base branch |\n\n## Execution Flow\n\n### Stage 1: Determine Scope\n\n**If a file or directory path is provided:**\n\nScope to that path. Use `find` or glob to list all code files under it.\n\n**If no argument (default):**\n\nDetermine changed files since the base branch:\n\n```bash\nBASE=$(git merge-base HEAD origin\u002Fmain 2>\u002Fdev\u002Fnull || git merge-base HEAD origin\u002Fmaster 2>\u002Fdev\u002Fnull || echo \"HEAD~10\")\necho \"FILES:\" && git diff --name-only $BASE\necho \"DIFF:\" && git diff -U5 $BASE\n```\n\n**Classify files in scope:**\n\n| File extensions | Passes to run |\n|----------------|---------------|\n| `.ts`, `.tsx`, `.js`, `.jsx`, `.py`, `.go`, `.rb`, `.rs`, `.java`, `.cs`, `.swift`, `.kt` | Code Slop + Comment Rot |\n| `.css`, `.scss`, `.less`, `.tsx`, `.jsx`, `.html`, `.vue`, `.svelte` | + Design Slop |\n| `.json`, `.yaml`, `.yml`, `.toml`, `.md` | Code Slop + Comment Rot only |\n\nIf no UI\u002Fstyle files are in scope, skip the Design Slop pass entirely.\n\nAnnounce the scope:\n\n```\nDe-slop scope: 14 files changed since origin\u002Fmain\nPasses: Code Slop | Comment Rot | Design Slop (3 UI files detected)\n```\n\n### Stage 2: Parallel Analysis\n\nLaunch three sub-agents IN PARALLEL. Each receives the file list and diff content, and returns structured findings as text.\n\n\u003Cparallel_tasks>\n\n#### Pass 1: Code Slop Detector\n\nYou are a code simplification expert. Analyze the provided files for AI-generated slop patterns. Focus ONLY on slop — not correctness, security, or architecture.\n\n**What to flag:**\n\n1. **Unnecessary complexity**\n   - Deep nesting (>3 levels) that could use early returns\n   - Nested ternary operators — use if\u002Felse or switch\n   - Dense one-liners that sacrifice readability for brevity\n\n2. **Redundant abstractions**\n   - Interfaces\u002Ftypes used only once — inline them\n   - Wrapper functions that add no logic — call the wrapped function directly\n   - Abstract base classes with a single implementation\n   - Premature generalization (\"just in case\" extensibility points)\n\n3. **YAGNI violations**\n   - Features not required by current use cases\n   - Configuration options nobody uses\n   - Generic solutions for specific problems\n   - \"Future-proofing\" code that adds complexity now\n\n4. **Dead weight**\n   - Commented-out code blocks (>3 lines)\n   - Unused imports, variables, or functions\n   - Duplicate error checks (caller already validates)\n   - Defensive code that can never trigger (type system prevents it)\n\n5. **Over-engineering**\n   - Factory patterns for creating a single type\n   - Strategy patterns with one strategy\n   - Event systems for synchronous single-consumer flows\n   - Dependency injection where direct instantiation is clearer\n\n**Return format:**\n```json\n{\n  \"pass\": \"code-slop\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002Fauth.ts\",\n      \"line\": 42,\n      \"issue\": \"Nested ternary — use if\u002Felse for readability\",\n      \"severity\": \"medium\",\n      \"fix_safe\": true,\n      \"suggested_fix\": \"Replace ternary chain with if\u002Felse block\"\n    }\n  ]\n}\n```\n\n#### Pass 2: Comment Rot Detector\n\nYou are a technical documentation expert specializing in comment quality. Analyze the provided files for comment rot — inaccurate, redundant, or AI-generated filler comments.\n\n**What to flag:**\n\n1. **Obvious restatements**\n   - `\u002F\u002F increment counter` above `counter++`\n   - `\u002F\u002F return the result` above `return result`\n   - `\u002F\u002F set the name` above `this.name = name`\n   - Comments that repeat the function\u002Fvariable name in prose\n\n2. **AI-generated filler phrases** (hard bans — flag these immediately)\n   - \"This function is responsible for handling...\"\n   - \"The following code implements...\"\n   - \"This is a comprehensive solution that...\"\n   - \"This method provides a robust and scalable...\"\n   - \"leverages\" or \"utilizes\" (when \"uses\" works fine)\n   - \"seamlessly integrates\"\n   - \"In today's rapidly evolving...\"\n   - \"game-changer\", \"revolutionary\", \"cutting-edge\"\n   - \"This class encapsulates the logic for...\"\n   - \"Ensures proper handling of...\"\n\n3. **Factual inaccuracy**\n   - Documented parameters that don't match the function signature\n   - Return type descriptions that don't match the actual return\n   - Described behavior that doesn't match the code logic\n   - Edge case documentation for cases not actually handled\n\n4. **Stale comments**\n   - TODOs\u002FFIXMEs for work that's already been done\n   - References to removed\u002Frenamed functions, classes, or files\n   - Version-specific notes for versions no longer supported\n   - \"Temporary\" markers on permanent code\n\n5. **Over-documentation**\n   - JSDoc\u002Fdocstrings on trivial getters\u002Fsetters\n   - Multi-line comments on self-explanatory one-liners\n   - Repeating type information already in the signature\n   - Section divider comments (`\u002F\u002F ==================`)\n\n**Return format:**\n```json\n{\n  \"pass\": \"comment-rot\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002Fauth.ts\",\n      \"line\": 10,\n      \"issue\": \"\\\"This function handles authentication\\\" — restates the function name\",\n      \"severity\": \"low\",\n      \"fix_safe\": true,\n      \"suggested_fix\": \"Remove comment — function name is self-documenting\"\n    }\n  ]\n}\n```\n\n#### Pass 3: Design Slop Detector\n\n**Only run this pass when UI\u002Fstyle files are in scope.**\n\nYou are a design quality expert. Analyze the provided UI files for AI-generated visual slop — generic, template-looking patterns that signal \"an AI made this, not a designer.\"\n\n**What to flag:**\n\n1. **Generic color patterns**\n   - Purple-to-blue gradients (the AI default palette)\n   - Gratuitous gradients on everything (buttons, cards, backgrounds)\n   - Safe gray-on-white with one decorative accent color\n   - Unintentional color usage (decorative, not semantic)\n\n2. **Template layouts**\n   - Default card grids with uniform spacing and no hierarchy\n   - Generic hero: centered headline + subtitle + gradient blob + CTA\n   - Dashboard-by-numbers: sidebar + cards + charts with no point of view\n   - Uniform radius, spacing, and shadows across every component\n\n3. **Missing interaction states**\n   - No hover states on interactive elements\n   - No focus states (accessibility gap)\n   - No active\u002Fpressed states\n   - No loading\u002Fempty\u002Ferror states\n\n4. **Lazy defaults**\n   - Unmodified library defaults (default shadcn\u002FTailwind without customization)\n   - Default font stacks with no intentional pairing\n   - Glassmorphism cards that serve no UI purpose\n   - Rounded corners on elements that shouldn't be rounded (tables, code blocks)\n   - Excessive scroll-triggered animations\n\n5. **No visual hierarchy**\n   - Flat layouts with no layering, depth, or motion\n   - Uniform emphasis on everything (nothing stands out)\n   - No intentional rhythm in spacing\n\n**Return format:**\n```json\n{\n  \"pass\": \"design-slop\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002FHero.tsx\",\n      \"line\": 22,\n      \"issue\": \"Generic purple-to-blue gradient — replace with brand palette\",\n      \"severity\": \"medium\",\n      \"fix_safe\": false,\n      \"suggested_fix\": \"Define an intentional brand gradient in design tokens\"\n    }\n  ]\n}\n```\n\n\u003C\u002Fparallel_tasks>\n\n### Stage 3: Merge & Deduplicate\n\n**WAIT for all Stage 2 sub-agents to complete.**\n\n1. Collect findings from all passes that ran\n2. Deduplicate: if two passes flag the same file+line (within 3 lines), keep the more specific finding and note both passes\n3. Sort by severity: High → Medium → Low\n4. Group by pass for the report\n\n### Stage 4: Present Report\n\nFormat the consolidated report using pipe-delimited markdown tables:\n\n```\nDe-slop Report\n==============\nScope: [N] files changed since [base]\nPasses: Code Slop [✓|✗] | Comment Rot [✓|✗] | Design Slop [✓|skipped]\n\n## Code Slop ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n## Comment Rot ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n## Design Slop ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n─────────────────────────────\nSummary: [N] findings ([H] High, [M] Medium, [L] Low)\nPotential LOC reduction: ~[N] lines\n```\n\nOmit any pass section with zero findings. If all passes return zero findings:\n\n```\nDe-slop Report: Clean! No slop detected in [N] files.\n```\n\n### Stage 5: Auto-Fix (only if `fix` argument was provided)\n\nIf the user invoked `\u002Funslop fix`:\n\n1. Collect all findings where `fix_safe: true`\n2. Apply fixes in file order:\n   - **Code Slop safe fixes:** Remove commented-out code blocks, remove unused imports\n   - **Comment Rot safe fixes:** Delete obvious restatement comments, remove stale TODOs\n3. Do NOT auto-fix:\n   - Design slop (requires design judgment)\n   - Factually inaccurate comments (requires understanding intent)\n   - YAGNI violations (requires knowing the roadmap)\n   - Abstractions (requires understanding the broader architecture)\n4. Report what was fixed:\n\n```\nAuto-fix applied:\n  ✓ Removed 3 commented-out code blocks (42 lines)\n  ✓ Deleted 5 obvious-restatement comments\n  ✓ Removed 2 stale TODOs\n\n  Remaining (manual review needed): 4 findings\n```\n\nIf `fix` was NOT provided but fixable findings exist, suggest it:\n\n```\nTip: Run \u002Funslop fix to auto-apply [N] safe fixes\n```\n\n## Severity Guide\n\n| Level | Meaning | Examples |\n|-------|---------|---------|\n| **High** | Actively misleading or creates maintenance burden | Inaccurate comment, missing hover states, large dead code block |\n| **Medium** | Noticeable slop that reduces quality | Unnecessary abstraction, AI filler phrase, generic gradient |\n| **Low** | Minor quality improvement | Restatement comment, unused import, over-documentation |\n\nSlop is never \"Critical\" — it's a quality concern, not a correctness or security issue.\n\n## Quality Gates\n\nBefore presenting findings:\n\n1. **Every finding must be actionable.** Don't say \"could be simpler\" — say what to change and where.\n2. **No false positives from skimming.** Verify the abstraction isn't used elsewhere before flagging it. Verify the comment is truly redundant.\n3. **Line numbers must be accurate.** Check each cited line against file content.\n4. **Respect project conventions.** If the project uses JSDoc everywhere, don't flag JSDoc as over-documentation.\n5. **Don't flag generated code.** Skip files in `dist\u002F`, `build\u002F`, `node_modules\u002F`, `.next\u002F`, `vendor\u002F`, or similar generated directories.\n\n## Notes\n\n- This skill is read-only by default. It reports but does not edit files unless `fix` is specified.\n- Design Slop pass is automatically skipped for backend-only projects.\n- Works on any language\u002Fframework — the slop patterns are universal.\n- Pairs well with `\u002Fce-review` (which checks correctness) — `\u002Funslop` checks aesthetics and quality.\n","# \u002Funslop — Strip AI Slop from Your Codebase\n\nThree parallel analysis passes that detect and report AI-generated \"slop\" — generic, template-looking, over-enthusiastic output that makes code, comments, and UI feel artificial.\n\n## When to Use\n\n- After completing a feature — check for slop before PR\n- Before code review — pre-clean your changes\n- When code \"feels AI-generated\" but you can't pinpoint why\n- Periodic codebase hygiene — run on a directory\n- After a long AI-assisted session to audit quality\n\n## Argument Parsing\n\nParse `$ARGUMENTS` for these tokens:\n\n| Token | Example | Effect |\n|-------|---------|--------|\n| `fix` | `\u002Funslop fix` | Auto-apply safe fixes after reporting |\n| `\u003Cpath>` | `\u002Funslop src\u002Fcomponents\u002F` | Scope to specific file or directory |\n| (none) | `\u002Funslop` | Analyze all files changed since the base branch |\n\n## Execution Flow\n\n### Stage 1: Determine Scope\n\n**If a file or directory path is provided:**\n\nScope to that path. Use `find` or glob to list all code files under it.\n\n**If no argument (default):**\n\nDetermine changed files since the base branch:\n\n```bash\nBASE=$(git merge-base HEAD origin\u002Fmain 2>\u002Fdev\u002Fnull || git merge-base HEAD origin\u002Fmaster 2>\u002Fdev\u002Fnull || echo \"HEAD~10\")\necho \"FILES:\" && git diff --name-only $BASE\necho \"DIFF:\" && git diff -U5 $BASE\n```\n\n**Classify files in scope:**\n\n| File extensions | Passes to run |\n|----------------|---------------|\n| `.ts`, `.tsx`, `.js`, `.jsx`, `.py`, `.go`, `.rb`, `.rs`, `.java`, `.cs`, `.swift`, `.kt` | Code Slop + Comment Rot |\n| `.css`, `.scss`, `.less`, `.tsx`, `.jsx`, `.html`, `.vue`, `.svelte` | + Design Slop |\n| `.json`, `.yaml`, `.yml`, `.toml`, `.md` | Code Slop + Comment Rot only |\n\nIf no UI\u002Fstyle files are in scope, skip the Design Slop pass entirely.\n\nAnnounce the scope:\n\n```\nDe-slop scope: 14 files changed since origin\u002Fmain\nPasses: Code Slop | Comment Rot | Design Slop (3 UI files detected)\n```\n\n### Stage 2: Parallel Analysis\n\nLaunch three sub-agents IN PARALLEL. Each receives the file list and diff content, and returns structured findings as text.\n\n\u003Cparallel_tasks>\n\n#### Pass 1: Code Slop Detector\n\nYou are a code simplification expert. Analyze the provided files for AI-generated slop patterns. Focus ONLY on slop — not correctness, security, or architecture.\n\n**What to flag:**\n\n1. **Unnecessary complexity**\n   - Deep nesting (>3 levels) that could use early returns\n   - Nested ternary operators — use if\u002Felse or switch\n   - Dense one-liners that sacrifice readability for brevity\n\n2. **Redundant abstractions**\n   - Interfaces\u002Ftypes used only once — inline them\n   - Wrapper functions that add no logic — call the wrapped function directly\n   - Abstract base classes with a single implementation\n   - Premature generalization (\"just in case\" extensibility points)\n\n3. **YAGNI violations**\n   - Features not required by current use cases\n   - Configuration options nobody uses\n   - Generic solutions for specific problems\n   - \"Future-proofing\" code that adds complexity now\n\n4. **Dead weight**\n   - Commented-out code blocks (>3 lines)\n   - Unused imports, variables, or functions\n   - Duplicate error checks (caller already validates)\n   - Defensive code that can never trigger (type system prevents it)\n\n5. **Over-engineering**\n   - Factory patterns for creating a single type\n   - Strategy patterns with one strategy\n   - Event systems for synchronous single-consumer flows\n   - Dependency injection where direct instantiation is clearer\n\n**Return format:**\n```json\n{\n  \"pass\": \"code-slop\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002Fauth.ts\",\n      \"line\": 42,\n      \"issue\": \"Nested ternary — use if\u002Felse for readability\",\n      \"severity\": \"medium\",\n      \"fix_safe\": true,\n      \"suggested_fix\": \"Replace ternary chain with if\u002Felse block\"\n    }\n  ]\n}\n```\n\n#### Pass 2: Comment Rot Detector\n\nYou are a technical documentation expert specializing in comment quality. Analyze the provided files for comment rot — inaccurate, redundant, or AI-generated filler comments.\n\n**What to flag:**\n\n1. **Obvious restatements**\n   - `\u002F\u002F increment counter` above `counter++`\n   - `\u002F\u002F return the result` above `return result`\n   - `\u002F\u002F set the name` above `this.name = name`\n   - Comments that repeat the function\u002Fvariable name in prose\n\n2. **AI-generated filler phrases** (hard bans — flag these immediately)\n   - \"This function is responsible for handling...\"\n   - \"The following code implements...\"\n   - \"This is a comprehensive solution that...\"\n   - \"This method provides a robust and scalable...\"\n   - \"leverages\" or \"utilizes\" (when \"uses\" works fine)\n   - \"seamlessly integrates\"\n   - \"In today's rapidly evolving...\"\n   - \"game-changer\", \"revolutionary\", \"cutting-edge\"\n   - \"This class encapsulates the logic for...\"\n   - \"Ensures proper handling of...\"\n\n3. **Factual inaccuracy**\n   - Documented parameters that don't match the function signature\n   - Return type descriptions that don't match the actual return\n   - Described behavior that doesn't match the code logic\n   - Edge case documentation for cases not actually handled\n\n4. **Stale comments**\n   - TODOs\u002FFIXMEs for work that's already been done\n   - References to removed\u002Frenamed functions, classes, or files\n   - Version-specific notes for versions no longer supported\n   - \"Temporary\" markers on permanent code\n\n5. **Over-documentation**\n   - JSDoc\u002Fdocstrings on trivial getters\u002Fsetters\n   - Multi-line comments on self-explanatory one-liners\n   - Repeating type information already in the signature\n   - Section divider comments (`\u002F\u002F ==================`)\n\n**Return format:**\n```json\n{\n  \"pass\": \"comment-rot\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002Fauth.ts\",\n      \"line\": 10,\n      \"issue\": \"\\\"This function handles authentication\\\" — restates the function name\",\n      \"severity\": \"low\",\n      \"fix_safe\": true,\n      \"suggested_fix\": \"Remove comment — function name is self-documenting\"\n    }\n  ]\n}\n```\n\n#### Pass 3: Design Slop Detector\n\n**Only run this pass when UI\u002Fstyle files are in scope.**\n\nYou are a design quality expert. Analyze the provided UI files for AI-generated visual slop — generic, template-looking patterns that signal \"an AI made this, not a designer.\"\n\n**What to flag:**\n\n1. **Generic color patterns**\n   - Purple-to-blue gradients (the AI default palette)\n   - Gratuitous gradients on everything (buttons, cards, backgrounds)\n   - Safe gray-on-white with one decorative accent color\n   - Unintentional color usage (decorative, not semantic)\n\n2. **Template layouts**\n   - Default card grids with uniform spacing and no hierarchy\n   - Generic hero: centered headline + subtitle + gradient blob + CTA\n   - Dashboard-by-numbers: sidebar + cards + charts with no point of view\n   - Uniform radius, spacing, and shadows across every component\n\n3. **Missing interaction states**\n   - No hover states on interactive elements\n   - No focus states (accessibility gap)\n   - No active\u002Fpressed states\n   - No loading\u002Fempty\u002Ferror states\n\n4. **Lazy defaults**\n   - Unmodified library defaults (default shadcn\u002FTailwind without customization)\n   - Default font stacks with no intentional pairing\n   - Glassmorphism cards that serve no UI purpose\n   - Rounded corners on elements that shouldn't be rounded (tables, code blocks)\n   - Excessive scroll-triggered animations\n\n5. **No visual hierarchy**\n   - Flat layouts with no layering, depth, or motion\n   - Uniform emphasis on everything (nothing stands out)\n   - No intentional rhythm in spacing\n\n**Return format:**\n```json\n{\n  \"pass\": \"design-slop\",\n  \"findings\": [\n    {\n      \"file\": \"src\u002FHero.tsx\",\n      \"line\": 22,\n      \"issue\": \"Generic purple-to-blue gradient — replace with brand palette\",\n      \"severity\": \"medium\",\n      \"fix_safe\": false,\n      \"suggested_fix\": \"Define an intentional brand gradient in design tokens\"\n    }\n  ]\n}\n```\n\n\u003C\u002Fparallel_tasks>\n\n### Stage 3: Merge & Deduplicate\n\n**WAIT for all Stage 2 sub-agents to complete.**\n\n1. Collect findings from all passes that ran\n2. Deduplicate: if two passes flag the same file+line (within 3 lines), keep the more specific finding and note both passes\n3. Sort by severity: High → Medium → Low\n4. Group by pass for the report\n\n### Stage 4: Present Report\n\nFormat the consolidated report using pipe-delimited markdown tables:\n\n```\nDe-slop Report\n==============\nScope: [N] files changed since [base]\nPasses: Code Slop [✓|✗] | Comment Rot [✓|✗] | Design Slop [✓|skipped]\n\n## Code Slop ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n## Comment Rot ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n## Design Slop ([N] findings)\n\n| # | File | Line | Issue | Severity |\n|---|------|------|-------|----------|\n| 1 | path | line | description | High\u002FMedium\u002FLow |\n\n─────────────────────────────\nSummary: [N] findings ([H] High, [M] Medium, [L] Low)\nPotential LOC reduction: ~[N] lines\n```\n\nOmit any pass section with zero findings. If all passes return zero findings:\n\n```\nDe-slop Report: Clean! No slop detected in [N] files.\n```\n\n### Stage 5: Auto-Fix (only if `fix` argument was provided)\n\nIf the user invoked `\u002Funslop fix`:\n\n1. Collect all findings where `fix_safe: true`\n2. Apply fixes in file order:\n   - **Code Slop safe fixes:** Remove commented-out code blocks, remove unused imports\n   - **Comment Rot safe fixes:** Delete obvious restatement comments, remove stale TODOs\n3. Do NOT auto-fix:\n   - Design slop (requires design judgment)\n   - Factually inaccurate comments (requires understanding intent)\n   - YAGNI violations (requires knowing the roadmap)\n   - Abstractions (requires understanding the broader architecture)\n4. Report what was fixed:\n\n```\nAuto-fix applied:\n  ✓ Removed 3 commented-out code blocks (42 lines)\n  ✓ Deleted 5 obvious-restatement comments\n  ✓ Removed 2 stale TODOs\n\n  Remaining (manual review needed): 4 findings\n```\n\nIf `fix` was NOT provided but fixable findings exist, suggest it:\n\n```\nTip: Run \u002Funslop fix to auto-apply [N] safe fixes\n```\n\n## Severity Guide\n\n| Level | Meaning | Examples |\n|-------|---------|---------|\n| **High** | Actively misleading or creates maintenance burden | Inaccurate comment, missing hover states, large dead code block |\n| **Medium** | Noticeable slop that reduces quality | Unnecessary abstraction, AI filler phrase, generic gradient |\n| **Low** | Minor quality improvement | Restatement comment, unused import, over-documentation |\n\nSlop is never \"Critical\" — it's a quality concern, not a correctness or security issue.\n\n## Quality Gates\n\nBefore presenting findings:\n\n1. **Every finding must be actionable.** Don't say \"could be simpler\" — say what to change and where.\n2. **No false positives from skimming.** Verify the abstraction isn't used elsewhere before flagging it. Verify the comment is truly redundant.\n3. **Line numbers must be accurate.** Check each cited line against file content.\n4. **Respect project conventions.** If the project uses JSDoc everywhere, don't flag JSDoc as over-documentation.\n5. **Don't flag generated code.** Skip files in `dist\u002F`, `build\u002F`, `node_modules\u002F`, `.next\u002F`, `vendor\u002F`, or similar generated directories.\n\n## Notes\n\n- This skill is read-only by default. It reports but does not edit files unless `fix` is specified.\n- Design Slop pass is automatically skipped for backend-only projects.\n- Works on any language\u002Fframework — the slop patterns are universal.\n- Pairs well with `\u002Fce-review` (which checks correctness) — `\u002Funslop` checks aesthetics and quality.\n",{"name":5,"description":7,"argument-hint":53},"[blank for recent changes, or file\u002Fdirectory path]","main","0256fccfa68825bb93a1b37467a7377bd34280af",".github\u002Fskills\u002Funslop",1,"https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123","Engineer, Printf Debugger, Vibe Coder, AI Enthusiast","2026-08-25 22:42:12",{"source":8,"skillName":5,"commands":63,"prompt":73,"zipAvailable":74},[64,67,70],{"tool":65,"command":66},"npx","npx skills add shyamsridhar123\u002Fkevin-copilot --skill unslop",{"tool":68,"command":69},"bunx","bunx skills add shyamsridhar123\u002Fkevin-copilot --skill unslop",{"tool":71,"command":72},"pnpm","pnpm dlx skills add shyamsridhar123\u002Fkevin-copilot --skill unslop","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Funslop\u002FSKILL.md",true,[],[77,93,110,124,141,154],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":48},"01M71EW4N5RQ70SERKYZB2GBDM","kevin-review","Review a diff and emit concise, evidence-backed findings.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-review\u002FSKILL.md",[],[84,85,86,87,88,89,90,91,92],"kevin review","review","request","concise","evidence","diff","branch","pull","pull request",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":48},"01M71EW36CP1KVDES6KGB8APZZ","kevin-merit","Audit a diff for over-engineering and report it as a corporate merit cycle. Satire; the subject is the code, never a person.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-merit\u002FSKILL.md",[],[100,89,92,45,101,91,102,103,90,104,105,106,107,108,35,109,86],"kevin merit","report","audit","engineering","never","cycle","as","it","corporate","person",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":48},"01M71EW0YHNR57136MENKW4YSD","kevin-help","Show Kevin modes, commands, and runtime controls.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-help\u002FSKILL.md",[],[117,118,119,120,121,122,123],"kevin help","help","commands","modes","show","runtime","controls",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":48},"01M71EVYYH5QASNZ1KB6C3GMDJ","kevin-enlighten","Explain a topic to someone with no background as a self-contained HTML picture explainer.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-enlighten\u002FSKILL.md",[],[131,132,133,134,135,136,137,106,138,36,139,140],"kevin enlighten","enlighten","repository","explainer","explain","html","self","with","self-contained","background",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":48},"01M71EVX29VAGHZJZKAKQ97M7X","kevin-compress","Compress an answer without losing required information or safety warnings.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-compress\u002FSKILL.md",[],[148,149,150,151,152,153],"kevin compress","compress","Safety","text","information","answer",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":160,"publishedAt":48},"01M71EVVDWF888W10KA0D3N4W5","kevin-commit","Generate a terse Conventional Commits message from the staged diff.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-commit\u002FSKILL.md",[],[161,162,163,164,89,165,166,167,168,169],"commit","kevin commit","generate","commits","conventional commits","message","focus","staged","terse"]