Convex 베스트 프랙티스
Convex 백엔드 코드를 프로덕션 수준으로 작성하도록 함수 구조·검증자·인덱스·에러 처리 규칙을 Claude에게 주입하는 스킬.
개발·코딩중급★ 404⑂ 32AI 점수 8/10마지막 업데이트: 2026. 2. 6.
무엇을 해주나
Convex(실시간 백엔드 플랫폼)로 앱을 만들 때 Claude가 따라야 할 코딩 규칙을 정리한 스킬입니다.
- 함수 구성: 도메인별 파일 분리(
users.ts,tasks.ts), public 함수와 internal 함수 구분 - 검증자(validator):
args뿐 아니라returns까지 항상 정의하는 패턴 - 쿼리 최적화:
filter대신withIndex를 쓰도록 스키마 인덱스 설계 예시 제공 - 에러 처리:
ConvexError로 사용자용 에러 코드/메시지 반환 - 쓰기 충돌(OCC) 회피: 멱등성 있는 mutation, 읽지 않고 바로 patch,
Promise.all병렬 업데이트 - 안전 가드: 명시적 지시 없이는
npx convex deploy나 git 명령을 실행하지 않음 @convex-dev/eslint-plugin설치와 4가지 규칙(구식 문법 금지, 인자 검증자 필수 등) 안내
이런 분께 추천
- Convex + TypeScript로 서비스를 운영하거나 시작하는 개발자
- AI가 생성한 Convex 코드가 검증자 누락·filter 남용으로 리뷰에서 자주 걸리는 팀
- 실시간 동기화 앱에서 write conflict 에러(#1)를 줄이고 싶은 개발자
활용 예시
- "tasks 테이블 CRUD 함수 만들어줘" → 반환 검증자와
by_user인덱스를 갖춘list/create/update/remove세트를 생성 - "이 mutation에서 write conflict가 계속 나" → 멱등성 체크와 직접 patch 패턴으로 리팩터링
- "쿼리가 느려" →
filter호출을 스키마 인덱스 +withIndex로 교체 제안
· · · 설치 가이드 · · ·
설치 없이 지금 한 번 써보기
아래를 Claude에 붙여넣으면 설치하지 않고도 이 스킬을 그대로 씁니다.
이 파일의 지시를 읽고 그대로 따라서 나를 도와줘: https://raw.githubusercontent.com/waynesutton/convexskills/HEAD/skills/convex-best-practices/SKILL.md 내가 원하는 것: (여기에 하고 싶은 일을 쓰세요)
Claude가 링크를 열지 못하면, 링크를 직접 열어 내용을 복사해 붙여넣으세요.
↓ 쓸 만하면 아래에서 ZIP을 받아 설치하세요. 그러면 매번 붙여넣지 않아도 알아서 작동합니다.
Claude 앱에 설치 (터미널 필요 없음)
- 아래 버튼으로 ZIP 파일을 받으세요.
- Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
- Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
Claude Code에 설치
Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요
클로드스킬마트에서 찾은 스킬을 설치해줘. GitHub 저장소 waynesutton/convexskills 의 skills/convex-best-practices 폴더를 내 ~/.claude/skills/convex-best-practices/ 에 그대로 복사해줘. 설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.
직접 명령으로 설치하기
git clone https://github.com/waynesutton/convexskills.git /tmp/convexskills && mkdir -p ~/.claude/skills && cp -r /tmp/convexskills/skills/convex-best-practices ~/.claude/skills/⚠ 제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.
- 터미널을 엽니다.
- 저장소를 임시 폴더에 복제합니다:
git clone https://github.com/waynesutton/convexskills.git /tmp/convexskills - 스킬 폴더가 없다면 만듭니다:
mkdir -p ~/.claude/skills - 스킬을 복사합니다:
cp -r /tmp/convexskills/skills/convex-best-practices ~/.claude/skills/ - Convex 프로젝트 루트에서 Claude Code를 재실행하고 "Convex 베스트 프랙티스에 맞게 이 함수 정리해줘"처럼 요청합니다.
- (선택) 빌드 타임 검증을 원하면 프로젝트에
npm i @convex-dev/eslint-plugin --save-dev를 설치하고eslint.config.js에 recommended 설정을 추가합니다.
GitHub에서 원본 보기 ↗라이선스: Apache-2.0