Documentation

Learn how to set up and get the most out of Viktor.

Chat Commands

Stop a run, pick a faster or deeper model for one reply, and mute Viktor in a Slack thread.

Chat commands are short words you type in a message to Viktor. They change what Viktor does right away, without a settings page. Type a command as a separate word anywhere in your message.

CommandWhat it doesWhere it works
!stopStops what Viktor is doing in the thread.Slack
!fastRuns this one reply on the workspace's fast model.Slack and Microsoft Teams
!deepRuns this one reply on the workspace's deep model.Slack and Microsoft Teams
!mute or 🏁Mutes Viktor in a channel thread until someone @mentions him.Slack channel threads
Stop buttonStops a run in Viktor app chat.Viktor app

Stop a run with `!stop`

Use !stop when Viktor is working on something you no longer want.

  1. Send a message to Viktor that contains !stop: in his DM, in a group DM, with an @mention, or in a thread he started.
  2. Viktor adds a 🛑 reaction to your message.
  3. If a run was active, it ends and Viktor posts: "⏹ Stopped. Mention me or reply here when you want me to continue."

!stop also drops replies waiting in the queue, cancels scheduled resume steps for the thread, and clears a pending !fast or !deep choice. The command never reaches the AI model, so it works even if Viktor is stuck in a loop.

!stop inside a code span (` !stop ), a code block or a block quote (> !stop`) is treated as text, not as a command.

Choose a model for one reply with `!fast` or `!deep`

  1. Add !fast or !deep to your message to Viktor, for example "!fast what's on my calendar today?"
  2. In Slack, a ⚡ (!fast) or 🧠 (!deep) reaction shows on your message until the reply arrives.
  3. The reply ends with a footer such as "⚡ Fast reply · <model>" or "🧠 Deep reply · <model>".

The command applies to that one reply only. The next message uses the normal model again. If a message contains both !fast and !deep, neither applies.

Set the models behind the commands

Admins pick the models in Settings → General (open it), under Model overrides:

  • !fast: For quick, everyday requests
  • !deep: For complex work that benefits from more reasoning

Each can also be set to Use default model. If !deep is set to Use default model, the command does nothing. If !fast is set to it, Viktor still acknowledges the command but uses the default model, and no footer is shown.

The footer is not added in Slack Connect (external) channels or on Viktor's short in-progress messages.

Mute Viktor in a Slack thread with `!mute` or 🏁

Use mute when people want to keep talking in a thread without Viktor joining in.

  1. In a Slack channel thread Viktor is part of, send a message containing !mute. Or react with 🏁 (:checkered_flag:) to one of Viktor's messages in the thread.
  2. Viktor adds a 🔇 reaction to your !mute message.
  3. The first time the thread is muted, Viktor posts once: "I'm muted in this thread. @mention me to unmute."

While muted, Viktor keeps reading the thread for context but does not reply, including to unmentioned replies in threads he started.

To unmute, @mention Viktor in the thread. He replies to that message as usual, and the mute is cleared.

Mute works only in Slack channel threads. It does not apply to DMs (Viktor always replies there), group DMs (he replies only when mentioned anyway) or Microsoft Teams. A 🏁 reaction only mutes when it is on a message Viktor wrote, and only when the person reacting is allowed to use Viktor.

Stop a run in Viktor app chat

While Viktor is working in app chat, the send button turns into a stop button. Click it to stop the run. It shows "Cancelling…" while the run stops. See the Viktor web app.

Limits by plan and permission

  • Plan: the commands are available on every plan.
  • Members: anyone who can use Viktor can send !stop, !fast, !deep and !mute.
  • Admins: only admins can change which models !fast and !deep use. Members see "Only workspace admins can change model settings."
  • Microsoft Teams: !fast and !deep work. !stop and !mute do not.

Common problems

`!stop` did nothing. Check that the message is directed at Viktor (DM, @mention, or a thread he started) and that !stop is not inside a code span or a quote.

`!deep` didn't change the model. The !deep model is set to Use default model. Ask an admin to pick a model in Settings → General.

There is no model footer. The command was set to the default model, both !fast and !deep were in the message, or the reply was in an external channel.

Viktor stopped replying in a thread. Someone may have muted the thread with !mute or 🏁. @mention Viktor to bring him back.

I use Microsoft Teams and need to stop a run. Teams has no !stop command.

Related

Get Started for Free