Slack + persistent context

CS Notes Bot

A Slack-native context layer that turns customer notes and action items into durable shared history. The bot resolves context from the channel, stores it in a queryable database, and lets the team ask Claude questions over the complete customer record.

Anonymized real-workflow rebuild

What is preserved: the Slack command surface, channel-to-customer resolution, shared-message behavior, durable note model, grounded question answering, and deployment shape.

What is fictionalized: all customer identities, workspace details, notes, and action history. The public version seeds SQLite with a realistic but invented customer set.

Build Shape

In-Workflow Note Capture

Uses a compact Slack command surface for notes, todos, recent history, and questions so context is recorded where the conversation happens.

Channel-Based Context

Maps customer channels to records automatically and supports an explicit customer override for cross-customer or team-wide channels.

Durable Shared History

Stores notes and action items in SQLite using a Postgres-compatible schema, with seeded fixtures and database tests that require no credentials.

Grounded Claude Q&A

Loads the complete history for the resolved customer before answering questions about decisions, complaints, follow-ups, or current status.

Engineering Focus

01

Shared by default. Successful notes, todos, and answers post as normal channel messages so the context layer remains collective; input errors stay private to avoid clutter.

02

Portable operating model. Slack Socket Mode keeps local setup simple and removes the need for a public request URL while preserving a path to a long-running deployment.

03

Designed to migrate up. The schema avoids SQLite-specific types, and the code boundary makes a move to Postgres primarily a connection-layer change.