بنقرة واحدة
gk-i18n
Setup internationalization, extract hardcoded strings, and validate translation completeness
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Setup internationalization, extract hardcoded strings, and validate translation completeness
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Generate precise visual component specs or review implemented UI for design quality and accessibility compliance.
Execute Markdown-based implementation plans by parsing, executing tasks, and updating status.
Validate framework compliance across all agents and skills.
Generate agent and skill files following Gemini Kit templates. Use when creating a new skill or /gk-* command. Use for building agent definitions or extending Gemini Kit.
Audit UI components for WCAG 2.2 AA compliance and generate actionable accessibility fixes
Setup product analytics integration and define event tracking schemas for user behavior measurement
| name | gk-i18n |
| agent | developer |
| version | 1.0.0 |
| description | Setup internationalization, extract hardcoded strings, and validate translation completeness |
| tier | optional |
| Flag | Description | Reference |
|---|---|---|
| --setup | Install library and scaffold locale routing, middleware, and [locale] directory structure; generates provider wrapper and LocaleSwitcher component for locales | (base skill rules) |
| --extract | Scan source_dir for hardcoded UI strings; returns extracted_strings count, generated JSON key files by namespace, and ICU-formatted message values | (base skill rules) |
| --validate | Compare all locale translation files against base_locale; returns missing_keys per locale, orphaned_keys no longer used, and ICU syntax errors | (base skill rules) |
| (default) | Quick audit of i18n coverage: detect hardcoded strings, missing locale files, and RTL CSS gaps | (base skill rules) |
Senior Frontend Engineer — expert in next-intl, i18next, Lingui, ICU message format, RTL layouts.
Setup internationalization infrastructure, extract hardcoded strings into translation keys, and validate translation completeness across all configured locales.
{
"library": "string (optional, default: 'next-intl') — next-intl | i18next | lingui",
"locales": "string[] (optional, default: ['en']) — e.g. ['en', 'fr', 'ja', 'ar']",
"source_dir": "string (optional, default: 'src') — directory to scan for strings",
"base_locale": "string (optional, default: 'en') — reference locale for validation"
}
<mandatory_steps>
blocked with missing_fields if absentsource_dir for hardcoded UI strings using static analysisbase_locale; identify missing and orphaned keys[locale] directory structure{count, plural, one {# item} other {# items}})UNSUPPORTED_FRAMEWORK if the project stack is incompatible with the chosen libraryMISSING_LOCALE_FILES if --validate finds no locale JSON/TS files in the projectEXTRACTION_FAILED if static analysis cannot parse source_dir (e.g. unsupported syntax)Internal data contract — consumed by the invoking agent, not displayed to users. Agent formats user-facing output per
04_output.md.
{
"status": "completed | failed | blocked",
"format": "json | markdown",
"result": {
"library": "string — selected library",
"generated_files": [
{ "path": "string", "purpose": "string" }
],
"install_command": "string",
"locales_configured": ["string"],
"extracted_strings": "number — count for --extract mode",
"missing_keys": [
{ "locale": "string", "key": "string" }
],
"orphaned_keys": ["string"],
"setup_steps": ["string"]
},
"summary": "one sentence describing i18n status and key findings",
"confidence": "high | medium | low"
}
Example (completed):
{
"status": "completed",
"format": "json",
"result": {
"provider": "next-intl",
"generated_files": [
{ "path": "messages/en.json", "purpose": "English base translations" },
{ "path": "src/lib/i18n.ts", "purpose": "next-intl provider configuration" }
],
"install_command": "pnpm add next-intl",
"locales_supported": ["en", "vi"],
"missing_keys": [],
"orphaned_keys": ["dashboard.oldTitle"],
"setup_steps": ["Add next-intl plugin to next.config.js", "Wrap root layout with NextIntlClientProvider"]
},
"summary": "next-intl configured for en/vi; 1 orphaned key detected in EN messages.",
"confidence": "high"
}