nexus-ai

NEXUS AI — Your Second Brain Inside Slack

A proactive Slack AI agent that detects deadlines, preps you for meetings, summarizes documents, and keeps a personal memory — built for the Slack Agent Builder Challenge.

NEXUS is deliberately not another slash-command chatbot that only responds when asked. Its defining feature is that it watches for commitments in channels it’s invited to and surfaces them before you forget — the same habit a great EA has, running inside the tool your team already lives in.

Stack: Slack Bolt (TypeScript) · Groq (Llama 3.3 inference) · Supabase (Postgres, free tier) · Vanilla HTML/CSS/JS frontend · Vercel (frontend hosting, free tier)


Why this exists

Knowledge workers lose real time to three habits: re-reading threads to catch commitments, digging through history before a meeting, and manually compiling a task list every morning. NEXUS automates all three inside Slack, so there’s no second app to check.

Problem Who feels it NEXUS’s answer
Deadlines buried in chat threads ICs, PMs, anyone in a busy channel Passive scanning + one-tap “add as task”
Meeting prep eats 10–15 min before every call Account managers, EMs, founders /nexus prep <title> pulls real context, not guesses
Daily task triage Everyone An AI-written digest lands in your DMs each morning

Feature list

Repository layout

nexus-ai/
├── backend/            Slack Bolt app, Groq + Supabase integration (TypeScript)
│   ├── src/
│   │   ├── config/     Environment validation
│   │   ├── controllers/ Slack command/event handlers (thin, no business logic)
│   │   ├── services/    Business logic (Groq, tasks, reminders, memory, digest…)
│   │   ├── database/    Supabase client + schema.sql
│   │   ├── middleware/  Error handling wrapper
│   │   ├── routes/      Bolt app wiring (slackApp.ts)
│   │   ├── types/       Shared domain types
│   │   ├── utils/       Logger, date parser
│   │   └── app.ts       Entrypoint + cron jobs
│   ├── slack-manifest/  One-click Slack app manifest
│   └── .env.example
├── frontend/           Static marketing site + dashboard (vanilla HTML/CSS/JS)
│   └── public/
│       ├── index.html      Landing page
│       ├── dashboard.html  Product dashboard (chat, tasks, analytics, settings)
│       └── assets/
└── docs/               Architecture, API, deployment, installation, roadmap

Quick start

cd backend
cp .env.example .env      # fill in Slack, Groq, Supabase credentials
npm install
npm run dev                # Socket Mode — no public URL needed for local dev

See docs/INSTALLATION.md for the full Slack app setup and docs/DEPLOYMENT.md for shipping to production on free-tier infrastructure.

Documentation

License

MIT — see LICENSE.