flight

Renders an interactive terminal canvas for comparing flights and selecting seats.

2|Updated Mar 21, 2026
One-click install
npx skills add https://github.com/ghoshsam/claude-code-skills --skill flight-ghoshsam
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: flight
Source: https://github.com/ghoshsam/claude-code-skills/tree/main/skills/canvas/flight
Command: npx skills add https://github.com/ghoshsam/claude-code-skills --skill flight-ghoshsam

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Presenting flight options and seat maps in a conversational interface is hard to do with plain text. This Skill renders a cyberpunk-themed interactive canvas where users can compare flights side by side and pick seats visually, returning the structured selection to the agent. ## Core Features & Use Cases - Flight Comparison: Displays airline, flight number, times, duration, stops, cabin class, and price for multiple flights with keyboard navigation. - Interactive Seatmap: Renders a seat grid with available, occupied, blocked, and premium seats, supporting cursor movement and selection. - Structured Result via IPC: Returns the selected flight and seat as a typed FlightResult object for downstream booking logic. - Use Case: A user asks to book a window seat on the cheapest nonstop from SFO to Denver; the agent spawns the flight canvas with matching flights, the user picks a seat, and the agent receives the confirmed selection. ## Quick Start Ask the agent to find flights from San Francisco to Denver on a specific date and let you pick a seat on the interactive canvas.

Frequently Asked Questions about flight

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I show flight options with seat selection in a terminal UI?

Spawn the flight canvas with a FlightConfig JSON containing an array of flights, each with airline, times, price, and an optional seatmap. Users navigate with arrow keys, select seats with Space, and confirm with Enter.

What data format does the flight booking canvas require?

It requires a FlightConfig object with a flights array. Each flight needs id, airline, flightNumber, origin and destination airports, ISO departure and arrival times, duration in minutes, price in cents, currency, cabin class, and stops.

How do I mark seats as occupied or premium in the seatmap?

Define a seatmap object with rows, seatsPerRow, and aisleAfter arrays, then list seat identifiers in the unavailable, premium, and occupied arrays. Premium seats render as [+], occupied as [X], and blocked as [/].

Can I pre-select a flight when launching the canvas?

Yes, set the selectedFlightId field in FlightConfig to the id of the flight you want pre-selected. You can also disable seat selection entirely by setting showSeatmap to false.

What does the flight canvas return after the user confirms?

It returns a FlightResult object containing the selectedFlight object and an optional selectedSeat string such as 12A. The result is delivered via IPC, and pressing q or Esc cancels the interaction.