skills/timescale/marketing-skills/weekly-intel-digest

weekly-intel-digest

Installation
SKILL.md

Weekly Intel Digest

You are generating a weekly intelligence digest for the current user at Tiger Data. The goal is to save them from manually hunting through noisy Slack channels by surfacing only the high-signal items they care about: deal wins/losses, competitive threats, case study leads, content ideas, and calls worth listening to.


Step 0: Read shared config

Read CONFIG.md from the plugin root to get the current bot user IDs for eon and tiger-analytics. Use these IDs throughout the workflow β€” never hardcode them.


Step 1: Query tiger-analytics and eon via DM

Send both queries as direct messages (use each bot's user ID from CONFIG.md as the channel_id).

1a. DM tiger-analytics:

"Pull a weekly wins/losses report: (1) new paying subscriptions on named accounts started in the last 7 days, grouped by SLG vs PLG with AE name and plan tier, including both company name and company ID; (2) Salesforce-tracked churns updated in the last 7 days with ARR impact and churn reason, including both company name and company ID; (3) Orb subscription endings on named accounts in the last 7 days, excluding 30-day trial expirations and same-day plan upgrades, including both company name and company ID."

Capture the message_ts and channel_id from the send response.

1b. DM eon:

"Summarize any notable customer activity, risk signals, or competitive mentions from the past 7 days that would be relevant for a weekly marketing intel digest."

Capture the message_ts and channel_id from the send response.

Wait for responses: After sending both DMs, wait approximately 15 minutes, then read each DM thread using the returned channel_id and message_ts values. Tiger-analytics typically takes longer to respond than eon.

If either bot doesn't respond, note it in the report and continue with whatever data you have.


Step 2: Scan the 5 Swyft Channels

Search each channel for messages from the past 7 days using slack_search_public_and_private. Use a query like in:#channel-name after:YYYY-MM-DD (7 days ago from today). Run multiple searches per channel if needed β€” these channels can be noisy and you want good coverage.

Channels to scan:

  • #feed-swyft-meetings
  • #feed-swyft-customer-quotes
  • #feed-competitor-feedback
  • #feed-swyft-churn-risks
  • #feed-twitter

Step 3: Analyze and Categorize

Read everything β€” the tiger-analytics DM response, the eon DM response, and all channel messages β€” and sort findings into these 5 buckets. Be selective: only include items with real signal. A deal mention with a name and reason is signal. A vague "customer seemed unhappy" is noise.

πŸ”΄ Lost Deals / Competitor Wins

  • Incorporate tiger-analytics churn data (company name, company ID, ARR impact, churn reason)
  • Add any Slack mentions of deals lost, competitors winning, or prospects going elsewhere
  • Include: company name, competitor (if known), reason, ARR impact where available

🟒 Won Deals

  • Incorporate tiger-analytics new subscription data (SLG/PLG, AE name, plan tier, company name + ID)
  • Add any Slack signals about closed deals, new customers, or confirmed upgrades
  • Include: company name, AE, plan tier, deal context

πŸ“– Case Study Candidates

  • Customers showing strong outcomes, impressive metrics, enthusiasm, or loyalty
  • Flag why they're worth pursuing β€” specific quote, metric, or story angle

✍️ Article / Content Ideas

  • Recurring pain points, market patterns, objections, or themes that could become content
  • Note the signal that inspired it (a customer quote, a competitive thread, a tweet)

🎧 Calls to Review

  • Specific meetings or recordings mentioned that are worth a closer listen
  • Prioritize: competitive deals, objection-heavy calls, champion conversations, confirmed churns

Step 4: Compose and Send the Report

First, look up the current user's Slack ID by calling slack_read_user_profile with no user_id argument (it defaults to the authenticated user). Extract the user_id from the response β€” you'll use it as the channel_id for the DM.

Send the finished report as a Slack DM to the current user using slack_send_message with channel_id set to the user ID retrieved above.

Use this format exactly:

πŸ“Š *Weekly Intel Digest β€” [Date Range, e.g. Mar 2–8]*

*πŸ”΄ Lost Deals / Competitor Wins*
β€’ [Company name (ID) β€” ARR impact, churn reason, competitor if applicable + source link]
_(None found this week)_ ← use this if the section is empty

*🟒 Won Deals*
β€’ [Company name (ID) β€” SLG/PLG, AE name, plan tier, deal context + source link]
_(None found this week)_

*πŸ“– Case Study Candidates*
β€’ [Customer name + why they're a good candidate + source link]
_(None found this week)_

*✍️ Article / Content Ideas*
β€’ [Content idea + signal that inspired it + source link]
_(None found this week)_

*🎧 Calls to Review*
β€’ [Call name/description + why it's worth a listen + source link]
_(None found this week)_

_Sources: @tiger-analytics DM + @eon DM + Swyft channel scan [date range]_

Notes on quality

  • Be specific over comprehensive. Three sharp bullets beat ten vague ones.
  • Always include source links (Slack message permalinks) so the recipient can click through.
  • Company name + ID together whenever coming from tiger-analytics β€” this makes cross-referencing Salesforce/Orb easier.
  • If a bot didn't respond, say so clearly in the sources line rather than omitting it silently (e.g., "@eon: no response").
  • Date range in the header β€” the recipient needs to know what week the report covers.
Weekly Installs
1
GitHub Stars
5
First Seen
Apr 13, 2026