| name | moai-domain-copywriting |
| description | Brand-aligned copywriting specialist for marketing and product text. Enforces brand voice, anti-AI-slop rules, concrete numbers, and JSON section structure for downstream agent consumption. Covers hero, features, social_proof, cta, and footer sections with A/B variant output.
|
| license | Apache-2.0 |
| compatibility | Designed for Claude Code |
| allowed-tools | Read, Write, Edit, Grep, Glob |
| user-invocable | false |
| metadata | {"version":"1.0.0","category":"domain","status":"active","updated":"2026-04-20","tags":"copywriting, brand, marketing, voice, cta, headline, anti-slop","related-skills":"moai-domain-brand-design, moai-workflow-gan-loop"} |
| progressive_disclosure | {"enabled":true,"level1_tokens":100,"level2_tokens":5000} |
| triggers | {"keywords":["copy","copywriting","headline","cta","marketing","microcopy","tagline","landing page copy","value proposition","brand voice"],"agents":["expert-frontend"],"phases":["run"]} |
moai-domain-copywriting
Brand-aligned copywriting skill for marketing and product websites. Absorbed from agency-copywriting (v3.2.0). Enforces anti-AI-slop rules, requires brand voice context, and outputs structured JSON per section.
Quick Reference
Entry Conditions
Before generating copy, verify all three conditions are met:
- Brand voice context is loaded:
.moai/project/brand/brand-voice.md exists or is provided inline.
- Target page or section scope is explicitly stated (landing page, about, pricing, etc.).
- Anti-AI-slop checklist is active (see below).
If brand-voice.md does not exist, stop and instruct the user to run the brand interview via /moai design or manager-spec.
Output Format
All copy output is structured JSON with the following top-level sections:
{
"page_type": "<landing|about|services|pricing|contact>",
"sections": {
"hero": { "primary": {...}, "variant_a": {...} },
"problem": { "primary": {...}, "variant_a": {...} },
"solution": { "primary": {...}, "variant_a": {...} },
"features": { "primary": {...}, "variant_a": {...} },
"cta": { "primary": {...}, "variant_a": {...} },
"pricing": { "primary": {...}, "variant_a": {...} }
},
"metadata": {
"tone_profile": "<string>",
"word_count": <number>,
"reading_level": "<string>"
}
}
Each section must include at least one A/B variant (variant_a). The primary field is the recommended default.
Implementation Guide
Section Structure
hero: The first visible block. Subject must be the reader outcome, not the company name.
headline: Max 12 words. Present tense. Outcome-first.
subheadline: One sentence. Expands the headline mechanism. Max 25 words.
cta_primary: Verb + noun. Max 5 words. ("Start your free trial", "See how it works")
cta_secondary: Optional. Softer alternative. ("Learn more", "Watch demo")
problem: Acknowledges the reader's pain point before proposing a solution.
headline: Frame the cost of the status quo. Specific, not abstract.
body: 2-3 sentences. Use second-person ("you", "your team").
solution: Introduces your product or service as the answer.