diff options
Diffstat (limited to 'tools/search_brave.sh')
| -rwxr-xr-x | tools/search_brave.sh | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/search_brave.sh b/tools/search_brave.sh new file mode 100755 index 0000000..553bfc7 --- /dev/null +++ b/tools/search_brave.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +set -e + +# @describe Perform a web search using Brave Search API to get up-to-date information or additional context. +# Use this when you need current information or feel a search could provide a better answer. + +# @env BRAVE_API_KEY! The api key +# @env BRAVE_MAX_RESULTS=5 The max results to return. +# @option --query! The query to search for. + +main() { + encoded_query="$(jq -nr --arg q "$argc_query" '$q|@uri')" + url="https://api.search.brave.com/res/v1/web/search?q=$encoded_query&count=$BRAVE_MAX_RESULTS" + curl -fsSL "$url" \ + -H "Accept: application/json" \ + -H "X-Subscription-Token: $BRAVE_API_KEY" | \ + jq '[.web.results[] | {title: .title, url: .url, description: .description}]' +} + +eval "$(argc --argc-eval "$0" "$@")" + |
