Locale JSON Guard — Catch Missing Keys & Broken Variables

    1

    Catch missing keys, empty translations and changed variables in locale JSON. Get a local report with exact key locations.

    $9

    Secure checkout via Stripe

    Money-back guarantee

    Converts to your local currency at checkout

    Security scanned

    Works with the AI Agents you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    Locale JSON Guard — Catch Missing Keys & Broken Variables

    Example session with this skill installed

    Use Locale JSON Guard on the bundled en.json and zh-broken.json examples with i18next interpolation. Show the exact differences, then run the same check against zh-fixed.json. Report the real exit codes. Do not change files.

    • Read your context and instructions
    • Compiled the locale json guard

    Synthetic local checker demonstration

    These are complete captured CLI reports from the bundled examples, with the local project-root path normalized to <project>. This is a mechanism demonstration, not a customer outcome or an independent agent evaluation.

    Broken catalog — actual exit code 1

    {
      "tool": "locale-json-guard",
      "version": "1.0.0",
      "status": "REVIEW",
      "exit_code": 1,
      "style": "i18next",
      "scope": [
        "leaf_keys",
        "empty_strings",
        "unique_json_keys",
        "string_dictionary",
        "interpolation_signature"
      ],
      "summary": {
        "target_files": 1,
        "findings": 4,
        "by_code": {
          "EMPTY_VALUE": 1,
          "EXTRA_KEY": 1,
          "MISSING_KEY": 1,
          "PLACEHOLDER_MISMATCH": 1
        }
      },
      "base": {
        "file": "<project>/skills/locale-json-guard/examples/en.json",
        "sha256": "dd2368f3975ccbb9030f12a88d229e7ee1a4ecf71171a4754da89b4b2f7eb96c",
        "leaf_count": 4,
        "findings": []
      },
      "targets": [
        {
          "file": "<project>/skills/locale-json-guard/examples/zh-broken.json",
          "sha256": "14e6fa2fe10f1e934005a170d75eb56efa32f5be470dea38f21f1527b92c0d43",
          "leaf_count": 4,
          "findings": [
            {
              "code": "EMPTY_VALUE",
              "pointer": "/checkout/pay",
              "detail": "String is empty or whitespace-only."
            },
            {
              "code": "MISSING_KEY",
              "pointer": "/nav/home",
              "detail": "Source leaf key is missing from this target."
            },
            {
              "code": "EXTRA_KEY",
              "pointer": "/nav/old",
              "detail": "Target leaf key is absent from source; review plural conventions before removal."
            },
            {
              "code": "PLACEHOLDER_MISMATCH",
              "pointer": "/checkout/total",
              "detail": "Interpolation variable or escaping signatures differ.",
              "expected": [
                "escaped:amount"
              ],
              "actual": [
                "escaped:price"
              ]
            }
          ]
        }
      ]
    }
    

    Corrected catalog — actual exit code 0

    {
      "tool": "locale-json-guard",
      "version": "1.0.0",
      "status": "PASS",
      "exit_code": 0,
      "style": "i18next",
      "scope": [
        "leaf_keys",
        "empty_strings",
        "unique_json_keys",
        "string_dictionary",
        "interpolation_signature"
      ],
      "summary": {
        "target_files": 1,
        "findings": 0,
        "by_code": {}
      },
      "base": {
        "file": "<project>/skills/locale-json-guard/examples/en.json",
        "sha256": "dd2368f3975ccbb9030f12a88d229e7ee1a4ecf71171a4754da89b4b2f7eb96c",
        "leaf_count": 4,
        "findings": []
      },
      "targets": [
        {
          "file": "<project>/skills/locale-json-guard/examples/zh-fixed.json",
          "sha256": "d43a70f5c7053e1e5cd61e487d1f8454d4d7033d8c78d6f8eb93f55eacce74ad",
          "leaf_count": 4,
          "findings": []
        }
      ]
    }
    

    The first report identifies an empty value, a missing key, an extra key and a changed interpolation variable. The corrected example passes the selected structural checks. Translation quality, runtime behavior and layout are outside this check. Review extra keys against the localization convention before deleting anything.

    Connects securely to your tools. The creator never sees your data.

    About this skill

    Your checkout says Total: {{amount}}. A translated file says {{price}}, and another locale is missing the payment button entirely. Find those differences before you ship.

    Locale JSON Guard gives your coding agent a small, offline checker and a focused review-and-recheck workflow. Choose a source JSON file, target locale files and interpolation style. Get a concrete repair list instead of a general review of your translations.

    Included checks

    • Missing and extra leaf keys in flat or nested JSON dictionaries.
    • Empty or whitespace-only source and translated strings.
    • Duplicate JSON keys, invalid files and unsupported value structures.
    • Renamed or missing simple brace/i18next interpolation variables, including changes to i18next escaping markers.
    • Unsupported expressions that need a separate review rather than a false PASS.

    Reports include JSON Pointer locations and input fingerprints, in JSON or Markdown. Exit codes distinguish a clean scoped check, findings and an incomplete assessment. Files are read only; there are no network requests or third-party Python dependencies.

    The package includes the skill, checker and synthetic before/after catalogs. Developer-side tests and captured CLI demonstrations are available in this submission's evidence. Translation values are excluded from reports by default; file paths, key names and variable names remain visible.

    A deliberately focused first version

    Needs a terminal, Python 3.10+ and access to the bundled checker. Supports string-valued JSON dictionaries and simple {name} / {{name}} interpolation. Does not validate translation quality, complete ICU syntax, plural completeness, YAML, rich-text tags, printf tokens, runtime behavior or layout. A PASS covers only the reported structural checks.

    If your agent connection cannot expose supporting scripts, the executable workflow is unavailable. Confirm the connector's file/tool support before purchase; do not treat this listing as a verified all-agent compatibility claim.

    Submission transparency

    Original implementation written for this product. No repackaged public skill files, credentials, outbound URLs, analytics or environment-variable reads are included in the upload. The Python script only reads the chosen files and prints a report.

    Tests are developer-side unit/CLI checks, not a claim that multiple agents or Agensi's scanner have approved the skill. Please verify that Agensi's current agent delivery exposes the bundled Python resource; if it does not, hold the listing until that workflow is supported.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    Money-back guarantee

    Doesn't do what its page promises? You get your money back.

    Trust & safety

    Security scanned

    Verified clean today

    • Passed all security checks, Safe to install

    Requires

    Python 3.10+
    Terminal / Shell
    Local access to the bundled package and selected JSON files

    Listedtoday

    What's inside

    Frequently Asked Questions