| Crates.io | jutella |
| lib.rs | jutella |
| version | 0.6.0 |
| created_at | 2024-09-19 08:19:46.208616+00 |
| updated_at | 2025-09-09 08:29:47.046809+00 |
| description | Chatbot API client library and CLI interface. |
| homepage | |
| repository | https://github.com/dmitry-markin/jutella |
| max_upload_size | |
| id | 1380052 |
| size | 196,589 |
Chatbot API client library and CLI interface. Supports OpenAI chat completions API, including OpenAI, Azure, and OpenRouter flavors.
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 be target/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.