jutella
Chatbot API client library and CLI interface. Supports OpenAI (including Azure auth flavor) and OpenRouter chat completions API.
Features
- Rolling context window with min/max token limits.
- Image & PDF file attachments.
- Image generation and editing (only with OpenRouter).
Command line interface
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.
Installation
- Install
cargofrom 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.
Library
To use the chat API, initialize ChatClient with OPENAI_API_KEY and ChatClientConfig:
let mut chat = new?;
Request replies via ChatClient::ask():
let answer = chat.ask.await?;
println!;
ChatClient keeps the conversation context and uses it with every ask() to generate the reply.