К основному содержанию
скилл CX Codex

videos-search — скилл для Claude Code: что делает и как установить

Ищет видео через Brave Search API с метаданными о длительности, просмотрах и авторах. Пригодится для мониторинга свежих роликов и сбора обучающих материалов.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add brave/brave-search-skills --skill videos-search -a claude-code
Открыть на GitHub

Что делает videos-search

Скилл отправляет поисковые запросы к эндпоинту видеопоиска Brave Search и возвращает структурированный список роликов. В ответе приходят прямые ссылки, названия, превью, имя автора, платформа публикации, продолжительность и число просмотров. Запрос можно уточнять операторами поиска вроде site:youtube.com или исключением нежелательных слов.

Внутри поддерживаются фильтры периода публикации, безопасный поиск SafeSearch и пагинация с параметром offset. Для работы скилла обязателен ключ BRAVE_SEARCH_API_KEY и тарифный план Search. Без действующего ключа запросы завершатся с ошибкой авторизации в заголовке X-Subscription-Token.

Какие задачи решает

  • находить видеоматериалы и уроки по точным поисковым фразам
  • фильтровать ролики по дате публикации и уровню фильтрации контента
  • ограничивать выдачу конкретными видеохостингами через поисковые операторы
  • получать длительность, число просмотров и данные автора вместе с ссылкой

Примеры запросов агенту

  • Найди свежие обучающие видео по Python за последнюю неделю.
  • Поищи ролики про машинное обучение на сайте YouTube с фильтром безопасного поиска.
  • Выполни поиск видео по теме системного программирования и покажи авторов с длительностью.

Как установить videos-search

1Через Skills CLI (Vercel)

npx skills add brave/brave-search-skills --skill videos-search -a claude-code

2Вручную: положить файлы

~/.claude/skills/videos-search/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/videos-search/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о videos-search

Как установить videos-search в Claude Code?

Выполните команду npx skills add brave/brave-search-skills --skill videos-search -a claude-code в терминале.

Что делает скилл videos-search?

Он ищет видеоролики через поисковый индекс Brave Search. Результаты содержат прямые ссылки, обложки, авторов, число просмотров и хронометраж.

Что нужно для работы скилла videos-search?

Требуется API-ключ Brave Search с подпиской на план Search, который передаётся в заголовке X-Subscription-Token.

Исходный текст

SKILL.md · MIT
---
name: videos-search
description: USE FOR video search. Returns videos with title, URL, thumbnail, duration, view count, creator. Supports freshness filters, SafeSearch, pagination.
---

# Videos Search

> **Requires API Key**: Get one at https://api.search.brave.com
>
> **Plan**: Included in the **Search** plan. See https://api-dashboard.search.brave.com/app/subscriptions/subscribe

## Quick Start (cURL)

### Basic Search
```bash
curl -s "https://api.search.brave.com/res/v1/videos/search?q=python+tutorial" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"
```

### With Parameters
```bash
curl -s "https://api.search.brave.com/res/v1/videos/search" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -G \
  --data-urlencode "q=machine learning explained" \
  --data-urlencode "country=US" \
  --data-urlencode "search_lang=en" \
  --data-urlencode "count=20" \
  --data-urlencode "freshness=pm"
```

## Endpoint

```http
GET https://api.search.brave.com/res/v1/videos/search
POST https://api.search.brave.com/res/v1/videos/search
```

**Authentication**: `X-Subscription-Token: <API_KEY>` header

**Note**: Both GET and POST methods are supported. POST is useful for long queries.

## Parameters

| Parameter | Type | Required | Default | Description |
|--|--|--|--|--|
| `q` | string | **Yes** | - | Search query (1-400 chars, max 50 words) |
| `country` | string | No | `US` | Search country (2-letter country code or `ALL`) |
| `search_lang` | string | No | `en` | Language preference (2+ char language code) |
| `ui_lang` | string | No | `en-US` | UI language (e.g., "en-US") |
| `count` | int | No | `20` | Number of results (1-50) |
| `offset` | int | No | `0` | Page offset (0-9) |
| `safesearch` | string | No | `moderate` | Adult content filter (`off`/`moderate`/`strict`) |
| `freshness` | string | No | - | Time filter (`pd`/`pw`/`pm`/`py` or date range) |
| `spellcheck` | bool | No | `true` | Auto-correct query |
| `operators` | bool | No | `true` | Apply search operators |
| `include_fetch_metadata` | bool | No | `false` | Include `fetched_content_timestamp` in results |

### Freshness Values

| Value | Description |
|--|--|
| `pd` | Past day (24 hours) |
| `pw` | Past week (7 days) |
| `pm` | Past month (31 days) |
| `py` | Past year (365 days) |
| `YYYY-MM-DDtoYYYY-MM-DD` | Custom date range |

## Response Format

```json
{
  "type": "videos",
  "query": {
    "original": "python tutorial",
    "spellcheck_off": false
  },
  "extra": {
    "might_be_offensive": false
  },
  "results": [
    {
      "type": "video_result",
      "title": "Python Tutorial for Beginners",
      "url": "https://www.youtube.com/watch?v=rfscVS0vtbw",
      "description": "Learn Python programming from scratch...",
      "age": "February 12, 2025",
      "page_age": "2025-02-12T00:00:00",
      "page_fetched": "2025-02-12T15:00:00Z",
      "thumbnail": {
        "src": "https://imgs.search.brave.com/...",
        "original": "https://i.ytimg.com/vi/rfscVS0vtbw/hqdefault.jpg"
      },
      "video": {
        "duration": "03:45:00",
        "views": 1523000,
        "creator": "freeCodeCamp",
        "publisher": "YouTube",
        "requires_subscription": false,
        "tags": ["python", "programming"],
        "author": {
          "name": "freeCodeCamp.org",
          "url": "https://www.youtube.com/@freecodecamp"
        }
      },
      "meta_url": {
        "scheme": "https",
        "netloc": "youtube.com",
        "hostname": "www.youtube.com",
        "favicon": "https://imgs.search.brave.com/...",
        "path": "\u203a watch"
      }
    }
  ]
}
```

## Response Fields

| Field | Type | Description |
|--|--|--|
| `type` | string | Always `"videos"` |
| `query.original` | string | The original search query |
| `query.altered` | string? | Spellcheck-corrected query (if changed) |
| `query.cleaned` | string? | Cleaned/normalized query |
| `query.spellcheck_off` | bool? | Whether spellcheck was disabled |
| `query.show_strict_warning` | bool? | True if strict safesearch blocked adult results |
| `query.search_operators` | object? | Applied search operators (`applied`, `cleaned_query`, `sites`) |
| `extra.might_be_offensive` | bool | Whether results may contain offensive content |
| `results[].type` | string | Always `"video_result"` |
| `results[].url` | string | Source URL of the video |
| `results[].title` | string | Video title |
| `results[].description` | string? | Video description |
| `results[].age` | string? | Human-readable age (e.g. "6 months ago") or absolute date (e.g. "February 12, 2025") |
| `results[].page_age` | string? | Page age from source (ISO datetime) |
| `results[].page_fetched` | string? | ISO datetime when page was last fetched (e.g. `2025-02-12T15:00:00Z`) |
| `results[].fetched_content_timestamp` | int? | Fetch timestamp (only with `include_fetch_metadata=true`) |
| `results[].video.duration` | string? | Time string (variable format) |
| `results[].video.views` | int? | View count as integer |
| `results[].video.creator` | string? | Channel/creator name |
| `results[].video.publisher` | string? | Platform (YouTube, Vimeo, etc.) |
| `results[].video.requires_subscription` | bool? | Whether video requires a subscription |
| `results[].video.tags` | list[str]? | Tags relevant to the video |
| `results[].video.author` | object? | Author profile |
| `results[].video.author.name` | string | Author name |
| `results[].video.author.url` | string | Author profile URL |
| `results[].video.author.long_name` | string? | Extended author name |
| `results[].video.author.img` | string? | Author profile image URL |
| `results[].thumbnail.src` | string | Served thumbnail URL |
| `results[].thumbnail.original` | string? | Original thumbnail URL |
| `results[].meta_url.scheme` | string? | URL protocol scheme |
| `results[].meta_url.netloc` | string? | Network location |
| `results[].meta_url.hostname` | string? | Lowercased domain name |
| `results[].meta_url.favicon` | string? | Favicon URL |
| `results[].meta_url.path` | string? | URL path |

## Search Operators

Use search operators to refine results:
- `site:youtube.com` - Limit to specific site
- `"exact phrase"` - Match exact phrase
- `-exclude` - Exclude term

Set `operators=false` to disable operator parsing.

## Use Cases

- **Video content research**: Find tutorials, explainers, and reviews by topic. Use the `video.duration`, `video.views`, and `video.creator` metadata to filter and rank results programmatically. Prefer `videos-search` over `web-search` when you need a dedicated video index with richer metadata (duration, views, creator, tags) and up to 50 results per request.
- **Fresh video monitoring**: Use `freshness=pd` or `freshness=pw` to track newly published video content on trending topics or specific subjects.
- **Platform-specific search**: Use `site:youtube.com` or `site:vimeo.com` operators to target specific video platforms.
- **Video metadata extraction**: Get view counts, durations, creator info, and tags for analytics, content curation, or recommendation systems.

## Notes

- **Pagination**: Use `offset` (0-9) with `count` for more results
- **Max results**: Up to 50 results per request

© brave · MIT · brave/brave-search-skills

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
exa-search K-Dense-AI Скилл для поиска научных и технических материалов через Exa с извлечением текста из страниц и PDF-файлов. Работает с предварительной фильтрацией по категории публикаций и академическим доменам. CX Codex +1 1 700установок web-search-brave agent-skills Скилл ищет в интернете через Brave Search API: свежесть, страна, язык, дополнительные сниппеты. Нужен ключ BRAVE_API_KEY и Deno. CX Codex +1 312установок tavily-search tavily-ai Ищет данные в сети через утилиту tvly и выдаёт выжимки с оценкой релевантности для нейросети. Пригодится, когда агенту нужны свежие новости или факты без готовой ссылки. CX Codex +1 36 100установок parallel-web-search parallel Скилл гоняет веб-поиск через parallel-cli и сохраняет выдачу в JSON. Пригодится, когда нужны ключевые слова, фильтры по доменам или файл с результатами для следующих вопросов. CX Codex +1 14 400установок tavily-dynamic-search tavily-ai Скилл для поиска в интернете через Tavily с изоляцией контекста. Сохраняет тяжёлые ответы на диск и отбирает факты локально, чтобы не засорять окно модели. CX Codex +1 13 500установок search brightdata Ищет информацию в вебе через Bright Data CLI. Запускает классический сбор поисковой выдачи Google, Bing и Yandex или семантический поиск страниц с учётом интента. CX Codex +1 7 500установок

Из того же набора7

images-search Скилл находит картинки через API поиска Brave с миниатюрами и прямыми ссылками. Пригодится агенту для подбора иллюстраций и фактчекинга визуала. CX Codex +1 1 700установок news-search Ищет свежие статьи через новостной индекс Brave с фильтрацией по датам и правилам Goggles. Помогает следить за событиями за последние 24 часа. CX Codex +1 1 600установок llm-context Извлекает готовый контекст веб-страниц через API Brave Search для заземления ответов ИИ. Пригодится при настройке RAG и автономных агентов. CX Codex +1 1 300установок suggest Скилл для автодополнения поисковых запросов через Brave Search API с исправлением опечаток и быстрым ответом до 100 мс. CX Codex +1 1 100установок local-pois Получает подробные сведения об организациях по их идентификаторам через Brave Search API. Помогает извлечь контакты, рейтинги и часы работы. CX Codex +1 1 100установок local-place-search Скилл ищет заведения, адреса и улицы через Brave Search API и отдаёт координаты, рейтинг, часы работы и телефон. CX Codex +1 395установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой