Skip to content

b1ek/hey

Repository files navigation

hey!

hey is a command line tool to contact DuckDuckGo Chat API from your terminal. based on this article

demo:

a gif demostrating a prompt about a bedtime story

disclaimer

to clarify, as of may 17 2024, using a third party client does not violate the ToS.

by using this client, you acknowledge that you will be liable for any ToS violations as per GPLv3

this project is not intended for API scraping purposes, and actually has a soft protection against it.

installation

if you run linux or macos,

git clone https://git.blek.codes/blek/hey.git
cd hey
cargo b -r
sudo cp target/release/hey /usr/bin/hey,

if you are on windows, download the binary file or compile it yourself if you have the knowledge

via a package manager

arch (AUR) - paru -S hey-duck

download the binary file

prebuilt binaries are available on the releases page for macOS, Linux and Windows

development version

look around on github actions, select the latest one, scroll all the way down and then download an artifact for your platform

note for packagers

to avoid name conflicts, packages should be named hey-duck or its form in a different naming convention.
please submit an issue or a PR if you have packaged this to a distro, or email one of the maintainers.

configuration & cache

there is a config file in ~/.config/hey/conf.toml and a cache file in ~/.cache/hey/cache.json

you can set their paths and filenames via HEY_CONFIG_PATH, HEY_CONFIG_FILENAME and HEY_CACHE_PATH, HEY_CACHE_FILENAME.

config file reference

model = "Claude" # or "GPT4OMini"
tos = false # whether if you agree to ddg chat tos

cache file reference

cache file stores the last VQD used. it is (probably) there so that the ai model would remember your history. read more about duckduckgo chat api

if you want to reset the VQD, just delete the file.