Client Translator
Turn technical language into client-ready wording, and back
Once installed, Claude loads it on its own when your conversation matches. You can also call it directly with /client-translator.
Install just this one
npx archtmpl@latest --skill client-translator --globalFirst time? The whole install, step by step
- Open Claude Code — the terminal version or the desktop app, either one.
- In a terminal, paste the line above and press Enter. In the app, paste it into the chat and ask Claude to run it.
- Restart Claude Code. That's the whole install.
Set up plugins for me: run `claude plugin marketplace add https://archaiflow.com/plugins/marketplace.json` and then `claude plugin install client-translator@archaiflow`Paste into the Code tab (not Chat or Cowork) and approve when Claude asks. The third-party marketplace it mentions is this site. Windows may ask to install Git once.
What this skill does
Client Translator
Overview
Translate between two registers in architectural communication: technical (architect/engineer language) and client-facing (everyday language). Both directions. Outputs a paired document the team can hand directly to a client or to a consultant.
When to use
Trigger on:
- Pasted technical specs (U-values, system descriptions, change-order language) needing a client-readable version.
- Vague client wishes ("we want it to feel warmer and cozier") needing decomposition into technical options.
- File path to a spec section that needs a client-facing companion.
- Explicit asks: "translate this for the client", "put this in plain language", "client-facing version".
Do NOT trigger for the team-internal documents that already speak the right register.
Workflow
Step 1 — Bootstrap if needed
Check docs/client-comms/ exists. If not:
python scripts/init_comms_workspace.py
Step 2 — Detect direction
Determine whether the input is tech → client or client → tech:
- Tech → client: input is precise, contains units/codes/spec sections, often imperative.
- Client → tech: input is sensory/aesthetic, contains feelings or goals, often interrogative or wishful.
If ambiguous, ask the user once.
Step 3 — Translate
Load references/jargon_glossary.md for term-by-term mappings (e.g. "U-value" → "how well the wall blocks heat loss", "Passive House" → "near-zero-heating-bill standard"). Apply translation principles:
Tech → client:
- Keep accuracy. Do not soften specific claims into vague feelings.
- Anchor to lived experience. "R-27 wall assembly (U-0.037 Btu/h·ft²·°F)" → "interior walls stay at room temperature even on a 14°F winter day".
- Surface decision points. If the technical content implies a choice (budget, schedule, performance tradeoff), make it the headline.
- Compress. Detail belongs in the appendix; the client reads the first paragraph.
Client → tech:
- Extract the underlying constraint. "Cozy feel" might decompose into: warm CCT (2700-3000K), tactile materials (timber, fabric), enclosed proportions, warm finish tones.
- Offer 2-3 options at different cost/effort tiers, not a single answer.
- Flag what is actionable now vs dependent on further client input.
Step 4 — Write the paired document
Read assets/translation-template.md. Fill placeholders. Filename:
- Tech → client:
docs/client-comms/<source-slug>-client.md - Client → tech:
docs/client-comms/<wish-slug>-options.md
Slug rule: lowercase, [^a-z0-9-] removed, max 40 chars, derived from the source spec section name or the client's wish keywords.
Step 5 — Update the comms index
python scripts/append_to_index.py \
--date 2026-05-06 \
--slug exterior-wall-insulation-client \
--direction tech-to-client \
--tone warm
Step 6 — Report
Tell the user:
- Path to the paired document
- Whether any open decisions need client input
- Suggested transmittal channel if
docs/project.mdmentions one
Tone options
--tone=formal: Corporate or institutional clients. Honorifics, no contractions.--tone=warm(default): Individual residential clients. Conversational, reassuring.--tone=brief: Single-paragraph summary only.
Rules
- Sensitive numbers (cost, schedule risk) are emphasized, not buried.
- Never replace a specific number with a vague phrase. "$500,000 cost increase needed" stays as "$500,000 cost increase needed", possibly with "(about X% of the construction budget)" added.
- If the technical input contains a contradiction or assumption gap, flag it before producing the client version. Do not paper over technical issues in plain language.
Anti-patterns
- Editorializing the architect's design choices. Translate, do not advocate.
- Omitting decision points to make the message feel pleasant. Clients need to decide; clarity is the service.
- Inventing technical details to fill gaps. If a detail is missing, say so.
- Editing
index.mdmanually. Useappend_to_index.py.
Resources
scripts/init_comms_workspace.py— bootstrapdocs/client-comms/and the indexscripts/append_to_index.py— append a row todocs/client-comms/index.mdreferences/jargon_glossary.md— technical-term ↔ everyday-language mappingsassets/translation-template.md— paired document template
What it does not check
What this does. Moves one piece of text between two registers, technical and
client-facing, in either direction, and writes the pair to docs/client-comms/
so both versions stay together. Numbers, decisions, and risks survive the move
intact.
What this does not do.
- It does not change the substance. Cost, schedule, and performance figures cross over unchanged. A number is never softened into a phrase, and a decision the client has to make is never dropped to make the message read more easily.
- It does not invent the technical detail a source text is missing. A gap comes back as a gap, before the client version is written.
- It does not advocate for the design. Translating is the service; the argument is yours.
- It does not send anything. It writes files, and you transmit them.
- It does not translate between languages. Both registers are English.
What you need before starting. The source text, and the audience it is going to. If the direction is ambiguous the skill asks once rather than guessing.
Files it puts on your disk
.claude/skills/client-translator/5 files · 15.6 KBSKILL.md6.0 KB
- assets/1
translation-template.md966 B
- references/1
jargon_glossary.md6.6 KB
- scripts/2
append_to_index.py1.4 KBinit_comms_workspace.py734 B