Chatbot API client library and CLI interface. Currently supports OpenAI chat API, including OpenAI and Azure endpoints.
To get started with CLI, put your API key and endpoint into ~/.config/jutella.toml
. See a config example.
Invoking the CLI with jutella -x
makes it copy every response to clipboard on X11.
- Install
cargo
from https://rustup.rs/. - Install the CLI from crates.io with
cargo install jutella
. - Alternatively, clone the repo and build the CLI with
cargo build --release
. The resulting executable will betarget/release/jutella
.
To use the chat API, initialize ChatClient
with OPENAI_API_KEY
and ChatClientConfig
:
let mut chat = ChatClient::new(Auth::Token(api_key), ChatClientConfig::default())?;
Request replies via ChatClient::ask()
:
let answer = chat.ask("What is the highest point on Earth?".to_string()).await?;
println!("{answer}");
ChatClient
keeps the conversation context and uses it with every ask()
to generate the reply.