Slack
Coming soonConnect
Channel analysis, thread tracking, reaction sentiment
Three weeks ago, in a thread under #product-planning, someone wrote: "I'll get the API contract to legal by Friday." Seventeen people were in that channel. None of them are thinking about it today.
This is the Slack problem. Not the volume. Not the notifications. The problem is that Slack has a great memory and organizations don't. Every commitment, decision, and action item is still there, preserved in thread replies. Nobody goes back to find them.
What gets buried
Slack threads are where real decisions happen. The standup says "we'll ship next Tuesday." The meeting says "engineering owns the auth work." But the specifics — the deadline that everyone actually agreed to, the scope exception that was quietly negotiated, the owner who said "I'll handle the vendor coordination" — live in thread replies, not in any project management system.
When something goes wrong, the first question is "did someone commit to this?" The second is "can anyone find where?" The answers are almost always yes and no.
How BASAL reads channels
Run basal connect --slack && basal slack sync and BASAL ingests your workspace: channels, threads, reactions, and DMs where permitted. It doesn't surface messages. It extracts meaning.
Every thread gets read as a structured conversation. BASAL identifies:
- Commitments: first-person future-tense statements with an implicit or explicit deadline
- Decisions: moments where a question or proposal receives explicit agreement from the relevant parties
- Action items: named individuals with stated deliverables
- Blockers: stated dependencies that could prevent commitments from landing
When someone writes "I'll have the migration script ready before the Thursday deploy," that is a commitment. BASAL records the author, the deliverable, the implicit deadline, and the channel context. It doesn't wait for a task to be created in Jira. It reads the thread.
The 3-week example
A backend engineer committed in #platform on March 3rd: "I'll write the runbook for the new rate limiter before we roll it out to prod." The rollout was moved up by four days. Nobody updated the thread. Nobody told the engineer.
The rollout happened on March 14th. No runbook existed. An incident followed.
BASAL had the commitment in the graph from March 3rd. It had the rollout date from a calendar event and a #releases post. When the rollout date moved, BASAL could surface the gap: a commitment with a deadline now inside a compressed window, no evidence of delivery.
Not a bug tracker. Not a project management tool. A reader that never forgets which thread you stopped checking.
Signal from noise
A busy Slack workspace generates thousands of messages per day. Most are noise: status updates, quick acknowledgments, social coordination. BASAL filters by extraction confidence. High-confidence commitments get surfaced. Low-signal chatter stays in the channel.
Reaction sentiment adds a second layer. A message that receives six "this is wrong" emoji in 30 minutes before being deleted carries different weight than one that gets 14 thumbs-up from senior stakeholders. BASAL reads both signals and adjusts confidence accordingly.
The commitments your organization made last month are all still in Slack. BASAL is the first system that actually reads them.
Get started
basal connect --slack && basal slack sync