Update Translations
Raicuparta/rai-pal
A skill your agent uses when asked to update translations, localize strings, add new languages, fix missing translation keys, or sync language files in this project.
How languages work in an Open Screenshot Generator project: adding store languages, writing translations with setlocalizedtexts, per-language font and size overrides, and exporting a language.
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languages --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .claude/skills/osg-languages && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .claude/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languagesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languages --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .agents/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .agents/skills/osg-languages && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .agents/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languages --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .cursor/skills/osg-languages && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .cursor/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/dotnetdreamer/open-screenshot-generator.git --path src-tauri/claude-agent/skills/osg-languages--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languages --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .gemini/skills/osg-languages && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .gemini/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languagesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .github/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .github/skills/osg-languages && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .github/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install dotnetdreamer/open-screenshot-generator osg-languages --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dotnetdreamer/open-screenshot-generator.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/src-tauri/claude-agent/skills/osg-languages .opencode/skills/osg-languages && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "osg-languages" agent skill from https://github.com/dotnetdreamer/open-screenshot-generator/tree/main/src-tauri/claude-agent/skills/osg-languages into .opencode/skills/osg-languages/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "osg-languages", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
osg-languagesHow languages work in an Open Screenshot Generator project: adding store languages, writing translations with setlocalizedtexts, per-language font and size overrides, and exporting a language.
Osg Languages is an agent skill from dotnetdreamer/open-screenshot-generator. How languages work in an Open Screenshot Generator project: adding store languages, writing translations with setlocalizedtexts, per-language font and size overrides, and exporting a language. Load it when the user asks to translate, localize, add or remove a language, or fix text that does not fit in one language.
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Writing & Content, covering Translation and App store release. It works with Tauri. The repository describes itself as: Open source Canva with CLI/GUI, AI Agent, MCP for App Store and Play Store screenshots. Free alternative to AppScreens, AppLaunchpad and Previewed. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 556578e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Osg Languages loads about 1.7k tokens when it runs. Until then it costs about 83 tokens; SKILL.md has 976 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from dotnetdreamer/open-screenshot-generator at commit 556578e, republished under its MIT licence (© dotnetdreamer). 976 words, ~1,676 tokens.
.claude/skills/osg-languages/SKILL.md (or your agent's skills folder).A project holds one set of artboards and one layout, and a language is an overlay on it. Per language, an element can have its own text, screenshot, image or recording, and its own fontFamily, fontSize, lineHeight, letterSpacing, fontWeight, textAlign, color, outlineColor, outlineWidth, rotation, scale, position and size, or be hidden. Everything else is shared, so a layout fix lands in every language at once. There is never a per language artboard or a copied project.
set_localized_text writes a single string.
Translation notes:
set_locale_override takes elementId, locale and any of: content, screenshotSrc (a localized screenshot, as an asset ref), imageSrc, mediaId, fontFamily (this also turns off the automatic script substitution for that element), fontSize (this also turns off auto shrink, so the box can clip if the string grows), lineHeight, letterSpacing, fontWeight, textAlign, color, outlineColor, outlineWidth (an auto shrunk translation keeps the shared width, so a thinner one can suit it), rotation, scale, position {x, y}, size {width, height} and hidden (true drops the element in that language only). null hands one property back to the shared design.
reset_locale_overrides takes locale and a scope: element (needs elementId), artboard (needs artboardId) or project. With fields, for example ["fontSize"] or ["position", "size"], it drops only those properties and keeps the copy. Without fields it drops everything, translations included.
<locale>01<name>.png. Export only when the user
asks.<lang>,
.arb or locales files, or a String Catalog, an .xcstrings file holding every language) are
the best source of real translations: use the app's own words for its features and screens in
each language, and write the rest in the same voice. Grep a String Catalog for the keys you
need instead of reading it whole; knownRegions in project.pbxproj lists the app's languages.© dotnetdreamer, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in src-tauri/claude-agent/skills/osg-languages of dotnetdreamer/open-screenshot-generator.
Open the folder on GitHubat commit 556578e
Osg Languages next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Osg Languages this skilldotnetdreamer/open-screenshot-generator | 125 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Update TranslationsRaicuparta/rai-pal | 734 | — | ~839 | Automated safety check: Pass | GPL-3.0 | |
| Add Tauri Commandopenfootmanager/openfootmanager | 1.1k | — | ~1.6k | Automated safety check: Pass | GPL-3.0 | |
| Asc Localize MetadataCamilleScholtz/swmpc | 239 | 5 repos | ~2.8k | Automated safety check: Pass | EUPL-1.2 | |
| Add UI Stringopenfootmanager/openfootmanager | 1.1k | — | ~2.6k | Automated safety check: Pass | GPL-3.0 | |
| Asc Metadata Syncn0an/VivaDicta | 131 | 1 repos | ~1k | Automated safety check: Pass | MIT |
Raicuparta/rai-pal
A skill your agent uses when asked to update translations, localize strings, add new languages, fix missing translation keys, or sync language files in this project.
openfootmanager/openfootmanager
Expose new backend behaviour to the frontend over Tauri IPC.
CamilleScholtz/swmpc
Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI.
openfootmanager/openfootmanager
Add or change any text a player can see, in every locale the game ships in.
n0an/VivaDicta
Sync and validate App Store metadata and localizations with asc, including legacy metadata format migration.
Devolutions/UniGetUI
Compares UniGetUI JSON locale files against English, identifies untranslated or source-changed keys, and generates patch, reference, and handoff files for a target language.
dotnetdreamer/open-screenshot-generator
Builds an App Store App Preview video (and a Play Store or landing page promo cut) from a screen recording of the app, using the open-screenshot-generator CLI (osg video): it starts from one of 20…
dotnetdreamer/open-screenshot-generator
Drive Open Screenshot Generator headlessly (puppeteer-core + Edge) to take UI screenshots, add palette elements, upload device screenshots, export artboard PNGs, and regenerate the 3D device…
dotnetdreamer/open-screenshot-generator
Drives the live Open Screenshot Generator editor tool by tool over MCP, using osg mcp to expose the design tools (artboards, elements, backgrounds, fonts, the asset libraries, templates, App Preview…
dotnetdreamer/open-screenshot-generator
Check the latest xtekky/gpt4free releases for provider additions/changes and decide whether Open Screenshot Generator's AI providers need the same.
dotnetdreamer/open-screenshot-generator
Add properly licensed Adobe Stock photos to the Images palette library (e.g.
dotnetdreamer/open-screenshot-generator
Checks that rendered store assets will actually be accepted, and then ships them, using the open-screenshot-generator CLI: osg verify audits the produced PNGs and MP4s against App Store and Google…
Works with
Categories
How languages work in an Open Screenshot Generator project: adding store languages, writing translations with setlocalizedtexts, per-language font and size overrides, and exporting a language. Osg Languages is an agent skill from dotnetdreamer/open-screenshot-generator. How languages work in an Open Screenshot Generator project: adding store languages, writing translations with setlocalizedtexts, per-language font and size overrides, and exporting a language.
Osg Languages fits situations like: asks to translate; remove a language; fix text that does not fit in one language.
Run `npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a claude-code`. Or copy the skill folder (src-tauri/claude-agent/skills/osg-languages in dotnetdreamer/open-screenshot-generator) into .claude/skills/osg-languages in your project. Claude Code loads it when a task matches its description.
Run `npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a codex`. Or copy the skill folder (src-tauri/claude-agent/skills/osg-languages in dotnetdreamer/open-screenshot-generator) into .agents/skills/osg-languages in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add dotnetdreamer/open-screenshot-generator --skill osg-languages -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/osg-languages, .gemini/skills/osg-languages, .github/skills/osg-languages and .opencode/skills/osg-languages in your project.
SKILL.md names no scripts, command-line tools or credentials: Osg Languages is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Osg Languages is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Osg Languages: Update Translations (Raicuparta/rai-pal, 734 stars), Add Tauri Command (openfootmanager/openfootmanager, 1.1k stars), Asc Localize Metadata (CamilleScholtz/swmpc, 239 stars) and Add UI String (openfootmanager/openfootmanager, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
dotnetdreamer (a GitHub user) maintains it in dotnetdreamer/open-screenshot-generator, which has 125 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.
Source: dotnetdreamer/open-screenshot-generator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.