mint

module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 14, 2026 License: Apache-2.0

README ยถ

English | ็น้ซ”ไธญๆ–‡

๐ŸŒฟ Mint

Minimalist AI Translation CLI โ€” Simple. Fast. Intuitive.

GitHub Release PyPI npm

Mint is a single-binary, LLM-powered translation CLI. Set two environment variables and translate anything from the command line โ€” files, piped output, or inline text. Built-in language detection, grammar correction, streaming output, and multi-language rotation.

export MINT_PROVIDER=google-genai
export MINT_API_KEY=your_key

mint -t ja "Good morning"         # ใŠใฏใ‚ˆใ†ใ”ใ–ใ„ใพใ™
echo "ๆ—ฉๅฎ‰" | mint -t en          # Good morning
cat document.txt | mint -t fr     # translate a whole file

โœจ Why Mint?

  • Zero-config โ€” Single binary; API keys via env vars, no config file pollution
  • Multi-provider โ€” Google Gemini, OpenAI, Anthropic, or local Ollama / LM Studio
  • Smart detection โ€” Auto-detects language on every call; language-neutral content (numbers, symbols) passes through unchanged
  • Smart correction โ€” Same-language input? Auto-corrects grammar & spelling instead of translating
  • Streaming โ€” Output streams in real-time, no waiting for long translations
  • Composable โ€” Pipe-friendly stdin/stdout; pairs seamlessly with grep, sed, xargs, and friends

๐Ÿ“‹ Installation

Homebrew (macOS / Linux)
brew install min0625/tap/mint-ai
pipx
pipx install mint-ai
npm
npm install -g mint-ai
Automated install

macOS / Linux

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/min0625/mint/main/script/install.sh)"

Auto-detects OS and architecture (Linux/macOS, x86_64/arm64), installs to ~/.local/bin. Override with MINT_INSTALL_DIR or pin a version with MINT_VERSION=v1.0.0.

Windows (PowerShell)

irm https://raw.githubusercontent.com/min0625/mint/main/script/install.ps1 | iex

Auto-detects architecture (x86_64/arm64) and installs to $HOME\.local\bin. Override with $env:MINT_INSTALL_DIR or pin a version with $env:MINT_VERSION = 'v1.0.0'.

go install
go install github.com/min0625/mint/cmd/mint@latest

Requires Go 1.26+. Binary lands in $GOPATH/bin (usually ~/go/bin).

Manual download

Pre-built binaries are available at GitHub Releases

mint --version

๐Ÿš€ Quick Start

1. Set your provider
# Google Gemini (free tier available โ€” https://aistudio.google.com/apikey)
export MINT_PROVIDER=google-genai
export MINT_API_KEY=your_gemini_api_key

# OpenAI
export MINT_PROVIDER=openai
export MINT_API_KEY=sk-...

# Anthropic
export MINT_PROVIDER=anthropic
export MINT_API_KEY=sk-ant-...

# Ollama (no API key needed)
export MINT_PROVIDER=openai
export MINT_BASE_URL=http://localhost:11434
export MINT_MODEL_NAME=qwen2.5:7b  # use any model loaded in Ollama

# LM Studio (no API key needed)
export MINT_PROVIDER=openai
export MINT_BASE_URL=http://localhost:1234
export MINT_MODEL_NAME=lmstudio-community/Qwen2.5-7B-Instruct-GGUF  # use any model loaded in LM Studio
2. Translate
mint --target ja "Good morning"
mint -t zh-TW "Good morning"

echo "The quick brown fox" | mint -t fr
cat document.txt | mint -t zh-TW

Use --verbose / -v to print diagnostic info (detected language, provider, model) to stderr:

mint -t ja -v "Good morning"
# [mint] provider=google-genai model=gemini-3.1-flash-lite detected=en target=ja
# ใŠใฏใ‚ˆใ†ใ”ใ–ใ„ใพใ™
3. Smart language detection

Translation with auto-detection:

export MINT_TARGET_LANG=en

mint "ๆ—ฉๅฎ‰"   # Detects Chinese โ†’ Good morning

Grammar & spelling correction โ€” when input language matches the target, Mint corrects instead of translates:

export MINT_TARGET_LANG=en

mint "Good mooorning"          # Detects English โ†’ Good morning
mint "She don't know nothing"  # Detects English โ†’ She doesn't know anything
mint "i luv coding"            # Detects English โ†’ I love coding

Language rotation โ€” translates to the next language in the list, wrapping around:

# Two languages
export MINT_TARGET_LANG=en,zh-TW
mint "Hello"   # en โ†’ zh-TW: ไฝ ๅฅฝ
mint "ไฝ ๅฅฝ"    # zh-TW โ†’ en: Hello

# Three languages
export MINT_TARGET_LANG=en,zh-TW,ja
mint "Hello"       # en โ†’ zh-TW: ไฝ ๅฅฝ
mint "ไฝ ๅฅฝ"        # zh-TW โ†’ ja: ใ“ใ‚“ใซใกใฏ
mint "ใ“ใ‚“ใซใกใฏ"   # ja โ†’ en: Hello

๐Ÿ”‘ Environment Variables

Variable Description Default
MINT_PROVIDER google-genai | openai | anthropic โ€” (required)
MINT_API_KEY API key; required when using the default endpoint; optional when MINT_BASE_URL is set (proxy handles auth) โ€”
MINT_BASE_URL Custom API base URL (domain only; each provider appends its own path); use with openai to target Ollama (http://localhost:11434), LM Studio (http://localhost:1234), or any other OpenAI-compatible endpoint Provider default
MINT_MODEL_NAME Model to use gemini-3.1-flash-lite / gpt-4o-mini / claude-haiku-4-5
MINT_TARGET_LANG Target language(s), e.g. en or en,zh-TW,ja System locale

๐Ÿ—บ Roadmap

  • Multi-LLM provider support (Google Gemini, OpenAI, Anthropic, local via Ollama / LM Studio)
  • Smart language detection and multi-language rotation via MINT_TARGET_LANG
  • Explicit target language via --target / -t flag
  • Streaming output
  • GoReleaser multi-platform binary release (Linux / macOS / Windows)
  • Batch translation mode
  • Glossary / custom dictionary support
  • Output format options (plain text, JSON, Markdown)
  • Caching for repeated translations

๐Ÿ“„ License

Apache License 2.0 โ€” see LICENSE for details.

Directories ยถ

Path Synopsis
cmd
mint command
internal
llm
Package llm defines the Completer interface for LLM backends.
Package llm defines the Completer interface for LLM backends.
provider
Package provider manages LLM provider configuration and initialization.
Package provider manages LLM provider configuration and initialization.
provider/anthropic
Package anthropic provides Anthropic Claude LLM client for text translation.
Package anthropic provides Anthropic Claude LLM client for text translation.
provider/googlegenai
Package googlegenai provides Google Gemini LLM client for text translation.
Package googlegenai provides Google Gemini LLM client for text translation.
provider/openai
Package openai provides OpenAI GPT LLM client for text translation.
Package openai provides OpenAI GPT LLM client for text translation.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL