AgentSkillsCN

Movies

电影

SKILL.md

Movies Skill

Description

Enables the agent to add movies to the vcaldo/movies catalog repository. When a user mentions a movie they want to track, the agent gathers information and creates a structured markdown entry.

Trigger

Activate this skill when the user:

  • Asks to add a movie to their watchlist/catalog
  • Mentions wanting to watch a specific movie
  • Requests movie information to be saved
  • Uses phrases like "add [movie] to my movies", "save [movie]", "track [movie]"

Workflow

Step 1: Search for Movie Information

Use web_search to find comprehensive movie details:

code
web_search: "[Movie Title] movie [year if known] IMDb Rotten Tomatoes ratings director"

Required information to gather:

FieldDescriptionExample
TitleOriginal movie title"The Shawshank Redemption"
YearRelease year1994
DirectorDirector name(s)"Frank Darabont"
RuntimeDuration in minutes142
SynopsisBrief plot summary (2-3 sentences)"Two imprisoned men bond..."
IMDbRating out of 10"9.3/10"
Rotten TomatoesCritic score percentage"91%"
MetacriticScore out of 100"82/100"
LetterboxdRating out of 5"4.5/5"
GenresComma-separated genres"Drama, Crime"
StreamingWhere to watch"Netflix, Amazon Prime"
PosterHigh-quality image URL"https://..."

Important - Poster URLs:

  • The script automatically validates poster URLs (HTTP 200 check)
  • Use TMDB for reliable posters: https://image.tmdb.org/t/p/w500/[poster_path].jpg
  • Find poster_path on TMDB movie page → Images → Posters
  • Example: https://www.themoviedb.org/movie/408537-el-ciudadano-ilustre/images/posters
  • If URL is invalid (404), the script will clear it automatically

Step 2: Create the Movie Entry

Use the create-and-commit.sh script with environment variables:

bash
cd /path/to/continuo/skills_scripts/movies

MOVIE_TITLE="The Shawshank Redemption" \
MOVIE_YEAR="1994" \
MOVIE_DIRECTOR="Frank Darabont" \
MOVIE_RUNTIME="142" \
MOVIE_SYNOPSIS="Two imprisoned men bond over a number of years, finding solace and eventual redemption through acts of common decency." \
MOVIE_IMDB="9.3/10" \
MOVIE_RT="91%" \
MOVIE_METACRITIC="82/100" \
MOVIE_LETTERBOXD="4.5/5" \
MOVIE_GENRES="Drama, Crime" \
MOVIE_STREAMING="Available on Netflix" \
MOVIE_POSTER="https://example.com/shawshank-poster.jpg" \
./create-and-commit.sh

The script will:

  1. Clone/update the repository to /tmp/movies
  2. Create the markdown file in /to-watch/
  3. Commit and push directly to main branch

Step 3: Confirm to User

Report success with the movie details:

code
✅ Added **The Shawshank Redemption (1994)** to your movies catalog!

📊 Ratings: IMDb 9.3 | RT 91% | Metacritic 82
🎬 Director: Frank Darabont
⏱️ Runtime: 142 min
📺 Streaming: Netflix

🔗 https://github.com/vcaldo/movies/blob/main/to-watch/the-shawshank-redemption-1994.md

Script Reference

create-and-commit.sh (Recommended)

Full automation script that creates, commits, and pushes in one step.

Environment Variables:

VariableRequiredDefaultDescription
MOVIE_TITLE✅ Yes-Movie title
MOVIE_YEARNoTBDRelease year
MOVIE_DIRECTORNoUnknownDirector name(s)
MOVIE_RUNTIMENo0Runtime in minutes
MOVIE_SYNOPSISNoNo synopsis available.Plot summary
MOVIE_IMDBNoN/AIMDb rating
MOVIE_RTNoN/ARotten Tomatoes score
MOVIE_METACRITICNoN/AMetacritic score
MOVIE_LETTERBOXDNoN/ALetterboxd rating
MOVIE_GENRESNoUnknownGenres
MOVIE_STREAMINGNoCheck streaming servicesWhere to watch
MOVIE_POSTERNo(empty)Poster URL
DRY_RUNNo0Set to 1 to preview without committing
FORCENo0Set to 1 to overwrite existing entries

add-movie.sh (Template Only)

Creates a template file without committing. Useful for manual editing.

bash
./add-movie.sh "Movie Name" [year]

Error Handling

Common Issues

ErrorCauseSolution
"MOVIE_TITLE is required"Missing titleAlways set MOVIE_TITLE
"Movie already exists"Duplicate entryUse FORCE=1 to overwrite
"Failed to push"Conflict with remoteScript auto-retries with rebase
"Failed to clone"Network/auth issueCheck internet connection

Validation

The scripts validate:

  • Title is not empty
  • Year is 4 digits (if provided)
  • Runtime is numeric (if provided)

File Format

Movies are saved to /to-watch/filename.md with this structure:

Filename format: movie-title-year.md (lowercase, hyphenated)

Example: the-shawshank-redemption-1994.md

markdown
---
title: "The Shawshank Redemption"
year: 1994
director: "Frank Darabont"
runtime: 142 min
---

# The Shawshank Redemption (1994)

**Director:** Frank Darabont  
**Runtime:** 142 minutes

## Synopsis

Two imprisoned men bond over a number of years...

## Ratings

| Source | Rating |
|--------|--------|
| IMDb | 9.3/10 |
| Rotten Tomatoes | 91% |
| Metacritic | 82/100 |
| Letterboxd | 4.5/5 |

## Details

**Genres:** Drama, Crime  
**Streaming:** Available on Netflix

## Poster

![The Shawshank Redemption Poster](https://example.com/poster.jpg)

---

*Added to catalog: 2024-01-15*

Automatic Index Update

The script automatically updates INDEX.md after adding a movie:

  • Scans all movies in to-watch/ and watched/
  • Sorts alphabetically by title (ignoring articles like "The", "A", "O", "El")
  • Generates tables with links to each movie file
  • Commits index update if changed

No manual action needed - the index stays synchronized.

Best Practices

  1. Always search for current information - Ratings and streaming availability change
  2. Use high-quality poster images - Prefer TMDB, IMDb, or Letterboxd sources
  3. Include all available ratings - Some may not exist for all films (use N/A)
  4. Write concise synopses - 2-3 sentences, no major spoilers
  5. Push directly to main - No pull requests required for this workflow
  6. Use DRY_RUN=1 first - When testing or unsure

Tools Used

ToolPurpose
web_searchFind movie information and ratings
execRun shell scripts and git commands
writeAlternative: create markdown files directly

Example Interactions

User: "Add Inception to my movies"

Agent:

  1. web_search: "Inception 2010 movie IMDb Rotten Tomatoes ratings director Christopher Nolan"
  2. Gather details: Year 2010, Director Nolan, Runtime 148 min, etc.
  3. Run create-and-commit.sh with environment variables
  4. Reply: "✅ Added Inception (2010) to your movies catalog! 🎬"

User: "I want to watch The Godfather, save it"

Agent:

  1. web_search: "The Godfather 1972 movie IMDb Rotten Tomatoes Metacritic ratings"
  2. Gather all details including poster URL
  3. Run script with MOVIE_TITLE="The Godfather" MOVIE_YEAR="1972" ...
  4. Reply with confirmation and link

User: "Add the new Dune movie"

Agent:

  1. web_search: "Dune 2021 Denis Villeneuve movie ratings IMDb"
  2. Clarify if needed: "Do you mean Dune (2021) or Dune: Part Two (2024)?"
  3. Proceed with confirmed movie