Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    dvdsgl

    flight

    dvdsgl/flight
    Productivity
    1,375
    1 installs

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Flight canvas for comparing flights and selecting seats. Use when users need to browse flight options and book seats.

    SKILL.md

    Flight Canvas

    Cyberpunk-themed flight comparison and seat selection interface.

    Example Prompts

    Try asking Claude:

    • "Find flights from San Francisco to Denver on January 15th"
    • "Book me a window seat on the cheapest nonstop to NYC"
    • "Compare morning flights from LAX to Seattle next Monday"
    • "I need a business class seat to Chicago with extra legroom"
    • "Show me United flights to Boston under $300"

    Scenarios

    booking (default)

    Interactive flight comparison and seat selection.

    • Shows flight options with airline, times, duration, and price
    • Interactive seat map for seat selection
    • Keyboard navigation between flights and seats
    • Returns selected flight and seat via IPC
    bun run src/cli.ts spawn flight --scenario booking --config '{
      "title": "// FLIGHT_BOOKING_TERMINAL //",
      "flights": [
        {
          "id": "ua123",
          "airline": "United Airlines",
          "flightNumber": "UA 123",
          "origin": {
            "code": "SFO",
            "name": "San Francisco International",
            "city": "San Francisco",
            "timezone": "PST"
          },
          "destination": {
            "code": "DEN",
            "name": "Denver International",
            "city": "Denver",
            "timezone": "MST"
          },
          "departureTime": "2026-01-08T12:55:00-08:00",
          "arrivalTime": "2026-01-08T16:37:00-07:00",
          "duration": 162,
          "price": 34500,
          "currency": "USD",
          "cabinClass": "economy",
          "aircraft": "Boeing 737-800",
          "stops": 0,
          "seatmap": {
            "rows": 30,
            "seatsPerRow": ["A", "B", "C", "D", "E", "F"],
            "aisleAfter": ["C"],
            "unavailable": ["1A", "1B", "1C", "1D", "1E", "1F"],
            "premium": ["2A", "2B", "2C", "2D", "2E", "2F"],
            "occupied": ["3A", "3C", "4B", "5D"]
          }
        }
      ]
    }'
    

    Configuration

    interface FlightConfig {
      flights: Flight[];
      title?: string;           // Header title
      showSeatmap?: boolean;    // Enable seat selection
      selectedFlightId?: string; // Pre-select a flight
    }
    
    interface Flight {
      id: string;
      airline: string;          // e.g., "United Airlines"
      flightNumber: string;     // e.g., "UA 123"
      origin: Airport;
      destination: Airport;
      departureTime: string;    // ISO datetime
      arrivalTime: string;      // ISO datetime
      duration: number;         // Minutes
      price: number;            // Cents
      currency: string;         // e.g., "USD"
      cabinClass: "economy" | "premium" | "business" | "first";
      aircraft?: string;        // e.g., "Boeing 737-800"
      stops: number;            // 0 = nonstop
      seatmap?: Seatmap;        // Optional seat selection
    }
    
    interface Airport {
      code: string;             // 3-letter code
      name: string;             // Full airport name
      city: string;
      timezone: string;
    }
    
    interface Seatmap {
      rows: number;
      seatsPerRow: string[];    // e.g., ["A", "B", "C", "D", "E", "F"]
      aisleAfter: string[];     // e.g., ["C"] = aisle after seat C
      unavailable: string[];    // Blocked seats
      premium: string[];        // Extra legroom/exit row
      occupied: string[];       // Already booked
    }
    

    Controls

    • ↑/↓: Navigate between flights
    • Tab: Switch focus between flight list and seatmap
    • ←/→/↑/↓ (in seatmap): Move seat cursor
    • Space: Select/deselect seat
    • Enter: Confirm selection
    • Shift+Enter: Confirm immediately (skip countdown)
    • q or Esc: Cancel

    Selection Result

    interface FlightResult {
      selectedFlight: Flight;
      selectedSeat?: string;    // e.g., "12A"
    }
    

    Seat Legend

    • [ ] - Available seat
    • [X] - Occupied seat
    • [/] - Unavailable/blocked
    • [+] - Premium seat (extra legroom)
    • [*] - Currently selected

    API Usage

    import { bookFlight } from "${CLAUDE_PLUGIN_ROOT}/src/api";
    
    const result = await bookFlight({
      flights: [
        {
          id: "ua123",
          airline: "United Airlines",
          flightNumber: "UA 123",
          origin: { code: "SFO", name: "San Francisco", city: "SF", timezone: "PST" },
          destination: { code: "DEN", name: "Denver", city: "Denver", timezone: "MST" },
          departureTime: "2026-01-08T12:55:00-08:00",
          arrivalTime: "2026-01-08T16:37:00-07:00",
          duration: 162,
          price: 34500,
          currency: "USD",
          cabinClass: "economy",
          stops: 0,
          seatmap: { ... }
        }
      ]
    });
    
    if (result.success && result.data) {
      console.log(`Booked: ${result.data.selectedFlight.flightNumber}`);
      console.log(`Seat: ${result.data.selectedSeat}`);
    }
    
    Recommended Servers
    Kiwi.com
    Kiwi.com
    tldraw
    tldraw
    Ferryhopper
    Ferryhopper
    Repository
    dvdsgl/claude-canvas
    Files