Projet d’exempleLe code de cet exemple se trouve dans le dépôt d’exemples.
Prérequis
- Vous devez avoir installé
uv - Vous devez avoir accès à un espace de travail Slack
- Vous devez disposer d’une clé API Anthropic ou d’une clé API d’un autre fournisseur de LLM
1
Créer une application Slack
- Accédez à slack.com/apps, puis cliquez sur
Create New App. - Choisissez l’option
From scratch, puis donnez un nom à votre application. - Sélectionnez votre espace de travail Slack.
2
Installer l'application dans votre espace de travail
Ensuite, vous devez ajouter à votre espace de travail l’application créée à l’étape précédente.
Vous pouvez suivre les instructions de “Add apps to your Slack workspace”
dans la documentation Slack.
3
Configurer les paramètres de l'application Slack
- Accédez à
App Home- Sous
Show Tabs→Messages Tab: activezAllow users to send Slash commands and messages from the messages tab - Accédez à
Socket Mode- Activez
Socket Mode - Notez le
Socket Mode Handlerpour la variable d’environnementSLACK_APP_TOKEN
- Activez
- Accédez à
OAuth & Permissions- Ajoutez les
Bot Token Scopessuivants :app_mentions:readassistant:writechat:writeim:historyim:readim:writechannels:history
- Installez l’application dans votre espace de travail, puis notez le
Bot User OAuth Tokenpour la variable d’environnementSLACK_BOT_TOKEN.
- Ajoutez les
- Accédez à
Event Subscriptions- Activez
Events - Sous
Subscribe to bot events, ajoutez :app_mentionassistant_thread_startedmessage:im
- Save Changes
- Activez
- Sous
4
Ajouter des variables d'environnement (.env)
Créez un fichier Vous pouvez adapter les variables ClickHouse pour utiliser votre propre serveur ClickHouse
ou votre propre instance Cloud, si vous le préférez.
.env à la racine du projet avec les variables d’environnement suivantes
qui permettront à votre application de se connecter au SQL playground de ClickHouse.5
Utiliser le bot
-
Démarrez le bot :
-
Dans Slack :
- Mentionnez le bot dans un canal :
@yourbot Who are the top contributors to the ClickHouse git repo? - Répondez dans le fil avec une mention :
@yourbot how many contributions did these users make last week? - Envoyez un message privé au bot :
Show me all tables in the demo database.
- Mentionnez le bot dans un canal :