Skip to content

Update Slack integration docs for marketplace compliance #1133

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 48 additions & 7 deletions docs/integrations/slack.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -80,31 +80,72 @@ Codegen only responds when tagged or messaged directly. Use these approaches to
- Sending subsequent messages within a thread routes to the same agent (tag `@codegen` to trigger)
- New messages to `@codegen` in an active thread will interrupt the agent if it's currently working

## Permissions
## Permissions and Scopes

The Codegen Slack integration requires the following permissions to function effectively:

### Core Messaging Permissions
- **View messages that mention @codegen** - To respond to direct mentions and requests
- **Read message history in public and private channels** - To understand context and conversation flow
- **Send messages and customize appearance** - To communicate and provide updates
- **View and react with emojis** - To acknowledge messages and provide feedback
- **Access shared files and attachments** - To review and work with shared content
- **Read direct messages and group chats** - To enable private conversations with the agent
- **View workspace members and email addresses** - To understand team structure and routing
- **Read direct messages and group chats** (`mpim:read`) - To enable private conversations with the agent in group DMs and multi-person direct messages
- **Send messages** - To communicate responses and provide updates

### Enhanced Communication Features
- **View and react with emojis** - To acknowledge messages and provide feedback through reactions

### User and Workspace Access
- **View workspace members and email addresses** (`users:read.email`) - Used to map Slack user accounts to Codegen accounts for proper authentication and permission management. This ensures that when a user interacts with Codegen via Slack, their actions are properly attributed to their Codegen account and repository permissions
- **Access shared files and attachments** - To review and work with shared content like code snippets, images, and documents
- **Access basic channel information** - To operate appropriately within different channel contexts

### Why These Permissions Are Necessary

- **Email mapping** enables secure account linking between Slack and Codegen, ensuring proper access control
- **Group DM access** ensures Codegen can participate in team discussions and collaborative planning sessions

## Data Privacy and Security

**Message Content Handling:**

- **Third-Party LLM APIs:** To provide its core functionality, Codegen shares message content with third-party Large Language Model (LLM) APIs, specifically OpenAI and Anthropic.
- **Data Retention:** Outside of the LLM API interactions, message content is retained by Codegen solely for the purpose of displaying it within the Codegen user interface.
- **Metadata from Private Channels:** When messages from private Slack channels are processed, Codegen does not expose private metadata, such as the original author's name or username, in the Codegen web app.
- **Metadata from Private Channels:** When messages from private Slack channels are processed, Codegen does not expose private metadata, such as the original author's name or username, in the Codegen web app. Private channel names are anonymized and displayed as "Private channel" to non-members.

**User Permissions and Access Control:**

Codegen's actions on connected repositories are governed by the permissions of the user who initiated the interaction via Slack. The bot itself does not have independent permissions to repositories. Access to repositories and the ability to trigger actions are determined by the Codegen user's authenticated account and their associated repository permissions. We recommend configuring channel access carefully during installation to ensure the Codegen integration for Slack is only present in channels where its use is appropriate.

**Privacy Policy:**

For complete details on how we collect, use, and protect your data, please review our [Privacy Policy](https://www.codegen.com/privacy-policy).

## AI Components and Usage

**AI-Powered Functionality:**

Codegen uses artificial intelligence to provide intelligent code assistance, automated development tasks, and natural language interactions. Our AI capabilities include:

- **Code Generation and Analysis:** AI models analyze your codebase and generate appropriate code changes, bug fixes, and improvements
- **Natural Language Processing:** AI interprets your requests in Slack and converts them into actionable development tasks
- **Context Understanding:** AI maintains conversation context to provide relevant and coherent responses across interactions

**AI Data Processing:**

- **Message Analysis:** Your Slack messages are processed by AI models to understand intent and generate appropriate responses
- **Code Context:** When working with repositories, AI models analyze relevant code to provide accurate assistance

**AI Limitations:**

- AI-generated code should be reviewed before deployment
- Complex tasks may require human oversight and validation
- AI responses are based on training data and may not always reflect the most current information

## Pricing and Plans

Codegen offers flexible pricing plans to accommodate teams of all sizes. The Slack integration is available across all plan tiers, with usage limits and features varying by plan.

For detailed pricing information and to choose the plan that best fits your team's needs, visit our [Pricing Page](https://www.codegen.com/pricing).

## Tips for Effective Use

- Use direct language when asking Codegen for help (e.g., "Add pagination to the results view").
Expand Down
Loading