Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/globalize-now/globalize-skillsnpx agentmods add skills/globalize-now/globalize-skills/globalize-guideWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/globalize-now/globalize-skills/globalize-guide)<a href="https://agentmods.dev/skills/globalize-now/globalize-skills/globalize-guide"><img src="https://agentmods.dev/badge/skills/globalize-now/globalize-skills/globalize-guide/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/globalize-now/globalize-skills/globalize-guide"><img src="https://agentmods.dev/badge/skills/globalize-now/globalize-skills/globalize-guide.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00268 | $0.35961 |
| Opus 5 | $0.00134 | $0.17980 |
| Sonnet 5 | $0.00054 | $0.07192 |
| Haiku 4.5 | $0.00027 | $0.03596 |
Grade D, and why
globalize-guide scanned grade D with 3 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Hidden instructionshighPrompt injection
Directives inside HTML comments, invisible characters or bidirectional overrides are read by the model and not by the person reviewing the file.
- [ ] gitignore_artifacts <!-- libraries that emit on-disk generated catalogs only. Lingui: the compiled `.ts`/`.js` siblings of the committed `.po` sources. Paraglide: the compiler `outdir` (`src/lib/paraglide/`). Runs Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
If `existing.configured === true`, `plan.md` reduces Phase 2 to a verify-and-complete plan (verify what exists, add only what's missing — no from-scratch `create_config`): `verify_config`, `verify_provider`, `add_missing Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- **User-selectable picker** — the extension reads its own catalogs and stores the choice in `browser.storage.sync`. Records `decisions.setup.localeSwitcher = "custom-loader"`. On the **Lingui** variant this is always th How it starts
The opening of the file, as written. The whole thing — 986 lines — stays where its author put it; the contents beside it link to each section on GitHub.
i18n Orchestrator
This skill drives the full i18n journey through five stages:
| Stage | Goal |
|---|---|
| 1 — Inspect and decide | Detect stack, ask all user questions, generate an executable plan |
| 1.5 — Globalize account (upfront) | Install CLI + sign in + verify org via globalize-now-account-setup |
| 2 — Setup | Install + configure the chosen library |
| 3 — Convert | Wrap hardcoded strings, extract + compile catalogs |
| 4 — Globalize project (end) | Create project + connect repo + set patterns via globalize-now-project-setup |
Stages 1.5 and 4 only run when the user keeps Globalize connection in scope (default-on; see 1.6). The Globalize work is split deliberately: account creation is interactive and project-independent, so it runs upfront while the user is engaged; project + repo setup needs the converted catalog paths, so it runs at the end.
The orchestrator (this SKILL.md) is library-agnostic. Library- and stack-specific guidance lives in references/ and is loaded by subagents at dispatch time, driven by manifest.json.
Architectural rule: the orchestrator never executes work directly. It asks Phase 1 questions, generates the plan, dispatches subagents in the background, polls a shared progress workspace at .globalize/, and surfaces results. All file modifications, all bash commands, and all reference reading happen inside subagents. One carve-out: the interactive Globalize steps (account sign-in in 1.5, project + repo connection in Phase 4) run on the main thread by delegating to the globalize-now-account-setup / globalize-now-project-setup skills via the Skill tool — the orchestrator never inlines Globalize CLI commands itself (those skills own the authoritative command surface).
Workspace: .globalize/
Created in the target project root (the project being internationalized). Every artifact the orchestrator and subagents share lives here.
.globalize/
detection.json # output of inspect subagent (Phase 1.1)
decisions.md # frozen user choices from Phase 1
plan.md # executable plan for phases 1.5/2/3/4
manifest-snapshot.json # frozen copy of the chosen manifest entry
rules-values.json # resolved template conditions and values; written by the core `generate_coding_rules` step in Phase 2, consumed when rendering `.agents/globalize-rules.md`
globalize-inputs.json # resolved Globalize project inputs (written in Phase 4, read by globalize-now-project-setup)
progress/
setup.json # Phase 2 setup subagent
wrap-1.json…wrap-N.json # Phase 3 wrap subagents (one per partition)
verify.json # Phase 3 verify subagent
archive/<ISO-timestamp>/ # archived after each phase completes
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- manifest.json 22 KB
- manifest.schema.json 5.8 KB
- metadata.json 555 B
- references/languages/android/native/android-strings.convert.md 13 KB
- references/languages/android/native/android-strings.rules.template.md 13 KB
- references/languages/android/native/android-strings.setup.md 45 KB
- references/languages/android/native/setup.add-ons.md 21 KB
- references/languages/ios/native/string-catalog.convert.md 20 KB
- references/languages/ios/native/string-catalog.rules.template.md 17 KB
- references/languages/ios/native/string-catalog.setup.md 64 KB
- references/languages/js-ts/convert.format-pass.md 7.4 KB
- references/languages/js-ts/convert.recall-self-check.md 5.9 KB
- references/languages/js-ts/frameworks/nextjs/app-router/lingui.convert.md 7.5 KB
- references/languages/js-ts/frameworks/nextjs/app-router/lingui.setup.md 37 KB
- references/languages/js-ts/frameworks/nextjs/app-router/next-intl.convert.md 12 KB
- references/languages/js-ts/frameworks/nextjs/app-router/next-intl.setup.md 33 KB
- references/languages/js-ts/frameworks/nextjs/pages-router/next-intl.convert.md 6.5 KB
- references/languages/js-ts/frameworks/nextjs/pages-router/next-intl.setup.md 18 KB
- references/languages/js-ts/frameworks/nuxt/vue-i18n.convert.md 10.0 KB
- references/languages/js-ts/frameworks/nuxt/vue-i18n.setup.md 17 KB
- references/languages/js-ts/frameworks/quasar/vue-i18n.convert.md 4.8 KB
- references/languages/js-ts/frameworks/quasar/vue-i18n.setup.md 8.6 KB
- references/languages/js-ts/frameworks/react-router-framework/lingui.setup.md 43 KB
- references/languages/js-ts/frameworks/react-router-framework/swc/lingui.setup.md 44 KB
- references/languages/js-ts/frameworks/remix/lingui.setup.md 37 KB
- references/languages/js-ts/frameworks/remix/swc/lingui.setup.md 41 KB
- references/languages/js-ts/frameworks/sveltekit/paraglide.convert.md 13 KB
- references/languages/js-ts/frameworks/sveltekit/paraglide.setup.md 29 KB
- references/languages/js-ts/frameworks/tanstack-start/lingui.setup.md 36 KB
- references/languages/js-ts/frameworks/tanstack-start/swc/lingui.setup.md 40 KB
- references/languages/js-ts/frameworks/vite/react-babel/lingui.setup.md 54 KB
- references/languages/js-ts/frameworks/vite/react-swc/lingui.setup.md 55 KB
- references/languages/js-ts/frameworks/vite/vue/vue-i18n.convert.md 4.0 KB
- references/languages/js-ts/frameworks/vite/vue/vue-i18n.setup.md 14 KB
- references/languages/js-ts/frameworks/webext/lingui.convert.md 12 KB
- references/languages/js-ts/frameworks/webext/lingui.setup.md 54 KB
- references/languages/js-ts/frameworks/webext/setup.add-ons.md 39 KB
- references/languages/js-ts/frameworks/webext/swc/lingui.setup.md 55 KB
- references/languages/js-ts/frameworks/webext/webext-native.convert.md 20 KB
- references/languages/js-ts/frameworks/webext/webext-native.rules.template.md 16 KB
- references/languages/js-ts/frameworks/webext/webext-native.setup.md 55 KB
- references/languages/js-ts/libraries/lingui/convert.standard-react.md 7.4 KB
- references/languages/js-ts/libraries/lingui/rules.template.md 22 KB
- references/languages/js-ts/libraries/lingui/setup.add-ons.md 31 KB
- references/languages/js-ts/libraries/lingui/setup.locale-module.md 22 KB
- references/languages/js-ts/libraries/lingui/setup.navigation.md 16 KB
- references/languages/js-ts/libraries/next-intl/po-format.convert.md 11 KB
- references/languages/js-ts/libraries/next-intl/po-format.setup.md 14 KB
- references/languages/js-ts/libraries/next-intl/rules.template.md 22 KB
- references/languages/js-ts/libraries/next-intl/setup.add-ons.md 41 KB
- references/languages/js-ts/libraries/paraglide/json-format.convert.md 2.9 KB
- references/languages/js-ts/libraries/paraglide/json-format.setup.md 5.1 KB
- references/languages/js-ts/libraries/paraglide/rules.template.md 15 KB
- references/languages/js-ts/libraries/paraglide/setup.add-ons.md 28 KB
- references/languages/js-ts/libraries/vue-i18n/convert.shared.md 48 KB
- references/languages/js-ts/libraries/vue-i18n/po-format.convert.md 16 KB
- references/languages/js-ts/libraries/vue-i18n/rules.template.md 19 KB
- references/languages/js-ts/libraries/vue-i18n/setup.shared.md 77 KB
- references/languages/ruby/frameworks/rails/rails.convert.md 21 KB
- references/languages/ruby/frameworks/rails/rails.rules.template.md 17 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 986 lines · 268 tokens per session scan D 3a22e21b87af
globalize-guide is a skill published in the GitHub repository globalize-now/globalize-skills (3 stars, last pushed yesterday), licensed MIT. It adds 268 tokens to every session and 35,961 once invoked, about $0.0013 per session on Opus 5. A static security scan graded it D with 3 findings (hidden instructions, reads agent configuration directories, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
extract-source-sample
Given the path to a finished content-goose ad-run folder, extract everything that defines that ad — recipe shot list, VO script, characters, voices, world, atom-skills, master mp4 — and emit a source-sample.json in the exact shape the upload-ad-sample skill writes to the Goose Ads library. Also links every character…
audit-i18n
Audit and fix internationalisation for any web or mobile app. Use when asked to "audit i18n", "fix translations", "add locale", "natural language", "translation quality", "hardcoded strings", "localisation", or "the Japanese feels like Google Translate".
nextjs-locale-monorepo
Add locale-prefixed i18n routing across a Next.js monorepo (Turborepo / pnpm workspaces) by extracting the engine into a shared workspace package that every app consumes — locale detection + a middleware/proxy factory + a use client LocaleProvider/hooks, plus a shared supportedLanguages config. Each app redirects /…
nextjs-locale-standalone
Add locale-prefixed i18n routing to a single (non-monorepo) Next.js App Router site — a middleware/proxy that redirects / and any unprefixed path to / /… using the locale toggle's last choice (the NEXTLOCALE cookie) then the browser's Accept-Language, a [locale] layout with a LocaleProvider + hooks, and a LocaleToggle…
thai-resume
Use this skill for any task involving Thai-language or bilingual (TH/EN) resumes and CVs. Trigger whenever the user asks to: write a Thai resume, draft a CV in Thai, build a bilingual Thai-English resume, format an application for a Thai employer, choose between พ.ศ. and ค.ศ. dates in a CV, or tailor a resume for…
thai-text-processing
Use this skill for any task involving Thai text in code — word segmentation, Unicode normalization, sorting/collation, search indexing, romanization, truncation, or database/Elasticsearch configuration for Thai. Trigger whenever the user asks to: tokenize / segment Thai (no spaces between words), normalize Thai text…