Communitygithub.com

orodmorais/trip-map-3d

대화 내용을 바탕으로 여행 일정을 실제 지형, 일별 경로, 날씨 정보가 포함된 인터랙티브 3D 지도 웹사이트로 만들어 줍니다.

trip-map-3d란 무엇인가요?

이 스킬은 사용자의 여행 일정을 하나의 `trip.yaml` 파일로 정의하여, 실제 지형을 반영한 3D 지도 웹사이트를 생성합니다. 각 여행 일자별로 애니메이션 경로, 장소 핀, 정보 카드, 날씨 정보를 제공하며 오프라인에서도 작동합니다. GitHub Pages를 통해 무료로 퍼블리싱할 수 있으며, Claude Code, Cursor 등 다양한 AI 에이전트 플랫폼에서 사용할 수 있습니다. 이 스킬은 무료 공개 API(Open-Meteo)를 사용하며, 상업적 사용 시에는 유료 키가 필요하고, 지리정보 서비스(Nominatim)를 남용하지 않도록 설계되었습니다. 사용자가 직접 사진을 업로드하고, 경로를 검토하며, 저장소 이름과 공개 여부를 최종 확인한 후에만 퍼블리싱이 진행됩니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/orodmorais/trip-map-3d/tree/HEAD

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

trip-map-3d은(는) 무엇을 하나요?

여행을 웹사이트로 만들어 보세요: 지역별 실제 3D 지도, 일별 애니메이션 경로, 핀, 카드, 날씨 정보, 오프라인 지원까지. 모든 것은 하나의 파일인 trip.yaml에서 비롯됩니다.

1. 여행에 대해 물어보세요

모르는 내용이 있다면 한 번에 몇 가지씩 물어보세요:

  • 장소, 날짜, 총 기간(일 수).
  • 각 날짜별로: 무엇을 할 예정인지, 어떤 순서로 할지. 이름만 알려주셔도 됩니다.
  • 숙소 위치. 먼저 사이트가 무료 GitHub 계정에 공개된다는 점을 경고하고, 동네 정도만 알려주셔도 충분합니다. 사용자가 강력히 요청하지 않는 한 절대 도로명 주소를 적지 마세요.
  • 언어(en, pt-BR, es)와 단위.
  • 선택 사항: 서핑 장소, 조석, 사진, 테마.

사진은 본인 소유이거나 라이선스를 받은 것이어야 합니다. 사용자를 대신해 인터넷에서 사진을 다운로드하지 마세요.

2. trip.yaml 작성하기

examples/trip.example.yaml을 참고하세요. title, dates.start, days만 필수입니다. 장소 이름에는 항상 도시를 포함하세요: "판테온"이 아니라 "판테온, 로마".

3. 빌드 및 검토

python -m pip install -r requirements.txt
python -m pipeline check trip.yaml

사용자와 함께 보고서를 한 줄씩 읽어보세요. 지오코더가 잘못된 결과를 낼 수 있으므로, 찾은 모든 장소를 사용자에게 보여주세요. CHECK 표시가 있는 줄은 확인이 필요합니다. 장소가 틀렸거나 누락된 경우, 검색을 다시 시도하는 대신 places:에 lat과 lon을 추가하세요.

그런 다음 빌드합니다:

python -m pipeline build trip.yaml --out dist
python -m pip install -r requirements-dev.txt
python tools/check_site.py dist --shots shots --hashes "" dia-1

스크린샷을 열어 잘 보이는지 직접 확인하세요. 모든 장소가 잘 맞고, 경로가 카드 아래에 있지 않으며, 오류가 출력되지 않았는지 확인하세요.

4. 사용자 확인 후에만 퍼블리싱

저장소 이름과 공개 여부를 확인하세요. 그런 다음:

  1. 이 템플릿으로 만든 저장소에 푸시합니다.
  2. Settings > Pages에서 Source를 GitHub Actions로 설정합니다. 이 단계는 수동입니다.
  3. 워크플로우가 푸시할 때마다 빌드 및 퍼블리시합니다.

규칙

  • 공개 서비스는 공유됩니다. 절대 반복 호출하지 마세요. trip.lock.json은 모든 응답을 저장합니다. 커밋하고, 재시도를 위해 삭제하지 마세요.
  • 이 프로젝트는 공개 Nominatim API를 사용하지 않습니다. 해당 정책은 이 도구와 같은 일반 지오코더에 내장되는 것을 금지합니다. 사용자가 Nominatim을 요청하면 사용 정책과 services.geocoder를 통해 자체 인스턴스를 사용하도록 안내하세요.
  • 무료 Open-Meteo API는 비상업적 용도로만 사용 가능합니다. 여행사는 유료 키가 필요합니다: services.open_meteo_key를 설정하세요.
  • 사이트에 데이터 크레딧을 유지하세요. 법적으로 요구됩니다(DATA_SOURCES.md 참조).

관련 스킬