react-i18next
- Single `useTranslation()` call per component, flag multiple `useTranslation` calls in the same component - Namespace override via `{ns: 'other'}` as the second arg to `t()`, not separate `useTranslation` calls - Most-used namespace should be the one declared in
$ npx -y skills add gaia-react/gaia --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
Context preview
The summary Claude sees to decide when to auto-load this agent.
- Single `useTranslation()` call per component, flag multiple `useTranslation` calls in the same component - Namespace override via `{ns: 'other'}` as the second arg to `t()`, not separate `useTranslation` calls - Most-used namespace should be the one declared in
Agent definition
react-i18next.mdsubagents: [translation] library: react-i18next
react-i18next Audit Rules
- Single `useTranslation()` call per component, flag multiple `useTranslation` calls in the same component
- Namespace override via `{ns: 'other'}` as the second arg to `t()`, not separate `useTranslation` calls
- Most-used namespace should be the one declared in `useTranslation()`. If more `t()` calls override than use the declared namespace, flag it.
- Use `keyPrefix` for nested keys to avoid repetition: `{keyPrefix: 'index'}` + `t('title')` instead of `t('index.title')`. Remove `keyPrefix` when namespace overrides are needed in the same component, `keyPrefix` is applied before the namespace switch, producing wrong keys.
- Namespace convention: `'common'` for shared UI strings, `'pages'` for page-specific content, `'errors'` for error messages
- String deduplication: check `app/languages/en/common.ts` first, shared keys (Save, Cancel, Delete, Close, email, password) belong in the `common` namespace. Flag new keys that duplicate existing strings.
- New keys must be added to ALL language files under `app/languages/` (English plus every locale directory present)
- Dynamic keys: interpolated values must be literal union types, not `string`. Flag `as` casts on template literals passed to `t()`
Claude is raw power. GAIA is order and focus. The foundation that keeps Claude-shipped code production-grade as your team scales. The React frontend is handled. You build the rest of your app on top. Every convention enforced in code.
Repo: gaia-react/gaia
Other agents on gaia-react-gaia.
- code-audit-frontend
Comprehensive code review, security audit, performance analysis, and architectural assessment. Goes beyond linting and type-checking to identify vulnerabilities, bottlenecks, code smells, anti-patterns, and refactoring opportunities. Mandatory before PR merge.
Open agent - conform
- `@conform-to/zod` must **always** be imported from the `/v4` subpath. Flag any import from the bare `@conform-to/zod` package as **Critical**. The default export targets Zod v3 and causes a silent runtime failure, typecheck, lint, and build do not catch it.
Open agent - form-components
Use project form components instead of native elements in all `.tsx` files. Native form elements bypass GAIA's Conform integration and accessible error/label wiring.
Open agent - tailwind-merge
- Import only from `tailwind-merge`, flag any use of `clsx`, `classnames`, or `cn` wrappers for class merging - `twJoin` when no class conflict is possible (internal construction, no incoming `className` prop) - `twMerge` when a consumer `className` prop or two conflict-eligible
Open agent - code-audit-github-workflows
Audits GitHub Actions workflow YAML and composite-action YAML for supply-chain, injection, permission, and secret-handling defects. Advisory-only (no self-heal). One member of the Code Audit Team gate.
Open agent - code-audit-maintainer-node
Maintainer-only audit of the framework Node/CLI TypeScript, its render templates and test snapshots, and the CLI build/config surface the roster grants it: correctness, error handling, filesystem/IO safety, Zod schema fitness, shell/gh injection safety, and
Open agent

