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).
- •Create an account at https://api-dashboard.search.brave.com/register
- •Create a "Free AI" subscription
- •Create an API key for the subscription
- •Add to your shell profile (
~/.profileor~/.zprofilefor zsh):bashexport BRAVE_API_KEY="your-api-key-here"
- •Install dependencies (run once):
bash
cd {baseDir} npm install
Search
bash
{baseDir}/search.js "query" # Basic search (5 results)
{baseDir}/search.js "query" -n 10 # More results (max 20)
{baseDir}/search.js "query" --content # Include page content as markdown
{baseDir}/search.js "query" --freshness pw # Results from last week
{baseDir}/search.js "query" --freshness 2024-01-01to2024-06-30 # Date range
{baseDir}/search.js "query" --country DE # Results from Germany
{baseDir}/search.js "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
{baseDir}/content.js https://example.com/article
Fetches a URL and extracts readable content as markdown.
Output Format
code
--- 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
Copied from badlogic/pi-skills