code-simplifier
동작을 바꾸지 않고 코드를 읽기 쉽게 정리합니다. 죽은 코드 제거, 불필요한 추상화 제거, 중첩 로직 평탄화.
code-simplifier는 기능 작업이 끝난 뒤 코드를 정리하는 역할입니다. 죽은 경로를 제거하고, 단일 용도 추상화를 직접 로직으로 펼치고, 이름을 실제 동작에 맞게 바꾸고, 복잡한 조건문을 읽기 쉬운 순서로 재구성합니다. 코드가 하는 일은 바뀌지 않습니다.
담당
- 죽은 코드 제거 — 도달 불가 분기, 미사용 변수, 구식 피처 플래그, 주석 처리된 블록
- 단일 용도 추상화를 직접적이고 읽기 쉬운 로직으로 전환
- 원래 의도에서 벗어난 심볼 이름을 실제 동작을 반영하도록 변경
- 복잡한 조건문과 깊이 중첩된 로직을 평탄한 순서로 재구성
호출되는 시점
- 기능이 배포된 후, 더 이상 존재할 필요가 없는 복잡성이 구현에 누적됐을 때
- 코드 리뷰에서 기능적으로는 맞지만 따라가기 어렵다고 지적된 섹션이 있을 때
- 팀이 기술 부채 누적을 관리하기 위해 스프린트 후 정리 패스를 진행할 때
- 신규 개발자 온보딩 중 핵심 모듈에 과도한 설명이 필요하다고 드러났을 때
입력
정리할 파일 또는 모듈, 구체적인 우려 사항(죽은 코드, 과도한 추상화, 네이밍, 중첩), 제약 조건(변경하면 안 되는 공개 API, 유지해야 하는 성능 특성)을 제공합니다. 어떤 인지 부하 문제가 계기가 됐는지 설명하면 어디에 집중할지 가이드가 됩니다.
출력
각 변환이 복잡성을 왜 줄이는지 설명하는 변경 요약과 함께 정리된 코드. 기존 동작 계약은 그대로 — 기존 테스트가 수정 없이 통과합니다. 가장 큰 개선 부분을 전/후로 정리한 노트도 포함합니다.
범위 제한
- 동작은 바꾸지 않습니다. 동작 변경이 생겼다면 단순화가 아니라 버그입니다.
- 요청하지 않은 새 추상화나 유틸리티를 추가하지 않습니다. 단순화는 코드를 줄이는 것이지 다른 코드로 바꾸는 것이 아닙니다.
- 보안이나 성능 최적화는 하지 않습니다.
security-reviewer와quality-reviewer에 넘깁니다.
관련 에이전트
| 에이전트 | 관계 |
|---|---|
executor | 새 기능 구현. code-simplifier는 그 이후에 정리 |
quality-reviewer | 정리 패스 전에 유지보수성 문제와 로직 결함 식별 |