ACA campaign copywriting
Write usable campaign copy and prompt-mode instructions that fit ACA's campaign builder.
Rules
- No fake familiarity, fake stats, hype, or unverifiable claims.
- Use short messages with one CTA.
- For scalable personalization, write ACA
message_mode: "prompt" instructions instead of hardcoded per-lead messages.
- Do not update a live campaign without approval.
Workflow
- Inspect context with
list_products, list_icps, list_brand_voices, list_campaigns, and list_lead_lists.
- If rewriting an existing campaign, call
get_campaign.
- Draft:
- Connection request
- First DM
- Email 1
- Follow-up
- Breakup or fallback message
- Convert the copy into ACA campaign step prompts where personalization should vary by lead.
- Run the output through
aca-copy-spam-checker.
- Save final copy with
create_strategy_document, or update a draft/paused campaign with update_campaign after approval.
Output format
Campaign copy draft: {campaign_or_plan}
Connection request:
{copy}
Email 1:
Subject: {subject}
{body}
Prompt-mode instructions:
{prompt}
Recommended next: {action}
Skill chaining
This skill participates in the ACA chain. Preserve the selected ACA org, relevant IDs, user brief, approval state, and any generated artifacts when continuing into another ACA skill. If the user asked for execution and a downstream condition is met, continue into the next skill automatically; otherwise end with the handoff block.
Upstream
- Usually called by
aca-campaign-strategy, aca-launch-outreach, or aca-experiment-design.
Auto-continue conditions
- After drafting copy -> continue to
aca-copy-spam-checker.
- If scalable personalization is required -> continue to
aca-personalization-pattern.
- If variants are requested -> continue to
aca-copy-variants.
- If copy passes QA and campaign prerequisites exist -> continue to
aca-launch-outreach.
Stop before chaining when
- Ask before updating draft/paused campaigns or sequences.
Downstream skills
aca-copy-spam-checker - QA deliverability and credibility.
aca-personalization-pattern - convert copy into prompt-mode personalization.
aca-copy-variants - create controlled variants.
aca-launch-outreach - build the campaign.
Handoff block
Chain state: {continue|needs_approval|blocked|complete}
Next skill: {aca-skill-name|none}
Reason: {why this handoff is or is not needed}
Carry forward: {org_id/name, product_id, icp_id, lead_list_id, campaign_id, sequence_id, job_id, approvals, constraints}
ACA tools used
list_products, list_icps, list_brand_voices
list_campaigns, get_campaign, update_campaign
list_lead_lists
create_strategy_document
1---2name: aca-campaign-copywriting3description: Write ACA outbound campaign copy for LinkedIn, email, WhatsApp, and multi-channel sequences. Use when the user asks for cold email copy, LinkedIn DMs, campaign prompts, follow-ups, or rewrite campaign messaging.4license: MIT5---67# ACA campaign copywriting89Write usable campaign copy and prompt-mode instructions that fit ACA's campaign builder.1011## Rules1213- No fake familiarity, fake stats, hype, or unverifiable claims.14- Use short messages with one CTA.15- For scalable personalization, write ACA `message_mode: "prompt"` instructions instead of hardcoded per-lead messages.16- Do not update a live campaign without approval.1718## Workflow19201. Inspect context with `list_products`, `list_icps`, `list_brand_voices`, `list_campaigns`, and `list_lead_lists`.212. If rewriting an existing campaign, call `get_campaign`.223. Draft:23 - Connection request24 - First DM25 - Email 126 - Follow-up27 - Breakup or fallback message284. Convert the copy into ACA campaign step prompts where personalization should vary by lead.295. Run the output through `aca-copy-spam-checker`.306. Save final copy with `create_strategy_document`, or update a draft/paused campaign with `update_campaign` after approval.3132## Output format3334```text35Campaign copy draft: {campaign_or_plan}3637Connection request:38{copy}3940Email 1:41Subject: {subject}42{body}4344Prompt-mode instructions:45{prompt}4647Recommended next: {action}48```4950## Skill chaining5152This skill participates in the ACA chain. Preserve the selected ACA org, relevant IDs, user brief, approval state, and any generated artifacts when continuing into another ACA skill. If the user asked for execution and a downstream condition is met, continue into the next skill automatically; otherwise end with the handoff block.5354**Upstream**55- Usually called by `aca-campaign-strategy`, `aca-launch-outreach`, or `aca-experiment-design`.5657**Auto-continue conditions**58- After drafting copy -> continue to `aca-copy-spam-checker`.59- If scalable personalization is required -> continue to `aca-personalization-pattern`.60- If variants are requested -> continue to `aca-copy-variants`.61- If copy passes QA and campaign prerequisites exist -> continue to `aca-launch-outreach`.6263**Stop before chaining when**64- Ask before updating draft/paused campaigns or sequences.6566**Downstream skills**67- `aca-copy-spam-checker` - QA deliverability and credibility.68- `aca-personalization-pattern` - convert copy into prompt-mode personalization.69- `aca-copy-variants` - create controlled variants.70- `aca-launch-outreach` - build the campaign.7172**Handoff block**7374```text75Chain state: {continue|needs_approval|blocked|complete}76Next skill: {aca-skill-name|none}77Reason: {why this handoff is or is not needed}78Carry forward: {org_id/name, product_id, icp_id, lead_list_id, campaign_id, sequence_id, job_id, approvals, constraints}79```8081## ACA tools used8283- `list_products`, `list_icps`, `list_brand_voices`84- `list_campaigns`, `get_campaign`, `update_campaign`85- `list_lead_lists`86- `create_strategy_document`