explaingit

mnemosyne-systems/orangu

11RustAudience · developerComplexity · 3/5ActiveLicenseSetup · moderate

TLDR

Terminal coding assistant written in Rust that talks to a local OpenAI-compatible server like llama.cpp, with workspace tools, slash commands, and a streaming TUI.

Mindmap

mindmap
  root((orangu))
    Inputs
      Local llama.cpp server
      Workspace directory
      Slash commands
    Outputs
      Streamed chat replies
      File edits
      Shell command runs
    Use Cases
      Offline coding chat
      Git-like workflow in TUI
      Local model dev loop
    Tech Stack
      Rust
      cargo
      llama.cpp

Things people build with this

USE CASE 1

Run a coding chat assistant fully offline against a local llama.cpp model

USE CASE 2

Use slash commands like /commit and /diff to do git work without leaving the chat

USE CASE 3

Point orangu at a project tree and let it read, edit, and run shell commands

USE CASE 4

Try a Rust-built TUI client with any OpenAI-compatible server endpoint

Tech stack

Rustcargollama.cpp

Getting it running

Difficulty · moderate Time to first run · 1h+

Need to clone, cargo build, install llama.cpp, and download a model before orangu can do anything.

GPL v3 means you can use and modify it, but if you distribute a changed version you must share the source under the same license.

In plain English

orangu is a coding assistant that lives in your terminal and talks to a language model running on your own machine. It is built in Rust and is designed to work with OpenAI-compatible servers, with special attention paid to llama.cpp, which is a popular project for running open-weight models locally. The name is a nod to the orangutan, described in the README as the smartest ape. Once llama.cpp and a model have been downloaded, orangu does not need an internet connection. The program is workspace-aware, meaning it has tools for reading files, editing them, listing them, fetching content, and running shell commands inside a project directory you choose. By default it works on the current directory, but you can point it at another tree with a --workspace flag. The terminal interface has a persistent header showing the workspace, server, and model status, with a streaming footer that displays tokens per second when the model is producing output. You can scroll through history, use Tab completion, queue commands while a response is still arriving, and cancel a request with a double Escape. A long list of slash commands is provided for git-like and file operations, including /commit, /push, /pull, /rebase, /merge, /checkout, /squash, /diff, /log, /show_file, and /open_file. Natural-language aliases like commit "my message", push, or open README.md are also recognised. Installation involves cloning the repo and building with cargo. A sample configuration file is shipped in doc/etc/orangu.conf. The project has been tested on Fedora 44 and is released under the GPL v3.

Copy-paste prompts

Prompt 1
Walk me through building orangu from source with cargo on Fedora
Prompt 2
Show me how to configure orangu in doc/etc/orangu.conf to point at a llama.cpp server
Prompt 3
List orangu slash commands grouped by git, file, and shell categories with one-line summaries
Prompt 4
Compare orangu to aider for a fully-offline coding workflow with a local model
Prompt 5
Suggest a model that runs well in llama.cpp for use with orangu on a 16GB laptop
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.