# How Skill Installation for Claude-Video Differs Across Various AI Agent Platforms

> Discover how Claude-Video skill installation varies across AI agent platforms. Learn about platform-specific folder copying while the core SKILL.md contract stays the same.

- Repository: [bradautomates/claude-video](https://github.com/bradautomates/claude-video)
- Tags: deep-dive
- Published: 2026-07-10

---

**Claude-Video installs the `/watch` skill as a self-contained folder, with platform-specific differences limited only to how that folder is copied into the host's skill directory while the underlying [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) contract and runtime scripts remain identical.**

The `bradautomates/claude-video` repository distributes the video analysis capability as a portable skill package. While the runtime behavior stays consistent across Claude Code, Codex, Cursor, and other AI-agent platforms, the installation mechanism varies by host environment. Understanding these differences ensures you deploy the skill correctly whether you are using Anthropic's native tooling, third-party agent CLIs, or the web interface.

## Claude Code Installation via Marketplace

Claude Code provides the most streamlined installation path through its built-in marketplace commands.

The platform-specific manifest at [`.claude-plugin/plugin.json`](https://github.com/bradautomates/claude-video/blob/main/.claude-plugin/plugin.json) registers the skill with Claude Code's plugin system. When you execute the marketplace commands, Claude Code automatically handles the directory placement and environment configuration.

Install the skill using the native plugin interface:

```bash
/plugin marketplace add bradautomates/claude-video
/plugin install watch@claude-video

```

This command sequence copies the entire `skills/watch/` folder to `~/.claude/plugins/cache/…/skills/watch`. Claude Code reads the [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) contract, sets `SKILL_DIR` to the folder's absolute path, and configures the script runner to invoke [`skills/watch/scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/watch.py).

## Codex, Cursor, and Agent-Skills CLI Installation

For Codex, Cursor, GitHub Copilot, Gemini CLI, and over 50 other Agent-Skills-compatible hosts, use the universal `npx skills` CLI tool.

The repository includes [`.codex-plugin/plugin.json`](https://github.com/bradautomates/claude-video/blob/main/.codex-plugin/plugin.json) and [`.agents/plugins/marketplace.json`](https://github.com/bradautomates/claude-video/blob/main/.agents/plugins/marketplace.json) to support these platforms. The CLI discovers the skill metadata and handles directory placement according to your scope preference.

Install globally for user-wide access:

```bash
npx skills add bradautomates/claude-video -g

```

Install locally for project-specific usage:

```bash
npx skills add bradautomates/claude-video

```

The `-g` flag determines whether the CLI copies or symlinks the `skills/watch/` folder into `~/.codex/skills/` (global) or into a local project directory. Regardless of location, the copied [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) still references its sibling `scripts/` directory via the `SKILL_DIR` environment variable, ensuring identical runtime behavior to Claude Code installations.

## Claude.ai Web Interface Installation

The Claude.ai web UI requires manual upload of a pre-built bundle rather than command-line installation.

This method packages the same `skills/watch/` directory structure into a single distributable file. The web interface handles unpacking and temporary directory management automatically.

Download the latest release bundle:

```bash
curl -L -o watch.skill \
https://github.com/bradautomates/claude-video/releases/latest/download/watch.skill

```

Then navigate to **Settings → Capabilities → Skills → +** in the Claude.ai interface and select the `watch.skill` file. Once uploaded, the platform treats it like any other installed skill, with `SKILL_DIR` resolving to the temporary unpack location where the bundle was extracted.

## Manual Development Installation

For debugging or extending the skill, clone the repository and create a symlink to the skill directory.

This approach keeps a live copy of the source code, ensuring any modifications to [`skills/watch/scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/watch.py) or [`skills/watch/scripts/setup.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/setup.py) reflect immediately in the host environment without reinstallation.

Clone the repository and link to your host's skill path:

```bash
git clone https://github.com/bradautomates/claude-video.git
ln -s "$(pwd)/claude-video/skills/watch" ~/.claude/skills/watch

```

Adjust the target path (`~/.claude/skills/`, `~/.codex/skills/`, etc.) according to your specific AI-agent platform. The symlink points directly to the repository's `watch` folder, allowing you to edit the canonical skill contract at [`skills/watch/SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/SKILL.md) or the entry point at [`skills/watch/scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/watch.py) while the host references the updated files.

## Why Installation Methods Differ

Despite varying installation commands, every platform ultimately executes the same Python entry point.

The key design principle ensuring portability is the [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) contract's avoidance of host-specific environment variables. Instead of using platform-specific variables like `CLAUDE_SKILL_DIR`, the contract forces every installer to set `SKILL_DIR` to the absolute path of the folder containing the skill. This guarantees that [`scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/watch.py) and [`scripts/setup.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/setup.py) function identically across Claude Code, Codex, Cursor, and Gemini CLI.

Global versus local installations affect only storage location, not runtime behavior. Global installs place the skill under user-wide directories (`~/.codex/skills/`, `~/.cursor/skills/`), while local installs maintain per-project versioning within the current working directory.

## Summary

- **Claude Code** uses `/plugin marketplace add` and `/plugin install` commands to copy `skills/watch/` into the plugin cache.
- **Codex/Cursor/Agent-Skills hosts** use `npx skills add` with optional `-g` flag for global or project-local installation.
- **Claude.ai web UI** requires downloading the `watch.skill` bundle and uploading through Settings → Capabilities → Skills.
- **Manual development** relies on symlinking the `skills/watch/` directory for live editing of [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) and scripts.
- All platforms execute the same [`scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/watch.py) entry point because `SKILL_DIR` always resolves to the skill folder's absolute path.

## Frequently Asked Questions

### Can I use the same skill files across Claude Code and Codex without modification?

Yes. The [`skills/watch/SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/SKILL.md) contract and the `scripts/` directory remain identical across all platforms. The repository structure at `bradautomates/claude-video` ensures that `SKILL_DIR` resolves correctly whether the skill is installed via marketplace commands, `npx skills`, or manual upload. The platform-specific manifests ([`.claude-plugin/plugin.json`](https://github.com/bradautomates/claude-video/blob/main/.claude-plugin/plugin.json) and [`.codex-plugin/plugin.json`](https://github.com/bradautomates/claude-video/blob/main/.codex-plugin/plugin.json)) handle host integration without modifying the underlying skill code.

### What is the difference between global and local installation for Codex and Cursor?

Global installation (`npx skills add -g`) places the `skills/watch/` folder in a user-wide directory such as `~/.codex/skills/` or `~/.cursor/skills/`, making the skill available across all projects. Local installation omits the `-g` flag and copies the skill into the current project's directory, enabling per-project versioning and isolation. Both methods preserve the same runtime behavior and `SKILL_DIR` resolution.

### How does the Claude.ai web UI handle the skill scripts differently than CLI installations?

The web UI does not handle scripts differently at runtime. When you upload the `watch.skill` bundle, the platform unpacks it to a temporary location and sets `SKILL_DIR` to that path. The [`scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/watch.py) entry point executes exactly as it would in Claude Code or Codex, accessing the same [`SKILL.md`](https://github.com/bradautomates/claude-video/blob/main/SKILL.md) contract and sibling `scripts/` directory. The only difference is the initial delivery mechanism—upload versus command-line copy.

### Which installation method should I choose for development and debugging?

Use the manual symlink method. Clone `bradautomates/claude-video` and create a symbolic link from your host's skill directory to the repository's `skills/watch/` folder. This allows you to modify [`scripts/setup.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/setup.py) or [`scripts/watch.py`](https://github.com/bradautomates/claude-video/blob/main/scripts/watch.py) and test changes immediately without reinstalling. The live connection between your development repository and the host's skill path streamlines iteration on the skill's pre-flight checks and video processing logic.