catchtable-sniper

Monitor Catchtable for open reservation slots and attempt booking using a logged-in Chrome session.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "catchtable-sniper" with this command: npx skills add nomadamas/k-skill/nomadamas-k-skill-catchtable-sniper

catchtable-sniper

📋 기본 정보

  • 스킬명: catchtable-sniper
  • 라이선스: MIT
  • 단계: v1
  • 카테고리: lifestyle / food
  • 로케일: ko-KR
  • 요구사항: Chrome MCP, 캐치테이블 로그인된 Chrome 세션

🎯 주요 기능

캐치테이블에서 원하는 식당의 빈자리(취소 슬롯)를 30초 간격으로 감시하다가 발견하는 즉시 자동 예약합니다.
멀티 타겟 동시 감시, 예약 오픈런 모드, 인원 유연 매칭, Dry-run 알림 전용 모드를 지원합니다.


✅ 적합한 사용 사례

  • "온지음 5월 토요일 저녁 2인 빈자리 나오면 예약해줘"
  • "온지음, 밍글스, 라연 중 5월 주말 2인 아무데나 먼저 뜨는 거 잡아줘" ← 멀티 타겟
  • "라연 5월 예약 오픈이 4월 30일 오전 10시야, 그때 맞춰서 잡아줘" ← 오픈런 모드
  • "스시야마 이번달 안에 2인 — 못 잡으면 4인 있으면 알려줘" ← 인원 유연
  • "밍글스 빈자리 뜨면 예약은 내가 할게 알림만 줘" ← Dry-run 모드
  • "https://app.catchtable.co.kr/ct/shop/mingles 토요일 4명 자동예약"

❌ 부적합한 사용 사례

  • 로그인 자동화 (카카오/네이버 로그인은 직접 해야 함)
  • 선결제 식당의 결제 정보 자동 입력 (결제 단계는 사람이 직접)
  • 캐치테이블 외 플랫폼 예약 (네이버 예약, 식신 등)
  • 30초 미만 폴링 간격 (서버 부하 방지)

🔧 기술 요구사항

  • Chrome MCP 연결 필수
  • 캐치테이블(app.catchtable.co.kr)에 로그인된 Chrome 세션 필요
  • 별도 API 키, 패키지 설치 불필요

🔐 인증 처리

이 스킬은 이미 Chrome에 로그인된 세션을 그대로 사용합니다.
로그인 정보를 스킬에 전달하지 않습니다.

로그인 안 된 경우:

"캐치테이블에 로그인되어 있지 않습니다.
 Chrome에서 캐치테이블에 카카오/네이버 로그인 후 다시 실행해주세요."

→ 스킬 중단. 로그인 자동화 없음.


🗂️ 입력 파싱

사용자 입력에서 다음을 추출한다:

항목예시필수 여부
식당명 또는 URL"온지음" / app.catchtable.co.kr/ct/shop/onjium필수 (복수 가능)
날짜"5월 3일", "이번 주 토요일", "5월 주말 전체"필수
인원"2명", "4인"필수
시간대"저녁", "19시 이후"선택 (없으면 전체)
모드"알림만", "dry-run"선택 (없으면 자동예약)
인원 유연"2인 없으면 4인도 괜찮아"선택
오픈 시간"4월 30일 오전 10시 오픈"선택 (오픈런 모드)
폴링 간격"30초마다"선택 (기본: 30초)

멀티 타겟 감지: 식당명이 쉼표/슬래시로 구분되거나 "중 아무데나", "먼저 뜨는 거" 표현이 있으면 멀티 타겟 모드로 전환.


📊 실행 플로우

STEP 1 — 브라우저 준비 및 로그인 확인

Chrome MCP로 캐치테이블 접속:

navigate: https://app.catchtable.co.kr

MY 탭에서 로그인 상태 확인. 미로그인 시 중단.


STEP 2 — 모드 분기

입력 파싱 완료
 ├─ 오픈 시간 명시됨 → STEP 2-A (오픈런 모드)
 └─ 오픈 시간 없음  → STEP 2-B (취소 스나이핑 모드)

STEP 2-A: 오픈런 모드

예약 오픈 시간까지 대기:

[10:00:00 오픈 예정] 현재 09:58:42 — 77초 후 오픈
[10:00:00] ✅ 오픈 시각 도달 — 즉시 예약 시도

오픈 시각 정각에 날짜 선택 → 슬롯 클릭 → 예약 폼 진입.
슬롯이 이미 마감이면 → 취소 스나이핑 모드(STEP 2-B)로 자동 전환.

STEP 2-B: 취소 스나이핑 모드 (폴링 루프)

while 빈자리 없음:
    {폴링 간격}초 대기
    페이지 새로고침 또는 날짜 재클릭
    슬롯 파싱
    빈자리 발견 → STEP 3

STEP 3 — 멀티 타겟 처리

단일 타겟: 해당 식당 슬롯 확인.

멀티 타겟: 지정된 식당들을 순차 순회하며 슬롯 확인.

[14:23:15] 온지음 5/3 확인 중... 없음
[14:23:17] 밍글스 5/3 확인 중... 없음
[14:23:19] 라연 5/3 확인 중... 없음 (30초 후 재시도)
[14:23:49] ✅ 밍글스 5/3 19:30 빈자리 발견! — 예약 시작

한 곳에서 슬롯 발견 시 나머지 감시 즉시 중단 → 발견된 식당 예약 진행.


STEP 4 — 인원 유연 매칭

지정 인원(예: 2인) 슬롯이 없을 경우:

if 인원_유연 == True:
    대안_인원(예: 4인) 슬롯 확인
    발견 시:
        "2인 슬롯은 없지만 4인 슬롯(19:00)이 있습니다.
         4인으로 예약할까요? (예/아니오)"
    → 사용자 확인 후 진행

STEP 5 — 예약 진행 (모드 분기)

Dry-run 모드 ("알림만" / "dry-run" 입력 시):

✅ 빈자리 발견! 예약은 진행하지 않습니다.
식당: 밍글스
날짜: 5월 3일(토)
시간: 19:30
인원: 2명
→ 지금 바로 예약하시겠습니까? (예/아니오)

→ 예약 여부는 사람이 결정.

자동예약 모드 (기본):

빈 슬롯 버튼 즉시 클릭 → 예약 폼 진입.

폼 자동 입력:

  • 인원수: 지정한 인원 선택
  • 방문 목적: "식사" (기본값)
  • 주의사항 동의: 전체 동의 체크
  • 예약자 정보: 앱 저장 정보 자동 사용

선결제 식당인 경우:

"빈자리를 발견했습니다! 결제가 필요합니다.
 결제 금액: {금액}원
 지금 결제를 진행할까요? (예/아니오)"

→ 결제 정보 자동 입력 없음. 사용자 확인 후 결제 진행.

무료 예약: "예약하기" 최종 확인 버튼 클릭.


STEP 6 — 완료 확인

🎉 예약 완료!

식당: {식당명}
날짜: {날짜}
시간: {시간}
인원: {인원}명
모드: {자동예약 / Dry-run}
예약번호: {예약번호}

캐치테이블 앱 > MY > 예약내역에서 확인 가능합니다.

💡 중간 상태 출력 형식

[14:23:15] 밍글스 5/3 저녁 슬롯 확인 중... 빈자리 없음 (30초 후 재시도)
[14:23:45] 온지음 5/3 저녁 슬롯 확인 중... 빈자리 없음
[14:24:15] ✅ 밍글스 5/3 19:30 (2인) 빈자리 발견! — 예약 시작

⚙️ 설정값

항목기본값범위
폴링 간격30초30초 이상
최대 감시 시간2시간
멀티 타겟 최대 수5개

2시간 초과 시:

"2시간 동안 빈자리가 없었습니다. 계속 시도할까요? (예/아니오)"

🚨 에러 핸들링

상황대응
식당 페이지 404"식당을 찾을 수 없습니다. 이름을 다시 확인해주세요."
예약 오픈 전오픈 일정 안내 후 오픈런 모드로 전환 제안
슬롯 클릭 후 이미 마감즉시 재폴링 재개
네트워크 오류10초 후 재시도, 3회 연속 실패 시 사용자 알림
멀티 타겟 중 일부 404해당 식당 제외, 나머지 계속 감시
2시간 초과"계속 시도할까요?" 확인 후 연장 또는 종료

✨ 완료 기준

다음 중 하나:

  • 예약 완료 화면 확인 + 예약번호 수집
  • Dry-run 모드에서 빈자리 발견 및 사용자 알림 완료
  • 사용자가 명시적으로 중단 요청

사용 예시

"온지음 5월 10일 저녁 2인 빈자리 나오면 예약해줘"
"온지음, 밍글스, 라연 5월 토요일 저녁 2인 중 아무데나 먼저 뜨는 거 잡아줘"
"라연 5월 예약이 4월 30일 오전 10시 오픈이야, 그때 맞춰 2인 잡아줘"
"스시야마 이번달 2인 — 없으면 4인도 괜찮아, dry-run으로"
"https://app.catchtable.co.kr/ct/shop/mingles 토요일 4명 자동예약"

⚠️ 주의사항

  • Chrome에 캐치테이블 로그인 세션이 있어야 동작합니다.
  • 선결제 식당의 결제 정보는 직접 입력해야 합니다.
  • 폴링 간격은 최소 30초를 유지합니다 (서버 부하 방지).
  • 캐치테이블 이용약관을 준수하는 범위에서 사용하세요.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

k-skill-setup

No summary provided by upstream source.

Repository SourceNeeds Review
General

hwp

No summary provided by upstream source.

Repository SourceNeeds Review
General

kakaotalk-mac

No summary provided by upstream source.

Repository SourceNeeds Review
General

ktx-booking

No summary provided by upstream source.

Repository SourceNeeds Review