Skip to Content
AgentsCalling Agents from Slack

Calling Agents from Slack

Connect UpServe to Slack and your team can put agents to work without opening the UpServe app. Say “summarize yesterday’s revenue” in a channel and the agent replies in that thread.

Your teammates do not need UpServe accounts. Connect the workspace once and anyone in the channel can call your agents.

At a glance

QuestionAnswer
How do I connect?Open the Slack card in the integrations hub  under the Skills tab. When it finishes, a short getting-started message arrives as a Slack direct message.
What’s the simplest way to use it?Just DM the UpServe app. You pick who once, and after that you talk without naming anyone.
How do I call an agent in a channel?Name the agent: @UpServe Sales, summarize yesterday's revenue. The start of the name is enough.
Do I name it every time?No. Inside the reply thread you can keep going without the name, and you can set a default agent per channel.
What if I can’t remember the name?Click UpServe in your Slack app list — the home tab lists every agent you can call and which channel each one handles.
Who can call them?Anyone in the workspace who is in that channel. The work runs on the account that connected, and SU come from that account.
What about approvals?An approval card appears in the thread with approve and deny buttons.
Can we exchange files?Yes. Images and files the agent makes land in the thread, and files you upload are readable by the agent.
Is any of this kept in UpServe?Yes. Each channel builds one ongoing conversation you can revisit in the app.

Connecting

  1. In UpServe, go to the Skills tab → Integrations.
  2. Open the Slack card and press Connect.
  3. Confirm the workspace on Slack’s permission screen and allow it.
  4. When it finishes, a getting-started message arrives in Slack.

One connection covers the whole workspace — your teammates do not each need to connect.

The simplest way — a DM

Click UpServe in your Slack app list and send it a direct message. No invite, no mention.

Summarize yesterday's revenue

If you have several agents, you pick one the first time. After that you keep talking without a name.

If you’re working solo or haven’t shared this with the team yet, this is the easiest path. To work in the open with your team, use a channel instead.

Inviting the bot to a channel

Skip this and mentions will go nowhere. Slack does not tell UpServe that a mention happened in a channel the bot has not joined, so there is no way to even show you an error.

In the channel where you want the agent:

/invite @UpServe

This is the same for public and private channels. Invite it once per channel.

Calling an agent

Name the agent you want:

@UpServe Sales, summarize yesterday's revenue
  • Put the name first. Punctuation after it is fine.
  • The start of the name is enough. For Sales Research, @UpServe Sales yesterday's revenue works.
  • If you have only one agent, you can skip the name entirely.
  • If the name is unclear, you get a card to pick which agent should take it. With many agents it becomes a dropdown.

A 👀 on your message means it was received. It becomes ✅ when the work is done and the reply lands in the thread. Long-running work shows what it’s doing along the way (“Searching the web…”), and that same message turns into the final answer.

When you can’t remember the name

Click UpServe in your Slack app list to open its home tab. It lists every agent you can call, what each one does, and which channel each one handles.

/upserve list shows the same list, and /upserve status tells you who’s handling the conversation you’re in.

Continuing in the thread

Once a reply appears, keep talking inside that thread without naming the agent. The same agent continues with everything you have discussed so far.

You: @UpServe Sales, summarize yesterday's revenue Sales: (summary) You: now just the Pangyo branch ← no name needed

Setting a default agent per channel

If one channel always goes to the same agent, assign it:

/upserve assign

Run it without a name and you get a list to pick from. If you know the name, /upserve assign Sales works too.

From then on, just say what you need:

@UpServe summarize yesterday's revenue

Run /upserve unassign to clear it. You can also see and clear channel assignments from the Slack card in UpServe’s integrations screen.

Slash commands

CommandWhat it does
/upserve helpShows the usage summary again.
/upserve listLists the agents you can call.
/upserve statusShows who’s handling this conversation.
/upserve assignPicks this channel’s default agent (a name can follow).
/upserve unassignClears the default agent.

These replies are visible only to you — they leave no clutter in the channel.

Exchanging files

  • Images and files the agent makes land in the thread. Ask for a chart or a document and the file arrives with the answer.
  • Files you upload are readable by the agent. Attach a file and say @UpServe summarize this table.
  • Very large files and canvas documents come as UpServe links instead of uploads.
  • Anything that can only be acted on in the app (a connection request, for example) is announced with a link — it never just disappears.

File support needs a new permission on the connection. If your workspace connected before this shipped, the Slack card in the integrations hub shows Reconnect needed — connect once more.

Approvals and questions

When an agent needs sign-off before something risky, or needs you to decide, the same card you would see in the UpServe app appears in the thread.

  • Approval card — what it intends to do, with Approve and Deny buttons. For safety these are handled by button only — replying “yes, go ahead” does not approve anything.
  • Question card — options become buttons; when there are none, just reply. What you write is passed straight to the agent, which picks up where it left off.

The name of whoever pressed the button is recorded with the result, so you can answer “who approved this” later.

If you already answered in the app, the Slack card turns into “This request was already handled.” The same work never runs twice.

Good to know

  • Canvas documents come as links. They keep being edited, so a snapshot would go stale — you get an UpServe link instead.
  • Very large files come as links too. Anything over Slack’s upload limit is offered from UpServe.
  • Group DMs are not supported yet. Use a 1:1 DM or a channel.
  • Long answers get cut. Very long replies are truncated in the thread with a link to the full version.
  • Anyone in the channel can call your agents, running on your account and your SU. If an agent does sensitive work, choose carefully which channels it can be reached from.

When something doesn’t work

SymptomWhat to check
Mentions get no response at allMake sure you ran /invite @UpServe in that channel. This is the most common cause.
It says it can’t read the file I uploadedReconnect Slack from the integrations hub — file support needs a new permission.
Images arrive as links onlySame cause — reconnecting makes files upload straight into the thread.
”You don’t have any agents yet”Create an agent in UpServe first.
Buttons don’t respondTry again in a moment. If it persists, reconnect Slack from the integrations hub.
Connected, but mentions never arriveCheck whether the Slack card shows Reconnect needed — newer features sometimes need permissions your original connection doesn’t have.
”Out of SU…”Upgrade your subscription in UpServe and call the agent again.

Advanced

The rest of this page is not needed for everyday use.

How conversations are grouped

One Slack channel maps to one UpServe conversation. Every thread in that channel shares it, so the agent remembers what was discussed in an earlier thread. Adding channels does not grow your conversation list without bound. DMs follow the same rule.

You can find it in the agent’s screen in UpServe, named Slack #<channel> (or Slack DM).

Several agents in one channel

Even with /upserve assign set, naming an agent directly hands that message to the agent you named, and that thread continues with them. The assignment is the default for when you don’t name anyone.

How long a thread stays with its agent

You can keep replying without a name for 30 days after the last message in that thread. Older threads need the name again. The channel’s conversation history itself is not removed.

Response language

The wording UpServe posts in Slack, and the language the agent answers in, follow the UpServe language setting of the account that connected. It does not vary per workspace member.