ワンクリックで
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 ページを確認してインストールできます。
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
SOC 職業分類に基づく
| 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"
}