Repository navigation
Translate CLI with Copilot CLI provider - #2
Merged
ivorb merged 4 commits intoNov 4, 2026
Merged
Conversation
…tions in decks.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #1 (base is that branch; retarget to
mainafter #1 merges).What
tools/translate.mjstranslates a deck'sstrings.jsonintostrings.<lang>.json, followingdocs/string-table.md. Built in a separate session, rebased onto the converter branch (the only conflict was README), and extended here.copilotprovider, now the default. Runs the GitHub Copilot CLI non-interactively, so translation uses the models included with a Copilot subscription: no API key, nothing to configure beyond signing in once. Tools, MCP servers and custom instructions are disabled, so the model can only answer; the prompt goes in on stdin.mockprovider stay available. GitHub Models was retired on 2026-07-30, so it is not offered.strings.de.jsonfor the 5-slide sample deck sodeck.html?d=sample-ai-apps&lang=deworks.Checked
node --test: 37 pass (converter tests + 26 translate tests + 2 new provider tests, no network).Not done
Only German was tried live; RTL languages and large decks (about 1,000 strings) are untested live. Batches run sequentially.