Configure language settings. Use when: setting primary languages, do-not-translate terms, or locale formatting.
npx skills add https://github.com/indranilbanerjee/digital-marketing-pro --skill language-config
Configure and manage multilingual settings for the active brand. This command controls the language infrastructure that powers all translation, localization, and multilingual audit commands in the plugin. It sets the primary content language (the source language for all translations), secondary and target languages (which markets and languages the brand operates in), do-not-translate terms (brand names, product names, trademarked phrases, and technical terms that must appear identically in every language), preferred translation service per language (routing to the optimal MCP for each language pair), and locale-specific formatting rules (date, number, currency, measurement formats per market).
This configuration persists in the brand profile and is referenced by every multilingual command — translate, transcreate, multilingual-score, language-audit, hreflang-check, and any content creation targeting non-primary languages. Getting this configuration right upfront prevents repeated corrections downstream and ensures consistent multilingual output across all workflows.
The user must provide (or will be prompted for):
view (display all current language settings), set-primary (change the primary/source language), add-language (add a secondary/target language), remove-language (remove a secondary language), add-dnt (add a do-not-translate term), remove-dnt (remove a do-not-translate term), set-translation-pref (set preferred translation service for a language), set-locale-format (set locale-specific formatting for a language-region), or reset (restore language config to defaults)en, en-US, de-DE, hi-IN, ja-JP, pt-BR). Required for set-primary, add-language, remove-language, set-translation-pref, and set-locale-format actionsdeepl (best for European languages), sarvam-ai (best for Indic languages), google-cloud-translation (broadest language coverage), or lara-translate (best for marketing/creative context preservation). Required for set-translation-pref actiondate_format (e.g., DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD), number_format (decimal and thousands separators, e.g., "1,234.56" or "1.234,56"), currency_format (symbol position and spacing, e.g., "$1,234" or "1.234 EUR"), measurement (metric or imperial). Any subset can be provided; omitted fields retain current values~/.claude-marketing/brands/_active-brand.json for the active slug, then load ~/.claude-marketing/brands/{slug}/profile.json. Apply brand voice, compliance rules for target markets (skills/context-engine/compliance-rules.md), and industry context. Also check for guidelines at ~/.claude-marketing/brands/{slug}/guidelines/_manifest.json — if present, load restrictions. Check for agency SOPs at ~/.claude-marketing/sops/. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults.language object from profile.json containing primary_language, secondary_languages, content_languages, do_not_translate, translation_preferences, and locale_formatting. If the language object does not exist yet (new brand or pre-multilingual setup), initialize it with sensible defaults: primary_language set to "en", empty arrays for secondary_languages and do_not_translate, and empty objects for translation_preferences and locale_formatting.language-router.py --action supported-languages. Update profile.json field language.primary_language to the new value. If the old primary language is not already in secondary_languages and the user has content in it, suggest adding it as a secondary language to maintain existing translations.language.secondary_languages and language.content_languages arrays (avoiding duplicates). Recommend a translation service for the new language based on language-router.py routing logic (DeepL for European, Sarvam AI for Indic, Google Cloud for others) and prompt the user to confirm or override. Provide default locale formatting for the language-region. For remove: remove from both arrays, warn if content exists in this language (it will no longer be targeted by multilingual commands), and ask for confirmation before removing.language.do_not_translate array, avoiding duplicates, and confirm each term added. For remove: remove matching terms (case-sensitive match), warn if a term is not found in the list. Display the updated do-not-translate list after changes. For batch operations (comma-separated input), process all terms and report results for each.deepl, sarvam-ai, google-cloud-translation, lara-translate. Validate that the language code is in the brand's configured languages (primary or secondary). Set language.translation_preferences[language_code] to the specified service name. Note: this overrides the automatic routing in language-router.py for this specific language — the user's explicit preference takes priority over default routing logic.language.locale_formatting[language_region] for the provided preferences (date_format, number_format, currency_format, measurement). If not all fields are provided, retain existing values for omitted fields. Provide format previews showing how dates, numbers, currency, and measurements will render with the configured format (e.g., "Date preview: 13/02/2026", "Currency preview: EUR 1.234,56").10. Confirm changes with before/after comparison: Display a clear diff showing exactly what changed — old value versus new value for each modified field. For array changes (languages, DNT terms), show items added or removed. Provide a summary of the current complete language configuration after all changes.
A structured language configuration result containing:
language-router.py --action supported-languages showing which languages are available and which translation service handles each, so the user can make informed decisions about adding languagesGuide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. Turns hours of manual changelog writing into minutes of automated generation.
Use when implementing any feature or bugfix, before writing implementation code
Use when you have a spec or requirements for a multi-step task, before touching code
Use when creating new skills, editing existing skills, or verifying skills work before deployment
Use when writing or improving README files. Not all READMEs are the same — provides templates and guidance matched to your audience and project type.
| Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
Official Opentrons Protocol API for OT-2 and Flex robots. Use when writing protocols specifically for Opentrons hardware with full access to Protocol API v2 features. Best for production Opentrons protocols, official API compatibility. For multi-vendor automation or broader equipment control use pylabrobot.
Take indranilbanerjee/language-config from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.