ワンクリックで
naver-map-route
네이버 지도(NAVER Cloud Platform Maps) 기반 출발지→목적지 자동차 길찾기·지오코딩·역지오코딩을 k-skill-proxy 경유로 조회한다. 수동 입력 MVP, mock 기본, live opt-in.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
네이버 지도(NAVER Cloud Platform Maps) 기반 출발지→목적지 자동차 길찾기·지오코딩·역지오코딩을 k-skill-proxy 경유로 조회한다. 수동 입력 MVP, mock 기본, live opt-in.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
잡코리아 기업회원 로그인 세션으로 유료 열람 전 마스킹된 인재 이력서를 검색·비교해 채용 검토용 shortlist를 만듭니다.
사람인 기업회원 인재풀 로그인 세션에서 마스킹된 후보 정보를 검색·비교해 유료 열람 전 shortlist를 만듭니다.
Search local KakaoTalk archives on Apple Silicon macOS through the katok CLI.
AI가 쓴 티가 나는 한국어 글을 자연스러운 사람 글로 고친다. 번역체, AI 상투어, 과도한 명사화·피동, 3의 법칙, 과장된 의의 부여, 마무리 상투구, 챗봇 잔재, 줄표·곡선따옴표 같은 한국어 특유의 AI 흔적을 심각도(S1/S2/S3)로 분류해 잡아내고 의미는 보존하면서 다시 쓴다. 목표 글자수를 함께 주면(예: "1000자로", length=1000) 그 분량에 맞춰 늘리거나 줄인다. "AI 티 안 나게", "사람이 쓴 것처럼", "자연스럽게 다듬어줘", "번역체 고쳐줘", "어색한 거 고쳐줘", "N자로 맞춰서" 같은 요청에 사용.
사업자등록번호 하나로 "이 사업자, 실제 문제 없나"를 확인한다 — 국세청 사업자등록 상태·국민연금 가입 사업장·국세 체납 명단·금융위 법인개요·조달청 부정당제재·지방행정 인허가 영업상태를 무료 공공 데이터로 교차 조회해 사실만 병렬하는 실사 리포트(점수·등급·위험 판정 없음).
금융위원회 기업기본정보(법인 개요)를 공공데이터포털 API(k-skill-proxy 경유)로 조회한다. 법인명으로 대표자·설립일·업종 등 법인 개요를 확인하고, 응답에 사업자번호가 있으면 입력 번호와 교차검증한다.
| name | naver-map-route |
| description | 네이버 지도(NAVER Cloud Platform Maps) 기반 출발지→목적지 자동차 길찾기·지오코딩·역지오코딩을 k-skill-proxy 경유로 조회한다. 수동 입력 MVP, mock 기본, live opt-in. |
| license | MIT |
| metadata | {"category":"transit","locale":"ko-KR","phase":"v1"} |
⚠️ 현재 미작동 (2026-05-25): NCP Maps 운영자 키가 프록시 서버에 아직 설정되지 않아 live 모드가 동작하지 않습니다. mock fallback만 사용 가능합니다. NCP 결제수단 등록 완료 후 키를 설정하면 이 안내를 제거합니다.
사용자가 /route 또는 /이동루트 명령으로 출발지·목적지를 직접 입력하면, NAVER Cloud Platform Maps Directions 5 결과를 k-skill-proxy 경유로 조회하여 거리·소요 시간·통행료·연료비를 요약한다.
ROUTE_PLANNER_ENABLE_LIVE_PROVIDER=true + ROUTE_PLANNER_PROVIDER=naver)될 때만 live proxy 호출을 수행한다.이슈 #268 의 MVP 수용 기준:
/route 수동 입력 정상 응답/이동루트 수동 입력 정상 응답korean-transit-route 스킬, 도보·자전거는 별도 스킬)urllib, argparse, json).KSKILL_PROXY_BASE_URL (self-host·별도 프록시를 쓸 때만 설정. 비우면 기본 hosted https://k-skill-proxy.nomadamas.org).ROUTE_PLANNER_PROVIDER=naver (값이 naver일 때만 live provider 후보).ROUTE_PLANNER_ENABLE_LIVE_PROVIDER=true (live 호출을 명시 허용).사용자 머신에는 필요 없다. 운영자가 proxy 서버 쪽에 다음을 둔다:
NAVER_MAP_CLIENT_ID — NCP Maps subaccount client idNAVER_MAP_CLIENT_SECRET — NCP Maps subaccount client secretproxy 서버가 이 키 없이 가동되면 /v1/naver-map/* 라우트는 503 upstream_not_configured 를 돌려준다. 클라이언트는 이를 mock fallback 신호로 사용한다.
provider 결정
├── ROUTE_PLANNER_ENABLE_LIVE_PROVIDER != "true"
│ → mock 결과 반환
├── ROUTE_PLANNER_PROVIDER != "naver"
│ → mock 결과 반환
└── live 시도
├── proxy /v1/naver-map/directions 호출
├── 503 / 502 / 네트워크 실패
│ → mock fallback + warning 메모
└── 정상 응답
→ 요약 + provider="naver"
| endpoint | upstream | 주요 입력 |
|---|---|---|
GET /v1/naver-map/directions | NCP Maps Directions 5 (/map-direction/v1/driving) | start=lng,lat, goal=lng,lat, waypoints (최대 5), option=trafast|tracomfort|traoptimal|traavoidtoll|traavoidcaronly, lang=ko |
GET /v1/naver-map/geocode | NCP Maps Geocoding (/map-geocode/v2/geocode) | q, coordinate, filter, language, page, count |
GET /v1/naver-map/reverse-geocode | NCP Maps Reverse Geocoding (/map-reversegeocode/v2/gc) | coords=lng,lat, orders=roadaddr,addr,legalcode,admcode, output=json |
/route <start>, <goal> 또는 /이동루트 출발: <start> 도착: <goal> 패턴을 받는다.126.9706,37.5559) 또는 주소(강남역 1번 출구) 둘 다 허용. 주소는 geocode 단계로 좌표를 얻는다.ROUTE_PLANNER_ENABLE_LIVE_PROVIDER 가 비어 있거나 true가 아니면 즉시 mock 결과를 만든다:
{
"provider": "mock",
"start": { "label": "강남역", "lng": null, "lat": null },
"goal": { "label": "시청역", "lng": null, "lat": null },
"summary": {
"distance_km": null,
"duration_minutes": null,
"toll_won": null,
"fuel_won": null
},
"note": "live provider is disabled. Set ROUTE_PLANNER_PROVIDER=naver and ROUTE_PLANNER_ENABLE_LIVE_PROVIDER=true to call the proxy."
}
ROUTE_PLANNER_PROVIDER=naver + ROUTE_PLANNER_ENABLE_LIVE_PROVIDER=true:
BASE="${KSKILL_PROXY_BASE_URL:-https://k-skill-proxy.nomadamas.org}"
curl -fsS --get "${BASE}/v1/naver-map/directions" \
--data-urlencode 'start=126.9706,37.5559' \
--data-urlencode 'goal=127.0276,37.4979' \
--data-urlencode 'option=trafast'
응답에서 기본 option=trafast 기준 route.trafast[0].summary 를 읽고, 다른 option을 명시한 경우 route[option][0].summary 를 다음으로 매핑한다:
distance (meter) → distance_km = distance / 1000duration (millisecond) → duration_minutes = duration / 60000tollFare → toll_wonfuelPrice → fuel_won사용자가 좌표를 모르고 주소만 줬을 때:
curl -fsS --get "${BASE}/v1/naver-map/geocode" \
--data-urlencode 'q=강남역 1번 출구' \
--data-urlencode 'count=1'
응답의 addresses[0].x (lng), addresses[0].y (lat) 를 사용한다.
[mock 모드]
경로 요약 (mock): 강남역 → 시청역
- 거리/소요시간/통행료 정보 없음
- live 활성화 방법: ROUTE_PLANNER_PROVIDER=naver, ROUTE_PLANNER_ENABLE_LIVE_PROVIDER=true
[live 모드]
경로 요약 (naver): 강남역(126.9706,37.5559) → 시청역(127.0276,37.4979)
- 거리: 12.3km
- 예상 소요시간: 25분
- 통행료: 1,200원
- 연료비: 1,500원
- 옵션: trafast
- 조회 시각: 2026-05-23T14:00:00.000Z
NAVER_MAP_CLIENT_ID/SECRET 없음) → 503 upstream_not_configured → mock fallback503 으로 변환 → mock fallback429) → proxy가 429 upstream_error 로 보존 → mock fallback + 재시도 간격 안내code != 0) → 502 upstream_semantic_error → 메시지와 함께 안내400 bad_request502 upstream_error → mock fallback/route 또는 /이동루트 로 출발지·목적지를 줬을 때, mock 또는 live 결과로 한 가지가 명확히 응답된다.trafast(빠른 경로) 가 기본. 정확한 정의는 NCP Maps Directions 5 공식 문서를 참고.docs/features/k-skill-proxy.md 를 참고한다.