diff options
| author | sigoden <sigoden@gmail.com> | 2024-05-16 08:37:58 +0000 |
|---|---|---|
| committer | sigoden <sigoden@gmail.com> | 2024-05-16 08:37:58 +0000 |
| commit | 7a310908603e9ddf923b154447b3a953bea860e9 (patch) | |
| tree | 3b3b7b5dcdea08feb4e012d1472ff2cbbf5d306e /bin/search_duckduckgo | |
| parent | 4d0a8232570563e5f40da61cae3ae64e63aed7b5 (diff) | |
| download | llm-functions-docker-7a310908603e9ddf923b154447b3a953bea860e9.tar.gz | |
refactor: rename duckduckgo search
Diffstat (limited to 'bin/search_duckduckgo')
| -rwxr-xr-x | bin/search_duckduckgo | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/bin/search_duckduckgo b/bin/search_duckduckgo new file mode 100755 index 0000000..49f7028 --- /dev/null +++ b/bin/search_duckduckgo @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -e + +# @describe Takes in a query string and returns search result from DuckDuckGo. +# Use it to answer user questions that require dates, facts, real-time information, or news. +# This ensures accurate and up-to-date answers. +# +# @meta require-tools ddgr +# @env DDG_MAX_RESULTS=5 The max results to return. +# @option --query! The query to search for. + +main() { + ddgr -n $DDG_MAX_RESULTS --json "$argc_query" | \ + jq -r '. as $input | +reduce range(0; length) as $i ([]; . + [ $input[$i] | .index = $i ]) | +.[] | "### \(.index+1). \u001b]8;;\(.url)\u001b\\\(.title)\u001b]8;;\u001b\\\n\(.abstract)\n" +' +} + +eval "$(argc --argc-eval "$0" "$@")" |
