adapt-copy
Adapt post copy for every target platform — character limits, hashtag counts and placement, tone, compliance, and the right CTA mechanism per platform…
Core creative engine — turns a calendar post into finished images or video using 4 modes (anchor-compose, enhance-extend, style-referenced, pure-creative) with brand assets, AI generation, and human approval before credits are spent. Triggers on \"/compose-creative\", \"generate
$ npx -y skills add indranilbanerjee/socialforge --skill compose-creative --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/compose-creativeContext preview
The summary Claude sees to decide when to auto-load this skill.
Core creative engine — turns a calendar post into finished images or video using 4 modes (anchor-compose, enhance-extend, style-referenced, pure-creative) with brand assets, AI generation, and human approval before credits are spent. Triggers on \"/compose-creative\", \"generate
name: compose-creative description: "Core creative engine — turns a calendar post into finished images or video using 4 modes (anchor-compose, enhance-extend, style-referenced, pure-creative) with brand assets, AI generation, and human approval before credits are spent. Triggers on \"/compose-creative\", \"generate the creative\", \"make the image for P07\", \"produce this post\", \"create the visual\", \"compose this\", or any time a calendar post needs its creative produced. Overlay text follows the pairing rule — it never echoes the caption." argument-hint: "[--post <id>] [--all] [--variant b]" effort: max user-invocable: true
The core production skill. Takes asset matching results and produces visual and video assets for each post according to its assigned creative mode, using a staged human-in-the-loop approval flow.
Asset-heavy skill. **Grep before Read** the asset catalog (`${CLAUDE_PLUGIN_DATA}/socialforge/brands/<brand>/asset-index.json`) — never list the asset directory. Reference generated images / videos by path, not by loading metadata. Brand profile loads once per session.
Brand asset is the untouchable center. AI generates scene around it. 1. Remove background from brand asset (rembg) 2. Generate surrounding scene via AI using brand style references 3. Composite asset onto generated scene (Pillow) 4. Add shadow/reflection for natural placement 5. Add text overlay + logo 6. Resize per platform
Brand asset is the foundation. AI modifies periphery only. 1. Feed real image to AI edit endpoint 2. AI extends/enhances while preserving core subject 3. Verify core subject preservation 4. Add overlay + resize
No brand asset composited. Style reference photos guide AI generation. 1. Load 2-8 brand style reference images 2. Construct 5-layer prompt (brand identity, post context, creative direction, image rules, technical) 3. Feed references + prompt to AI generation 4. Quality review — does output match brand DNA? 5. Add overlay + resize
Full AI generation with only text prompt + brand colors/mood. 1. Construct prompt from brief + brand-config visual style 2. Generate (text-only, no reference images) 3. Quality review 4. Add overlay + resize
If any prerequisite is missing: "Run `/socialforge:match-assets` first — creative production needs asset matching results."
Present 2-3 creative direction options to the user. Each option includes:
caption do different jobs and never echo each other. The overlay stops the scroll — a promise, a number, a tension in a few words. The caption (written later by adapt-copy) pays it off with context and the CTA. If the proposed overlay reads like the caption's first line, it is the wrong overlay — the quality reviewer flags this pairing as a Copy Quality failure downstream, so catch it here before credits are spent.
No image generation happens here. The user picks a direction before any credits are spent.
Once the user selects a direction, confirm the specifics before generating:
User explicitly approves to proceed to generation.
After the user selects their preferred image: 1. Apply text overlay via compose_text_overlay.py 2. Apply logo per brand-config.json (position, opacity, size, platform exclusions) 3. Resize per platform via resize_image.py 4. Save final assets to the post-specific folder: `{post_folder}/final/` 5. Update status-tracker.json 6. Log prompt to `shared/prompt-logs/` 7. Track API cost in cost-log.json
Present 2-3 video concept ideas to the user. Each option includes:
User picks a concept before any generation begins.
Your client wants 30 days of social content across six platforms with brand-faithful imagery, AI-generated video, and provenance signed for EU markets. You have five days.
Adapt post copy for every target platform — character limits, hashtag counts and placement, tone, compliance, and the right CTA mechanism per platform…
Assemble the final month-end delivery manifest — every approved post with its copy, creative files, platform variants, and metadata in one structured JSON…
Set up and manage brand profiles — colors, fonts, logo, voice, pillars, platforms, hashtags, compliance rules, cta_keyword. Triggers on \"/brand-manager\",…
Build the interactive HTML review gallery showing every generated post — image, copy, platform, status — for team or client review in a browser. Triggers on…
Embed C2PA provenance manifests in AI-generated assets — the machine-readable AI disclosure EU AI Act Article 50 expects (enforceable since 2 Aug 2026), plus…
Generate platform-accurate mockup previews — the post as it will actually render on LinkedIn, Instagram, X, TikTok — before anything is published. Triggers on…