Piper Morgan Alpha Testing Guide
Version: 0.8.5
Last Updated: January 27, 2026
For: Alpha Testers
Quick Navigation
This guide has three main sections:
| Section |
Description |
Start Here If… |
| Chapter 1: Setup |
Prerequisites, installation, configuration |
You’re setting up for the first time |
| Chapter 2: Testing |
Test scenarios, features to explore |
You already have an account and want to start testing |
| Chapter 3: Troubleshooting |
Common issues and solutions |
Something isn’t working |
Already have an account? Jump directly to Chapter 2: Testing.
Chapter 1: Setup
Before You Begin - Prerequisites Checklist
Required Software:
Required Accounts & Keys:
Optional but Recommended:
Time Commitment:
Important Disclaimers - Please Read
⚠️ ALPHA SOFTWARE WARNING ⚠️
This is pre-release alpha software (version 0.8.5). By proceeding, you acknowledge:
- Expected Issues: Bugs, crashes, and incomplete features are normal
- Data Loss Risk: Your data may be lost at any time without warning
- No Production Use: Do NOT use for mission-critical or time-sensitive work
- Employer Systems: Do NOT install on employer hardware without written permission
- API Charges: You are responsible for all LLM API costs incurred
- Security: Not security audited - use test data only, no sensitive information
- No Warranty: Software provided “as-is” without any warranty whatsoever
- No Support SLA: Best-effort support only, no guaranteed response times
See ALPHA_AGREEMENT.md for complete legal terms.
What’s New in 0.8.5
MUX-IMPLEMENT Complete - Full accessibility and design polish:
- WCAG 2.1 AA contrast compliance (11 colors fixed, all ratios ≥4.5:1)
- ARIA landmarks throughout navigation and command palette
- Design token system v1.1.0 with documented contrast ratios
- Lifecycle state persistence for projects, work items, features, todos
Accessibility Improvements (#428, #429, #430):
- Full ARIA audit: 8 components with proper roles and attributes
- Keyboard navigation support throughout
- High contrast mode support (
prefers-contrast: more)
- Reduced motion support (
prefers-reduced-motion: reduce)
Architecture:
- ADR-049 ProcessRegistry for guided processes
- Feature.to_dict() with lifecycle serialization
What’s New in 0.8.4.3
Fresh Install Fixes - Critical fixes for new alpha testers (#605-#609):
- Server now validates migrations at startup (clear error messages instead of cryptic failures)
- Fresh installs route to web GUI wizard (not CLI)
/setup accessible for new user registration (multi-user support)
- Fresh databases properly detected and migrated
What’s New in 0.8.4.2
Calendar Bug Fixes - Major improvements to TEMPORAL handler:
- “How about today?” now correctly shows calendar data (#596)
- Tomorrow queries display correct meeting times (#588)
- Calendar times shown in human-readable format (not ISO timestamps)
Other Fixes:
- Markdown rendering in chat messages (#592)
- Sidebar conversation ordering (#587)
What’s New in 0.8.4.1
Bug Fixes:
- Chat now auto-loads conversation on page refresh (#583)
/standup command correctly routes to interactive handler (#585)
- UserContextService properly connects to database projects (#582)
- Chat sidebar sync with conversation selection (#581)
- Conversation history sidebar switching fixed (#574)
Architecture Improvement:
- New
RequestContext model for unified identity handling (ADR-051, #584)
- Foundation for better user/session management across the codebase
What’s New in 0.8.4
Integration Settings (Epic #543) - All integration credentials can now be managed from Settings → Integrations:
- Slack: OAuth Connect/Disconnect button
- Google Calendar: OAuth Connect/Disconnect with sync preferences
- GitHub: Personal Access Token configuration with secure keychain fallback
- Notion: API Key configuration with workspace preferences
- Disconnect All: One-click to reset all integrations
Portfolio Onboarding (#490) - New users now experience conversational project setup:
- Triggered automatically on first greeting (“Hello!”)
- Tell Piper about your projects in natural language
- Creates Project entities for better context in future conversations
- Multi-turn flow with confirmation before saving
Bug Fixes:
- Logout 403 “Not authenticated” error fixed
- Integration Test button now uses correct OAuth tokens (#562)
- Demo integration disabled by default (was confusing users)
What’s New in 0.8.3.2
Interactive Standup Assistant - The standup feature now supports conversational interactions. Start with “let’s write a standup” or “/standup” and Piper will guide you through the process interactively:
- Preference gathering: Tell Piper your style preferences (concise, detailed, bullet points)
- Iterative refinement: Request changes until you’re happy with the result
- Version history: Previous versions saved if you want to compare
- Performance: Sub-500ms response times with P95 at 0.03ms
Standup Monitoring Dashboard - Behind the scenes, all standup conversations are now tracked with structured logging for debugging and performance analysis.
Epic #242 Complete - The Interactive Standup Conversation feature (CONV-MCP-STANDUP-INTERACTIVE) is now fully implemented with:
- Issue #552: Conversation state management (7-state machine)
- Issue #553: Turn-based dialogue system
- Issue #554: Preference learning integration
- Issue #555: LLM workflow with Chain-of-Draft
- Issue #556: Performance monitoring (<500ms target met)
What’s New in 0.8.3
Integration Health Dashboard - New dashboard at Settings → Integrations showing real-time status of all integrations. One-click “Test” buttons let you verify each integration is working. Visual status indicators show healthy, degraded, or failed states with helpful fix suggestions.
OAuth Connection Management - Connect and disconnect Slack and Google Calendar directly from the Settings page. No more editing environment variables - just click “Connect” and authorize through the OAuth flow. Connected integrations show account details (workspace name, email).
Notion in Setup Wizard - The setup wizard now includes Notion API key configuration. Enter your key and see immediate validation with workspace name confirmation before saving.
Stable Core Features - Setup, login, chat, lists, todos, and file management are stable. Focus your testing on the new integration features: the dashboard, OAuth connections, and Notion setup.
Bug Fixes - Calendar OAuth now works reliably (state persistence fix). Toast notifications are visible and readable (7-second duration). Breadcrumb navigation no longer overlaps.
Windows Alpha Tester Setup
Best Option: Use the Automated Setup Script
We’ve created a Windows batch file that automates the entire setup process:
REM Fast clone (~91MB instead of ~800MB) - recommended for alpha testers
git clone --depth 1 -b production https://github.com/mediajunkie/piper-morgan-product.git
cd piper-morgan-product
.\scripts\alpha-setup.bat
The script will:
- Check for Python 3.11/3.12 and Docker
- Create a virtual environment
- Install all dependencies
- Generate a secure JWT key
- Start Docker containers
- Launch the setup wizard at http://localhost:8001/setup
Alternative: WSL2 (Windows Subsystem for Linux)
If you prefer a Linux-like environment on Windows, WSL2 provides a smooth setup experience:
# 1. Run as Administrator
wsl --install
wsl --set-default-version 2
wsl --install -d Ubuntu-22.04
# 2. Inside Ubuntu terminal
sudo apt update && sudo apt upgrade -y
sudo apt install python3.11 python3.11-venv git
# 3. Clone and setup (uses bash script - faster)
# --depth 1 gives you a fast ~91MB download (vs ~800MB full history)
git clone --depth 1 -b production https://github.com/mediajunkie/piper-morgan-product.git
cd piper-morgan-product
./scripts/alpha-setup.sh
Manual Setup (If You Prefer Full Control)
If you prefer not to use automated scripts, follow the guided setup below. On Windows, use:
- PowerShell or Command Prompt
venv\Scripts\Activate.ps1 to activate (Windows-style path)
- See Windows Setup Guide for troubleshooting
Known Windows Issues for Alpha Testers
- Clone failures: Ensure you have long path support enabled:
# Run as Administrator
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force
- Python not found:
- Reinstall from https://www.python.org/downloads
- IMPORTANT: Check “Add Python to PATH” during installation
- Restart Command Prompt/PowerShell after installing
- Path errors in commands: Use backslashes (Windows-native) or quotes with forward slashes:
python main.py setup # Works on all platforms
python -c "import sys; print(sys.version)" # Also works
- Docker Desktop not running: The setup script will fail if Docker Desktop isn’t running
- Start Docker Desktop before running the setup script
- Wait for it to fully initialize (check system tray)
Guided Setup Instructions
Step 1: Clone the Repository
# --depth 1 gives you a fast ~91MB download (vs ~800MB full history)
# You get all the code, just not the git history (which you don't need for testing)
git clone --depth 1 https://github.com/mediajunkie/piper-morgan-product.git
cd piper-morgan-product
Note: On Windows, use the WSL2 terminal or PowerShell with proper path handling
Step 2: Create Virtual Environment
python3.12 -m venv venv
# Requires Python 3.11 or 3.12 - verify with: python --version
source venv/bin/activate # On Windows: venv\Scripts\activate
Step 3: Install Dependencies
pip install -r requirements.txt
Step 4: Start Server for First-Time Setup
New in 0.8.2+: Setup now uses a visual web interface by default.
python main.py
# → Opens http://localhost:8001/setup (GUI setup wizard)
The GUI setup wizard will automatically open in your browser and guide you through:
- ✅ System health checks (Docker, Python, Port, Database)
- ✅ API key configuration (OpenAI, Anthropic, Gemini)
- ✅ User account creation (username, email, password)
- ✅ Setup verification and confirmation
See the Setup Wizard Walkthrough section below for detailed screenshots and step-by-step guidance.
Alternative: Command-Line Setup
If you prefer the original command-line interface:
This will run the CLI setup wizard with prompts in your terminal. Both methods configure the same settings - use whichever you’re comfortable with.
After setup, personalize your experience:
python main.py preferences
This 2-minute questionnaire configures:
- Communication Style: concise, balanced, detailed
- Work Style: structured, flexible, exploratory
- Decision Making: data-driven, intuitive, collaborative
- Learning Style: examples, explanations, exploration
- Feedback Level: minimal, moderate, detailed
Step 6: Verify Installation
You should see:
==================================================
Piper Morgan System Status
==================================================
Database:
✓ PostgreSQL connected
Users: 1, Size: 15.2 MB
API Keys:
User: [your-username]
✓ openai: Valid
✓ anthropic: Valid (or ○ Not configured)
Performance:
✓ Database response: 12ms
Recommendations:
✓ All systems operational!
Step 7: First Run
The server will start and automatically open http://localhost:8001 in your browser.
Login with your credentials:
- Username: [from setup wizard]
- Password: [from setup wizard]
After login, you’ll see the Piper Morgan chat interface.
Setup Wizard Walkthrough (New in 0.8.2)
The GUI setup wizard provides a visual, step-by-step interface for configuration. Here’s what to expect at each stage:
Step 1: Welcome Screen

The welcome screen introduces the setup process and explains what will be configured. Click “Get Started” to begin.
Step 2: System Health Check

Automatic validation of your system:
- ✓ Docker installed and running
- ✓ Python version correct (3.11 or 3.12)
- ✓ Port 8001 available
- ✓ Database accessible
If any checks fail, the wizard provides specific guidance on how to fix them.
Step 3: API Key Configuration

Configure your LLM API keys through a web form interface. This is much easier than the command-line method - you can see what you’re typing, correct mistakes easily, and get immediate validation feedback.
Supports:
- OpenAI (GPT-4, GPT-3.5)
- Anthropic (Claude)
- Google Gemini
You can configure one, two, or all three providers. At least one is required.
Step 4: User Account Creation

Create your admin account:
- Username (alphanumeric, unique)
- Email address (valid format required)
- Secure password (min 8 chars, bcrypt-hashed)
- Password confirmation with validation
The form provides real-time feedback on password strength and format requirements.
Step 5: Setup Complete

Setup confirmation screen with:
- Summary of what was configured
- Next steps and quick links
- “Start Using Piper” button to proceed to login
Click the button to go to the login page and start using Piper Morgan.
Chapter 2: Testing
This chapter covers what to test and how. If you’re already set up, start here.
Test Scenarios to Try
Note for 0.8.4 Testers: Setup, login, chat, and core workflows are stable. Focus your testing on the new Integration Settings and Portfolio Onboarding and continue validating the Interactive Standup Assistant.
Priority Testing Areas
- Interactive Standup Assistant - Try “let’s write a standup” or “/standup” in chat
- Standup Conversations - Test preference gathering, refinement requests, completing standups
- Integration Dashboard - Settings → Integrations, test buttons, health status display
- OAuth Connections - Connect/disconnect Slack and Calendar from Settings
- Workflow Management - Lists, todos, projects (CRUD operations, sharing, permissions)
Basic Functionality Tests
Start with these simple tests to verify everything works:
- Basic Chat: “Hello, what can you help me with?”
- Task Creation: “Add a todo: Review Q3 metrics”
- Information Query: “What tasks do I have?”
- File Upload: Upload a PDF or DOCX file (max 10MB) and ask for analysis
- Document Summary: “Summarize the document I just uploaded”
- Preference Check: “How do you prefer to communicate?” (should reflect your settings)
- Multi-User Test: If testing with others, verify you can’t see their data
Exploring Piper’s Features
Lists, Todos, and Projects Management
Basic CRUD Operations (test these first):
- Create a List
- Navigate to http://localhost:8001/lists
- Click “Create New List” button
- Enter name: “Alpha Testing Tasks”
- Enter description: “Testing the Lists feature”
- Verify list appears in the list view
- Edit and Delete
- Open the list you created
- Edit the name or description
- Try deleting a list (should show confirmation)
- Repeat for Todos and Projects
- Navigate to /todos and /projects
- Same CRUD operations available
- Test that all three resource types work consistently
File Management
Basic File Operations (test these first):
- Upload a File
- Navigate to http://localhost:8001/files
- Click “Upload File” or drag-and-drop a file
- Supported formats: PDF, DOCX, TXT, MD, JSON (max 10MB)
- Verify file appears in file list with correct metadata
- Download a File
- Click “Download” button on uploaded file
- Verify file downloads correctly
- Delete a File
- Click “Delete” button on a file
- Verify file is removed from list
- Test File Privacy
- Files are owner-based (private to you)
- Other users should NOT see your files
Interactive Standup Assistant (New in 0.8.3.2)
- Start a Standup Conversation
- In the chat, say “let’s write a standup” or “/standup”
- Piper should respond with initial guidance
- Verify conversation flow starts properly
- Test Preference Gathering
- Tell Piper your preferences: “I prefer bullet points” or “keep it concise”
- Verify Piper acknowledges and remembers your preference
- Generate content should reflect your stated style
- Test Iterative Refinement
- Ask Piper to make changes: “add more detail about the bug fix” or “make it shorter”
- Verify Piper updates the standup accordingly
- Previous versions should be saved for comparison
- Complete the Standup
- Say “looks good, let’s use this” or “finalize”
- Verify standup is marked complete
- Check that performance is fast (sub-500ms responses)
- Edge Cases to Test
- Abandon a standup mid-conversation (say “nevermind” or navigate away)
- Start multiple standups in one session
- Long conversations (10+ turns) - verify memory isn’t growing unbounded
Quick Standup Generation (Legacy)
- Generate a Standup
- Navigate to http://localhost:8001/standup
- Click “Generate Standup” button
- Wait 2-3 seconds for AI generation
- Verify standup report appears with meaningful content
- Note: First standup may be generic if no prior activity
- Test with Activity
- Create some lists, todos, upload files
- Generate standup again
- Verify it reflects your recent activity
Authentication & Logout
- Test Logout
- Click user menu (top right corner of page)
- Click “Logout” button
- Verify you’re redirected to login page
- Verify session is cleared (can’t access /lists without login)
- Test Login After Logout
- Enter your credentials on login page
- Verify you can log back in
- Verify your data is still there (lists, files, etc.)
Navigation & Polish
- Test Breadcrumbs
- Navigate to /lists, /todos, /projects, /files, /standup
- Verify each page shows breadcrumb: Home › [Page Name]
- Click “Home” in breadcrumb, verify navigation works
- Test Page Consistency
- Check that Settings pages are on unified grid
- Verify no “My Lists” prefix (should just be “Lists”)
- Check that Integrations page shows placeholder (not 404)
- Check Privacy & Data settings has informative content
Advanced Testing (Multi-User Sharing)
Note: These features require multiple user accounts and are considered advanced. Focus on basic CRUD operations first.
Sharing Lists, Todos, and Projects
- Share a List
- Open a list you created
- Click “Share” button
- Enter another user’s email (if multi-user testing)
- Select role: Editor
- Verify sharing modal shows success
- Test Permission Badges
- Notice “Owner” badge on your list
- If shared with another user, verify their role badge shows
Permission System
- Conversational Permission Commands
Try these in the chat interface:
- “share my Alpha Testing Tasks list with [email] as editor”
- “who can access my Alpha Testing Tasks?”
- “show me shared lists”
- “give [email] viewer access to my project plan”
- Role-Based Access Testing (requires 2 users)
- Create a list as User A
- Share with User B as “Viewer”
- Log in as User B
- Verify: Can view list but NOT edit/delete
- Share same list with User C as “Editor”
- Log in as User C
- Verify: CAN edit and update list
Chapter 3: Troubleshooting
Troubleshooting
Setup Wizard Issues
GUI setup wizard not loading?
- Make sure you ran
python main.py (not python main.py setup)
- Check that http://localhost:8001/setup opens in your browser
- If browser didn’t auto-open, manually navigate to http://localhost:8001/setup
- Alternative: Use CLI setup with
python main.py setup
“Docker not installed” or “Docker not running”
The setup wizard (GUI or CLI) will guide you through Docker installation with platform-specific instructions. If you encounter issues:
- Make sure Docker Desktop is running (look for whale icon in system tray/menu bar)
- Restart Docker Desktop if it seems stuck
- On macOS: Check Applications folder for Docker Desktop
- On Windows: Check if Docker Desktop service is running
- Test manually with:
docker --version
“Python 3.9+ not found”
- Install Python 3.9+: https://www.python.org/downloads/
- Recommended: Python 3.11+ for best compatibility
- Test with:
python --version
“Port 8001 not available”
- Another service is using port 8001
- Find what’s using it:
lsof -i :8001
- Stop other Piper Morgan instances or change port
“Database not accessible”
- Ensure database is running:
docker-compose up -d db
- Wait 10 seconds for database to start
- Check Docker containers:
docker ps
Runtime Issues
“No LLM provider configured”
- Re-run GUI setup wizard: Navigate to http://localhost:8001/setup
- Or use CLI setup:
python main.py setup
- Verify API keys are valid in your provider dashboard (OpenAI, Anthropic, Google)
- Check status:
python main.py status
High API costs
- Piper uses GPT-4/Claude by default for best results
- Monitor usage in your provider’s dashboard
- Configure preferences for more concise responses
Preference changes not taking effect
- Re-run:
python main.py preferences
- Restart Piper Morgan after preference changes
- Check status shows your username correctly
Login issues
- Forgot password? Run
python main.py setup to create a new account
- Can’t access http://localhost:8001? Try http://127.0.0.1:8001
- Check server is running: Look for “Server ready” message
- Browser didn’t open? Manually navigate to http://localhost:8001
File upload issues
- Supported formats: PDF, DOCX, TXT, MD, JSON
- Max file size: 10MB
- Check file isn’t corrupted or password-protected
- Verify you’re logged in (file upload requires authentication)
Feature-Specific Troubleshooting
Can’t create lists/todos/projects?
- Make sure you’re on the
production branch: git status
- Update to latest:
git pull origin production
- Refresh browser page
- Check browser console for errors (F12)
- Verify you’re logged in (authentication required for CRUD operations)
Files page not loading or shows errors?
- Update to latest:
git pull origin production
- Restart server:
python main.py
- Clear browser cache if needed
- Check file size limit: 10MB maximum
- Verify supported formats: PDF, DOCX, TXT, MD, JSON
Interactive Standup issues?
- Conversation should respond in <500ms (P95 target)
- If conversation seems stuck, try “start over” or navigate away
- Each turn should build on previous context
- Preferences should be remembered within the conversation
Quick Standup generation hangs or fails?
- Should complete in 2-3 seconds
- If hanging, check API key configuration:
python main.py status
- Verify you have activity data (lists, todos, files created)
- Try refreshing the page and generating again
Logout not working?
- Logout is in the user menu (top right corner)
- Click user menu → “Logout”
- Verify redirect to login page after logout
- If session persists, clear browser cookies
Permission sharing not working?
- Requires multi-user setup (2+ user accounts)
- Make sure other user exists in database
- Try conversational command: “share my [resource] with [email] as editor”
- Verify resource ownership (you must own the resource to share it)
- Check that SEC-RBAC is active:
python main.py status
Providing Feedback
We need your feedback to improve! Please report:
What to Report
- Bugs and crashes (with error messages)
- Setup wizard issues or confusing steps
- Preference system problems
- Missing features you expected
- Performance issues
- Successful workflows that delighted you
How to Report
- GitHub Issues: Preferred for bugs (if comfortable with GitHub)
- Email: christian@[domain] for private feedback
- Weekly Check-in: Optional 15-minute calls available
SETUP METHOD: [wizard/manual]
WHAT I TRIED: [specific action]
WHAT I EXPECTED: [expected result]
WHAT HAPPENED: [actual result]
ERROR MESSAGE: [if any]
SYSTEM STATUS: [output of `python main.py status`]
SEVERITY: [blocker/major/minor]
Privacy & Data Collection
- We collect anonymous usage analytics to improve the product
- Error logs may be transmitted (no personal data included)
- Your LLM API keys are stored securely in system keychain, never transmitted
- Preference data is stored locally in your database
- You can opt out of analytics in settings
- Setup wizard completion statistics help us improve onboarding
- SEC-RBAC Phase 1 ensures owner-based access control
- Shared resources require explicit permission grants
- Your files, lists, todos, and projects are private by default
- Note: Data is not yet fully encrypted at rest (see
ALPHA_KNOWN_ISSUES.md for details)
Advanced: Manual Setup (If Wizard Fails)
If the setup wizard fails, you can fall back to manual configuration:
- Environment Variables: Copy
.env.example to .env and edit
- Database: Run
docker-compose up -d db
- API Keys: Manually add to
.env file
- Database Migration: Run database setup scripts
See original testing guide for detailed manual steps.
Questions?
Remember: This is alpha software (version 0.8.5). The GUI setup wizard handles most complexity, but you’re still testing early-stage software. Expect bugs and incomplete features.
If guided setup seems overwhelming, a hosted version is planned for 2026.
Thank you for being an early adopter and helping us improve! 🚀
See Also
VERSION_NUMBERING.md - Understanding Piper Morgan’s version scheme
ALPHA_AGREEMENT_v2.md - Legal terms and conditions
ALPHA_KNOWN_ISSUES.md - Current bugs and limitations
ALPHA_QUICKSTART.md - Quick 2-5 minute setup guide
Last updated: January 19, 2026
Software version: 0.8.5