Skip to main content
Foxley is Outfox’s marketing AI, available inside Slack as a Slack app. You can mention @Foxley in any channel or run slash commands like /foxley to analyze ad performance, dig through your creative library, and — when an admin enables it — launch and update Meta campaigns without leaving Slack.

Install Foxley in your workspace

You need:
  • An Outfox account in the organization you want Slack tied to.
  • Permission to install Slack apps in your workspace (or an admin willing to approve it).

Steps

1

Start the install

Sign in to Outfox at app.outfox.ai, go to Settings → Integrations, and click Connect Slack on the Slack card. (Or visit app.outfox.ai/integrations/slack and click Add to Slack.)
2

Approve in Slack

Slack asks which workspace to install Foxley in and lists the permissions Foxley is requesting. Approve to continue.
3

Confirm in Outfox

You land back on the Slack integration settings page. Foxley is now installed for the whole workspace.
A single Outfox organization can only own one Slack workspace at a time. If you need a second, ask your account manager. The install above connects the workspace. Each individual Slack user who wants to use Foxley also needs to link their Slack identity to their Outfox account. This is a one-time, per-user step.
1

Run /foxley-brands once

In any Slack channel where Foxley is available, run /foxley-brands. Foxley sends you a private message containing a one-time link.
2

Sign in to Outfox

Click the link. You’ll go through Outfox sign-in (if you’re not already signed in) and a confirmation page.
3

Use Foxley

Once linked, mentions and slash commands work for you anywhere in the workspace.
If you skip this step, Foxley replies to your slash commands and mentions with a “please link” message and does not invoke the AI. This keeps every Foxley action tied to a real Outfox identity.

Slash commands

CommandWhat it doesWho can run it
/foxleyAsk Foxley a question. Posts the answer publicly in the channel.Anyone linked
/foxley-channelSet the default brand for the current channel.Slack workspace admin or owner (checked live)
/foxley-brandSet the default brand for the whole workspace.Slack workspace admin or owner (checked live)
/foxley-useSet your personal active brand. Overrides channel and workspace defaults.Anyone linked
/foxley-brandsList the brands available in your organization.Anyone (also triggers the link flow if unmapped)
/foxley-resetClear your personal active brand. Falls back to channel or workspace default.Anyone linked
You can also mention @Foxley in any channel Foxley is a member of, or message Foxley directly. Both behave like an interactive /foxley and stay in thread.

Inline brand override

If you want to ask Foxley about a different brand for one question only, prefix the question with --brand=<name>:
/foxley --brand=Acme what was our CPC on the spring campaign last week
The override applies to that turn only.

Brand context

Most Foxley questions need a brand context to answer well (“our spend” → spend for which brand?). Foxley resolves the brand in this order:
  1. The --brand=<name> override on the current message.
  2. The personal active brand you set with /foxley-use.
  3. The default brand for the current channel (set by an admin with /foxley-channel).
  4. The default brand for the whole workspace (set by an admin with /foxley-brand).
  5. None — Foxley will ask you which brand to use.
In a multi-brand team, the channel default is usually the right level: pin Acme to #acme-ads, Beta to #beta-ads, and questions in each channel resolve correctly without anyone retyping the brand.

What Foxley can do

By default Foxley is read-only. It can answer questions, surface inspiration, and run any of the Meta Ads reporting tools — but it can’t create or modify campaigns, ad sets, ads, audiences, or attribution settings.

Read-only tools (always available)

  • Brand and creative reads — list brands, get a brand, list creatives, get a creative, search the inspiration library, generate a creative brief from a winning ad.
  • Meta Ads reads — campaign / ad set / ad / creative metadata, insights (spend, CPC, CPM, CTR, conversions, etc.), audience overlap, attribution diagnostics, catalog reads, dataset stats.
  • Foxley-only diagnosticsanalyze_acquisition_vs_harvest for spend-classification analysis.

Mutative tools (off by default; admins can enable)

When an Outfox org admin flips on the Allow mutative Meta Ads tools toggle in Settings → Integrations → Slack, the following become available:
  • Create a campaign, ad set, ad, or creative.
  • Activate or pause an entity.
  • Update attribution mode on an ad account.
  • Create a product catalog or product set.
Each mutation also requires the Slack user invoking it to be a workspace admin or owner, verified live via Slack’s users.info on every turn. A user who’s a Slack member, or whose Outfox org membership was revoked, can’t trigger mutations even if the workspace toggle is on.

Settings and admin controls

Open Settings → Integrations → Slack in the Outfox web app to:
  • See the linked workspace, install date, and bot scopes.
  • Toggle Allow mutative Meta Ads tools on or off (Outfox org admin only).
  • Disconnect the workspace. Hard-deletes Foxley’s data and revokes its bot token immediately.
The same disconnect can be done from the Slack side by uninstalling the Foxley app from your workspace settings. Both paths fully clean up.

Limits and rate caps

LimitDefaultWhat happens when you hit it
Foxley turns per user per workspace30 / minuteYou get a visible “wait ~Ns” message in-thread.
Tool steps per single Foxley turn8Foxley stops after step 8 and answers with what it has.
Slack’s own per-method rate limits apply on top.

Privacy and security highlights

  • Bot tokens are encrypted at rest with AES-256-GCM.
  • Webhook requests from Slack are HMAC-verified with a 5-minute replay window.
  • Channel history is only read for threads Foxley is mentioned in. Foxley does not crawl channels it hasn’t been added to.
  • No persistent Slack message storage today. Active turns live in process memory and in Foxley’s thread cache; no long-term database persistence in v1. The thread cache does not have an explicit per-key TTL yet.
  • Org membership is re-checked on every turn. A user removed from your Outfox organization loses access within about a minute, regardless of their Slack mapping.
For the full security write-up, contact support@outfox.ai.

Troubleshooting

”This workspace isn’t linked to an Outfox organization yet”

The Slack workspace doesn’t have a Foxley install. Ask an admin to install Foxley by going to Settings → Integrations in Outfox and clicking Connect Slack. You haven’t completed the per-user link flow. Run /foxley-brands and click the private link Foxley sends you.

”Your access to this Outfox organization has been revoked”

Your Clerk org membership was removed. Ask an admin to re-add you to the Outfox organization, then run /foxley-brands again to re-link.

Foxley refuses to create a campaign even though the toggle is on

Two checks gate mutations. Both have to pass on the same turn:
  1. The workspace’s Allow mutative Meta Ads tools toggle must be on (set by an Outfox org admin in Settings).
  2. The Slack user invoking the mutation must be a Slack workspace admin or owner. Slack members can’t trigger mutations even when the workspace toggle is on.
If you’re a workspace admin and mutations still fail, an admin probably just flipped the toggle off while your request was in flight — Foxley re-reads the toggle on every mutation-eligible turn to close that race.

”You’re sending messages a little too fast”

You hit the 30-turns-per-minute limit. Wait the suggested number of seconds and try again.

Coming soon

  • Thread browsing in the web UI. Slack-originated conversations will show up in the Outfox web chat history alongside web-originated chats.
  • Tighter prompt-injection fencing for brand-context fields admins enter in Outfox.
  • Per-user account unlink as a self-serve action.