api-design-principles
REST 및 GraphQL API 설계 원칙 가이드. 새로운 API 설계, API 스펙 리뷰, API 설계 표준 수립 시 활용. 트리거: "API 설계", "REST", "GraphQL", "엔드포인트 설계", "API…
코드 단순화 및 리팩토링 — 변경된 코드를 리뷰하고 불필요한 추상화, 중복, 복잡성을 제거합니다. Triggers on: 단순화, simplify, 리팩토링, 코드 정리, 코드 개선. NOT for: 새 기능 추가, 버그 수정.
$ npx -y skills add jh941213/my-cc-harness --skill simplify --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/simplifyContext preview
The summary Claude sees to decide when to auto-load this skill.
코드 단순화 및 리팩토링 — 변경된 코드를 리뷰하고 불필요한 추상화, 중복, 복잡성을 제거합니다. Triggers on: 단순화, simplify, 리팩토링, 코드 정리, 코드 개선. NOT for: 새 기능 추가, 버그 수정.
name: simplify description: "코드 단순화 및 리팩토링 — 변경된 코드를 리뷰하고 불필요한 추상화, 중복, 복잡성을 제거합니다. Triggers on: 단순화, simplify, 리팩토링, 코드 정리, 코드 개선. NOT for: 새 기능 추가, 버그 수정." user-invocable: true disable-model-invocation: false allowed-tools: Read, Edit, Grep, Bash
최근 변경된 코드를 리뷰하고 단순화합니다.
git diff --name-only HEAD~1 # 최근 변경 파일 확인
// BEFORE: 한 번만 쓰이는 헬퍼
function formatUserName(user: User) { return `${user.first} ${user.last}`; }
const name = formatUserName(user);
// AFTER: 인라인
const name = `${user.first} ${user.last}`;// BEFORE: 깊은 중첩
if (user) {
if (user.isActive) {
if (user.hasPermission) {
doThing();
}
}
}
// AFTER: 얼리 리턴
if (!user?.isActive || !user.hasPermission) return;
doThing();// BEFORE: 반복 패턴 const users = data.filter(d => d.type === 'user').map(d => d.name); const admins = data.filter(d => d.type === 'admin').map(d => d.name); // AFTER: 3회 이상 반복될 때만 추출 const namesByType = (type: string) => data.filter(d => d.type === type).map(d => d.name);
**주의**: 2회 반복은 추출하지 않음. 3회부터 고려.
# jscpd — copy-paste 감지 (3줄 이상 중복) npx jscpd src/ --min-lines 3 --reporters console 2>/dev/null | head -30 # ast-grep — 구조적 패턴 탐지 sg --pattern 'console.log($$$)' --lang ts 2>/dev/null | head -10
수정 후 반드시 확인:
npm run typecheck || npx tsc --noEmit # 타입 안전 npm test # 테스트 통과
REST 및 GraphQL API 설계 원칙 가이드. 새로운 API 설계, API 스펙 리뷰, API 설계 표준 수립 시 활용. 트리거: "API 설계", "REST", "GraphQL", "엔드포인트 설계", "API…
Python asyncio 및 async/await 패턴 가이드. 비동기 API, 동시성 시스템, I/O 바운드 애플리케이션 구축 시 활용. 트리거: "asyncio", "async/await", "비동기 Python",…
레포에서 실질적인 작업(구현·수정·배포·디버깅)을 시작할 때, 새 레포를 처음 파악할 때, 작업을 마치고 기억할 지식이 생겼을 때 사용. 작업 유형에 맞는 docs·메모리만 선택적으로 로드하는 라우팅 테이블을 운영한다
Ralph Loop 병렬 버전. 여러 에이전트가 worktree에서 동시에 PRD 항목을 처리한다. 트리거: "PRD 항목 병렬 구현", "병렬 구현", "autodev parallel", "워크트리 병렬 개발", "병렬 랄프"…
Ralph Loop 기반 자율 개발 루프. Stop Hook이 세션 종료를 가로채어 PRD 항목을 하나씩 완료하며 자동 커밋한다. 트리거: "autodev", "자율 개발", "밤새 돌려", "랄프 루프", "ralph loop",…
기능 추가·컴포넌트 생성·동작 변경 등 모든 창작 작업 전에 사용. 구현 전에 의도·요구사항·설계를 대화로 확정 (심층 인터뷰가 필요한 대규모 기능은 /spec 사용)