tenere  by pythops

Rust TUI for LLM interaction

Created 2 years ago
586 stars

Top 55.4% on SourcePulse

GitHubView on GitHub
Project Summary

Tenere provides a terminal-based user interface for interacting with Large Language Models, designed for developers and power users who prefer a keyboard-driven workflow. It offers features like chat history, file saving, Vim-like keybindings, and support for multiple LLM backends, streamlining LLM interaction directly within the terminal.

How It Works

Tenere is built in Rust, leveraging its performance and safety guarantees. It utilizes a TUI (Text User Interface) framework to create an interactive command-line experience. The application supports multiple LLM backends (ChatGPT, llama.cpp, Ollama) by abstracting their API interactions, allowing users to switch between them seamlessly. Configuration is managed via TOML files, enabling customization of LLM endpoints, API keys, and keybindings.

Quick Start & Requirements

  • Installation:
    • Binary releases: Download from the releases page.
    • crates.io: cargo install tenere
    • Nix: nix-env -iA nixpkgs.tenere or via configuration.nix.
    • Homebrew: brew install tenere
    • Build from source: Requires Rust and Cargo; run cargo build --release.
  • Configuration: TOML file located at ~/.config/tenere/config.toml (or platform-specific defaults). Custom path can be specified with -c.
  • Backend Requirements:
    • ChatGPT: Requires OPENAI_API_KEY environment variable or configuration.
    • llama.cpp: Requires a running llama.cpp server with a specified URL.
    • Ollama: Requires a running Ollama server with a specified URL and model name.

Highlighted Details

  • Vim keybinding support for most common operations.
  • Syntax highlighting for chat history and prompts.
  • Automatic loading of the last saved chat.
  • Cross-platform compatibility including Linux, macOS, Windows, and Android (via nix-on-droid).

Maintenance & Community

The project is maintained by pythops. Community channels are not explicitly mentioned in the README.

Licensing & Compatibility

  • License: GNU General Public License v3.0 or later (GPL-3.0-or-later).
  • Compatibility: As a GPL-licensed project, linking with closed-source applications may have implications due to its copyleft nature.

Limitations & Caveats

Copying text to/from the clipboard is limited to the prompt input. The README does not detail performance benchmarks or specific resource requirements beyond the need for Rust for source builds.

Health Check
Last Commit

2 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
2
Issues (30d)
1
Star History
18 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Ishaan Jaffer Ishaan Jaffer(Cofounder of LiteLLM), and
4 more.

chathub by chathub-dev

0.1%
10k
All-in-one chatbot client
Created 2 years ago
Updated 6 months ago
Feedback? Help us improve.