by len5ky
Every movie on 11 airlines' in-flight entertainment, monthly, with IMDb/TMDB ids, plus an agent skill that picks what to watch.
# Add to your Claude Code skills
git clone https://github.com/len5ky/seatback-cinemaGuides for using ai agents skills like seatback-cinema.
See how seatback-cinema compares with popular alternatives.
seatback-cinema is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by len5ky. Every movie on 11 airlines' in-flight entertainment, monthly, with IMDb/TMDB ids, plus an agent skill that picks what to watch. It has 230 GitHub stars.
seatback-cinema's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/len5ky/seatback-cinema" and add it to your Claude Code skills directory (see the Installation section above).
seatback-cinema is primarily written in TypeScript. It is open-source under len5ky on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh seatback-cinema against similar tools.
No comments yet. Be the first to share your thoughts!
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
Seatback Cinema is a GitHub dataset of the in-flight entertainment (IFE) catalogs of 11 airlines, Emirates ice, United and British Airways among them, with every film matched to IMDb, plus an agent skill that ranks what's on your flight by IMDb and Letterboxd ratings and your own taste. Ask Claude (in the app, or Claude Code), Codex or Cursor "what should I watch on my Emirates flight?" and it answers from the films Emirates is actually showing that month.
Also searched as: seatback-cinema, flightflix, skyflix, planeflix, inflight movie finder, airline movie ranker, mile-high movies, cabin cinema, airline movie list ranked by IMDb.
October 2026, from public/data/index.json. "Films" counts each film once, even where the airline lists it once
per audio track. "IMDb id" is the share matched with high or medium confidence.
| airline | id | films | IMDb id |
|---|---|---|---|
| Emirates (ice) | emirates |
2,055 | 93.1% |
| Cathay Pacific | cathay |
1,551 | 91.6% |
| American Airlines | american |
682 | 95.3% |
| British Airways | ba |
658 | 95.1% |
| United Airlines | united |
508 | 96.3% |
| KLM | klm |
474 | 96.6% |
| Lufthansa | lufthansa |
405 | 97.0% |
| Singapore Airlines | singapore |
384 | 94.0% |
| Qantas | qantas |
257 | 87.2% |
| ANA | ana |
233 | 93.1% |
| Japan Airlines | jal |
124 | 88.7% |
7,331 films in all, 6,862 of them with an IMDb id.
Seatback Cinema is a Claude plugin, installed from this repo in one step on claude.ai (paid plans): Customize,
Plugins, Add, Add marketplace, and enter len5ky/seatback-cinema; then install Seatback Cinema. It's saved to
your account, so the mobile and desktop apps get it too.
The plugin is a skill plus the Seatback Cinema connector. The skill alone is enough: it reads the catalogue and
your taste from https://seatback.len5ky.com/api/. Adding the connector from the plugin's Connectors tab (one
click, no login) is optional; it lets you paste an IMDb or Letterboxd export into the chat and keeps working when
Claude's web fetch is unavailable.
No plugins on your plan? The skill also comes as a zip, https://seatback.len5ky.com/inflight-movie-picker-web.zip: upload it, unopened, at Customize, Skills.
After that, start a chat, on the web or in the mobile app, and say where you're flying. Any of these works:
I'm on Emirates to Dubai on Thursday, about 7 hours. My IMDb ratings are at https://www.imdb.com/user/ur12345678/ratings/. Skip anything I've already seen and pick me three films for the flight, newer ones first.
Flying United to Chicago tomorrow, 9 hours, no idea what's on. Show me what's good and ask me what I've seen.
BA to New York with two kids, 8 and 11. What's on board for them, and one thing for me after they fall asleep?
Is Project Hail Mary on Qantas this month? If not, what's the closest thing?
Claude drops what you've seen and answers with three films and a backup, each with its ratings, a one-line synopsis, why it suits you and an IMDb link. For your taste it asks for a public IMDb profile link first, then a Letterboxd username, then a taste code from last time. With none of those, it lists ten likely picks, twice, and drops the ones you say you've seen.
The taste code. https://seatback.len5ky.com/taste reads your IMDb or Letterboxd export in the browser and gives you a 20-character code; nothing goes through the chat. Paste the sentence it shows ("My Seatback Cinema taste code is ...") and Claude skips everything you've rated. The code holds film ids and your scores, nothing else, for a year. Claude also offers to make one after the first import in a chat.
The IMDb link. Your ratings have to be public (Settings, Privacy on imdb.com). Seatback reads them on its own server, scores and watchlist included, and keeps the import for a day; Letterboxd gives it only your latest 50 diary entries. When a link fails, an IMDb export (CSV, from https://www.imdb.com/list/ratings/export on a computer) or a Letterboxd export (zip) still works, attached to the chat (with the connector) or turned into a code at https://seatback.len5ky.com/taste.
In Claude Code, the same plugin installs with one command and brings the connector with it:
/plugin install seatback-cinema --marketplace len5ky/seatback-cinema
For Codex, Cursor and other agents, or for a Claude Code without network tools, there is a second skill,
skill/inflight-movie-picker: a SKILL.md and a dependency-free script that
downloads one airline-month from the open dataset and prints it as a table (Bun, Node 22.6+ or Deno). Install it
straight from GitHub:
npx skills add len5ky/seatback-cinema # asks which agent to install it for
Or fetch the folder yourself, no clone needed:
curl -fsSL https://github.com/len5ky/seatback-cinema/archive/refs/heads/main.tar.gz \
| tar xz -C ~/.codex/skills --strip-components=2 seatback-cinema-main/skill/inflight-movie-picker # Codex CLI
Start a new session and ask about your flight; the four prompts in the Claude app section above work here too. For Cursor, copy the folder into your project and add a rule that
points at its SKILL.md; skill/README.md has the rule file and the Codex fallback for
versions that don't load skills.
The skill asks for the airline, flight length, who's watching and the mood, then gives three films and a backup on a long-haul flight, one or two under 110 minutes on a short one, and family titles only when kids are watching. Each pick carries its IMDb link. If you have no export to hand it asks for five films you loved and two you hated.
This is the project's own CLI on the October Emirates catalogue, with an IMDb export imported
(bun run cli picks --airline emirates --min-year 2025 --top 3):
Emirates 2026-10: top 3 picks (excluded: 58 low-confidence, 94 unmatched, 254 already watched)
taste: 938 ratings (mean 7.3/10), 938 watched, 103 on watchlist; taste.json as overrides
1. Obsession (2025) Horror, Thriller 109 min IMDb 7.8 (414k) LB 4.1 RT 94% score 9.46
A hopeless romantic's wish for true love spirals into a nightmare in this breakout horror hit.
why: on your watchlist; you rate horror -0.5 (49 films); Curry Barker; English; https://www.imdb.com/title/tt37287335/ (high)
2. Sawt Hind Rajab (2025) Drama 84 min IMDb 8.2 (22k) LB 4.4 RT 100% score 8.77
An award-winning true story drama about a young girl's call for help and the race to reach her.
why: Kaouther Ben Hania; Arabic; https://www.imdb.com/title/tt36943034/ (medium)
3. I Swear (2025) Drama, Comedy 120 min IMDb 8.3 (72k) LB 4.3 RT 98% score 8.65
A BAFTA®-winning biopic of pioneering Tourette syndrome activist John Davidson.
why: Kirk Jones; English; https://www.imdb.com/title/tt31514146/ (high)
The skills present picks in the same card shape. In the Claude app the ratings come from the connector. The
coding-agent skill has no scraped ratings, so its numbers come from the model's knowledge of the film and, when
TMDB_API_KEY is set, from TMDB.
An export beats any interview: films you've rated drop out, your watchlist floats up, and the model sees what you loved and hated.
data/imdb-ratings/ in the folder you start the agent from.--imdb-url or
--letterboxd-url from your own machine. IMDb often refuses scripted requests, and the script then points you
back to the export.IMDb rows join on the IMDb id, so they never mismatch. Letterboxd exports carry no IMDb id, so those join on title and year, which can miss a retitled film.
Everything the skill and the connector do is available as plain GET requests at https://seatback.len5ky.com/api/,
as JSON with open CORS. Picks come back as the same cards the connector returns. Add pretty=1 to indent the output.
curl 'https://seatback.len5ky.com/api/airlines'
curl 'https://seatback.len5ky.com/api/picks?airline=emirates&flight_minutes=420&min_year=2025&limit=3&pretty=1'
curl 'https://seatback.len5ky.com/api/picks?airline=emirates&imdb=https://www.imdb.com/user/ur12345678/ratings/&limit=3'
/api/catalogue takes airline, genre (comma-separated), min_year, max_year, max_runtime, family, q,
limit and offset. /api/picks takes airline, flight_minutes, the same filters, limit, and one of imdb
(a profile link or its ur / p.