Skip to content

Weekly

Post a weekly competitor update to Slack

Every Monday your sales channel gets a short update on each competitor's news, pricing and product changes, with sources.

Runs
Weekly
Apps
Perplexity, Slack
AI
Not needed
Access
API key; chat:write

Send this to your assistant

Create a ClickRuntime automation: every Monday at 9, ask Perplexity for last week's news, pricing and product changes for each competitor on my list and post a battlecard summary to #sales.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Sales teams lose deals to competitor changes they did not hear about: a price cut, a new feature, a fresh case study. Keeping battlecards current is usually someone's side job, so it happens before big pitches and not in between.

Sales and product teams at growing companies use it to give everyone the same weekly view of the competition, in the channel they already read.

What you get out of it

  • No surprises on calls

    Reps hear about a competitor's new feature from Slack, not from a prospect.

  • One update per competitor

    Short, separate sections make it easy to find the rival that matters for a deal.

  • Sources you can forward

    Links let reps check details and share proof with a prospect.

  • Nobody has to compile it

    The research happens every Monday without anyone's afternoon going on it.

How it works

What happens, step by step

  1. Every Monday, ClickRuntime goes through your list of competitors.

  2. Perplexity researches each one's news, pricing and product changes from the past week.

  3. The findings are formatted as one short section per competitor, with sources.

  4. The update is posted to your Slack channel.

Before it runs live

  • Connect Perplexity
  • Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)

What you get

RunsWeekly
Post a weekly competitor update to Slacktoday, 9:00Succeeded
Slack · #salesAcme CRM: • Cut its starter plan to $19 per seat • Launched a Shopify integration · Northwind Sales: No notable changes

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Run it at a different time, more or less often, or only on weekdays
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Google Sheets
  • Combine it with other Perplexity and Slack steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
competitor_research_briefs_in_slack.pyexample
from clickruntime import on_trigger, credentials, http, notify

COMPETITORS = ["Acme CRM", "Northwind Sales", "Contoso Pipeline"]

def sonar(prompt):
    r = http.post("https://api.perplexity.ai/chat/completions", headers={"Authorization": f"Bearer {credentials.secret('PERPLEXITY_API_KEY')}"},
                  json={"model": "sonar", "messages": [{"role": "user", "content": prompt}]}, timeout=90).json()
    return r["choices"][0]["message"]["content"], [s["url"] for s in r.get("search_results", [])]

@on_trigger
def run(event):
    sections = []
    for name in COMPETITORS:
        text, links = sonar(f"What changed at {name} in the last 7 days: news, pricing, product launches, customer wins? "
                            "Three short bullets, or 'No notable changes'.")
        sections.append(f"*{name}*\n{text}\n" + " ".join(f"<{l}|source>" for l in links[:3]))
    notify.slack("*Weekly competitor update*\n\n" + "\n\n".join(sections), channel="#sales")
    return {"competitors": len(sections)}

FAQ

Common questions

How many competitors can it cover?
Any number, though five to eight keeps the post readable. Each competitor uses one Perplexity request.
What does each section include?
News, pricing changes, product launches and notable customer wins from the past week. Quiet weeks say no notable changes.
Can product managers get it too?
Yes. Post it to more than one channel, such as #sales and #product.
What permissions does it need?
API key; chat:write. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it runs (weekly). Checks that find nothing to do and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Post a weekly competitor update to Slack” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.