{"id":"8cc583e7-373a-444d-87ba-043687b430cf","shortId":"EtUfvs","kind":"skill","title":"content-and-copy","tagline":"Write or edit website copy, blog content, and editorial pieces with attention to voice, structure, and goal. Use this skill whenever the user wants to write an article, draft website copy, edit existing content for clarity or voice, write a blog post, or produce general editorial","description":"# Content and Copy\n\nWrite or edit content that serves a specific reader and goal. Stack-agnostic. This skill is for general content production. Specialized skills exist for landing pages (`landing-page-copy`) and email (`email-sequences`).\n\n---\n\n## When to use\n\n- Writing a blog post or article\n- Drafting website copy (homepage sections, about, services)\n- Editing existing content for voice or clarity\n- Writing how-to guides, listicles, or explainers\n- Producing knowledge base or help center articles\n- Adapting brand voice to a specific piece\n\n## When NOT to use\n\n- Landing pages with conversion goals (use `landing-page-copy`)\n- Email campaigns or sequences (use `email-sequences`)\n- Brand voice definition (use `brand-voice`)\n- SEO keyword research (use `seo-keyword`)\n- Content strategy and planning (use `content-strategy`)\n\n---\n\n## Required inputs\n\n- The piece to be written or edited\n- The target reader (specific audience segment)\n- The goal of the piece (inform, convert, rank, retain, entertain)\n- The brand voice (or willingness to define it)\n- Length target and any structural constraints\n\nIf brand voice is undefined, run `brand-voice` first or use a working voice and document it as you go.\n\n---\n\n## The framework: 5 dimensions\n\nStrong content is strong on all five. Weakness on any one drags the rest down.\n\n### 1. Hook\n\nThe opening earns the read. Most readers decide whether to continue within 3 to 5 seconds.\n\n**Strong hooks do one of:**\n\n- **Promise specific value.** \"By the end, you'll know exactly which X to pick for your situation.\"\n- **Surface a tension.** \"Most advice on X is wrong. Here's why.\"\n- **Open a loop.** A question or scenario the rest of the piece resolves.\n- **State a contrarian point.** Provided you can defend it.\n- **Show, don't summarize.** A specific moment or scenario the reader recognizes.\n\n**Weak hooks:**\n\n- Throat-clearing (\"In today's fast-paced world...\")\n- Dictionary-definition openers (\"X is a type of Y that...\")\n- Stating the obvious (\"Many people struggle with X.\")\n- Vague promises (\"This article will explore X.\")\n\n### 2. Structure\n\nThe reader follows the flow without effort.\n\n**Common structures:**\n\n- **Problem → Solution → Proof.** Most non-fiction.\n- **List + reasoning.** Listicles with substance, not filler.\n- **How-to (numbered steps).** Procedural content.\n- **Compare → Contrast → Recommend.** Comparison and review content.\n- **Story → Lesson.** Narrative non-fiction.\n- **Question → Answer → Implication.** Explainers and analysis.\n\nPick a structure. Stick to it. Most weak content fails because the writer drifted between structures.\n\n### 3. Voice\n\nThe piece sounds like the brand.\n\n- Voice attributes consistent throughout (per `brand-voice` definition)\n- Tone shifts appropriately for context (a serious topic gets a serious tone, even from a playful brand)\n- Vocabulary preferences honored\n- Grammar and style standards followed (contractions, em dashes, sentence length)\n- Reads aloud like the brand would actually talk\n\n**Test:** Read a paragraph aloud. Does it sound like the brand? If it sounds like AI, generic marketing, or someone else's voice, edit until it doesn't.\n\n### 4. Substance\n\nThe piece earns its length. Every paragraph adds something.\n\n**Substance comes from:**\n\n- **Specifics.** \"Roughly 40 percent\" beats \"many.\" Names, numbers, examples, data.\n- **Original perspective.** Your take, not a summary of everyone else's.\n- **Actionable detail.** What the reader does with this information.\n- **Honest tradeoffs.** What's NOT true, what doesn't work, what's overhyped.\n- **Real examples.** Specific scenarios, real customers, real failures.\n\n**Lack of substance shows up as:**\n\n- Padding (\"It's important to note that...\")\n- Restating the same point in three different paragraphs\n- Generalities that anyone in the category could write\n- Word counts hit by stretching, not depth\n\n### 5. Closing\n\nThe piece ends with intention.\n\n**Strong closings:**\n\n- **Resolve the loop opened in the hook.**\n- **Issue a specific next action.** What does the reader do now?\n- **Land a memorable line.** Something quotable.\n- **Return to the opening.** Echo or invert the first line.\n\n**Weak closings:**\n\n- Summary that restates the article\n- \"Hope this helps!\" or equivalent\n- A wall of CTAs from unrelated programs\n- Trailing off with no clear ending\n\n---\n\n## Workflow\n\n### For new pieces\n\n1. **Confirm the brief.** Reader, goal, length, voice. If the brief is vague, do not write yet.\n2. **Outline.** Structure first. Headlines and section purposes only. Skip prose until the structure is sound.\n3. **Open with the hook.** Write the opening before anything else. If the hook isn't working, the rest won't either.\n4. **Draft for substance.** First draft is about getting the substance down. Voice comes in editing.\n5. **Edit for voice.** Read aloud. Tighten sentences. Cut padding. Apply brand voice.\n6. **Edit for clarity.** Each paragraph: does it earn its place? Each sentence: is the meaning unambiguous?\n7. **Pre-publish checks.** Headers in order, no skipped levels, internal links present, image alt text written, SEO basics applied (title, meta, slug).\n\n### For editing existing content\n\n1. **Read the whole piece first.** Do not edit on first read. Understand it before changing it.\n2. **Identify what's working.** Note the strong sections so you don't damage them.\n3. **Identify what's broken.** Voice mismatches, weak structure, vague claims, padding.\n4. **Edit by priority.** Structure first (move sections, cut sections). Then substance (strengthen claims). Then voice. Then sentence-level polish.\n5. **Read aloud.** Catch awkward phrasing the eye misses.\n\n---\n\n## Failure patterns\n\n- **Writing without a brief.** Without reader, goal, and voice defined, the piece drifts.\n- **Burying the lead.** The most important thing is in paragraph 8 because the writer \"got there.\"\n- **Padding to hit word count.** Length should serve the reader, not the production schedule.\n- **Generic voice.** Sounds like every other article in the category. Brand voice neutralized.\n- **Weak transitions.** Sections feel disconnected. Reader has to do the work the writer should have done.\n- **No closing.** The piece runs out instead of ending.\n- **Edit by adding.** Fixing weak content by piling on more words. Strong editing usually cuts.\n- **Ignoring the headers.** Headers carry navigation weight. Bad headers fail readers who scan.\n\n---\n\n## Output format\n\nDefault output is a markdown document at `[content-slug].md` ready to import into the CMS.\n\nStructure:\n```markdown\n# [H1: matches the title or tightly paraphrases]\n\n[Hook paragraph. Earns the read in 3 to 5 seconds.]\n\n[Body content with H2 sections, H3 subsections where useful.]\n\n## [H2 section heading - descriptive, not clever]\n\n[Section content.]\n\n### [H3 if needed]\n\n[Subsection content.]\n\n## [H2 section heading]\n\n[Section content.]\n\n## [Closing section]\n\n[Closing that resolves and points to next action.]\n```\n\nFront-matter for SEO and CMS:\n```yaml\n---\ntitle: [SEO title, 50 to 60 chars]\ndescription: [Meta description, 120 to 160 chars]\nslug: [url-slug]\nauthor: [author]\ndate: [YYYY-MM-DD]\nlast_updated: [YYYY-MM-DD]\ntags: [tag1, tag2]\ncategory: [category]\n---\n```\n\n---\n\n## Reference files\n\n- [`references/content-brief-template.md`](references/content-brief-template.md) - The brief that should exist before any content is written.\n- [`references/content-edit-checklist.md`](references/content-edit-checklist.md) - Pre-publish editing checklist.","tags":["content","and","copy","claude","skills","rampstackco","agent-skills","anthropic","awesome-claude-code","awesome-claude-prompts","awesome-claude-skills","claude-code"],"capabilities":["skill","source-rampstackco","skill-content-and-copy","topic-agent-skills","topic-anthropic","topic-awesome-claude-code","topic-awesome-claude-prompts","topic-awesome-claude-skills","topic-claude","topic-claude-code","topic-claude-skills","topic-good-first-issue","topic-mcp","topic-product-management","topic-seo"],"categories":["claude-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/rampstackco/claude-skills/content-and-copy","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add rampstackco/claude-skills","source_repo":"https://github.com/rampstackco/claude-skills","install_from":"skills.sh"}},"qualityScore":"0.540","qualityRationale":"deterministic score 0.54 from registry signals: · indexed on github topic:agent-skills · 181 github stars · SKILL.md body (7,491 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:55:13.711Z","embedding":null,"createdAt":"2026-04-30T01:01:27.407Z","updatedAt":"2026-05-18T18:55:13.711Z","lastSeenAt":"2026-05-18T18:55:13.711Z","tsv":"'1':258,705,834 '120':1112 '160':1114 '2':382,722,851 '3':272,449,738,866,1053 '4':532,760,878 '40':548 '5':241,274,633,776,899,1055 '50':1105 '6':789 '60':1107 '7':806 '8':933 'action':567,653,1093 'actual':502 'ad':993 'adapt':128 'add':541 'advic':302 'agnost':67 'ai':519 'aloud':497,508,781,901 'alt':821 'analysi':432 'answer':428 'anyon':620 'anyth':747 'appli':786,826 'appropri':468 'articl':32,98,127,378,682,959 'attent':16 'attribut':458 'audienc':192 'author':1120,1121 'awkward':903 'bad':1013 'base':123 'basic':825 'beat':550 'blog':10,45,95 'bodi':1057 'brand':129,157,162,205,219,225,456,463,482,500,514,787,963 'brand-voic':161,224,462 'brief':708,715,913,1143 'broken':870 'buri':923 'campaign':150 'carri':1010 'catch':902 'categori':623,962,1136,1137 'center':126 'chang':849 'char':1108,1115 'check':810 'checklist':1158 'claim':876,891 'clariti':40,112,792 'clear':348,699 'clever':1071 'close':634,641,677,983,1084,1086 'cms':1037,1100 'come':544,773 'common':391 'compar':414 'comparison':417 'confirm':706 'consist':459 'constraint':217 'content':2,11,38,51,57,73,108,171,177,244,413,420,441,833,996,1029,1058,1073,1078,1083,1149 'content-and-copi':1 'content-slug':1028 'content-strategi':176 'context':470 'continu':270 'contract':491 'contrarian':325 'contrast':415 'convers':142 'convert':200 'copi':4,9,35,53,84,101,148 'could':624 'count':627,943 'ctas':691 'custom':594 'cut':784,886,1005 'damag':864 'dash':493 'data':555 'date':1122 'dd':1126,1132 'decid':267 'default':1021 'defend':330 'defin':210,919 'definit':159,358,465 'depth':632 'descript':1069,1109,1111 'detail':568 'dictionari':357 'dictionary-definit':356 'differ':616 'dimens':242 'disconnect':970 'document':234,1026 'doesn':530,583 'done':981 'draft':33,99,761,765 'drag':254 'drift':446,922 'earn':262,536,797,1049 'echo':670 'edit':7,36,56,106,187,527,775,777,790,831,842,879,991,1003,1157 'editori':13,50 'effort':390 'either':759 'els':524,565,748 'em':492 'email':86,88,149,155 'email-sequ':87,154 'end':286,637,700,990 'entertain':203 'equival':687 'even':478 'everi':539,957 'everyon':564 'exact':290 'exampl':554,590 'exist':37,77,107,832,1146 'explain':120,430 'explor':380 'eye':906 'fail':442,1015 'failur':596,908 'fast':353 'fast-pac':352 'feel':969 'fiction':399,426 'file':1139 'filler':406 'first':227,674,725,764,839,844,883 'five':249 'fix':994 'flow':388 'follow':386,490 'format':1020 'framework':240 'front':1095 'front-matt':1094 'general':49,72,618 'generic':520,953 'get':474,768 'go':238 'goal':21,64,143,195,710,916 'got':937 'grammar':486 'guid':117 'h1':1040 'h2':1060,1066,1079 'h3':1062,1074 'head':1068,1081 'header':811,1008,1009,1014 'headlin':726 'help':125,685 'hit':628,941 'homepag':102 'honest':576 'honor':485 'hook':259,277,345,648,742,751,1047 'hope':683 'how-to':114,407 'identifi':852,867 'ignor':1006 'imag':820 'implic':429 'import':606,928,1034 'inform':199,575 'input':180 'instead':988 'intent':639 'intern':817 'invert':672 'isn':752 'issu':649 'keyword':165,170 'know':289 'knowledg':122 'lack':597 'land':79,82,139,146,660 'landing-page-copi':81,145 'last':1127 'lead':925 'length':212,495,538,711,944 'lesson':422 'level':816,897 'like':454,498,512,518,956 'line':663,675 'link':818 'list':400 'listicl':118,402 'll':288 'loop':312,644 'mani':370,551 'markdown':1025,1039 'market':521 'match':1041 'matter':1096 'md':1031 'mean':804 'memor':662 'meta':828,1110 'mismatch':872 'miss':907 'mm':1125,1131 'moment':338 'move':884 'name':552 'narrat':423 'navig':1011 'need':1076 'neutral':965 'new':703 'next':652,1092 'non':398,425 'non-fict':397,424 'note':608,856 'number':410,553 'obvious':369 'one':253,279 'open':261,310,359,645,669,739,745 'order':813 'origin':556 'outlin':723 'output':1019,1022 'overhyp':588 'pace':354 'pad':603,785,877,939 'page':80,83,140,147 'paragraph':507,540,617,794,932,1048 'paraphras':1046 'pattern':909 'peopl':371 'per':461 'percent':549 'perspect':557 'phrase':904 'pick':294,433 'piec':14,134,182,198,321,452,535,636,704,838,921,985 'pile':998 'place':799 'plan':174 'play':481 'point':326,613,1090 'polish':898 'post':46,96 'pre':808,1155 'pre-publish':807,1154 'prefer':484 'present':819 'prioriti':881 'problem':393 'procedur':412 'produc':48,121 'product':74,951 'program':694 'promis':281,376 'proof':395 'prose':732 'provid':327 'publish':809,1156 'purpos':729 'question':314,427 'quotabl':665 'rank':201 'read':264,496,505,780,835,845,900,1051 'reader':62,190,266,342,385,571,657,709,915,948,971,1016 'readi':1032 'real':589,593,595 'reason':401 'recogn':343 'recommend':416 'refer':1138 'references/content-brief-template.md':1140,1141 'references/content-edit-checklist.md':1152,1153 'requir':179 'research':166 'resolv':322,642,1088 'rest':256,318,756 'restat':610,680 'retain':202 'return':666 'review':419 'rough':547 'run':223,986 'scan':1018 'scenario':316,340,592 'schedul':952 'second':275,1056 'section':103,728,859,885,887,968,1061,1067,1072,1080,1082,1085 'segment':193 'sentenc':494,783,801,896 'sentence-level':895 'seo':164,169,824,1098,1103 'seo-keyword':168 'sequenc':89,152,156 'serious':472,476 'serv':59,946 'servic':105 'shift':467 'show':332,600 'situat':297 'skill':24,69,76 'skill-content-and-copy' 'skip':731,815 'slug':829,1030,1116,1119 'solut':394 'someon':523 'someth':542,664 'sound':453,511,517,737,955 'source-rampstackco' 'special':75 'specif':61,133,191,282,337,546,591,651 'stack':66 'stack-agnost':65 'standard':489 'state':323,367 'step':411 'stick':436 'stori':421 'strategi':172,178 'strengthen':890 'stretch':630 'strong':243,246,276,640,858,1002 'structur':19,216,383,392,435,448,724,735,874,882,1038 'struggl':372 'style':488 'subsect':1063,1077 'substanc':404,533,543,599,763,770,889 'summar':335 'summari':562,678 'surfac':298 'tag':1133 'tag1':1134 'tag2':1135 'take':559 'talk':503 'target':189,213 'tension':300 'test':504 'text':822 'thing':929 'three':615 'throat':347 'throat-clear':346 'throughout':460 'tight':1045 'tighten':782 'titl':827,1043,1102,1104 'today':350 'tone':466,477 'topic':473 'topic-agent-skills' 'topic-anthropic' 'topic-awesome-claude-code' 'topic-awesome-claude-prompts' 'topic-awesome-claude-skills' 'topic-claude' 'topic-claude-code' 'topic-claude-skills' 'topic-good-first-issue' 'topic-mcp' 'topic-product-management' 'topic-seo' 'tradeoff':577 'trail':695 'transit':967 'true':581 'type':363 'unambigu':805 'undefin':222 'understand':846 'unrel':693 'updat':1128 'url':1118 'url-slug':1117 'use':22,92,138,144,153,160,167,175,229,1065 'user':27 'usual':1004 'vagu':375,717,875 'valu':283 'vocabulari':483 'voic':18,42,110,130,158,163,206,220,226,232,450,457,464,526,712,772,779,788,871,893,918,954,964 'wall':689 'want':28 'weak':250,344,440,676,873,966,995 'websit':8,34,100 'weight':1012 'whenev':25 'whether':268 'whole':837 'willing':208 'within':271 'without':389,911,914 'won':757 'word':626,942,1001 'work':231,585,754,855,976 'workflow':701 'world':355 'would':501 'write':5,30,43,54,93,113,625,720,743,910 'writer':445,936,978 'written':185,823,1151 'wrong':306 'x':292,304,360,374,381 'y':365 'yaml':1101 'yet':721 'yyyi':1124,1130 'yyyy-mm-dd':1123,1129","prices":[{"id":"e8b95c07-0775-4612-97bc-0fd3c9951805","listingId":"8cc583e7-373a-444d-87ba-043687b430cf","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"rampstackco","category":"claude-skills","install_from":"skills.sh"},"createdAt":"2026-04-30T01:01:27.407Z"}],"sources":[{"listingId":"8cc583e7-373a-444d-87ba-043687b430cf","source":"github","sourceId":"rampstackco/claude-skills/content-and-copy","sourceUrl":"https://github.com/rampstackco/claude-skills/tree/main/skills/content-and-copy","isPrimary":false,"firstSeenAt":"2026-04-30T01:01:27.407Z","lastSeenAt":"2026-05-18T18:55:13.711Z"}],"details":{"listingId":"8cc583e7-373a-444d-87ba-043687b430cf","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"rampstackco","slug":"content-and-copy","github":{"repo":"rampstackco/claude-skills","stars":181,"topics":["agent-skills","anthropic","awesome-claude-code","awesome-claude-prompts","awesome-claude-skills","claude","claude-code","claude-skills","good-first-issue","mcp","product-management","seo","show-hn","showcase","showdev","web-design","web-development"],"license":"mit","html_url":"https://github.com/rampstackco/claude-skills","pushed_at":"2026-05-10T22:40:22Z","description":"Stack-agnostic Claude Skills covering the full website lifecycle: brand, design, content, SEO, dev, ops, growth, and research. Build, ship, audit, optimize.","skill_md_sha":"e8a1f80adc1ffd0e7d69d90ceb6137dae1f87f34","skill_md_path":"skills/content-and-copy/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/rampstackco/claude-skills/tree/main/skills/content-and-copy"},"layout":"multi","source":"github","category":"claude-skills","frontmatter":{"name":"content-and-copy","description":"Write or edit website copy, blog content, and editorial pieces with attention to voice, structure, and goal. Use this skill whenever the user wants to write an article, draft website copy, edit existing content for clarity or voice, write a blog post, or produce general editorial content. Triggers on write a blog post, draft an article, write copy for, edit this, rewrite this, write content, write a guide, draft a how-to, write web copy. Also triggers when content has been outlined and now needs to be written, or when existing content needs voice or clarity edits."},"skills_sh_url":"https://skills.sh/rampstackco/claude-skills/content-and-copy"},"updatedAt":"2026-05-18T18:55:13.711Z"}}