- Fix ChatBubble to handle non-string content with String() wrapper - Fix API route to use generateText for non-streaming requests - Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.) - Use Chat Completions API instead of Responses API for compatible providers - Update ChatBubble tests and fix component exports to kebab-case - Remove stale PascalCase ChatBubble.tsx file
117 lines
6.4 KiB
Markdown
117 lines
6.4 KiB
Markdown
---
|
|
stepsCompleted: [1, 2, 3, 4, 5]
|
|
inputDocuments: ['/home/maximilienmao/Projects/Test01/_bmad-output/analysis/brainstorming-session-2026-01-20.md']
|
|
date: 2026-01-20
|
|
author: Max
|
|
---
|
|
|
|
# Product Brief: Test01
|
|
|
|
<!-- Content will be appended sequentially through collaborative workflow steps -->
|
|
|
|
## Executive Summary
|
|
|
|
Test01 is a "Self-Study & Personal Branding Companion" designed for data analytics learners who struggle to consistently create content for their personal brand. By transforming a daily chat-based "learning diary" into high-quality, vlog-style educational content, Test01 removes the friction of writing while ensuring the output is authentic and highly relevant to recruiters.
|
|
|
|
---
|
|
|
|
## Core Vision
|
|
|
|
### Problem Statement
|
|
|
|
Data analytics bootcamp graduates need to build a personal brand to get hired, but they are often too exhausted to write consistent, high-quality content. Traditional note-taking is passive, and staring at a blank page for a blog post is daunting, leading to abandonment of personal branding efforts.
|
|
|
|
### Problem Impact
|
|
|
|
Without visible proof of learning (like a blog or active LinkedIn), talented graduates get lost in the sea of applicants. They struggle to demonstrate their problem-solving process and unique voice, reducing their employability despite having the technical skills.
|
|
|
|
### Why Existing Solutions Fall Short
|
|
|
|
* **Standard Note Apps (Notion, Obsidian):** Great for storage, but require high effort to transform notes into public content.
|
|
* **AI Writing Tools (ChatGPT):** Can generate content, but often sound generic, robotic, or lack the deep context of the user's specific learning journey ("hallucinated expertise" vs. "authentic struggle").
|
|
* **Social Media Schedulers:** Manage distribution but don't help with *creation* or *ideation*.
|
|
|
|
### Proposed Solution
|
|
|
|
A mobile-first, chat-based interface where the user "vents" or debriefs their daily learning struggles to an AI "Teacher." This AI engages in a supportive dialogue to extract insights (active elicitation), then switches to a "Ghostwriter" persona (using long-term user context) to automatically draft authentic, "vlog-style" LinkedIn posts and Medium articles. The system prioritizes "narrative over tutorial," focusing on the *journey* of learning.
|
|
|
|
### Key Differentiators
|
|
|
|
1. **Two-Stage Pipeline (Teacher-to-Ghostwriter):** Solves the "blank page" problem by first using a "Teacher" agent to purely elicit information via probing questions, then passing that structured context to a "Ghostwriter" agent for content generation.
|
|
2. **Vlog-Style Authenticity:** Optimizes for "Peer Learner" engagement (empathy/struggle) rather than just "Expert" tutorials, differentiating the user from other juniors.
|
|
3. **Frictionless Ritual:** Replaces "writing a post" with "chatting about my day," lowering the barrier to entry for consistent documentation.
|
|
|
|
## Target Users
|
|
|
|
### Primary Users
|
|
|
|
**"The Exhausted Learner" (Alex)**
|
|
* **Context:** Recent Data Bootcamp graduate. Competent in Python/SQL but exhausted by the job hunt.
|
|
* **Pain Point:** Knows personal branding is necessary but lacks the mental energy to convert raw code/learnings into polished LinkedIn content. Fears sounding like an imposter.
|
|
* **Goal:** Secure a job by demonstrating "public learning" without adding significant workload to their day.
|
|
* **Core Behavior:** Uses the app to "vent" or debrief immediately after a study session/bug fix.
|
|
|
|
### Secondary Users
|
|
|
|
**"The Hiring Manager" (Sarah)**
|
|
* **Context:** Senior Data Lead reviewing hundreds of resumes.
|
|
* **Goal:** Differentiate between "tutorial zombies" (who just copy code) and "problem solvers" (who understand the *why*).
|
|
* **Value:** Values authentic "vlog-style" content that shows the candidate's thought process, struggle, and resilience.
|
|
|
|
### User Journey (The "Venting" Ritual)
|
|
|
|
1. **Trigger:** Alex hits a wall or solves a tough bug (e.g., a Pandas merge error).
|
|
2. **Action:** Opens Test01 and chats comfortably: *"Ugh, I hate how merge defaults to inner join."*
|
|
3. **Transformation (The Magic):** The AI "Teacher" asks a probing question: *"That's a common trap! How did you catch it?"* This forces Alex to articulate the lesson.
|
|
4. **Reward:** The AI "Ghostwriter" instantly drafts a polished, engaging post: *"Why I'll never trust a default merge again."*
|
|
5. **Outcome:** Alex posts to LinkedIn in seconds. Sarah sees it and validates Alex's troubleshooting skills.
|
|
|
|
## Success Metrics
|
|
|
|
### User Success
|
|
|
|
* **Metric:** "Posts Generated per Week"
|
|
* **Target:** Active users generate >1 LinkedIn post per week.
|
|
* **Why:** If Alex is just "venting" but not "posting," the Ghostwriter pipeline is failing. This proves the "Ritual" is sticking.
|
|
|
|
### Business Objectives
|
|
|
|
* **Metric:** "Engagement per Post" (Relative to manual posts)
|
|
* **Target:** Test01-generated posts see 1.5x higher engagement than user's previous manual posts.
|
|
* **Why:** Proves the "Vlog-style" hypothesis—that authentic struggle stories perform better than generic tutorials. This is the core value proposition for "Getting Hired."
|
|
|
|
### Key Performance Indicators
|
|
|
|
* **Quality KPI:** "Edit Distance" (<10% manual edits)
|
|
* *Definition:* Percentage of text changed by user before posting.
|
|
* *Definition:* Percentage of text changed by user before posting.
|
|
* *Why:* Measures the quality of the "Teacher's" context extraction. High edits = Teacher failed to ask the right questions.
|
|
|
|
## MVP Scope
|
|
|
|
### Core Features (The "Venting Machine")
|
|
|
|
1. **Chat Interface:** Simple text chat to capture the raw "venting."
|
|
2. **Basic "Teacher" Agent:** A prompt-engineered agent that asks *one* smart follow-up question to dig deeper into the struggle.
|
|
3. **Basic "Ghostwriter" Agent:** Takes the chat transcript and formats it into a LinkedIn-ready post.
|
|
4. **Copy-Paste Export:** No API integration. Just a "Copy to Clipboard" button.
|
|
|
|
### Out of Scope for MVP
|
|
|
|
* **Medium Integration:** Focus on LinkedIn short-form first.
|
|
* **Voice Notes:** Adds transcription complexity.
|
|
* **User Accounts/Cloud Save:** Local storage only (or simple Firebase) to start.
|
|
* **Analytics:** No dashboards.
|
|
|
|
### MVP Success Criteria
|
|
|
|
* **Pass:** Does the AI produce a post that Alex is willing to share with <10% edits?
|
|
* **Fail:** Does the AI hallucinate details that didn't happen in the chat?
|
|
|
|
### Future Vision
|
|
|
|
* **V2:** Cloud sync, User Profiles ("My Tone" settings).
|
|
* **V3:** Multi-platform support (Medium, Dev.to) and "Series" management (turning 5 posts into an article).
|
|
|
|
|