The knowledge capture engine today.

Roast Coach is a production-quality system actively logging, scoring, and learning from real roasting sessions since early 2026.

44
Modules
~9,200
Lines of Code
589+
Tests Passing
3
AI Endpoints
5
Feedback Loops
2
Control Modes

Real-Time AI Coaching

Claude Sonnet 4.6 nudges every 10s with 7-source context stack, quality-weighted learning, and mode-specific prompts.

Dual-Mode Control

Manual coaching and PID auto-pilot with temporary overrides, mode switching, and separate feedback tracking.

Bean Profile Learning

Quality-weighted ROR profiles from 3+ scored roasts. Learned fan schedules for PID. Per-batch-size optimization.

RoastLink CORE Integration

WiFi WebSocket + HTTP for bidirectional roaster control. Temperature reading, fan/power commands, sensor monitoring.

Stream Deck Support

Hardware buttons for hands-free fan/power control and event markers during roasts.

Comprehensive Logging

Full session JSON with temps, conversation, nudge stats, adjustments, phases, cupping scores, and reflections.

Roast Lab Analysis

Multi-curve comparison, marker editing, cupping score management, filtering and sorting by multiple criteria.

Memory System

Time-based recall from reference roasts. Fires 9s before key events. Score-tagged with quality ratings.

Clean Architecture

Refactored from 7,183-line monolith to 44 modules. 589+ tests. Thread-safe with RLock. Structured logging throughout.

Deeper capture, smarter synthesis.

Every planned feature expands what gets captured, how it's synthesized, or how effectively it's delivered back to you.

Phase 1 — Near Term

Richer Data Capture

Capturing more from each roast — richer cupping data, environmental context, and more reliable storage of the knowledge you're building.

☕ Richer Cupping Form

Expand beyond the current 5-field cupping form. Add flavor descriptor tags (floral, fruity, nutty, chocolate), aroma scoring, and a comparison slider that shows how this roast stacks up against your best of this bean.

Quality AI Learning

🛠️ Atomic File Writes

Replace direct file writes with atomic operations (write to temp, then rename). Prevents data corruption if the app crashes mid-save. Critical for roast logs and bean profiles.

Reliability

🌡️ Ambient & Environmental Data

Incorporate temperature, humidity, and altitude from the RoastLink CORE's environmental sensors. Ambient conditions significantly affect roast behavior — the AI should account for them.

AI Context Hardware

📋 Environment-Based Config

Move configuration from hardcoded values to environment variables with sensible defaults. Makes it easier to run different setups (test vs production) and share the project.

Developer UX
Phase 2 — Mid Term

Smarter Synthesis

Teaching the AI to find deeper patterns in your captured knowledge — cross-bean insights, adaptive timing, and self-enriching reference data.

🔬 Cross-Bean Pattern Detection

Currently the roaster profile aggregates across all beans, but doesn't detect processing-level or origin-level patterns. Imagine: "washed coffees always score better when you slow down after 350°F" or "African naturals need more development time."

AI Learning Quality

📊 PID Profile Quality Learning

ROR profiles currently exclude PID data (correct for manual targets), but there's no equivalent "best PID profile for this bean" learning. Track which PID temperature profiles scored highest per bean and auto-suggest them.

AI Learning PID

⏱️ Adaptive Nudge Timing

Currently fixed at 10-second intervals. The system could learn optimal nudge timing per roast phase — more frequent during critical moments before FC, less frequent during stable drying. Response delay data already exists but isn't used for timing.

UX AI Learning

📚 Knowledge Base Auto-Enrichment

The roaster knowledge file is the only component that doesn't auto-learn. After accumulating enough high-quality roasts, the system could auto-append insights — verified ROR bands, phase timing norms, and cultivar-specific observations.

AI Learning Data
Phase 3 — Long Term

Shared Knowledge

Expanding beyond a single roaster's knowledge. Community bean profiles, multi-roaster support, and mobile cupping so knowledge capture happens everywhere.

🌐 Multi-Roaster Support

Abstract the hardware layer to support roasters beyond the Fresh Roast SR800. Different roasters have different control characteristics, thermal mass, and timing — the AI would adapt its knowledge base and coaching style per machine.

Hardware Community

👥 Shared Bean Profiles

Opt-in sharing of anonymized bean profiles across users. If 50 people have roasted the same Kenya SL28, the collective quality-weighted data would be far more powerful than any single roaster's experience. Cold-start problem solved.

Community AI Learning

📱 Mobile Companion

A lightweight mobile app for cupping and scoring away from the roasting station. Cup your coffee days later from the couch and have the scores sync back to the main system to trigger learning updates.

UX Quality

🚀 Green Bean Marketplace Integration

Connect with green bean vendors to pull origin data, processing details, and cultivar info automatically. When you buy a new bean, the system pre-loads any known roasting characteristics and community profiles.

UX Data
Phase 4 — Moonshot

The Self-Discovering System

The ultimate vision: a system that doesn't just capture and synthesize your knowledge — it generates new knowledge through autonomous exploration.

🧠 Autonomous Roast Exploration

In PID mode, the AI could intentionally try small variations from the best known profile — slightly different fan timing, marginally different development ratios — to discover if there's an even better approach. A/B testing for coffee.

AI Learning Quality

🌱 Flavor Prediction

With enough cupping data mapped to roast curves, the system could predict flavor characteristics before the roast ends. "Based on your curve shape, expect higher acidity and floral notes than your target — extend development by 10s for more sweetness."

AI Learning Quality

Three principles behind the knowledge engine.

🎯

Quality Above All

Every feature is evaluated by one question: does this make the coffee taste better? The cupping score is the ultimate arbiter. If a feature doesn't trace back to cup quality, it doesn't ship.

🛠️

Teach, Don't Replace

Even in PID auto-pilot mode, the goal is to help you understand what's happening and why. The AI explains its reasoning. Every nudge is a learning moment. You should become a better roaster, not just a button-presser.

📈

Capture Everything, Synthesize Honestly

No opinion without evidence. The system captures everything, then synthesizes by comparing your high-scoring roasts against your low-scoring ones. Confirmation bias is the enemy of good roasting.

The engine under the hood.

44
Modules
Refactored from a 7,183-line monolith
589+
Tests
Including 71 integration subtests
5
Feedback Loops
All quality-weighted by cupping
7
Context Sources
Assembled fresh for every AI call