# Slack Workspace

The Slack Workspace connection installs the Duvo app into your Slack workspace, enabling notifications, human-in-the-loop interactions, and the ability to trigger assignments directly from Slack. Unlike the personal [Slack connection](https://docs.duvo.ai/connections/available-connections/slack), which gives assignments broader Slack actions and can optionally act as you for some steps, the Slack Workspace connection operates as the **Duvo app** for team-level notifications and Slack-triggered jobs.

## Setup

This is a **team-level** connection. A team admin installs the Duvo app once per Slack workspace from the Connections page, and each team member links their own Slack account from **Settings > Notifications** so Duvo can reach them individually.

### Step 1: Install the Duvo App (Team Admin)

1. Go to the [Connections page](https://app.duvo.ai/integrations).
2. Find **Slack Workspace** and click **Enable**.
3. Authorize the Duvo app to access your Slack workspace.

### Step 2: Link Your Slack Account (Each User)

1. Go to **Settings**
2. Open **Notifications**
3. Link your Slack user account

This tells Duvo which Slack user to message when your assignments need attention.

## How It Differs from the Slack Connection

|                 | **Slack Connection**                                | **Slack Workspace Connection**                                                            |
| --------------- | --------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| **Set up from** | Connections page (per user)                         | Connections page (per team)                                                               |
| **Identity**    | Duvo bot by default; some actions can act as you    | Messages appear as the Duvo app                                                           |
| **Purpose**     | Send messages, manage channels, upload files as you | Notifications, human-in-the-loop requests, trigger assignments from Slack                 |
| **Scope**       | Per user                                            | Per team (one installation per Slack workspace), plus each user links their Slack account |

## Capabilities

* **Human-in-the-loop notifications** — When an assignment needs your approval or input, the Duvo app sends you a direct message. You can approve, deny, or answer questions directly in Slack, or click through to handle the request in Duvo. Multiple requests during a single job are grouped into one DM thread.
* **Trigger assignments from Slack** — Tag the Duvo app in any channel to start a job. The assignment runs and posts results back to the same thread. Useful for on-demand reports, quick actions, and team-accessible automation without leaving Slack.
* **File and image support** — When an assignment is triggered from a Slack thread, any files or images attached to messages in that thread are automatically downloaded and made available to the assignment for processing.
* **Bot and third-party app message reading** — Assignments capture the full content of all messages in a thread, including structured messages from bots and third-party Slack apps like Jira, GitHub, and PagerDuty. Titles, field values, and descriptions are extracted automatically.
* **Live status updates** — While a job runs, Duvo posts live progress messages in the Slack thread showing what the assignment is currently doing. Updates clear when a human-in-the-loop request pauses the job and resume when work continues.
* **Formatted output delivery** — Assignment output is posted back to the Slack thread with Markdown converted to Slack's native format. Long messages are split at paragraph boundaries, and tables are converted to a key-value format for readability.

## Key Benefits

* **Respond without leaving Slack** — Handle approvals, answer questions, and review assignment output directly in your team's communication hub.
* **Team-wide access** — One installation covers the entire team. Any linked team member can trigger assignments and receive notifications.
* **Real-time visibility** — Live status updates keep everyone in the thread informed about job progress without switching to Duvo.
* **Context-rich triggers** — Assignments triggered from Slack threads automatically receive files, images, and bot messages as context, so requests can include supporting documents.
* **Clear bot identity** — Messages from assignments are clearly labeled as the Duvo app, keeping automated communication distinct from personal messages.

## Works Well With

* [**Slack**](https://docs.duvo.ai/connections/available-connections/slack) — Use both connections together: the Slack connection for assignments that need broader Slack actions or optional act-as-you behavior, and the Slack Workspace connection for bot notifications and Slack-triggered jobs.
* [**Gmail**](https://docs.duvo.ai/connections/available-connections/gmail) — Trigger an assignment from Slack to process an email thread, then have results posted back to the Slack channel for team discussion.
* [**Google Sheets**](https://docs.duvo.ai/connections/available-connections/google-sheets) — Ask the Duvo app in Slack to generate a report, and have the assignment write results to a spreadsheet while posting a summary back to the thread.

## Notification Preferences

You can enable or disable Slack notifications in **Settings > Notifications**. When enabled, the Duvo app sends you:

* Human-in-the-loop requests (approvals, questions, input needed)
* Error alerts when a job fails

## Troubleshooting

### Notifications Not Appearing

* Verify the Slack workspace is connected on the [Connections page](https://app.duvo.ai/integrations)
* Confirm your Slack user account is linked to your Duvo profile
* Check that Slack notifications are enabled in Settings > Notifications
* Make sure the Duvo app is not muted in Slack

### Cannot Connect Workspace

* Confirm you have admin permissions in your Slack workspace
* Allow browser popups for the authorization flow
* Check for network restrictions blocking OAuth

### Triggers Not Working

* Verify the assignment has Slack triggers enabled
* Confirm you are tagging the Duvo app correctly
* Ensure the assignment is active and has a published build
