explaingit

dicedatalore/oolong

Analysis updated 2026-07-25

16GoAudience · developerComplexity · 2/5LicenseSetup · easy

TLDR

A terminal chat app for talking to multiple AI providers (OpenAI, Anthropic, Google, Ollama) from one interface, with both interactive and one-shot modes.

Mindmap

mindmap
  root((repo))
    What it does
      Chat with multiple AI providers
      Switch models mid-conversation
      Interactive and one-shot modes
    Privacy
      Chats stay in memory
      Keys in OS keychain
      Save to disk on demand
    Configuration
      TOML config file
      Custom model entries
      Safe defaults if missing
    Use cases
      Generate commit messages
      Pipe text from CLI tools
      Resume saved transcripts
    Tech stack
      Go
      TOML
      Terminal UI

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Generate a commit message by piping a git diff into Ollong.

USE CASE 2

Chat interactively with different AI models and switch mid-conversation.

USE CASE 3

Pipe text from any command-line tool to an AI for quick processing.

USE CASE 4

Resume a previously saved Markdown transcript with the --resume flag.

What is it built with?

GoTOML

How does it compare?

dicedatalore/oolong1296018244/grok-manager787a68/hubproxy
Stars161616
LanguageGoGoGo
Setup difficultyeasymoderatemoderate
Complexity2/53/53/5
Audiencedeveloperops devopsops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Install via Go, Homebrew, or binary, local providers like Ollama need no API key, while cloud providers require keys stored in your OS keychain.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

Oolong is a terminal-based chat client that lets you talk to several AI providers, including OpenAI, Anthropic, Google, and Ollama, from a single interface. You can switch between models mid-conversation without losing context, attach files and images, or pipe text in from other command-line tools. Chats live in memory only and are saved to disk only when you explicitly ask, which keeps things private by default. The project offers two main ways to work. Running oolong with no arguments opens a full interactive interface where you type, scroll, and manage conversations using keyboard shortcuts. Passing a prompt as an argument or piping input from another command produces a one-shot answer printed to stdout, useful for quick tasks like generating a commit message from a git diff. Both modes share the same model catalog, credentials, and provider settings. Configuration is optional but flexible. A config init command generates a starter TOML file you can edit to set a default model, accent colors, a simplified picker, reduced motion, and a custom system prompt. You can also define your own model entries, specifying provider, pricing rates, reasoning effort, and context window. If the config file is malformed or missing, the app starts with safe defaults and reports the issue in the interface rather than refusing to launch. API keys are stored in the operating system keychain rather than in a plain config file, and provider environment variables are also recognized. Local endpoints like Ollama or LM Studio require no key at all. The doctor command checks your local setup without contacting any provider, and OpenAI requests are sent with storage disabled. Saved transcripts are readable Markdown files that you can resume later with a --resume flag, though attachment contents are not embedded in the transcript itself. The README is thorough, covering installation for macOS, Windows, and Go, along with a full keybinding reference, CLI options, custom endpoint setup, and build instructions. It is written in Go and licensed under MIT.

Copy-paste prompts

Prompt 1
I have Oolong installed. Write a shell command to pipe my git diff into it and generate a commit message using my default model.
Prompt 2
Help me write a custom model entry for my Oolong TOML config for a local Ollama model with a 4096 context window.
Prompt 3
I want to switch from OpenAI to Anthropic mid-conversation in Oolong. Walk me through the keyboard shortcut and what happens to my context.
Prompt 4
Show me how to use the oolong doctor command to verify my API keys and local Ollama setup are working.

Frequently asked questions

What is oolong?

A terminal chat app for talking to multiple AI providers (OpenAI, Anthropic, Google, Ollama) from one interface, with both interactive and one-shot modes.

What language is oolong written in?

Mainly Go. The stack also includes Go, TOML.

What license does oolong use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is oolong to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is oolong for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.