Skip to main content
The Knowledge Pipeline is Whilst’s core feature that automatically extracts, analyzes, and organizes knowledge from Slack conversations.

How It Works

When someone mentions @whilst in Slack, the pipeline runs in the background:
Slack Mention (@whilst)

Bot Responds (immediate)

[Background] Knowledge Pipeline
  ├─ Thread Ingestion (fetch + store messages)
  ├─ AI Analysis (topics, decisions, action items)
  ├─ Auto-Doc Generation (structured documentation)
  └─ Relationship Extraction (collaboration patterns)

Pipeline Stages

1. Thread Ingestion

Captures the full Slack thread and stores it in the database.
  • Fetches all messages via the Slack API
  • Maps Slack user IDs to internal actors
  • Stores conversation metadata and individual messages

2. AI Analysis

Uses OpenAI to extract structured information from the thread:
interface ThreadAnalysis {
  topics: string[];
  keyPoints: string[];
  decisions: Array<{
    decision: string;
    reasoning: string;
    participants: string[];
  }>;
  actionItems: Array<{
    task: string;
    assignee?: string;
    dueDate?: string;
  }>;
  sentiment: 'positive' | 'neutral' | 'negative' | 'mixed';
  urgency: 'high' | 'medium' | 'low';
  workContext: string;
  summary: string;
}

3. Auto-Doc Generation

Generates a structured document from the analysis:
  • AI-generated title and content
  • Automatic tags from extracted topics
  • Links back to the source Slack thread
  • Visibility set based on urgency and content type

4. Relationship Extraction

Analyzes collaboration patterns between thread participants:
  • Shared topics and expertise areas
  • Communication style (formal, casual, technical)
  • Relationship type (peer, mentor, partner)
  • Stored in the relationship graph for future context

Code Location

ComponentPackage
Thread Ingestionpackages/knowledge-pipeline/src/thread-ingestion.ts
Thread Analyzerpackages/knowledge-pipeline/src/thread-analyzer.ts
Auto-Doc Generatorpackages/knowledge-pipeline/src/auto-doc-generator.ts
Relationship Analyzerpackages/knowledge-pipeline/src/relationship-analyzer.ts
Context Retrieverpackages/knowledge-pipeline/src/context-retriever.ts