A cli pipeline wish granting tool that calls out to GPT, inspired by
rg
,jq
, etc. But you know .... magic instead of science. Make a wish!
This is currently using the OpenAI API. I don't have access to GPT-4 API yet, so this is using gpt-3.5-turbo-16k
. Eventually that should be configurable, and even cooler would be to support alternate APIs or local models. Let's see if we can get it working at all first though, k?
Three choices for installation:
- Clone repo and build yourself with
cargo build
- Install from crates.io with
cargo install iwt
- Download the latest binary from github releases
Next, set up your OpenAI API key:
export OPENAI_API_KEY=yourkeyhere
Put that into your ~/.zshrc
or whatnot.
Generally: <some command> | iwt <some wish> | <some other command>
Example: curl https://news.ycombinator.com | iwt turn this into a csv of articles with title, domain name, link, points > out.csv
That should output a csv with a row for each article and a title, domain name, link, and points. Yup. Like magic.
- Data input from STDIN
- Data output to STDOUT
- Instructions as the parameters
- Either explicit or implicit row-based processing. Maybe we should take the first chunk of data and ask the AI if it should be row based or not?
- Use TTY for additional guidance from the operator?
- Break long input into batches within token/context limits
- Warn (again, via TTY) for LARGE input?
- Progress via STDERR
- Select some next in vim and pipe it through
iwt