npx skills add ...
npx skills add trussary/vietnamese-language-skill --skill vietnamese-business-comms
Writes and reviews native-quality Vietnamese (vi-VN) marketing and sales copy — email campaigns and newsletters, Zalo OA ZNS/ZBS templates, Facebook and TikTok ads, Shopee and Lazada listings, SEO articles, social captions, push notifications, press releases, KOL/KOC briefs, livestream scripts, cold outreach, follow-up sequences, báo giá and quotes, proposals, payment reminders, and Tết greetings. Use when drafting Vietnamese promotional, outbound, or B2B sales content, choosing anh/chị versus bạn, or checking khuyến mại discount limits, anti-spam windows, influencer disclosure, and advertising-law compliance. For website hero and section copy, use vietnamese-landing-copy instead.
npx skills add trussary/vietnamese-language-skill --skill vietnamese-business-comms
Campaign and outbound copy fails in two directions at once. It fails commercially by reading as a mass mailing — wrong pronoun, translated CTA, formal vocabulary where the market uses loanwords. And it fails legally, because Vietnamese advertising law regulates ordinary marketing enthusiasm: unproven superlatives, discounts over 50%, messages sent outside the legal window, and, from 01/01/2026, undisclosed influencer content.
Both failures are invisible to a fluency check. Every rule below exists to stop a specific one.
Vietnamese has no neutral "you", and in this skill the choice is made by where the message lands rather than by the brand's usual voice.
| Channel or genre | Register | Address |
|---|---|---|
| Zalo ZNS/ZBS template | zns | Quý khách — even for a brand that says bạn everywhere else |
| B2B cold email, quote, proposal, dunning | b2b | anh/chị, self as em or tôi |
| E-commerce, social, ads, push | saas | bạn |
| Mid-market services, consulting | consult | anh/chị |
| Press release | press | Institutional third person, Quý vị if anyone |
| Livestream script | livestream | cả nhà, mọi người — spoken register |
bạn in B2B outreach is the single clearest tell of an automated send. No Vietnamese
salesperson opens a cold email with Chào bạn.
Who you are in the sentence — em versus tôi, and why age outranks job title —
references/b2b-xung-ho.md. The shared pronoun matrix:
references/register-matrix.md.
bạn or mình in B2B outreach, a quote, or a dunning notice. anh/chị for
them; em if you are plausibly junior, tôi otherwise.nhất, số 1, duy nhất, hàng đầu, bán chạy nhất as an unproven
claim. Illegal under Điều 8 khoản 11 Luật Quảng cáo 16/2012/QH13, with current fines.
bán chạy nhất is a ranking claim like any other.chương trình khuyến mại tập trung. NĐ 81/2018
as amended by NĐ 128/2024. A headline number over 50 is a compliance question.Freeship, Deal, Voucher,
Mua ngay. Học thêm means take extra classes and is never a CTA.Calques with settled native equivalents (trích dẫn → báo giá, theo lên → theo dõi,
lời chào tốt nhất → Trân trọng), the e-commerce vocabulary the market actually uses, sales
artifact names, and CTAs by register:
references/glossary.md — machine-readable, so every row is a lint rule.
Phrases that mark a mass mailing, plus the health and outcome claims that are never permissible: references/banned-phrases.md.
Each channel imposes hard limits that copy has to be written into, not trimmed to afterwards: the ZNS 400-character cap and transactional/promotional split, marketplace title conventions (no ALL-CAPS, no emoji), SMS at 70 characters per segment once diacritics force UCS-2, email subject truncation, emoji density, and the livestream spoken register.
The 50% ceiling and its <!-- khuyen-mai-tap-trung: ... --> exemption, anti-spam windows, the
KOL/KOC disclosure duty new from 01/01/2026, comparative-advertising limits, and sector
pre-approval for health and supplement claims:
references/promo-law.md — and references/compliance.md for the cross-cutting citations shared with every Vietnamese skill.
Financial promotion — cam kết lợi nhuận, lãi suất 0%, investment products — is not
handled here. Route it to vietnamese-finance-copy and to legal review.
VND groups with periods and decimalizes with commas: 2.500.000 ₫. Prose uses 2,5 tỷ and
35 triệu, tables use grouped digits, and the two are never mixed in one context. Dates are
dd/MM/yyyy. Phones are 0xxx xxx xxx or +84 with the trunk zero dropped.
references/locale-formatting.md, plus references/unicode-and-tone.md for NFC and the tone-mark consistency rule.
Run the validator immediately after writing. If it reports errors, fix them and run again. Only present the copy once it passes.
--doctype is what turns on the structural rules, and they stay silent without it:
zns, zns-transactional, marketplace-title, cold-outreach, bao-gia, dunning,
bulk-message, promo. --list-rules prints everything this skill can emit.--register zns|b2b|press|livestream|saas|consult|… enables PRO002.0 = clean or warnings only. Exit 1 = errors that must be fixed.--json for machine-readable findings; --strict to fail on warnings too.--fix rewrites NFC violations in place; every other rule is a human judgement call.Two annotations suppress a legal warning where the paperwork genuinely exists. Neither creates the paperwork:
references/examples.md — read the bad→good corpus before writing anything long.
Then run the checklist. The linter cannot tell you whether the xưng hô fits this particular
recipient, whether a KOL actually used the product, whether an opt-in genuinely exists, or
whether a <!-- proof: --> annotation has anything behind it. Those are the four checks that
matter most: references/qa-checklist.md
Thương hiệu số 1 Việt Nam <!-- proof: Khảo sát Nielsen VN 2026, chứng chỉ 123/NS -->
Giảm đến 90% <!-- khuyen-mai-tap-trung: QĐ 123/SCT ngày 01/06/2026 -->