From movies-for-ai-agents
Search for a specific movie by title, keyword, year, or fuzzy description. Use when the user asks "find that movie…", "what's the name of the movie where…", "search for [title]", "look up [title]", "tell me about [movie]", or wants information about a specific film they already have in mind. Not for open-ended recommendations — for that, use the `recommend` skill.
npx claudepluginhub jcodesmore/jcodesmore-plugins --plugin movies-for-ai-agentsThis skill uses the workspace's default tool permissions.
You are helping the user locate a specific movie. Primary source is TMDB (fuzzy search is better); imdbapi.dev is a fallback for exact-title lookups that need IMDb IDs.
Conducts multi-round deep research on GitHub repos via API and web searches, generating markdown reports with executive summaries, timelines, metrics, and Mermaid diagrams.
Share bugs, ideas, or general feedback.
You are helping the user locate a specific movie. Primary source is TMDB (fuzzy search is better); imdbapi.dev is a fallback for exact-title lookups that need IMDb IDs.
Parse the query. Extract:
yearFrom: 1990, yearTo: 1999 may go to movies_discover).originalLanguage.If the user gave a clear title, call movies_search with { query, year? }. For fuzzy descriptions ("that movie where a guy lives inside a simulation") still try movies_search first — TMDB indexes overviews. If TMDB returns nothing and the user gave an exact title, fall back to movies_imdb_search.
Present the top 3–5 results in a compact form:
**[Title](https://www.imdb.com/title/{imdbId}/)** (Year[, Country]) — IMDb 8.2 — 128 min
[Genre1, Genre2, Genre3] · [Interest1, Interest2]
One-sentence hook.
When imdbId is absent on a search hit, call movies_details({ movieId }) to hydrate it before rendering. If movies_details still returns imdbId: null, fall back to plain **Title** (no link). Show TMDB 7.9 only when IMDb rating is missing after that hydration step. ❌ Never use a TMDB URL as a fallback — plain bold is the only acceptable degraded state.
If a single result is obviously the match, skip the list and go to step 5.
Offer a deeper look. If the user wants more, call movies_details with append: ["credits", "videos"]. The response now includes IMDb signal automatically:
videos.results with type: "Trailer" and site: "YouTube" → https://youtu.be/{key})includeAwards: true or route to movies_imdb_details with include: ["boxOffice","awards"].Offer next actions. "Add to watchlist?" → watchlist_add. "Add to my [name] list?" → list_add({ listName, movieId }). "Log as watched?" → watched_add (with a rating if they volunteered one).
IMDb 8.7 · TMDB 8.4 when the user explicitly asks for the TMDB score; otherwise fall back to TMDB 8.4 only when IMDb data is missing.movies_discover with inferred filters (genre, decade) as a fallback.movies_imdb_details({ imdbId, include: ["parentsGuide"] }).