"We should launch a promo" usually dies between sales analysis and the first post — too many steps. The skill runs the entire campaign for you: finds the revenue drop, assembles a brief, generates creatives, queues the newsletter, and prepares a call list. One run instead of three separate ones, and you confirm every handoff — the gate is not skipped without explicit consent.
Argument breakdown:
--lookback(default90d) — how deeply to look at the revenue drop--channel(defaultboth) —email,socialorboth
Step 1 — Sales analysis + content brief (content-strategy)
Start the skill process content-strategy:
- Pull sales data from
~~бухгалтериии~~платежей(1C, MoySklad, YooKassa) for the selected period. If there is no connector — ask for a CSV export from the bank client or accounting system. - Find the revenue drop — which product/service, which period, the scale.
- Assemble a prioritized 30-day content brief: what to promote, what promo to launch, what to hold back.
- Show the brief to the owner. Wait for an explicit "approved, make the creatives" before continuing.
If the owner edits the brief — make the edits and show it again.
Step 2 — Generating creatives + queuing the newsletter (canva-creator)
After Step 1 is approved, start the skill process canva-creator:
- Take the approved brief from Step 1 as input.
- Build a publication calendar based on the brief's priorities.
- Generate branded creatives for each post (show each one for approval before moving on).
- Write caption texts for each post.
- Queue the scheduled newsletter via
~~crm(Bitrix24, amoCRM) — do NOT send, only queue. - Show the prepared campaign to the owner. Wait for an explicit "approved, send to segment X" before proceeding to Step 3.
Step 3 — Audience segmentation (lead-triage)
After Step 2 is approved, start the skill process lead-triage:
- Pull contacts from
~~crmthat match the campaign's target segment (from the approved brief). - Evaluate by engagement, profile fit, and urgency markers.
- Prepare two outputs:
- Mass mailing list — the segment that will receive the campaign prepared in Step 2
- List for personal calls — the top 5 leads the owner should call personally, with talking points
- Block time in
~~календареfor calls. - Show both lists. Wait for an explicit "send", before launching the campaign in
~~crmlive.
Ad labeling (mandatory in the Russian Federation) ⚠️
If the campaign includes paid placement (Yandex Direct, VK Ads, Telegram Ads, channel seeding) — the creatives require ad labeling: obtaining a token via an ORD (ad data operator) and transmitting data to the ERIR (Unified Register of Internet Advertising). Mandatory since 09/01/2022. Organic posts in your own channels (your own Telegram/VK without paying the platform) do not require labeling. Clarify the placement status with the owner before queuing and include labeling in the plan.
Approval gates (strictly observe)
- Never move between steps automatically. Every handoff requires the owner's explicit consent.
- Never send the campaign via
~~crmwithout the owner's "send" command in Step 3. - If any connector is unavailable (
~~бухгалтерия,~~платежи,~~дизайн,~~crm) — stop, report which connector failed, and ask: retry or abort.
Output
Finish the launch with a brief one-paragraph summary: what revenue shortfall was found, how many posts were generated, the segment size, how many calls were booked. Provide a link to the campaign in ~~crm after sending.