# .cli/rules.md ## 범위 & 출력 - 변경 사항은 항상 **레포지토리에 직접 적용**한다. (diff만 출력하고 끝내기 금지) - 출력은 최소로 유지한다: 1. 수정/생성/삭제된 파일 경로 목록 2. AC 체크리스트 3. housekeeping 결과 1줄 - 응답에 코드 전체를 덤프하지 않는다. ## 단일 진실(Source of Truth) - `@.cli/current.md`는 요구사항과 AC의 **단일 진실**이다. - current.md가 기존 문서/과거 지시와 충돌하면, **해당 실행(run)에서는 current.md를 우선**한다. ## FSD 경계 규칙 - `app/**`는 `widgets`의 public API만 import 한다. - `widgets/**`는 `index.ts`를 통해 public API를 노출한다. - `shared/**`는 안쪽 의존성이 없다(즉, `entities/features/widgets/app`를 import 하면 안 된다). - 튜닝 파라미터는 가능하면 `shared/config`를 우선 사용한다. ## 검색 규율(토큰 절약) - 필요하지 않으면 레포 전체를 스캔하지 않는다. - 검색이 필요하면: - `rg`는 1회만 실행한다 - 결과 요약은 5줄 이내로 제한한다 (내부 판단용; 장황한 로그 출력 금지) ## 안전 규칙 - current.md에 명시되지 않은 신규 기능을 추가하지 않는다. - 요구되지 않으면 디자인/동작을 변경하지 않는다. - 포맷만 바꾸는 변경(diff)은 피한다.