Declarative Agent Developer
microsoft/work-iq
Create, build, deploy, and localize declarative agents for M365 Copilot and Teams.
TRIGGER when user asks to externalize, internationalize, or translate user-facing strings.
$ npx skills add microbus-io/fabric --skill translate-strings -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install microbus-io/fabric translate-strings --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .claude/skills/translate-strings && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .claude/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-stringsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add microbus-io/fabric --skill translate-strings -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install microbus-io/fabric translate-strings --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .agents/skills/translate-strings && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .agents/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microbus-io/fabric --skill translate-strings -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install microbus-io/fabric translate-strings --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .cursor/skills/translate-strings && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .cursor/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/microbus-io/fabric.git --path .claude/skills/microbus/translate-strings--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add microbus-io/fabric --skill translate-strings -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install microbus-io/fabric translate-strings --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .gemini/skills/translate-strings && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .gemini/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install microbus-io/fabric translate-stringsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add microbus-io/fabric --skill translate-strings -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .github/skills/translate-strings && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .github/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microbus-io/fabric --skill translate-strings -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install microbus-io/fabric translate-strings --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microbus-io/fabric.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/microbus/translate-strings .opencode/skills/translate-strings && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "translate-strings" agent skill from https://github.com/microbus-io/fabric/tree/main/.claude/skills/microbus/translate-strings into .opencode/skills/translate-strings/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate-strings", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
translate-stringsTRIGGER when user asks to externalize, internationalize, or translate user-facing strings.
Translate Strings is an agent skill from microbus-io/fabric. TRIGGER when user asks to externalize, internationalize, or translate user-facing strings. Moves hardcoded display text into a text.yaml resource bundle for i18n support.
Its SKILL.md is about 880 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Frontend & Design, covering Internationalization and Microservices. The repository describes itself as: Microbus is the only fabric where every agentic workflow runs on a true microservice substrate - giving your workflows security, scale, observability, and prompt-driven authoring. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit fb98098. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are go, yaml and html).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Translate Strings loads about 879 tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 260 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from microbus-io/fabric at commit fb98098, republished under its Apache-2.0 licence (© microbus-io). 260 words, ~879 tokens.
.claude/skills/translate-strings/SKILL.md (or your agent's skills folder).CRITICAL: Read and analyze this microservice before starting. Do NOT explore or analyze other microservices. The instructions in this skill are self-contained to this microservice.
Copy this checklist and track your progress:
Externalizing and translating strings:
- [ ] Step 1: Create string bundle
- [ ] Step 2: Transfer strings
- [ ] Step 3: Translate strings for requested languages
- [ ] Step 4: Update references in Go files
- [ ] Step 5: Update references in templates
- [ ] Step 6: HousekeepingCreate resources/text.yaml, if one does not already exist.
Locate static strings in the microservice that are ultimately shown to the end user. These are likely to be in service.go or in HTML or text templates in the resources directory.
For each string, create an entry in resources/text.yaml that maps a unique key to its localized value on a per language basis. Use PascalCase for the string key (e.g. MyString) and ISO 639 language codes for each language (e.g. en-US).
HelloWorld:
en: Hello WorldUpdate resources/text.yaml and add a localized value for each explicitly requested language.
Use the ISO 639 language code under the key of each localization.
HelloWorld:
en: Hello World
en-AU: G'day World
fr: Bonjour le Monde
es: Hola MundoThe en or en-US localizations are used by default when no other language matches the request's context.
If neither localization is included, a default value should be provided instead.
HolaMundo:
fr: Bonjour le Monde
es: Hola Mundo
default: Hola MundoUse svc.MustLoadResString to load strings in Go files such as service.go.
Before:
func (svc *Service) HelloWorld(w http.ResponseWriter, r *http.Request) (err error) {
w.Write([]byte("Hello World"))
return err
}After:
func (svc *Service) HelloWorld(w http.ResponseWriter, r *http.Request) (err error) {
ctx := r.Context()
textHelloWorld := svc.MustLoadResString(ctx, "HelloWorld")
w.Write([]byte(textHelloWorld))
return err
}To use localized strings in HTML templates, load all strings with svc.MustLoadResStrings into a map, pass the map as part of the data to the template, and use the map in the template to obtain the string by key, instead of the static string.
Before:
func (svc *Service) HelloWorld(w http.ResponseWriter, r *http.Request) (err error) {
data := struct{
OtherData int
}{
OtherData: 5,
}
err = svc.WriteResTemplate(w, "mytemplate.html", data)
if err != nil {
return errors.Trace(err)
}
return nil
}<b>Hello World</b>After:
func (svc *Service) HelloWorld(w http.ResponseWriter, r *http.Request) (err error) {
ctx := r.Context()
data := struct{
OtherData int
Text map[string]string
}{
OtherData: 5,
Text: svc.MustLoadResStrings(ctx),
}
err = svc.WriteResTemplate(w, "mytemplate.html", data)
if err != nil {
return errors.Trace(err)
}
return nil
}<b>{{ .Text.HelloWorld }}</b>Follow the housekeeping skill.
© microbus-io, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/microbus/translate-strings of microbus-io/fabric.
Open the folder on GitHubat commit fb98098
Translate Strings next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Translate Strings this skillmicrobus-io/fabric | 172 | — | ~879 | Automated safety check: Pass | Apache-2.0 | |
| Declarative Agent Developermicrosoft/work-iq | 1k | — | ~3.2k | Automated safety check: Pass | Custom licence | |
| Sanity Best Practicesrobotostudio/turbo-start-sanity | 182 | — | ~940 | Automated safety check: Pass | MIT | |
| Email Template Builderalirezarezvani/claude-skills | 28k | 1 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Add Servicelbedner/aegis-stack | 143 | — | ~5.2k | Automated safety check: Pass | MIT | |
| Update Project Docshoangsonww/Claude-Code-Agent-Monitor | 1.1k | — | ~2.6k | Automated safety check: Pass | MIT |
microsoft/work-iq
Create, build, deploy, and localize declarative agents for M365 Copilot and Teams.
robotostudio/turbo-start-sanity
Sanity development best practices for schema design, GROQ queries, TypeGen, Visual Editing, images, Portable Text, Studio structure, localization, migrations, Sanity Functions, Blueprints, and…
alirezarezvani/claude-skills
Build complete transactional email systems: React Email templates, provider integration (Resend, Postmark, SendGrid, AWS SES), preview server, i18n support, dark mode, spam optimization, analytics…
lbedner/aegis-stack
A skill your agent uses when adding a new service (a business capability like auth, AI, blog, or finance) to the Aegis Stack framework itself.
hoangsonww/Claude-Code-Agent-Monitor
MANDATORY for every coding agent (Claude Code, Codex, or any other) — keep this repository's documentation in sync after any change to behavior, configuration, interfaces, events, schema, or features.
davidortinau/maui-skills
Guidance for localizing .NET MAUI apps: multi-language support via .resx resource files, culture resolution and runtime switching, RTL layout, platform language declarations (iOS/Mac Catalyst…
microbus-io/fabric
TRIGGER when user asks to add or modify a configuration property or setting, or to make a value configurable.
microbus-io/fabric
TRIGGER when user asks to add, create, or modify an API endpoint, function, or RPC, or a route that accepts typed arguments and returns typed results.
microbus-io/fabric
TRIGGER when user asks to listen for, subscribe to, or handle an event emitted by another microservice.
microbus-io/fabric
TRIGGER when user asks to add or modify a metric, counter, gauge, or histogram, or to track/measure an operation.
microbus-io/fabric
TRIGGER when user asks to fire, emit, or publish an event that other microservices can subscribe to.
microbus-io/fabric
TRIGGER when user asks to add a Python-backed function endpoint to an existing Python-backed microservice.
Categories
TRIGGER when user asks to externalize, internationalize, or translate user-facing strings. Translate Strings is an agent skill from microbus-io/fabric. TRIGGER when user asks to externalize, internationalize, or translate user-facing strings.
Translate Strings fits situations like: user asks to externalize; internationalize; translate user-facing strings.
Run `npx skills add microbus-io/fabric --skill translate-strings -a claude-code`. Or copy the skill folder (.claude/skills/microbus/translate-strings in microbus-io/fabric) into .claude/skills/translate-strings in your project. Claude Code loads it when a task matches its description.
Run `npx skills add microbus-io/fabric --skill translate-strings -a codex`. Or copy the skill folder (.claude/skills/microbus/translate-strings in microbus-io/fabric) into .agents/skills/translate-strings in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microbus-io/fabric --skill translate-strings -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/translate-strings, .gemini/skills/translate-strings, .github/skills/translate-strings and .opencode/skills/translate-strings in your project.
SKILL.md names no scripts, command-line tools or credentials: Translate Strings is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Translate Strings is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 879 tokens (SKILL.md is roughly 3.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Translate Strings: Declarative Agent Developer (microsoft/work-iq, 1k stars), Sanity Best Practices (robotostudio/turbo-start-sanity, 182 stars), Email Template Builder (alirezarezvani/claude-skills, 28k stars) and Add Service (lbedner/aegis-stack, 143 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
microbus-io (a GitHub organization) maintains it in microbus-io/fabric, which has 172 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on September 28, 2026.
Source: microbus-io/fabric on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.