Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
nomadamas avatar

Srt Booking

  • 3.8k installs
  • 6.5k repo stars
  • Updated July 27, 2026
  • nomadamas/k-skill

srt-booking is an agent skill for search, reserve, inspect, and cancel korea srt tickets with srtrain including sold-out retry plans.

About

The srt-booking skill Search, reserve, inspect, and cancel SRT tickets in Korea with the SRTrain library. Use when the user asks for SRT seat availability, booking, canceling, or sold-out retry plans. SRTrain 위에 scripts/srt_booking.py helper 를 얹어 SRT 조회와 호차별 좌석번호 확인을 처리하고, 예약과 취소는 고정된 열차/예약을 다시 식별한 뒤 SRTrain으로 진행한다. - "수서에서 부산 가는 SRT 찾아줘" - "내일 오전 SRT 빈자리 있으면 잡아줘" - "SRT 5호차 빈 좌석 확인해줘" - "SRT 11A 좌석이 비었는지 봐줘" - "창측 좌석을 우선해서 SRT 빈자리 보여줘" - "예약 내역 확인해줘" - "이 SRT 예약 취소해줘" - 결제까지 자동으로 끝내야 하는 경우 - 비밀번호를 채팅창에 직접 보내려는 경우 - SRT가 아니라 KTX/Korail 예매인 경우 - Python 3.10+ - python3 -m pip install SRTrain - Python 3.10+ - python3 -m pip install SRTrain - KSKILL_SRT_ID - KSKILL_SRT_PASSWORD 1. 이미 환경변수에 있으면 그대로 사용한다. 2. 에이전트가 자체 secret vault(1Password CLI, Bitwarden CLI, macOS Keychain 등)를 사용 중이면 거기서 꺼내 환경변수로 주입해도 된다. 3. ~/.config/k-skill/secrets.env (기본 fallback) — plain dotenv 파일, 퍼미션 0600. 4. 아무것도 없으면

  • "내일 오전 SRT 빈자리 있으면 잡아줘"
  • "SRT 11A 좌석이 비었는지 봐줘"
  • "창측 좌석을 우선해서 SRT 빈자리 보여줘"
  • 비밀번호를 채팅창에 직접 보내려는 경우
  • SRT가 아니라 KTX/Korail 예매인 경우

Srt Booking by the numbers

  • 3,783 all-time installs (skills.sh)
  • +139 installs in the week ending Jul 28, 2026 (Skillselion tracking)
  • Ranked #110 of 2,742 Automation & Workflows skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

srt-booking capabilities & compatibility

Capabilities
"내일 오전 srt 빈자리 있으면 잡아줘" · "srt 11a 좌석이 비었는지 봐줘" · "창측 좌석을 우선해서 srt 빈자리 보여줘" · 비밀번호를 채팅창에 직접 보내려는 경우 · srt가 아니라 ktx/korail 예매인 경우
Use cases
orchestration · planning
From the docs

What srt-booking says it does

2. **에이전트가 자체 secret vault(1Password CLI, Bitwarden CLI, macOS Keychain 등)를 사용 중이면** 거기서 꺼내 환경변수로 주입해도 된다.
SKILL.md
3. **`~/.config/k-skill/secrets.env`** (기본 fallback) — plain dotenv 파일, 퍼미션 `0600`.
SKILL.md
4. **아무것도 없으면** 유저에게 물어서 2 또는 3에 저장한다.
SKILL.md
npx skills add https://github.com/nomadamas/k-skill --skill srt-booking

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs3.8k
repo stars6.5k
Security audit2 / 3 scanners passed
Last updatedJuly 27, 2026
Repositorynomadamas/k-skill

How do I search, reserve, inspect, and cancel korea srt tickets with srtrain including sold-out retry plans with documented agent guidance?

Search, reserve, inspect, and cancel Korea SRT tickets with SRTrain including sold-out retry plans.

Who is it for?

Developers who need automation & workflows help during build work.

Skip if: Skip when the task falls outside Automation & Workflows scope described in SKILL.md.

When should I use this skill?

Search, reserve, inspect, and cancel Korea SRT tickets with SRTrain including sold-out retry plans.

What you get

Completed automation & workflows workflow aligned with SKILL.md steps and validation.

  • SRT seat search results
  • Reservation and cancellation confirmations

By the numbers

  • "내일 오전 SRT 빈자리 있으면 잡아줘"
  • "SRT 11A 좌석이 비었는지 봐줘"
  • "창측 좌석을 우선해서 SRT 빈자리 보여줘"

Files

SKILL.mdMarkdownGitHub ↗

SRT Booking

What this skill does

SRTrain 위에 scripts/srt_booking.py helper 를 얹어 SRT 조회와 호차별 좌석번호 확인을 처리하고, 예약과 취소는 고정된 열차/예약을 다시 식별한 뒤 SRTrain으로 진행한다.

When to use

  • "수서에서 부산 가는 SRT 찾아줘"
  • "내일 오전 SRT 빈자리 있으면 잡아줘"
  • "SRT 5호차 빈 좌석 확인해줘"
  • "SRT 11A 좌석이 비었는지 봐줘"
  • "창측 좌석을 우선해서 SRT 빈자리 보여줘"
  • "예약 내역 확인해줘"
  • "이 SRT 예약 취소해줘"

When not to use

  • 결제까지 자동으로 끝내야 하는 경우
  • 비밀번호를 채팅창에 직접 보내려는 경우
  • SRT가 아니라 KTX/Korail 예매인 경우

Prerequisites

  • Python 3.10+
  • python3 -m pip install SRTrain

Required environment variables

  • KSKILL_SRT_ID
  • KSKILL_SRT_PASSWORD

Credential resolution order

1. 이미 환경변수에 있으면 그대로 사용한다. 2. 에이전트가 자체 secret vault(1Password CLI, Bitwarden CLI, macOS Keychain 등)를 사용 중이면 거기서 꺼내 환경변수로 주입해도 된다. 3. `~/.config/k-skill/secrets.env` (기본 fallback) — plain dotenv 파일, 퍼미션 0600. 4. 아무것도 없으면 유저에게 물어서 2 또는 3에 저장한다.

기본 경로에 저장하는 것은 fallback일 뿐, 강제가 아니다.

Inputs

  • 출발역
  • 도착역
  • 날짜: YYYYMMDD
  • 희망 시작 시각: HHMMSS
  • 인원 수와 승객 유형
  • 좌석 선호: 일반실 / 특실
  • 좌석 상세 조건: 객실 등급, 호차 번호, 좌석 번호, 빈 좌석만 보기, 탐색 우선순위

Workflow

0. Install the package globally when missing

python3 -c 'import SRT' 가 실패하면 다른 구현으로 우회하지 말고 전역 Python 패키지 설치를 먼저 시도한다.

python3 -m pip install SRTrain

1. Ensure credentials are available

KSKILL_SRT_ID, KSKILL_SRT_PASSWORD 환경변수가 설정되어 있는지 확인한다. 없으면 위 credential resolution order에 따라 확보한다.

시크릿이 없다는 이유로 웹사이트를 직접 긁거나 다른 비공식 경로를 찾지 않는다.

2. Search first

먼저 helper 로 조회해서 후보를 요약한다.

python3 scripts/srt_booking.py search 수서 부산 20260328 080000 --time-limit 120000 --limit 5

3. Summarize options before side effects

예약 전에는 항상 아래를 짧게 정리한다.

  • 출발/도착 시각
  • 일반실/특실 가능 여부
  • 예상 운임

4. Inspect detailed seats when the user asks for seat numbers

search 의 좌석 가능 여부는 열차 단위 플래그다. 사용자가 "남은 좌석 번호", "호차별 좌석", "특정 좌석", "창측/순방향 자리", "예약 전에 자리 확인"처럼 구체적인 좌석을 물으면 예약 전에 seats 를 호출한다.

python3 scripts/srt_booking.py seats 수서 부산 20260328 080000 --train-id <train_id>

특정 호차의 빈 좌석만 확인하려면 --car-no--available-only 를 쓴다.

python3 scripts/srt_booking.py seats 수서 부산 20260328 080000 --train-id <train_id> --car-no 5 --available-only

특정 좌석이 비었는지 확인하려면 --seat 를 붙인다.

python3 scripts/srt_booking.py seats 수서 부산 20260328 080000 --train-id <train_id> --car-no 5 --seat 11A

특정 호차를 지정하지 않으면 가운데 호차부터 탐색한다. --car-priority center|low|high 로 호차 탐색 순서를 바꾸고, --seat-priority forward-window|window-forward|row-low 로 좌석 정렬 우선순위를 바꾼다.

상세 좌석 응답을 보여줄 때는 아래를 우선 요약한다.

  • 호차별 available_seat_count
  • 남은 좌석 번호 (available_seats)
  • 좌석별 direction, position
  • 특정 좌석 요청이면 requested_seat_available

이 기능은 좌석을 선택/선점하지 않는다. 실제 예약은 다음 단계에서만 진행한다.

5. Reserve only after the train is fixed

예약은 부작용이 있으므로 정확한 열차를 고른 뒤에만 진행한다.

python3 - <<'PY'
import os
from SRT import Adult, SRT, SeatType

srt = SRT(os.environ["KSKILL_SRT_ID"], os.environ["KSKILL_SRT_PASSWORD"])
trains = srt.search_train("수서", "부산", "20260328", "080000", time_limit="120000")
reservation = srt.reserve(
    trains[0],
    passengers=[Adult(1)],
    special_seat=SeatType.GENERAL_FIRST,
)
print(reservation)
PY

6. Inspect or cancel

취소 전에는 대상 예약을 다시 식별한다.

python3 - <<'PY'
import os
from SRT import SRT

srt = SRT(os.environ["KSKILL_SRT_ID"], os.environ["KSKILL_SRT_PASSWORD"])
reservations = srt.get_reservations()
print(reservations)
PY

Done when

  • 조회 요청이면 후보 열차가 정리되어 있다
  • 좌석 상세 확인이면 호차별 남은 좌석번호나 특정 좌석 공석 여부가 정리되어 있다
  • 예약 요청이면 예약 결과, 운임, 구입기한이 확인되어 있다
  • 취소 요청이면 어떤 예약을 취소했는지 명확하다

Failure modes

  • 로그인 오류: 계정 정보나 SRT site policy 변경 가능성 확인
  • 매진: 다른 시간대나 좌석 타입으로 재조회
  • 좌석선택 페이지 형식 변경: helper 파서 업데이트 필요
  • 네트워크 오류: 짧게 재시도하되 aggressive polling은 피하기

Notes

  • 상세 좌석 확인은 SRT 웹 좌석선택 페이지를 조회 전용으로 읽는다
  • SRTrain은 SRT 전용 라이브러리라서 스킬 의도가 더 선명하다
  • 결제 완료까지는 자동화하지 않는다
  • 자동 재시도 루프는 계정 보호 차원에서 짧고 보수적으로 유지한다

Related skills

How it compares

srt-booking is an agent skill for search, reserve, inspect, and cancel korea srt tickets with srtrain including sold-out retry plans, not a generic alternative.

FAQ

Who is srt-booking for?

Developers using Automation & Workflows workflows with agent-guided SKILL.md steps.

When should I use srt-booking?

Search, reserve, inspect, and cancel Korea SRT tickets with SRTrain including sold-out retry plans.

Is srt-booking safe to install?

Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.