Skip to content

damonayoung/status-summarizer-bot

Repository files navigation

๐Ÿค– Status Summarizer Bot

AI-powered TPM status report generator that obsoletes manual status reporting Transforms project updates into autonomous, living systems that monitor, report, and adapt.

OpenAI Python 3.13+ License: MIT

๐Ÿ’ก The Problem

Conventional wisdom: TPMs spend 20-30% of their week crafting updates, summarizing meetings, and manually consolidating data from Jira, Slack, and Notion.

The challenge: Why should humans be the reporting layer of a system when AI can already see, summarize, and forecast?

Our thesis: AI will obsolete the status report by creating dynamic, real-time program narratives โ€” accessible anytime by any stakeholder.

Instead of manually describing progress, this project builds a system that understands and communicates it.

โšก What It Does

An intelligent AI agent that:

  • โœ… Ingests from multiple sources: Meeting notes, Jira tickets, and Slack threads
  • โœ… Synthesizes intelligently: Uses OpenAI's GPT-4/GPT-4o to identify patterns, risks, and priorities
  • โœ… Generates executive-ready reports: At-a-glance dashboards, risk tables, and decision summaries
  • โœ… Visual & scannable: Color-coded status (๐ŸŸข๐ŸŸ ๐Ÿ”ด), trend indicators (โ–ฒโ–ผ), and emoji markers
  • โœ… Decision-focused: Highlights critical risks and surfaces required executive actions
  • ๐Ÿ”„ Supports distribution: Ready for Slack posting and email delivery (configurable)
  • ๐Ÿ“Š Real-time capable: Built to support dynamic, on-demand status updates

๐ŸŽฏ Executive Format Features

The bot now generates 2-minute readable status reports with:

  1. At-a-Glance Dashboard - Instant program health overview (๐ŸŸข๐ŸŸ ๐Ÿ”ด)
  2. Max 3 Highlights - Business outcomes, not technical details
  3. Risk Table - Severity-coded with owners and ETAs
  4. Key Wins - Emoji-coded achievements (๐Ÿš€๐Ÿ”’๐Ÿ“‰โš™๏ธ)
  5. Stakeholder Pulse - Sentiment analysis (โœ…โš™๏ธโš ๏ธ๐Ÿ”ฅ)
  6. Decisions Needed - Explicit executive action items
  7. Metrics Snapshot - Trends with indicators (โ–ฒโ–ผ)

๐Ÿš€ Quick Start

Prerequisites

Installation

# Clone the repository
git clone https://github.com/yourusername/status-summarizer-bot.git
cd status-summarizer-bot

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Configure your API key
cp .env.example .env
# Edit .env and add your OPENAI_API_KEY

Run It

# Run with multi-source ingestion
python src/main_v2.py

# Or run the simple version (meeting notes only)
python src/main.py

๐Ÿ“ Project Structure

status-summarizer-bot/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ main.py              # Simple version (meeting notes only)
โ”‚   โ”œโ”€โ”€ main_v2.py           # Multi-source version โญ
โ”‚   โ””โ”€โ”€ ingestors/           # Modular data ingestion
โ”‚       โ”œโ”€โ”€ base.py          # Base ingestor class
โ”‚       โ”œโ”€โ”€ jira_ingestor.py # Jira ticket ingestion
โ”‚       โ”œโ”€โ”€ slack_ingestor.py# Slack thread ingestion
โ”‚       โ””โ”€โ”€ notes_ingestor.py# Meeting notes ingestion
โ”œโ”€โ”€ sample_data/
โ”‚   โ”œโ”€โ”€ meeting_notes.txt    # Sample TPM meeting notes
โ”‚   โ”œโ”€โ”€ jira_export.json     # Sample Jira tickets
โ”‚   โ””โ”€โ”€ slack_threads.json   # Sample Slack conversations
โ”œโ”€โ”€ templates/
โ”‚   โ””โ”€โ”€ executive_report.html# HTML report template
โ”œโ”€โ”€ output/                  # Generated reports
โ”œโ”€โ”€ config.yaml             # Configuration file
โ”œโ”€โ”€ .env                    # Environment variables (API keys)
โ””โ”€โ”€ README.md

๐ŸŽฏ Features

v2.0 - Multi-Source Intelligence

  • ๐Ÿ“ฅ Multi-Source Ingestion

    • Meeting notes (plain text/markdown)
    • Jira tickets (JSON export)
    • Slack threads (JSON export)
    • Extensible architecture for adding more sources
  • ๐Ÿง  Intelligent Analysis

    • Pattern recognition across sources
    • Risk identification and prioritization
    • Action item extraction with owners
    • Stakeholder sentiment analysis
    • Metric tracking and trend analysis
  • ๐Ÿ“Š Professional Output

    • Executive-ready Markdown reports
    • Beautiful HTML reports with styling
    • Configurable report sections
    • Customizable templates
  • โš™๏ธ Highly Configurable

    • YAML-based configuration
    • Enable/disable data sources
    • Customize report sections
    • Control AI parameters
    • Multiple output formats

Roadmap (Future Enhancements)

  • Live Integrations

    • Direct Jira API integration
    • Real-time Slack bot
    • GitHub project sync
    • Linear integration
  • Distribution Channels

    • Slack webhook posting
    • Email delivery (SMTP)
    • Notion page creation
    • Teams integration
  • Real-time Dashboard

    • Web-based status viewer
    • Live refresh capabilities
    • Interactive filtering
    • Historical trend visualization
  • Advanced AI Features

    • Predictive risk forecasting
    • Automated action item tracking
    • Sentiment trend analysis
    • Custom insight generation

๐Ÿ“ Configuration

Edit config.yaml to customize:

# Enable/disable data sources
data_sources:
  meeting_notes:
    enabled: true
    path: "sample_data/meeting_notes.txt"
  jira:
    enabled: true
    path: "sample_data/jira_export.json"
  slack:
    enabled: true
    path: "sample_data/slack_threads.json"

# AI model settings
ai:
  model: "gpt-4o"  # or gpt-4, gpt-4o-mini
  temperature: 0.3

# Report customization
report:
  title: "Weekly Program Status"
  sections:
    - highlights
    - risks_and_mitigations
    - action_items
    - stakeholder_pulse
    - metrics
    - next_week_priorities

# Output formats
output:
  formats:
    markdown:
      enabled: true
    html:
      enabled: true

๐Ÿ“Š Sample Output

The bot generates comprehensive reports including:

  • ๐ŸŽฏ Highlights: Key achievements and wins
  • โš ๏ธ Risks & Mitigations: Categorized by severity with mitigation plans
  • โœ… Action Items: Specific tasks with owners and deadlines
  • ๐Ÿ‘ฅ Stakeholder Pulse: Perspectives from Engineering, Product, Sales, etc.
  • ๐Ÿ“ˆ Metrics: Sprint velocity, bug counts, deployment frequency, NPS
  • ๐Ÿ”ฎ Next Week Priorities: Forward-looking action items

View sample HTML output | View sample Markdown

๐Ÿ”ง How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    DATA SOURCES                             โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Meeting Notes  โ”‚  Jira Tickets  โ”‚  Slack Threads          โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚                 โ”‚                   โ”‚
         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚  INGESTORS  โ”‚
                    โ”‚  (Modular)  โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚
                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”
                    โ”‚ AI ANALYZER โ”‚
                    โ”‚  (GPT-4o)   โ”‚
                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
         โ”‚                 โ”‚                 โ”‚
    โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”
    โ”‚Markdown โ”‚      โ”‚  HTML   โ”‚      โ”‚  Slack  โ”‚
    โ”‚ Report  โ”‚      โ”‚ Report  โ”‚      โ”‚  Post   โ”‚
    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿงช Example Use Cases

  1. Weekly Executive Updates: Auto-generate Friday status reports
  2. Sprint Reviews: Consolidate Jira + Slack into sprint summaries
  3. Incident Reports: Quickly synthesize post-mortems from multiple sources
  4. Stakeholder Briefings: Create role-specific views for different audiences
  5. Program Health Checks: Real-time status for leadership reviews

๐Ÿ› ๏ธ Development

Adding a New Data Source

  1. Create a new ingestor in src/ingestors/:
from .base import BaseIngestor

class MyIngestor(BaseIngestor):
    def get_source_name(self) -> str:
        return "My Source"

    def ingest(self) -> Dict[str, Any]:
        # Your ingestion logic
        pass

    def format_for_prompt(self, data: Dict[str, Any]) -> str:
        # Format data for AI prompt
        pass
  1. Add configuration to config.yaml
  2. Import and use in main_v2.py

Testing

# Test with sample data
python src/main_v2.py

# Test individual components
python -m pytest tests/

๐Ÿ’ฐ Cost Considerations

  • GPT-4o: ~$0.01-0.05 per report (depending on data volume)
  • GPT-4o-mini: ~$0.001-0.005 per report (cheaper alternative)
  • GPT-3.5-turbo: ~$0.0005-0.002 per report (budget option)

Estimated monthly cost for weekly reports: $1-5/month

๐Ÿค Contributing

Contributions welcome! Areas for improvement:

  • Additional data source integrations
  • Enhanced AI prompts for better insights
  • Real-time dashboard implementation
  • Distribution channel integrations
  • Testing and documentation

๐Ÿ“œ License

MIT License - see LICENSE file for details

๐Ÿ™ Acknowledgments

  • Powered by OpenAI's GPT-4/GPT-4o
  • Inspired by the need to free TPMs from repetitive reporting
  • Built to demonstrate AI's potential in program management

Made with โค๏ธ by a TPM who was tired of writing status reports

"Why should humans be the reporting layer when AI can do it better?" why indeed?

About

Teach your program to report itself โ€” exec summaries from real delivery signals.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published