Loading repository dataโฆ
Loading repository dataโฆ
shivangsingh26 / repository
๐ slackAgent: Your AI-powered Slack assistant! Built with LlamaIndex, ChromaDB, and OpenAI embeddings, it delivers instant answers from your documents via a sleek Slack bot or Streamlit web UI. Automate workflows with n8n, expose local APIs with ngrok, and query with ease using FastAPI. Join the future of intelligent chatbots! ๐ค๐ฌ
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
slackAgent is an AI-powered Slack bot that answers your questions using a LlamaIndex and ChromaDB vector database! ๐ค It chats via Slack API, automates workflows with n8n, and offers a sleek Streamlit web UI. Powered by OpenAI embeddings and FastAPI, it delivers smart document retrieval with ease. โจ
app.py: Loads docs, creates OpenAI embeddings, stores in ChromaDB. ๐main.py: FastAPI backend for answering queries. ๐.env: Holds API keys and directory paths. ๐requirements.txt: Lists dependencies (e.g., llama-index, chromadb). ๐ฆstorage/: Stores vector embeddings. ๐พdocumentation/: Holds documents for indexing. ๐Clone the Repo ๐ฅ
git clone https://github.com/shivangsingh26/slackAgent.git
cd slackAgent
Set Up Virtual Environment ๐
python3 -m venv venvSlackAgent
source venvSlackAgent/bin/activate
Install Dependencies ๐ฆ
pip install -r requirements.txt
Configure Environment ๐ง
.env file:
OPENAI_API_KEY=your-openai-api-key
DOCUMENTATION_DIR=./documentation
STORAGE_DIR=./storage
Add Documents ๐
documentation/ folder.Generate Embeddings ๐ง
app.py to index documents:
python3 app.py
Run FastAPI Backend ๐
uvicorn main:app --reload
Set Up ngrok ๐
ngrok authtoken <your-ngrok-authtoken>
ngrok http http://localhost:8000
https://<random>.ngrok.io).The Slack API lets your bot read/post messages and automate tasks. The Events API sends payloads when events (e.g., messages) happen. ๐
app_mentions:read ๐ฃ: Detects @slackAgent mentions.channels:history ๐: Reads public channel message history.channels:join ๐ช: Joins public channels.channels:read ๐: Accesses public channel details.chat:write โ๏ธ: Sends messages in channels/DMs.chat:write.public ๐ข: Posts in public channels without joining.commands โก: Supports custom slash commands.im:history ๐ฌ: Reads DM history.im:write ๐ฉ: Sends DMs.mpim:history ๐ฅ: Reads group DM history.https://<random>.ngrok.io/slack/events). ๐message.channels ๐ข: Triggers on public channel messages.message.im ๐: Triggers on direct messages.slackAgentApp) to your Slack workspace. ๐คAutomate with n8n! ๐ ๏ธ Visualize the workflow:
user_query and channel_id.@slackAgentApp).@slackAgentApp how to install dependencies). ๐Skip Slack and use a web interface! ๐ Check out the UI:
streamlit run chatbot_frontend.py
See slackAgent in action! ๐
Chat with the bot in Slack or use the Streamlit UI! ๐ฌ
@slackAgentApp how to install dependencies).Slack Query:
@slackAgentApp How do I install dependencies?
Response:
Run `pip install -r requirements.txt` in your virtual environment. ๐ฆ
app.py):
documentation/ with SimpleDirectoryReader. ๐VectorStoreIndex. ๐ง storage/developer_documents_collection. ๐พmain.py):
/query endpoint processes questions. ๐storage/ for fast responses. โกLove slackAgent? Contribute! ๐ Open an issue or submit a pull request to make it even better. ๐