Glossary (CLI)
Manage a project's glossary from the Babelize CLI: list, add, update and delete never-translate and always-translate-as terms, plus the CSV format for entries.
Commands
babelize glossary list <projectId>
List all glossary entries for a project.
babelize glossary list <project-uuid>
babelize glossary list <project-uuid> --jsonbabelize glossary add <projectId> <term> [locale:translation...]
Add a new glossary entry. A never-translate term needs no translations; an
always-translate-as term needs at least one locale:translation pair.
babelize glossary add <project-uuid> "Babelize"
babelize glossary add <project-uuid> "workspace" "es:espacio de trabajo" "fr:espace de travail"| Argument / Flag | Description |
|---|---|
<term> | Source term (required) |
[locale:translation...] | One pair per argument, e.g. es:marca fr:marque (or comma-separated in one argument: es:marca,fr:marque). A comma inside a translation is kept. Locale codes are stored in standard form (pt_br → pt-BR). |
-t, --type | never_translate or always_translate_as. Default: always_translate_as when translations are given, otherwise never_translate. |
babelize glossary update <projectId> <entryId>
Update an existing glossary entry.
babelize glossary update <project-uuid> <entry-uuid> --term "nouveau terme"
babelize glossary update <project-uuid> <entry-uuid> --translations '{"es":"traducción"}'
babelize glossary update <project-uuid> <entry-uuid> --type never_translate| Flag | Description |
|---|---|
-t, --term | New term |
--type | never_translate or always_translate_as |
--translations | Translations as a JSON object string ({"es":"..."}) |
babelize glossary delete <projectId> <entryId>
Delete a glossary entry.
babelize glossary delete <project-uuid> <entry-uuid>babelize glossary import <projectId> <file>
Import glossary entries from a CSV file. The file path is a positional
argument (there is no --file flag).
babelize glossary import <project-uuid> ./glossary.csv
babelize glossary import <project-uuid> ./glossary.csv --skip-existingTerms that already exist are updated; --skip-existing only adds new ones.
The command prints how many entries were added, updated, skipped and
rejected, with the line number and reason for each rejected row.
babelize glossary export <projectId>
Export glossary entries to a CSV file.
babelize glossary export <project-uuid>
babelize glossary export <project-uuid> --output ./backup.csvCSV Format
Columns are term, type, then one column per locale code holding the
translation. This is exactly what glossary export produces, so an exported
file can be imported back unchanged. Cells written as locale:translation
are accepted too; without a term header row they are required.
term,type,es,fr
Babelize,never_translate,,
workspace,always_translate_as,espacio de trabajo,espace de travailImporting updates terms that already exist (matched regardless of letter
case) and adds the rest; --skip-existing (the API's mode: "skip") only adds new terms. See
Glossary for the full rules
and limits.
Last updated: 2026-10-16
Pull Requests
List, raise and update GitHub pull requests with translated locale files from the Babelize CLI, so every translation change lands as a reviewable PR.
API Keys (CLI)
Create, list, update and delete Babelize API keys (bblz_sk_) from the CLI, and use them as BABELIZE_TOKEN for the MCP server, CI pipelines and other external access.