Hono REST API 서버의 라우트 추가, 수정, 에러 핸들링, 인증 미들웨어 등
API 서버 관련 작업이면 반드시 이 스킬을 먼저 확인할 것.
Triggers: "API 라우트 추가", "Hono 엔드포인트", "서버 에러",
"REST API", "라우트 패턴", "API 응답 형식", "서버 포트",
"API 인증", "API key", "CORS", "미들웨어", "health check",
"split reject", "split 반려", "백업 API", "프롬프트 API",
"시스템 프롬프트 API", "서버 구조", "라우트 등록".
Covers the Hono REST API server, route patterns, authentication,
error handling, and all API endpoints.
インストール
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Hono REST API 서버의 라우트 추가, 수정, 에러 핸들링, 인증 미들웨어 등
API 서버 관련 작업이면 반드시 이 스킬을 먼저 확인할 것.
Triggers: "API 라우트 추가", "Hono 엔드포인트", "서버 에러",
"REST API", "라우트 패턴", "API 응답 형식", "서버 포트",
"API 인증", "API key", "CORS", "미들웨어", "health check",
"split reject", "split 반려", "백업 API", "프롬프트 API",
"시스템 프롬프트 API", "서버 구조", "라우트 등록".
Covers the Hono REST API server, route patterns, authentication,
error handling, and all API endpoints.
웹 API 개발
서버 구조
packages/server/src/
├── index.ts # 서버 진입점 (localhost:3000), 미들웨어, 인증
├── history-sync.ts # 히스토리 동기화 진입점
├── history/
│ ├── store.ts # 분할 히스토리 SQLite 저장소
│ ├── store.test.ts # store 단위 테스트
│ ├── sync.ts # 히스토리 동기화 로직
│ └── types.ts # 히스토리 타입 정의
├── lib/
│ └── resolve-model.ts # provider+model 유효성 검증 및 해석
└── routes/
├── decks.ts # 덱 관련
├── cards.ts # 카드 관련
├── split.ts # 분할 (preview/apply/reject)
├── backup.ts # 백업/롤백
├── media.ts # Anki 미디어 프록시
├── clinic.ts # 검증 5종 + YAGNI + fix/apply
├── llm.ts # LLM 모델/프로바이더 정보
├── embedding.ts # 임베딩
├── prompts.ts # 프롬프트 버전 관리 + systemPrompt CAS
└── history.ts # 분할 히스토리
API 인증 미들웨어
모든 /api/* 요청은 인증 미들웨어를 거친다. /api/health만 면제.
인증 방식 (2가지)
X-API-Key 헤더: X-API-Key: <key>
Bearer 토큰: Authorization: Bearer <key>
둘 다 전달되면 X-API-Key가 우선. timing-safe 비교로 타이밍 공격 방지.
환경변수
변수
설명
기본값
ANKI_SPLITTER_API_KEY
API 키 값
(없으면 503)
ANKI_SPLITTER_REQUIRE_API_KEY
인증 강제 여부
"true"
REQUIRE_API_KEY=true + API_KEY 미설정 -> 모든 API 503 반환 (/api/health 제외)
REQUIRE_API_KEY=false -> 인증 비활성화 (Tailscale 등 격리 환경 전용)