Communitygithub.com

ai-slop-cleaner

회귀 테스트로 안전성을 보장하는 삭제 우선 워크플로우와 선택적 리뷰어 전용 모드를 통해 AI 생성 코드의 노이즈를 정리합니다.

ai-slop-cleaner란 무엇인가요?

이 스킬은 AI가 생성한 코드에서 흔히 발생하는 '슬롭(slop)'—중복, 데드 코드, 불필요한 추상화, 경계 위반, 취약한 테스트—을 정리하기 위한 전문 도구입니다. 핵심 원칙은 **동작 변경 없이** 코드를 단순화하고 정리하는 것이며, 수정 전에 회귀 테스트로 동작을 잠그는 안전한 워크플로우를 따릅니다. Claude Code 기반의 OMC(Oh My ClaudeCode) 생태계에서 실행되며, 명시적인 파일 목록 스코프 제한을 지원하고 Ralph 세션과 통합하여 후처리 정리 작업을 수행합니다. `--review` 모드를 통해 작성자-리뷰어 분리 워크플로우를 지원하여 중요한 정리 작업의 품질을 보장합니다. 사용자는 'deslop' 또는 'anti-slop' 명령어로 이 스킬을 활성화하고, 파일별로 데드 코드 제거, 중복 제거, 네이밍 개선, 테스트 강화 등 단계별 패스를 실행합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Yeachan-Heo/oh-my-claudecode/tree/main/skills/ai-slop-cleaner

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

AI 슬롭 클리너 (AI Slop Cleaner)

이 스킬은 AI 생성 코드 슬롭을 정리할 때 사용합니다. 스코프를 확장하거나 의도된 동작을 변경하지 않습니다. OMC에서 이는 동작은 하지만 부풀려졌거나, 반복적이거나, 테스트가 약하거나, 과도하게 추상화된 코드를 위한 범위 제한된 정리 워크플로우입니다.

사용 시기

다음 상황에서 이 스킬을 사용하세요:

  • 사용자가 명시적으로 deslop, anti-slop, 또는 AI slop이라고 말할 때
  • 코드를 정리하거나 리팩터링하라는 요청이 노이즈가 많거나, 반복적이거나, 과도하게 추상화된 느낌일 때
  • 후속 구현에서 중복 로직, 데드 코드, 래퍼 레이어, 경계 누수, 또는 취약한 회귀 테스트 범위가 발생했을 때
  • 사용자가 --review를 통해 리뷰어 전용 안티-슬롭 패스를 원할 때
  • 목표가 새로운 기능 제공이 아닌 단순화와 정리일 때

사용하지 말아야 할 때

다음 상황에서는 이 스킬을 사용하지 마세요:

  • 작업이 주로 새 기능 빌드 또는 제품 변경일 때
  • 사용자가 점진적인 정리 패스 대신 광범위한 재설계를 원할 때
  • 요청이 단순화나 안티-슬롭 의도 없이 일반적인 리팩터링일 때
  • 동작이 테스트나 구체적인 검증 계획으로 보호하기에 너무 불명확할 때

OMC 실행 태세

  • 사용자가 명시적으로 동작 변경을 요청하지 않는 한 동작을 유지합니다.
  • 가능할 때마다 먼저 회귀 테스트로 동작을 잠급니다.
  • 코드를 수정하기 전에 정리 계획을 작성합니다.
  • 추가보다 삭제를 선호합니다.
  • 새로운 의존성을 도입하기 전에 기존 유틸리티와 패턴을 재사용합니다.
  • 사용자가 명시적으로 요청하지 않는 한 새로운 의존성을 피합니다.
  • 느낌(냄새)에 초점을 맞추고, 변경 사항을 작고 되돌릴 수 있게 유지합니다.
  • 간결하고 증거를 풍부하게 유지합니다: 검사, 편집, 검증, 보고.
  • 새로운 사용자 지침을 기존의 충돌하지 않는 제약 조건을 유지하면서 로컬 스코프 업데이트로 취급합니다.

범위 제한 파일 목록 사용법

호출자가 이미 안전한 정리 표면을 알고 있는 경우, 이 스킬은 명시적인 파일 목록 또는 변경된 파일 스코프로 제한될 수 있습니다.

  • 적합한 예시: oh-my-claudecode:ai-slop-cleaner skills/ralph/SKILL.md skills/ai-slop-cleaner/SKILL.md
  • 적합한 예시: Ralph 세션이 해당 세션에서 변경된 파일만 전달하는 경우
  • 스코프가 짧은 파일 목록이더라도 동일한 회귀 테스트 안전 워크플로우를 유지합니다.
  • 사용자가 명시적으로 요청하지 않는 한 변경된 파일 스코프를 더 넓은 정리 작업으로 조용히 확장하지 않습니다.

Ralph 통합

Ralph는 이 스킬을 범위 제한된 사후 리뷰 정리 패스로 호출할 수 있습니다.

  • 이 워크플로우에서 클리너는 표준 모드(--review 아님)로 실행됩니다.
  • 정리 스코프는 Ralph 세션의 변경된 파일로만 제한됩니다.
  • 정리 패스 후, Ralph는 완료 전에 회귀 검증을 다시 실행합니다.
  • --review는 리뷰어 전용 후속 모드로 남으며, 기본 Ralph 통합 경로가 아닙니다.

리뷰 모드 (--review)

--review는 정리 작업 초안이 작성된 후의 리뷰어 전용 패스입니다. 안티-슬롭 작업에 대해 명시적인 작성자/리뷰어 분리를 유지하기 위해 존재합니다.

  • 작성자 패스: 테스트로 동작을 잠근 상태에서 정리 변경을 수행합니다.
  • 리뷰어 패스: 정리 계획, 변경된 파일, 검증 증거를 검사합니다.
  • 별도의 리뷰 단계 없이 같은 패스에서 영향이 큰 정리를 작성하고 자체 승인해서는 안 됩니다.

리뷰 모드에서:

  1. 파일을 편집하여 시작하지 않습니다.
  2. 정리 계획, 변경된 파일, 회귀 테스트 범위를 검토합니다.
  3. 특히 다음을 확인합니다:
    • 남아 있는 데드 코드 또는 사용되지 않는 내보내기(export)
    • 통합되어야 할 중복 로직
    • 여전히 경계를 흐리게 하는 불필요한 래퍼나 추상화
    • 보존된 동작에 대한 누락된 테스트 또는 취약한 검증
    • 의도 없이 동작을 변경한 것으로 보이는 정리
  4. 필요한 후속 조치가 포함된 리뷰어 평결을 생성합니다.
  5. 필요한 변경 사항을 수정하고 승인을 한 단계에 처리하는 대신 별도의 작성자 패스로 넘깁니다.

워크플로우

  1. 먼저 현재 동작을 보호합니다

    • 무엇이 동일하게 유지되어야 하는지 식별합니다.
    • 편집 전에 필요한 가장 좁은 회귀 테스트를 추가하거나 실행합니다.
    • 테스트를 먼저 할 수 없다면, 코드를 건드리기 전에 검증 계획을 명시적으로 기록합니다.
  2. 코드보다 먼저 정리 계획을 작성합니다

    • 패스를 요청된 파일 또는 기능 영역으로 제한합니다.
    • 제거할 구체적인 냄새를 나열합니다.
    • 가장 안전한 삭제에서부터 더 위험한 통합 순서로 작업을 정렬합니다.
  3. 편집 전에 슬롭을 분류합니다

    • 중복(Duplication) — 반복되는 로직, 복사-붙여넣기 브랜치, 중복된 헬퍼
    • 데드 코드(Dead code) — 사용되지 않는 코드, 도달할 수 없는 브랜치, 오래된 플래그, 디버그 잔재
    • 불필요한 추상화(Needless abstraction) — 통과용 래퍼, 추측성 간접화, 단일 사용 헬퍼 레이어
    • 경계 위반(Boundary violations) — 숨겨진 결합, 잘못 배치된 책임, 잘못된 레이어의 임포트 또는 사이드 이펙트
    • 누락된 테스트(Missing tests) — 동작이 잠기지 않음, 취약한 회귀 테스트 범위, 엣지 케이스 누락
    • UI/디자인 기본값(UI/design defaults) — AI가 빌드한 인터페이스가 검토되지 않았다는 느낌을 주는 일반적인 시각적 패턴

UI/디자인 리뷰어 체크리스트

이는 절대적인 금지 사항이 아니라 리뷰 프롬프트로 사용하세요. 명확한 근거가 있는 의도적인 브랜드, 접근성, 제품 밀도, 또는 디자인 시스템 선택은 유지하세요.

  • 한글 가독성: 본문 텍스트가 11-12px 정도로 설정된 경우 플래그를 표시합니다. 한글 본문은 일반적으로 검증된 밀집 데이터 예외가 아닌 이상 최소 14px이 필요합니다.
  • 그림자 자제: 모든 표면, 로고, 배경, 카드 또는 아이콘에 박스 그림자가 있는지 의문시합니다. 그림자는 계층 구조나 상호작용을 명확히 하는 경우에만 유지하세요.
  • 콘텐츠 계층 구조: 제목이 이미 메시지를 전달할 때 반복적인 부제목/설명/추가 <p> 채움을 제거합니다. 제품 음성의 일부가 아닌 한 일반적인 이모지 배지를 피하세요.
  • 팔레트 근거: 브랜드나 시스템 근거가 없을 때, 특히 Tailwind 스타일의 #3B82F6과 같은 기본 AI 파랑/보라 팔레트에 의문을 제기하세요.
  • 레이아웃 리듬: 제품 컨텍스트가 리듬, 강조, 비대칭, 캐러셀/벤토 처리, 또는 다양한 카드 가중치의 이점을 얻을 때 지나치게 완벽한 3열 또는 4열 균일 그리드를 피하세요.
  • 그라데이션 자제: 브랜드가 의도적으로 해당 시각적 언어를 소유하지 않는 한 극단적인 그라데이션을 완화하세요.
  1. 한 번에 하나의 냄새 중심 패스를 실행합니다

    • 패스 1: 데드 코드 삭제
    • 패스 2: 중복 제거
    • 패스 3: 네이밍 및 오류 처리 정리
    • 패스 4: 테스트 강화
    • 각 패스 후 목표 검증을 다시 실행합니다.
    • 관련 없는 리팩터링을 동일한 편집 세트에 묶지 마세요.
  2. 품질 게이트를 실행합니다

    • 회귀 테스트를 통과 상태로 유지합니다.
    • 관련 영역에 대해 해당 린트, 타입체크, 단위/통합 테스트를 실행합니다.
    • 가능한 경우 기존 정적 검사 또는 보안 검사를 실행합니다.
    • 게이트가 실패하면 문제를 해결하거나 강제로 통과시키는 대신 위험한 정리를 철회합니다.
  3. 증거가 풍부한 보고서로 마무리합니다 항상 보고:

    • 변경된 파일
    • 단순화
    • 동작 잠금 / 검증 실행
    • 남은 위험

사용법

  • /oh-my-claudecode:ai-slop-cleaner <target>
  • /oh-my-claudecode:ai-slop-cleaner <target> --review
  • /oh-my-claudecode:ai-slop-cleaner <file-a> <file-b> <file-c>
  • Ralph에서: Ralph 세션의 변경된 파일에 대해서만 클리너를 실행한 후, 사후 정리 회귀 검증을 위해 Ralph로 돌아갑니다.

적합한 사용 예시

적합: 이 모듈 deslop: 래퍼 너무 많고, 헬퍼 중복, 데드 코드

적합: src/auth의 AI 슬롭 정리하고 동작 변경 없이 경계 강화

부적합: SSO 지원하도록 auth 리팩터링

부적합: 포맷팅 정리

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

agent-doc-discipline

Writing-time discipline for documents agents consume (the five surfaces, specs, tickets, .omc/skills/) — every rule checkable and carrying a why, steps before reference, one meaning in one home, no restating what the environment already says. Mandatory at drydock seed generation and the launch C5 sediment pass; opt-in for any other agent-facing doc edit. The companion of minimal-code-discipline: that one disciplines code, this one disciplines papers.

ask

Process-first advisor routing for Claude, Codex, Gemini, Antigravity, Grok, or Cursor via `omc ask`, with artifact capture and no raw CLI assembly

ask-navigator

Shipyard

autopilot

Full autonomous execution from idea to working code

autoresearch

Stateful single-mission improvement loop with strict evaluator contract, markdown decision logs, and max-runtime stop behavior

cancel

Cancel any active OMC mode (autopilot, ralph, ultragoal, swarm, ultrapilot, pipeline, team) and clean up retired legacy state

configure-notifications

Configure notification integrations (Telegram, Discord, Slack) via natural language

debug

Diagnose the current OMC session or repo state using logs, traces, state, and focused reproduction

deepinit

Deep codebase initialization with hierarchical AGENTS.md documentation

deep-interview

Socratic deep interview with mathematical ambiguity gating before explicit execution approval

drydock

Lay the keel of the shipyard harness in any repo — the 4-pillar shared environment (Context, Rules, Tools, Standards) across 5 surfaces (CLAUDE.md, skills, design-system, mcp/cli, shared context) so that every human and agent inherits the same design language and anyone can ship. Run once per repo; re-run with --check to audit drift.

execute

Carry an approved task through to working, verified code

external-context

Invoke parallel document-specialist agents for external web searches and documentation lookup

graph

Deterministic orchestration graph runtime - declarative DAG pipelines with journal-based crash recovery

harbor

Harbor intake for external work — the captain only handles unresolved decisions. Sweeps incoming issues and PRs, verifies every claim before disposition, reuses every decision already made, and hands the maintainer a docket whose pending items each carry one question with options, recommendation, impact and evidence. Agent-autonomous for facts and for actions covered by standing authorization; signed for every new judgment. Never merges.

hud

Configure HUD display options (layout, presets, display elements)

launch

Shipyard

loft

Loft the shape before cutting steel — answer a design question that prose cannot settle by building a throwaway artifact: a pure logic module in a clickable shell, or structurally different UI variants behind one route. The captain reacts to the artifact; the answer folds into the decision; the artifact never docks. Use when a design question stalls in words, when a navigator map carries a loft ticket, or when a spec discussion reaches

minimal-code-discipline

YAGNI-ladder coding discipline for writing changes — existence-first, reuse before writing, dependency ladder, shortest correct diff, with non-negotiables that must never be minimized away

omc-doctor

Diagnose and fix oh-my-claudecode installation issues

관련 스킬