kapi merge
kapi mergeMaterialize target-language files for a project, or apply bilingual files returned by a translator back onto the project's source locales.
With no -i in a project, merge writes the target-language files from the project block store: a process-only "kapi run" (in a project, no -o) commits its work as targets/<locale> overlays, and merge is the matching sink — it reads each source, applies the stored overlays, and writes the target-language file via the source format's skeleton round-trip.
With -i, merge applies one or more bilingual files returned by a translator back onto the project's source locales, using the skeleton captured by kapi extract. Each input carries the extraction batch id in a file-level <note>, so merge finds the right extraction manifest without guessing from the filename. Mixed target locales in one batch are fine — merge handles each input independently.
Runs in your browser against a small sample file. Edit the command before running, or press Run to execute it as shown.
kapi merge # materialize target-language files from the project store| Flag | Type | Default | Description |
|---|---|---|---|
| --input, -i | stringArray | input XLIFF file, glob, or directory (repeatable) | |
| --no-restore | bool | false | skip restoring redacted originals from the batch vault |
| --no-tm-update | bool | false | skip content-memory write-back |
| --output, -o | string | output directory or template when merging a .kpz workspace | |
| --progress | string | stream progress events to stderr as NDJSON (value: jsonl); events use the flow-run event vocabulary | |
| --project, -p | string | path to a kapi.yaml project recipe or its directory (auto-discovered from cwd if omitted) |
kapi merge -i out/app.en-to-fr.xliff kapi merge -i file1.xliff -i file2.xliff kapi merge -i vendor-return/ --no-tm-update kapi merge work.kpz -o out/ # emit target-language files from a .kpz workspace← Back to the Command Reference