Agent skill

Dpis Localization

by Kwensiu in Kwensiu/DPIS

Project-local DPIS localization workflow. An agent skill from Kwensiu/DPIS.

GPL-3.0Auto-check passedFrontend & Design

Install Dpis Localization

skills CLI
$ npx skills add Kwensiu/DPIS --skill dpis-localization -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Kwensiu/DPIS dpis-localization --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Kwensiu/DPIS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/agents/skills/dpis-localization .claude/skills/dpis-localization && rm -rf skills-src

Use ~/.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/

Facts

Skill name
dpis-localization
GitHub stars
111
Token cost
~1.5k tokens
SKILL.md length
720 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
GPL-3.0

At a glance

Project-local DPIS localization workflow. An agent skill from Kwensiu/DPIS.

  • Works in 6 steps: Identify the target locale and inspect… → Generate or normalize from… → Preserve placeholder sets, escapes,… → …
  • Adding a new language
  • SKILL.md covers Trigger, Required Reads, Translation Frame and Technical Terms, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Dpis Localization is an agent skill from Kwensiu/DPIS. Project-local DPIS localization workflow. Use when adding a new language, machine-translating or reviewing Android string resources, changing existing translations, adjusting AppLocaleManager language options, updating l10n scripts, or reviewing localization-related branch changes.

Its SKILL.md is about 1.5k 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 Frontend & Design, covering Internationalization and Translation. It works with Android. The repository describes itself as: 独立调节应用 DPI 与字体缩放 | Per-app DPI and font scaling. The licence is GPL-3.0.

When your agent uses it

  • Adding a new language
  • Machine-translating
  • Reviewing Android string resources
  • Changing existing translations

Example prompts

  • “/dpis-localization”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Identify the target locale and inspect existing resource qualifiers before
  2. Generate or normalize from app/src/main/res/values/strings.xml; do not
  3. Preserve placeholder sets, escapes, URLs, package names, and technical terms.
  4. Decide whether the language is manually selectable
  5. Add or update tests that cover resource parity and language selector wiring
  6. Run a focused resource test, then run the full unit suite before submitting

What it can do on your machine

Read from SKILL.md and the folder at commit 9491f2c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Dpis Localization loads about 1.5k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 720 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~75
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from Kwensiu/DPIS at commit 9491f2c, republished under its GPL-3.0 licence (© Kwensiu). 720 words, ~1,503 tokens.

Download SKILL.mdSave it as .claude/skills/dpis-localization/SKILL.md (or your agent's skills folder).
name
dpis-localization
description
Project-local DPIS localization workflow. Use when adding a new language, machine-translating or reviewing Android string resources, changing existing translations, adjusting AppLocaleManager language options, updating l10n scripts, or reviewing localization-related branch changes.

DPIS Localization

This is a project-local skill bundle. It turns DPIS localization work into a repeatable process for new languages, existing-language maintenance, and review.

Trigger

Use this skill before work involving:

  • adding or removing app/src/main/res/values-*/strings.xml
  • translating, machine-translating, reviewing, or normalizing strings
  • changing language names, locale tags, or manual language choices
  • editing AppLocaleManager or the language selector UI
  • changing scripts/l10n/**, crowdin.yml, or localization docs
  • reviewing a branch whose main surface is Android localization

Required Reads

Read only what applies to the task:

  • Always read AGENTS.md.
  • For string changes, read app/src/main/res/values/strings.xml and the touched locale file.
  • For manual language choices, read app/src/main/java/com/dpis/module/AppLocaleManager.java and the language selector tests.
  • For script or workflow changes, read scripts/l10n/README.md and the touched script.
  • For review, inspect the diff against the target branch before conclusions.

Translation Frame

DPIS is a technical Android module for per-app DPI, interface scale, font size, and runtime hook configuration. Translate for Android users who understand apps, settings, and basic module concepts, but may not understand every hook detail.

Keep UI copy direct, calm, compact, and practical. Do not add claims, warnings, or explanations that are not present in the source string.

Avoid:

  • marketing claims, slogans, jokes, or slang
  • over-promising compatibility, stability, or visible effect
  • translating internal identifiers or hook domains
  • changing the meaning of safety, unsupported, unavailable, or failed states

Technical Terms

Keep these terms in English unless the source string clearly calls for a natural language explanation around them:

  • DPIS
  • LSPosed
  • Xposed
  • Android
  • WebView
  • TextView
  • ActivityThread
  • Resources
  • DisplayMetrics
  • Flutter
  • HyperOS
  • DPI
  • dp
  • sp
  • px
  • APK
  • API
  • GitHub
  • WeChat Pay
  • Alipay

Follow existing nearby translation style for surrounding text. Do not force a glossary term when it makes the target-language UI unnatural.

Invariants

Preserve exactly:

  • Android placeholders such as %1$s, %2$d, %1$d%%, and %%
  • escaped newlines such as \n
  • URLs, package names, resource-like identifiers, and domain-like identifiers
  • strings marked translatable="false" in the default resource file

Keep placeholder order unless the target language requires reordering. If reordering is needed, keep numbered placeholder forms.

Current internal font domains are not user-facing hook-chain switches:

  • system_server_font
  • activity_thread_font

New Language Workflow

  1. Identify the target locale and inspect existing resource qualifiers before choosing the directory name. Prefer matching the repository's current Android qualifier style.
  2. Generate or normalize from app/src/main/res/values/strings.xml; do not include default strings marked translatable="false" unless they are intentionally used as local language names in the default file.
  3. Preserve placeholder sets, escapes, URLs, package names, and technical terms.
  4. Decide whether the language is manually selectable:
    • If it is reviewed or intentionally offered, add the locale tag and label to AppLocaleManager.
    • If it is machine-translated or not reviewed, either leave it reachable only through "Follow system" or label the manual option honestly, such as 日本語(未校正).
  5. Add or update tests that cover resource parity and language selector wiring when the selector changes.
  6. Run a focused resource test, then run the full unit suite before submitting unless the user explicitly accepts narrower verification.
Show full SKILL.md (233 more words)Show less

Existing Language Workflow

  1. Compare the touched locale against default strings by key, placeholder set, and escape usage.
  2. Check that translations remain concise and match nearby project wording.
  3. Remove stale localized entries for keys that are no longer translatable or no longer exist.
  4. Prefer fallback to English over low-confidence translations for risky technical or safety wording.
  5. If the change comes from machine translation, mark review state in the user facing label or project docs when the language is manually selectable.

Review Checklist

For localization branch review, check:

  • New locale files are reachable as intended: follow-system only or manual selector.
  • AppLocaleManager tags match Android resource qualifiers and user-facing labels.
  • Machine-translated languages are not silently presented as fully reviewed.
  • Placeholder, newline, URL, and package-name parity is intact.
  • translatable="false" strings are not duplicated into locale resources unless there is an explicit product reason.
  • scripts/l10n/README.md commands match real Gradle tasks.
  • Tests cover changed wiring instead of only preserving stale string literals.

Validation Commands

Use real task names from the current Gradle project. Common checks:

bash
./gradlew :app:testModernDebugUnitTest --tests com.dpis.module.StringResourceParityTest
./gradlew :app:testAllDebugUnitTests

For script changes, also run the touched script on a representative input or use its --help output if no safe fixture exists.

Output

When finishing localization work or review, report:

  • languages and locale qualifiers touched
  • whether each language is reviewed, machine-translated, or intentionally follow-system only
  • language selector changes, if any
  • scripts or docs changed
  • tests or validation commands run

© Kwensiu, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in docs/agents/skills/dpis-localization of Kwensiu/DPIS.

Open the folder on GitHubat commit 9491f2c

Compare with similar skills

Dpis Localization 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.

Dpis Localization compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dpis Localization this skillKwensiu/DPIS111—~1.5kAutomated safety check: PassGPL-3.0
Fluent MigrationBrowserWorks/waterfox-android3791 repos~4.2kAutomated safety check: PassCustom licence
Locale Tui LocalizationAyuilos/Miffan208—~1.1kAutomated safety check: PassAGPL-3.0
Cometchat I18ncometchat/cometchat-skills131—~1.9kAutomated safety check: PassMIT
Translate Android LocaleCodename-11/hermes-relay318—~365Automated safety check: PassMIT
Chatbox i18n Translatorchatboxai/chatbox42k—~508Automated safety check: PassGPL-3.0

Similar skills

  • Fluent Migration

    BrowserWorks/waterfox-android

    A skill your agent uses when a patch or local changes rename, restructure, move, or replace Fluent (.ftl) strings - or migrate legacy .properties strings to Fluent - and you need a migration recipe…

    379 GitHub starsUsed in 1 repo~4.2k tokens
    Frontend & DesignAuto-check passed
  • A skill your agent uses when users request i18n/localization updates for Android string resources: adding localized keys, translating strings.xml, filling missing translations, or moving hardcoded…

    208 GitHub stars~1.1k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Cometchat I18n

    cometchat/cometchat-skills

    Localize a CometChat integration — set the UI Kit language, register custom/overridden translations, handle RTL, and never leak a raw localization key into the UI.

    131 GitHub stars~1.9k tokensUpdated 3 days ago
    Frontend & DesignAuto-check passed
  • Translate Android Locale

    Codename-11/hermes-relay

    Generate, critique, install, and validate AI-assisted Android string-resource translations for Hermes-Relay.

    318 GitHub stars~365 tokensUpdated today
    Writing & ContentAuto-check passed
  • Chatbox i18n Translator

    chatboxai/chatbox

    Translates new or changed i18n keys from a Chatbox Pro diff, staged changes or a commit range, writing the locale JSON files directly with a built-in glossary.

    42k GitHub stars~508 tokensUpdated 14 days ago
    Frontend & DesignAuto-check passed
  • Review pending AIRI translations on Crowdin in a batch, then sync them into the repository.

    50k GitHub stars~1.5k tokensUpdated today
    Frontend & DesignAuto-check passed

More from Kwensiu/DPIS

  • Dpis Hyperos Smoke

    Kwensiu/DPIS

    Run automated DPIS HyperOS device smoke tests for package-specific dp/font emulation or replacement.

    111 GitHub stars~715 tokensUpdated today
    Auto-check passed
  • Project-local DPIS hook implementation and diagnosis workflow for Xposed API routing.

    111 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Dpis Release Notes

    Kwensiu/DPIS

    Rewrite DPIS release notes for ordinary users. An agent skill from Kwensiu/DPIS.

    111 GitHub stars~713 tokensUpdated today
    Auto-check passed
  • Review DPIS changes before committing or opening a pull request, including scope, domain-rule compliance, tests, Android validation, SonarQube MCP checks, and Git hygiene.

    111 GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Project-local DPIS runtime hook diagnosis workflow. An agent skill from Kwensiu/DPIS.

    111 GitHub stars~1.7k tokensUpdated today
    Auto-check passed

Works with

Questions about Dpis Localization

What does Dpis Localization do?

Project-local DPIS localization workflow. An agent skill from Kwensiu/DPIS. Dpis Localization is an agent skill from Kwensiu/DPIS. Project-local DPIS localization workflow.

When should I use Dpis Localization?

Dpis Localization fits situations like: adding a new language; machine-translating; reviewing Android string resources; changing existing translations.

How do I install Dpis Localization in Claude Code?

Run `npx skills add Kwensiu/DPIS --skill dpis-localization -a claude-code`. Or copy the skill folder (docs/agents/skills/dpis-localization in Kwensiu/DPIS) into .claude/skills/dpis-localization in your project. Claude Code loads it when a task matches its description.

How do I install Dpis Localization in Codex?

Run `npx skills add Kwensiu/DPIS --skill dpis-localization -a codex`. Or copy the skill folder (docs/agents/skills/dpis-localization in Kwensiu/DPIS) into .agents/skills/dpis-localization in your project. Codex loads it when a task matches its description.

Can I use Dpis Localization in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Kwensiu/DPIS --skill dpis-localization -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dpis-localization, .gemini/skills/dpis-localization, .github/skills/dpis-localization and .opencode/skills/dpis-localization in your project.

What does Dpis Localization need to run?

SKILL.md names no scripts, command-line tools or credentials: Dpis Localization is instructions for the agent only.

Does Dpis Localization access the network?

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.

Is Dpis Localization safe to install?

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.

What licence does Dpis Localization use?

Dpis Localization is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dpis Localization use?

About 1.5k tokens (SKILL.md is roughly 6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Dpis Localization?

Skills that share tags, products or a category with Dpis Localization: Fluent Migration (BrowserWorks/waterfox-android, 379 stars), Locale Tui Localization (Ayuilos/Miffan, 208 stars), Cometchat I18n (cometchat/cometchat-skills, 131 stars) and Translate Android Locale (Codename-11/hermes-relay, 318 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dpis Localization?

Kwensiu (a GitHub user) maintains it in Kwensiu/DPIS, which has 111 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 9, 2026.

Source: Kwensiu/DPIS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.