Slash command reference
Escalate exposes 12 slash commands. The audience tier determines who can run each:
- admin — Slack Workspace Owner OR Workspace Admin.
- founder-only — only the user designated as the founder via
/escalate config founder. Founder-scoped commands return an "only the founder" ephemeral message if a non-founder runs them. - any user — anyone in the workspace can run; routes to the founder via DM.
Per spec PR-DOC-1-B §3.2 — audience tiers verified against the
founderUserId !== userId gates in each handler. Each command
below is documented with its audience, what it does, the expected
output, and common errors.
/escalate config roles
- Audience: admin
- What it does: Opens a Slack modal where you map workspace users to the four cross-functional roles Escalate covers: Account Executive, Legal, Security, Compliance.
- Expected output: A modal with one user-picker per role. Submit to save. Saved mappings apply to all NEW deal channels; existing channels retain their original assignments.
- Common errors: "Only workspace admins can configure Escalate." (You aren't a Slack admin.)
/escalate config founder
- Audience: admin
- What it does: Designates a specific workspace user as the founder-CTO. The founder receives all alerts as DMs and is the only user permitted to run founder-only commands.
- Expected output: A modal with a single user-picker. Saved designation applies immediately.
- Common errors: Same as
config roles.
/escalate config thresholds
- Audience: admin
- What it does: Per-role business-day silence thresholds. Defaults: 2 BD for Legal, 3 BD for Security, 3 BD for Compliance, 5 BD for Other.
- Expected output: A modal with one numeric input per role. See Thresholds for tuning guidance.
- Common errors: Same as
config roles.
/escalate config trigger
- Audience: admin
- What it does: Configures the qualifying CRM stages + minimum
amount that fire deal-channel creation. Defaults: 4 qualifying
stages (
Negotiation,Verbal Commit,Contract Sent,Proposal), $75,000 USD minimum, case-insensitive matching,requireAmount: true(deals with missing amount fields are ignored). - Expected output: A modal with stage-tags + numeric amount input. See Triggers.
- Common errors: Same as
config roles.
/escalate config crm
- Audience: admin
- What it does: Opens an in-Slack picker to connect Salesforce OR HubSpot via OAuth. Returns a docs link if you'd like a step-by-step guide first.
- Expected output: An ephemeral DM with two buttons (Salesforce / HubSpot). Clicking either opens the vendor's OAuth consent screen.
- Common errors: "OAuth is not configured on this Escalate deployment." (Server-side config gap — ping the founder.) "This connection request has expired." (OAuth state tokens are single-use, 15-minute expiry — re-run the command.)
/escalate config verifier on|off
- Audience: admin
- What it does: Per-workspace toggle for the LLM second-pass
verifier. Default is
on— when off, only the first-pass classifier decides whether a sub-thread response counts as substantive. Off is rarely the right choice; left as an escape hatch in case a customer hits a high false-positive rate. - Expected output: Ephemeral confirmation showing the new state.
- Common errors: "Usage:
/escalate config verifier on|off."
/escalate retrofit
- Audience: admin
- What it does: Re-fires the trigger check on already-qualified deals that were qualified BEFORE Escalate was installed. Used once at install-time to catch open deals; idempotent (won't re- create channels that already exist).
- Expected output: Ephemeral confirmation showing the count of
deals enqueued for re-evaluation. Progress reflects in
/escalate stats. - Common errors: Run-once-then-rerun-safe — no destructive
errors. If your CRM isn't connected yet, returns "Connect a CRM
first via
/escalate config crm."
/escalate recover-ingest [hours]
- Audience: founder-only
- What it does: Re-ingests Slack message history for the past
[hours](default 24). Used when bot ingest had downtime — e.g., after a Slack outage or an Escalate worker restart — to rehydrate the events table. - Expected output: Ephemeral confirmation showing the count of channels and events queued for re-ingest.
- Common errors: "Only the founder can run this command." (You
aren't the user assigned via
/escalate config founder.)
/escalate stats
- Audience: founder-only
- What it does: Returns operational counters: trailing-precision (alerts that you marked as legitimate vs. dismissed), the count of in-force trigger rules, the count of alerts fired in the last 7 days, and the verifier flip-toggle progress.
- Expected output: Ephemeral DM with a Block Kit summary panel.
- Common errors: Same as
recover-ingest.
/escalate audit-export
- Audience: founder-only
- Full form:
/escalate audit-export <scope> [format] [--fresh] - What it does: Generates a signed, time-limited export of the
full audit chain for the given scope (
deal:<id>/workspace/range:<start>-<end>). Format defaults to JSON; CSV available.--freshforces re-export (skips cache). - Expected output: Ephemeral confirmation; the signed download link arrives via email when the export job completes (typically < 1 minute).
- Common errors: "Only the founder can run this command." / "Scope is required." / "No matching deals in this workspace."
/escalate coverage
- Audience: founder-only
- What it does: Generates a single-use magic link (15-minute expiry) to the Coverage Report — the on-demand console showing covered deals, in-force rules, recent alerts, and stalls. See Coverage Report.
- Expected output: Ephemeral DM with the magic link.
- Common errors: Same as
recover-ingest.
/escalate help
- Audience: any user (DMs the founder)
- Full form:
/escalate help <question> - What it does: Routes a free-text support question to the founder via Slack DM. Rate-limited to 10 requests / hour / workspace to keep noise bounded.
- Expected output: Ephemeral ack. The founder receives the question + your handle as a DM.
- Common errors:
Rate-limit reached. Try again in <N> minutes./ "No founder user is configured for this workspace. Ask a workspace admin to run/escalate config founder."
How to check audience tier
If you're unsure whether you can run a command:
- admin commands: check Slack → workspace name → Settings & administration → Workspace settings → Members → search yourself. Workspace Owner or Workspace Admin = admin tier.
- founder-only commands: only the user assigned via
/escalate config founderqualifies. - any user commands (
/escalate help): everyone in the workspace.
Next steps
- Tuning the noise floor? See Thresholds for per-role business-day defaults.
- Trigger not firing? See Triggers for stage + amount configuration.
- Want the lifecycle narrative? See What Escalate does.