원클릭으로
fe-qa
frontend/src 변경을 시니어 개발자 시선으로 검증하는 QA 스킬. "QA 해줘", "검증해줘", "코드 리뷰", "리뷰해줘", "merge 전에 봐줘" 요청 시 트리거한다. 구현하지 않고 검증과 보고만 수행한다.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
frontend/src 변경을 시니어 개발자 시선으로 검증하는 QA 스킬. "QA 해줘", "검증해줘", "코드 리뷰", "리뷰해줘", "merge 전에 봐줘" 요청 시 트리거한다. 구현하지 않고 검증과 보고만 수행한다.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
현재 PR의 리뷰 코멘트를 분석해 타당한 것만 반영하는 스킬. "리뷰 반영해줘", "PR 리뷰 처리해줘", "코드래빗 리뷰 봐줘", "리뷰 코멘트 반영", "follow review", "apply review" 요청 시 트리거한다. 사람 리뷰는 존중하고 AI 리뷰는 선별해 반영하며, 수정 후 검증한다.
백엔드 API를 frontend/src에 연동하는 스킬. "API 연동해줘", "백엔드 연결해줘", "엔드포인트 붙여줘", "쿼리 훅 만들어줘", "mutation 추가해줘", "이 API 호출하게 해줘" 요청 시 트리거한다. 타입·schema·API 함수·훅·MSW 핸들러를 기존 패턴대로 작성한다.
Figma 디자인을 가져와 frontend/src에 컴포넌트로 구현하는 스킬. "피그마 적용", "figma 디자인 구현해줘", "이 화면 만들어줘", "캡쳐한 디자인대로 만들어줘", figma.com URL 제공 시 트리거한다. 기존 디자인 토큰과 shared/ui 컴포넌트를 재사용해 구현한다.
frontend/.claude/skills/ 아래에 새 프론트엔드 스킬을 만드는 메타 스킬. "스킬 만들어줘", "skill 생성", "새 스킬 추가", "fe 스킬 만들어줘", "스킬 크리에이터" 요청 시 트리거한다. 기존 fe- 스킬과 형식·말투·범위를 일치시켜 SKILL.md를 생성한다.
frontend/src 코드에 테스트를 작성하는 스킬. "테스트 작성해줘", "test 짜줘", "테스트 추가해줘", "이거 테스트 커버해줘", "spec 작성" 요청 시 트리거한다. 대상에 맞는 도구를 골라 계약 중심 테스트를 작성한다.
Notion에서 백엔드 모듈의 API 명세를 MCP로 가져와 docs/backend/api-docs/{module}.md에 저장하는 스킬. "Notion API 가져와줘", "api-docs 동기화", "API 명세 불러와줘", "[모듈] API 문서 받아와", "api-docs 업데이트", "Notion에서 [모듈] 명세 내려받아" 요청 시 트리거한다. be-orchestrate가 Phase 1에서 내부적으로 사용하며 독립적으로도 트리거 가능하다.
| name | fe-qa |
| description | frontend/src 변경을 시니어 개발자 시선으로 검증하는 QA 스킬. "QA 해줘", "검증해줘", "코드 리뷰", "리뷰해줘", "merge 전에 봐줘" 요청 시 트리거한다. 구현하지 않고 검증과 보고만 수행한다. |
변경된 코드가 컨벤션을 준수하는지 검증한다. 구현하지 않는다. 검증과 보고만 한다.
이 스킬은 frontend/ 범위에서만 동작한다. backend/ 파일은 수정하지 않는다.
규칙 기준:
AGENTS.md전체 컨벤션 표
문제는 반드시 파일경로:라인번호 형식으로 위치를 명시한다.
git diff --name-only HEAD
변경 파일 목록을 확인하고 각 파일을 읽는다. frontend/ 밖 변경은 검토 대상에서 제외한다.
AGENTS.md 해당 섹션 기준으로 검증한다. 아래는 quick-reference다.
레이어 / 의존 방향 ("레이어 구조")
app → pages → widgets → features → entities → shared를 지키는가?entities가 feature/widget을, shared가 상위 레이어를 import하지 않는가?routeTree.gen.ts, generated-tokens.css)을 직접 편집하지 않았는가?작성 규칙 ("작성 규칙", "타입과 schema")
const + 명시적 타입, 타입 전용 import는 import type인가?any 대신 unknown + zod parse/타입 좁히기로 받았는가?shared/entities)으로 재사용했는가?API / 상태 ("API 규칙", "상태와 데이터")
@/shared/api helper를 우선 썼고 endpoint에 base URL을 붙이지 않았는가?UI / 스타일 ("UI와 스타일")
shared/ui 기존 컴포넌트를 재사용했는가?접근성 ("접근성")
aria-label, clickable은 의미 있는 요소, 색만으로 상태 전달 금지를 지켰는가?테스트 ("테스트")
AGENTS.md "검증" 표 순서로 실행한다. (frontend에는 verify.sh가 없다.)
pnpm --dir frontend exec tsc -b
pnpm --dir frontend exec prettier --check .
pnpm --dir frontend run lint
pnpm --dir frontend test
실패 시 에러 메시지 전체를 리포트에 포함한다.
## QA 리포트
### 체크리스트 결과
| 항목 | 결과 | 위치 |
| ----------------------------- | :---: | --------- |
| 레이어/의존 방향 | ✅/❌ | 파일:라인 |
| 작성 규칙 (const·import type) | ✅/❌ | 파일:라인 |
| 외부 응답 unknown + zod | ✅/❌ | 파일:라인 |
| API helper·endpoint 형식 | ✅/❌ | 파일:라인 |
| query key 재사용·invalidate | ✅/❌ | 파일:라인 |
| 토큰·shared/ui 재사용 | ✅/❌ | 파일:라인 |
| 접근성 | ✅/❌ | 파일:라인 |
| 테스트 존재·계약 서술 | ✅/❌ | 파일:라인 |
### 검증 명령 결과
tsc / prettier / lint / test: ✅ 통과 / ❌ 실패
실패 내용:
(에러 메시지 그대로)
### 수정 필요 항목
1. [파일경로:라인번호] 문제 내용 — 수정 방향
### 판정
✅ QA 통과 / ❌ QA 실패 (수정 후 재실행 필요)
파일:라인 위치를 명시했는가?