Agent skill
cinema-booking
Browse movies and book tickets at Classic Cinemas Elsternwick. Use when Nathan asks what's showing, wants movie details, or wants to book tickets.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/devops/cinema-booking
SKILL.md
Cinema Booking
Browse movies and book tickets at Classic Cinemas Elsternwick with live pricing and email delivery.
Cinema: Classic Cinemas Elsternwick (Melbourne, Australia) Website: https://www.classiccinemas.com.au
Output Format
Use --format markdown for all CLI commands to get pre-formatted output ready for display.
This reduces token usage by eliminating the need to parse JSON and format it manually.
bun run src/cli.ts movies --format markdown
JSON output (default) is still available for machine parsing if needed.
Variables Used
This skill uses these CLI commands. See variables.md for field mappings.
| Command | Variables | When Loaded |
|---|---|---|
movies |
{MOVIE_TITLE}, {RATING}, {SESSION_TIMES}, {SESSION_ID}, {MOVIE_SLUG} |
Browsing |
movie |
{DESCRIPTION}, {TRAILER_URL}, {DURATION}, {CAST}, {DIRECTOR} |
Movie details |
pricing |
{TICKET_TYPES}, {TICKET_PRICE}, {BOOKING_FEE} |
Booking |
session |
{SCREEN_NUMBER}, {SESSION_DATETIME} |
Booking |
seats |
{SEAT_ROWS}, {AVAILABLE_SEATS}, {TOTAL_SEATS} |
Booking |
send |
{MOVIE_TITLE}, {SEATS}, {TOTAL_AMOUNT}, {SEND_SUCCESS} |
Confirmation |
Workflow
BROWSE → DETAILS (optional) → SELECT TIME → PRICING → TICKETS → SEATS → SEND
When to Use
Browsing triggers:
- "What movies are on?"
- "What's showing at the cinema?"
- "Tell me more about [movie]"
Booking triggers:
- "Book tickets for [movie]"
- "I want to see [movie] at [time]"
- "Get me seats for the 7pm session"
Browsing Flow
See browsing.md for detailed steps.
Quick reference:
- List movies:
bun run src/cli.ts movies --format markdown - Movie details (if asked):
bun run src/cli.ts movie --movie-url "{MOVIE_SLUG}" --format markdown - Output is ready to display directly (no formatting needed)
Booking Flow
See booking.md for detailed steps.
Quick reference:
- Confirm selection: "[Movie] at [Time] - let me get pricing..."
- Get pricing:
bun run src/cli.ts pricing --session-id "{SESSION_ID}" --format markdown - Ask ticket quantities: Use AskUserQuestion with available ticket types
- Show seat map:
bun run src/cli.ts seats --session-id "{SESSION_ID}" --format markdown - Send ticket:
bun run src/cli.ts send --session-id "{SESSION_ID}" --seats "{SEATS}" --tickets "{TICKET_STRING}" --format markdown
State to Track
Throughout the conversation, accumulate:
| Step | Collect |
|---|---|
| Movies listed | {MOVIE_TITLE}, {MOVIE_SLUG}, {SESSION_ID} per movie |
| Time selected | Selected {SESSION_ID}, {MOVIE_TITLE} |
| Pricing fetched | {TICKET_TYPES}, {BOOKING_FEE} |
| Tickets selected | Type + quantity pairs, calculated total |
| Seats selected | {SEATS} string |
References
| File | Content |
|---|---|
| variables.md | CLI JSON → template variable mappings |
| browsing.md | Movie listing workflow |
| booking.md | Ticket booking workflow |
| output-templates.md | Display formats |
| cli-commands.md | Full command reference |
Didn't find tool you were looking for?