Agent Browser
quran/quran.com-frontend-next
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
A skill your agent uses FOR video search. An agent skill from brave/brave-search-skills.
$ npx skills add brave/brave-search-skills --skill videos-search -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install brave/brave-search-skills videos-search --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/videos-search .claude/skills/videos-search && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .claude/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/brave/brave-search-skills/tree/main/skills/videos-searchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add brave/brave-search-skills --skill videos-search -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install brave/brave-search-skills videos-search --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/videos-search .agents/skills/videos-search && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .agents/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add brave/brave-search-skills --skill videos-search -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install brave/brave-search-skills videos-search --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/videos-search .cursor/skills/videos-search && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .cursor/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/brave/brave-search-skills.git --path skills/videos-search--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add brave/brave-search-skills --skill videos-search -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install brave/brave-search-skills videos-search --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/videos-search .gemini/skills/videos-search && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .gemini/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install brave/brave-search-skills videos-searchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add brave/brave-search-skills --skill videos-search -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/videos-search .github/skills/videos-search && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .github/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add brave/brave-search-skills --skill videos-search -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install brave/brave-search-skills videos-search --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/videos-search .opencode/skills/videos-search && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "videos-search" agent skill from https://github.com/brave/brave-search-skills/tree/main/skills/videos-search into .opencode/skills/videos-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "videos-search", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
videos-searchA skill your agent uses FOR video search. An agent skill from brave/brave-search-skills.
Videos Search is an agent skill from brave/brave-search-skills. USE FOR video search. Returns videos with title, URL, thumbnail, duration, view count, creator. Supports freshness filters, SafeSearch, pagination.
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Productivity & Automation. The repository describes itself as: Official skills for using Brave Search API with AI coding agents. The licence is MIT.
Read from SKILL.md and the folder at commit 62793e0. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.search.brave.comyoutube.comimgs.search.brave.comi.ytimg.comAlso links to:
api-dashboard.search.brave.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
API_KEYBRAVE_SEARCH_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Videos Search loads about 1.8k tokens when it runs. Until then it costs about 40 tokens; SKILL.md has 523 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from brave/brave-search-skills at commit 62793e0, republished under its MIT licence (© brave). 523 words, ~1,817 tokens.
.claude/skills/videos-search/SKILL.md (or your agent's skills folder).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
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}"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"GET https://api.search.brave.com/res/v1/videos/search
POST https://api.search.brave.com/res/v1/videos/searchAuthentication: X-Subscription-Token: <API_KEY> header
Note: Both GET and POST methods are supported. POST is useful for long queries.
| 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 |
| 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 |
{
"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"
}
}
]
}| 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 |
Use search operators to refine results:
site:youtube.com - Limit to specific site"exact phrase" - Match exact phrase-exclude - Exclude termSet operators=false to disable operator parsing.
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.freshness=pd or freshness=pw to track newly published video content on trending topics or specific subjects.site:youtube.com or site:vimeo.com operators to target specific video platforms.offset (0-9) with count for more results© brave, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/videos-search of brave/brave-search-skills.
Open the folder on GitHubat commit 62793e0
Videos Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Videos Search this skillbrave/brave-search-skills | 183 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Agent Browserquran/quran.com-frontend-next | 1.9k | 40 repos | ~3.3k | Automated safety check: Pass | None | |
| Dependency Watchtelegramdesktop/tdesktop | 33k | 1 repos | ~2.2k | Automated safety check: Pass | GPL-3.0 | |
| Perform Tasktelegramdesktop/tdesktop | 33k | 2 repos | ~3k | Automated safety check: Pass | GPL-3.0 | |
| Brave Searchbadlogic/pi-skills | 2.6k | 5 repos | ~592 | Automated safety check: Pass | MIT | |
| Garden Inboxpaperclipai/paperclip | 100k | — | ~1.1k | Automated safety check: Pass | MIT |
quran/quran.com-frontend-next
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
telegramdesktop/tdesktop
Audit Telegram Desktop dependencies on freshly fetched origin/dev for releases and security fixes, including upstream lag and backport candidates in patched forks.
telegramdesktop/tdesktop
Resolve, start or resume, implement, review, test, and publish exactly one existing ai-tdesktop task by short slug or full dated id, including rare blocked retries and split-required results.
badlogic/pi-skills
Web search and content extraction via Brave Search API. An agent skill from badlogic/pi-skills.
paperclipai/paperclip
Scan a Paperclip user's Mine inbox, classify reversible archive candidates, request checkbox confirmation, and archive only accepted selections.
telegramdesktop/tdesktop
Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.
brave/brave-search-skills
Calls the Brave Search Answers endpoint for AI-grounded, cited answers, either a fast single-search reply or a slower multi-search deep research run.
brave/brave-search-skills
Searches images through the Brave Search API and returns titles, source pages, thumbnails and original image URLs, with a SafeSearch filter and up to 200 results.
brave/brave-search-skills
Documents Brave's LLM Context API, which returns pre-extracted, ranked web page content for grounding agent and RAG answers, with GET and POST calls and Goggles filters.
brave/brave-search-skills
Fetches AI-written text descriptions for local places from the Brave Search API, using place IDs returned by an earlier local search.
brave/brave-search-skills
Looks up businesses, points of interest, addresses and streets through the Brave Search place endpoint, returning contact details, ratings and hours in one call.
brave/brave-search-skills
Looks up full details for local businesses and places, including ratings, hours and contact information, from Brave Search API point-of-interest IDs.
Categories
A skill your agent uses FOR video search. An agent skill from brave/brave-search-skills. Videos Search is an agent skill from brave/brave-search-skills. USE FOR video search.
Videos Search fits situations like: productivity & Automation work in your project.
Run `npx skills add brave/brave-search-skills --skill videos-search -a claude-code`. Or copy the skill folder (skills/videos-search in brave/brave-search-skills) into .claude/skills/videos-search in your project. Claude Code loads it when a task matches its description.
Run `npx skills add brave/brave-search-skills --skill videos-search -a codex`. Or copy the skill folder (skills/videos-search in brave/brave-search-skills) into .agents/skills/videos-search in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add brave/brave-search-skills --skill videos-search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/videos-search, .gemini/skills/videos-search, .github/skills/videos-search and .opencode/skills/videos-search in your project.
Going by SKILL.md and its folder, Videos Search needs the command-line tools its instructions call (curl) and credentials named API_KEY and BRAVE_SEARCH_API_KEY. Our summary lists: Python 3; A credential in BRAVE_SEARCH_API_KEY; A credential in API_KEY.
SKILL.md names 5 domains. In commands or code: api.search.brave.com, youtube.com, imgs.search.brave.com and i.ytimg.com; the agent is likely to contact these when it follows the instructions. As links in the text: api-dashboard.search.brave.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Videos Search is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Videos Search: Agent Browser (quran/quran.com-frontend-next, 1.9k stars), Dependency Watch (telegramdesktop/tdesktop, 33k stars), Perform Task (telegramdesktop/tdesktop, 33k stars) and Brave Search (badlogic/pi-skills, 2.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
brave (a GitHub organization) maintains it in brave/brave-search-skills, which has 183 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 23, 2026.
Source: brave/brave-search-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.