# Brave Search

> Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content. Lightweight, no browser required.

- Skill: `sawyerhood/brave-search` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add sawyerhood/brave-search`
- Raw SKILL.md: https://api.skillmd.com/api/skills/sawyerhood/brave-search/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: Sawyer Hood (https://skillmd.com/u/sawyerhood)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/sawyerhood/brave-search

---


# Brave Search

Web search and content extraction using the official Brave Search API. No browser required.

## Setup

Requires a Brave Search API account with a free subscription. A credit card is required to create the free subscription (you won't be charged).

1. Create an account at https://api-dashboard.search.brave.com/register
2. Create a "Free AI" subscription
3. Create an API key for the subscription
4. Configure `BRAVE_API_KEY` in the app Settings → Environment Variables.
   (Fallback for standalone usage: export `BRAVE_API_KEY` in your shell.)
5. Dependencies are installed via the backend workspace package.
   If running this skill standalone, install once from this skill directory:
   ```bash
   npm install
   ```

## Search

```bash
middleman brave-search search "query"                         # Basic search (5 results)
middleman brave-search search "query" -n 10                   # More results (max 20)
middleman brave-search search "query" --content               # Include page content as markdown
middleman brave-search search "query" --freshness pw          # Results from last week
middleman brave-search search "query" --freshness 2024-01-01to2024-06-30  # Date range
middleman brave-search search "query" --country DE            # Results from Germany
middleman brave-search search "query" -n 3 --content          # Combined options
```

### Options

- `-n <num>` - Number of results (default: 5, max: 20)
- `--content` - Fetch and include page content as markdown
- `--country <code>` - Two-letter country code (default: US)
- `--freshness <period>` - Filter by time:
  - `pd` - Past day (24 hours)
  - `pw` - Past week
  - `pm` - Past month
  - `py` - Past year
  - `YYYY-MM-DDtoYYYY-MM-DD` - Custom date range

## Extract Page Content

```bash
middleman brave-search content https://example.com/article
```

Fetches a URL and extracts readable content as markdown.

## Output Format

```
--- Result 1 ---
Title: Page Title
Link: https://example.com/page
Age: 2 days ago
Snippet: Description from search results
Content: (if --content flag used)
  Markdown content extracted from the page...

--- Result 2 ---
...
```

## When to Use

- Searching for documentation or API references
- Looking up facts or current information
- Fetching content from specific URLs
- Any task requiring web search without interactive browsing

