Skip to main content
This page shows you:
  • How to install the DeepL CLI from source
  • How to authenticate and run your first translation
  • What commands are available for translation, writing, voice, and more
The DeepL CLI is an open-source (MIT license) command-line tool for interacting with the DeepL API. It covers text translation, document translation, writing enhancement, voice translation, glossary management, and admin operations — all from your terminal.

Installation

The CLI requires Node.js (v18+) and build tools for native compilation:
  • macOS: Xcode Command Line Tools (xcode-select --install)
  • Linux: python3, make, gcc (apt install python3 make gcc g++)
  • Windows: Visual Studio Build Tools

Quick start

1. Set up authentication

Use the interactive setup wizard:
Or set your API key directly:
Or use an environment variable:

2. Translate text

3. Enhance your writing

Key capabilities

CommandDescription
deepl translateTranslate text with support for formality, context, and custom instructions
deepl translate --fileTranslate text files while preserving code blocks and formatting
deepl documentTranslate documents (PDF, DOCX, PPTX, XLSX) with format preservation
deepl writeEnhance grammar and style via DeepL Write
deepl voiceStream real-time speech translation via WebSocket
deepl watchMonitor files and auto-translate on change
deepl glossaryCreate, list, and manage glossaries
deepl adminManage API keys, usage limits, and team access
deepl usageCheck API usage and character quotas
deepl configConfigure defaults (target language, formality, model)

Usage examples

Translate with context and formality

Translate a document

Batch translate a directory

Watch mode for development

Git hooks integration

Automatically translate changed files before each commit:

Developer workflow features

  • Local SQLite cache with LRU eviction avoids redundant API calls
  • Monitor billed characters for budget planning with deepl usage
  • Use --quiet and --no-input flags for CI/CD pipelines
  • Generate shell completions for bash, zsh, fish, and PowerShell

Further reading