switchlisted
Install: claude install-skill snwlee/Nereus
# switch
nereus:common 규칙을 따른다. 워크플로는 nereus 코어가 소유한다.
**이 스킬의 절반은 NDA 를 지키는 방법이다.** Nintendo SDK 는 NDA 강도가 가장 센 축이고,
Nereus 의 review 는 코드를 외부 모델에 보낸다. 경계 없이는 이 하네스로 Switch 개발을 할 수 없다.
## 1. NDA 경계가 막는 것과 안 막는 것
| 상황 | 처리 |
|---|---|
| NDA 경로 파일을 읽기·편집 | **막지 않는다.** 막으면 개발 자체가 안 된다 |
| NDA 경로를 `codex`·`agy`·`ocr`·`curl`·`gh` 에 넘기는 명령 | **차단**(기본값). 설정으로 경고로 낮출 수 있다 |
| 외부 도구를 쓰지만 NDA 경로가 없는 명령 | 막지 않는다 |
| 모델이 NDA 파일을 읽어 컨텍스트에 넣는 것 | **기술로 못 막는다** — 아래 2번이 그 답이다 |
기본 구역: `Platform/Switch/**` · `**/NintendoSDK/**` · `**/*.nx.*`. 프로젝트가 덧붙일 수 있다.
## 2. 플랫폼 추상화가 진짜 방어선이다
훅은 사고를 막고, 추상화는 **사고 면적을 줄인다.** 둘 다 필요하다.
- 게임 로직의 99% 를 플랫폼 무관 층에 둔다. 여기가 하네스가 전력으로 도는 구역이다
— TDD, 리뷰, 외부 모델 전부 허용.
- `Platform/Switch/` 는 **얇게** 유지한다. 인터페이스 구현과 SDK 호출만. 로직을 넣지 않는다.
- 이 경계가 지켜지면 모델이 읽어야 할 NDA 코드가 거의 없어진다.
부수 효과로 테스트 가능한 코드 비율이 올라간다 — NDA 가 설계를 강제하는 셈이다.
경계가 두꺼워지고 있다는 신호: NDA 구역에서 테스트가 필요해진다, NDA 구역 파일이 늘어난다,
리뷰에서 계속 차단된다. 셋 중 하나라도 보이면 로직을 플랫폼 무관 층으로 옮긴다.
## 3. 빌드 명령은 설정에서 읽는다
SDK 고유 명령은 NDA 라 저장소에 적을 수 없다. 프로젝트 설정의 `switch.build` 에 두고,
없으면 게이트를 켜지 않는다. 명령을 지어내지 않는다.
## 4. Lotcheck
**체크리스트 본문은 이 저장소에 없다. 항목 자체가 NDA 다.**
`.nereus/lotcheck/` (gitignore 대상)에 체크리스트를 두면 하네스가 기계적으로 훑는다.
없으면 이 절차만 안내한다.
Lotcheck 반려 사유의 대부분은 **기계적으로 검증 가능한 항목**이다 — 사람이 수백 줄을 손으로 훑는 대신
finish 게이트가 돌게 만드는 것이 이 하네스의 실용 가치다. 유형만 적으면(공개 가능한 범위):
- 절전·슬립에서 복귀했을 때의 동작
- 컨트롤러 연결 해제·재연결 시 표시
- 휴대 모드와 거치 모드 **두 벌** 전부
- 유저 계정 전환
- 저장 중 전원 차단
## 5. 폰·로블록스와 다른 점
| | 폰 | 로블록스 | Switch |
|---|---|---|---|
| 심사 |