$npx -y skills add indranilbanerjee/socialforge --skill adapt-copyAdapt post copy per platform — character limits, hashtags, CTAs, tone, and compliance checking.
| 1 | # /socialforge:adapt-copy — Copy Adapter |
| 2 | |
| 3 | Transform a single caption brief into platform-optimized copy for each target platform. |
| 4 | |
| 5 | ## Context efficiency |
| 6 | |
| 7 | Asset-heavy skill. **Grep before Read** the asset catalog (`${CLAUDE_PLUGIN_DATA}/<brand>/assets/index.json`) — never list the asset directory. Reference generated images / videos by path, not by loading metadata. Brand profile loads once per session. |
| 8 | |
| 9 | ## Process (Per Post x Per Platform) |
| 10 | |
| 11 | 1. Load post brief (topic, caption_brief, CTA, hashtags, campaign) |
| 12 | 2. Load brand-config.json (tone, hashtags, language settings) |
| 13 | 3. Load compliance-rules.json (banned phrases, disclaimers) |
| 14 | 4. Generate platform-specific copy: |
| 15 | |
| 16 | | Platform | Tone | Limit | Hashtags | Link | |
| 17 | |----------|------|-------|----------|------| |
| 18 | | LinkedIn | Professional | 3,000 chars (140 before fold) | 3-5 | Direct URL | |
| 19 | | Instagram | Conversational | 2,200 chars | 20-30 (first comment) | Link in bio | |
| 20 | | X/Twitter | Punchy, concise | 280 chars | 1-2 | Direct URL | |
| 21 | | Facebook | Casual | 500 chars optimal | 1-3 | Direct URL | |
| 22 | | YouTube | Description format | 5,000 chars | 3-5 | Direct URLs | |
| 23 | |
| 24 | 5. Apply brand hashtags (always_include + campaign-specific) |
| 25 | 6. Run compliance check — flag banned phrases, add disclaimers |
| 26 | 7. Handle bilingual posts if configured |
| 27 | 8. Save to `production/copy/post-{id}-{platform}-copy.txt` |
| 28 | |
| 29 | ## Compliance Check (Mandatory) |
| 30 | |
| 31 | Before saving any copy: |
| 32 | - Scan against compliance-rules.json banned_phrases |
| 33 | - Check data claims against data_claim_rules |
| 34 | - Add required disclaimers per platform |
| 35 | - Verify platform-specific rules (link policy, hashtag limits) |
| 36 | |
| 37 | **Critical violations BLOCK** — copy cannot proceed. |
| 38 | **Warnings are noted** but don't block. |
| 39 | |
| 40 | ## Output |
| 41 | |
| 42 | ``` |
| 43 | Copy adapted: Post P04 |
| 44 | LinkedIn: 847 chars (under 3000) ✓ | 4 hashtags ✓ | CTA: direct link ✓ |
| 45 | Instagram: 1,203 chars ✓ | 25 hashtags (first comment) ✓ | CTA: link in bio ✓ |
| 46 | X: 267 chars (under 280) ✓ | 2 hashtags ✓ | CTA: direct link ✓ |
| 47 | Compliance: PASSED (0 critical, 1 warning: "consider adding source for 47% claim") |
| 48 | ``` |
| 49 | |
| 50 | ## Timeout & Fallback |
| 51 | - Copy generation: 30-second timeout per platform variant |
| 52 | - Compliance check: 10-second timeout. If fails, flag for manual review |