Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save ben-vargas/1d46bf16a1337af6d3994b5ff2723f21 to your computer and use it in GitHub Desktop.

Select an option

Save ben-vargas/1d46bf16a1337af6d3994b5ff2723f21 to your computer and use it in GitHub Desktop.
╭────────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code! │
│ │
│ /help for help, /status for your current setup │
│ │
│ cwd: C:\Users\ben\Documents\git\unsynced\tetris │
╰────────────────────────────────────────────────────╯
Tips for getting started:
1. Ask Claude to create a new app or clone a repository
2. Use Claude to help with file analysis, editing, bash commands and git
3. Be as specific as you would with another engineer for the best results
※ Tip: Start with small features or bug fixes, tell Claude to propose a plan, and verify its suggested edits
> Can you create a PRD (Product Requirements Document) for a game of tetris? Call it tetris.prd
● I'll create a comprehensive PRD for a Tetris game.
● Write(tetris.prd)
⎿  Wrote 1 lines to tetris.prd
# Product Requirements Document: Tetris Game
## 1. Executive Summary
### 1.1 Purpose
This document outlines the requirements for developing a modern implementation of the classic Tetris game. The game will provide an engaging puzzle experience with traditional gameplay mechanics while incorporating modern quality-of-life
features.
### 1.2 Scope
A single-player Tetris game with core gameplay mechanics, scoring system, difficulty progression, and basic UI/UX features.
● I've created a comprehensive PRD for a Tetris game at tetris.prd. The document includes all essential components: gameplay mechanics, scoring system, UI/UX requirements, technical specifications, and success metrics. It follows standard PRD
structure and provides clear requirements for implementing a modern Tetris game.
> /exit
⎿  (no content)
╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ >  │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
? for shortcuts
PS C:\Users\ben\Documents\git\unsynced\tetris> ls
Directory: C:\Users\ben\Documents\git\unsynced\tetris
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2025-07-13 2:59 PM 5703 tetris.prd
PS C:\Users\ben\Documents\git\unsynced\tetris> more .\tetris.prd
# Product Requirements Document: Tetris Game
## 1. Executive Summary
### 1.1 Purpose
This document outlines the requirements for developing a modern implementation of the classic Tetris game. The game will provide an engaging puzzle experience with traditional gameplay mechanics while incorporating modern quality-of-life features.
### 1.2 Scope
A single-player Tetris game with core gameplay mechanics, scoring system, difficulty progression, and basic UI/UX features.
## 2. Product Overview
### 2.1 Product Description
A browser-based or desktop implementation of Tetris where players arrange falling geometric shapes (tetrominoes) to create complete horizontal lines, which then disappear to score points.
### 2.2 Target Audience
- Casual gamers of all ages
- Puzzle game enthusiasts
- Players seeking quick gaming sessions
- Retro gaming fans
### 2.3 Platform Requirements
- Web browsers (Chrome, Firefox, Safari, Edge - latest 2 versions)
- OR Desktop application (Windows 10+, macOS 10.14+, Linux Ubuntu 20.04+)
- Minimum screen resolution: 800x600
## 3. Functional Requirements
### 3.1 Core Gameplay
#### 3.1.1 Game Board
- Standard 10x20 grid playing field
- Visible grid lines (optional toggle)
- Clear visual boundaries
#### 3.1.2 Tetrominoes
All seven standard Tetris pieces:
- I-piece (cyan): 4 blocks in a line
- O-piece (yellow): 2x2 square
- T-piece (purple): T-shape
- S-piece (green): S-shape
- Z-piece (red): Z-shape
- J-piece (blue): J-shape
- L-piece (orange): L-shape
#### 3.1.3 Piece Movement
- Left/Right movement: Arrow keys or A/D
- Soft drop (faster fall): Down arrow or S
- Hard drop (instant placement): Spacebar
- Rotate clockwise: Up arrow or W
- Rotate counter-clockwise: Z or Shift
- Hold piece: C or Shift
#### 3.1.4 Game Mechanics
- Random piece generation using "bag" system (all 7 pieces before repeat)
- Wall kicks for rotation near boundaries
- Lock delay: 0.5 seconds before piece locks in place
- Line clearing: Full rows disappear
- Gravity: Pieces fall automatically
### 3.2 Scoring System
#### 3.2.1 Basic Scoring
- Single line clear: 100 points A- level
- Double line clear: 300 points A- level
- Triple line clear: 500 points A- level
- Tetris (4 lines): 800 points A- level
- Soft drop: 1 point per cell
- Hard drop: 2 points per cell
#### 3.2.2 Combo System
- Consecutive line clears multiply score by combo counter
- T-spin bonuses for advanced players
### 3.3 Progression System
#### 3.3.1 Levels
- Start at level 1
- Advance 1 level per 10 lines cleared
- Maximum level: 20
#### 3.3.2 Speed Progression
- Drop speed increases with level
- Level 1: 1 cell per second
- Level 20: 20 cells per second
### 3.4 Game States
#### 3.4.1 Main Menu
- New Game
- High Scores
- Settings
- Controls
- Exit/Quit
#### 3.4.2 In-Game
- Active gameplay
- Pause menu (ESC key)
- Game Over screen with final score
#### 3.4.3 Game Over
- Display final score
- Show lines cleared
- Display level reached
- Options: Retry, Main Menu
### 3.5 Additional Features
#### 3.5.1 Next Piece Preview
- Show next 3-5 pieces
- Located on right side of game board
#### 3.5.2 Hold Feature
- Store one piece for later use
- Can swap current piece with held piece
- Visual indicator for held piece
#### 3.5.3 Ghost Piece
- Semi-transparent preview of where piece will land
- Toggle on/off in settings
#### 3.5.4 Statistics Tracking
- Total lines cleared
- Piece distribution
- Play time
- High score tracking (top 10)
## 4. Non-Functional Requirements
### 4.1 Performance
- 60 FPS gameplay
- Input latency < 16ms
- Load time < 3 seconds
### 4.2 Usability
- Intuitive controls
- Clear visual feedback
- Responsive to user input
- Accessibility: Colorblind mode
### 4.3 Design Requirements
#### 4.3.1 Visual Style
- Clean, modern aesthetic
- High contrast between pieces and background
- Smooth animations for piece movement and line clears
#### 4.3.2 Audio
- Background music (toggleable)
- Sound effects:
- Piece rotation
- Piece placement
_____ _ __ __ _ _ ___
|_ _|_ _ ___| | __ | \/ | __ _ ___| |_ ___ _ __ / \ |_ _|
| |/ _` / __| |/ / | |\/| |/ _` / __| __/ _ \ '__| / _ \ | |
| | (_| \__ \ < | | | | (_| \__ \ || __/ | / ___ \ | |
|_|\__,_|___/_|\_\ |_| |_|\__,_|___/\__\___|_| /_/ \_\___|
by https://x.com/eyaltoledano
╭───────────────────────────────────╮
│ │
│ Initializing your new project │
│ │
╰───────────────────────────────────╯
ℹ️ No rules specified; interactive setup will be launched to select profiles.
ℹ️ Required options not provided, proceeding with prompts.
Add shell aliases for task-master? This lets you type "tm" instead of "task-master" (Y/n):
Initialize a Git repository in project root? (Y/n):
Store tasks in Git (tasks.json and tasks/ directory)? (Y/n):
Task Master Project settings:
Add shell aliases (so you can use "tm" instead of "task-master"): Yes
Initialize Git repository in project root: Yes
Store tasks in Git (tasks.json and tasks/ directory): Yes
Do you want to continue with these settings? (Y/n):
ℹ️ Initializing project in C:\Users\ben\Documents\git\unsynced\tetris
ℹ️ Created directory: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster
ℹ️ Created directory: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\tasks
ℹ️ Created directory: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\docs
ℹ️ Created directory: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\reports
ℹ️ Created directory: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\templates
✅ Created initial state file: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\state.json
ℹ️ Default tag set to "master" for task organization
ℹ️ Created file: C:\Users\ben\Documents\git\unsynced\tetris\.env.example
ℹ️ Created file: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\config.json
ℹ️ Updated config with correct maxTokens values
✅ Created C:\Users\ben\Documents\git\unsynced\tetris\.gitignore with full template
ℹ️ Created file: C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\templates\example_prd.txt
ℹ️ Initializing Git repository due to --git flag...
✅ Git repository initialized
⚠️ Could not determine shell type. Aliases not added.
╭─────────────────────────────╮
│ Installing dependencies... │
╰─────────────────────────────╯
╭───────────────────────────────╮
│ Configuring Rule Profiles... │
╰───────────────────────────────╯
ℹ️ Running interactive rules setup. Please select which rule profiles to include.
_____ _ __ __ _
|_ _|_ _ ___| | __ | \/ | __ _ ___| |_ ___ _ __
| |/ _` / __| |/ / | |\/| |/ _` / __| __/ _ \ '__|
| | (_| \__ \ < | | | | (_| \__ \ || __/ |
|_|\__,_|___/_|\_\ |_| |_|\__,_|___/\__\___|_|
by https://x.com/eyaltoledano
╭───────────────────────────────────────────╮
│ │
│ Version: 0.20.0 Project: Taskmaster │
│ │
╰───────────────────────────────────────────╯
╭───────────────────────────────────────────────────────────────────────────────────────────╮
│ │
│ Rule Profiles Setup │
│ │
│ Rule profiles help enforce best practices and conventions for Task Master. │
│ Each profile provides coding guidelines tailored for specific AI coding environments. │
│ │
│ Available Profiles: │
│ • Claude Code - Integration guide with Task Master slash commands │
│ • Cline - Rule profile │
│ • Codex - Comprehensive Task Master integration guide │
│ • Cursor - Rule profile and MCP config │
│ • Gemini - Integration guide and MCP config │
│ • Roo Code - Rule profile, MCP config, and agent modes │
│ • Trae - Rule profile │
│ • VS Code - Rule profile and MCP config │
│ • Windsurf - Rule profile and MCP config │
│ │
╰───────────────────────────────────────────────────────────────────────────────────────────╯
✔ Which rule profiles would you like to add to your project? Claude Code
Installing 1 selected profile(s)...
Processing profile 1/1: claude...
Summary for claude: Integration guide installed.
Completed installation of all 1 profile(s).
✅ Rule profiles configured.
╭───────────────────────────────────╮
│ Configuring Response Language... │
╰───────────────────────────────────╯
ℹ️ Running interactive response language setup. Please input your preferred language.
_____ _ __ __ _
|_ _|_ _ ___| | __ | \/ | __ _ ___| |_ ___ _ __
| |/ _` / __| |/ / | |\/| |/ _` / __| __/ _ \ '__|
| | (_| \__ \ < | | | | (_| \__ \ || __/ |
|_|\__,_|___/_|\_\ |_| |_|\__,_|___/\__\___|_|
by https://x.com/eyaltoledano
╭───────────────────────────────────────────╮
│ │
│ Version: 0.20.0 Project: Taskmaster │
│ │
╰───────────────────────────────────────────╯
Response language set to: {"setup":true}
Starting interactive response language setup...
✔ Input your preferred response language English
Response language set to: English
✅ Successfully set response language to: English
✅ Response Language configured.
╭───────────────────────────╮
│ Configuring AI Models... │
╰───────────────────────────╯
ℹ️ Running interactive model setup. Please select your preferred AI models.
_____ _ __ __ _
|_ _|_ _ ___| | __ | \/ | __ _ ___| |_ ___ _ __
| |/ _` / __| |/ / | |\/| |/ _` / __| __/ _ \ '__|
| | (_| \__ \ < | | | | (_| \__ \ || __/ |
|_|\__,_|___/_|\_\ |_| |_|\__,_|___/\__\___|_|
by https://x.com/eyaltoledano
╭───────────────────────────────────────────╮
│ │
│ Version: 0.20.0 Project: Taskmaster │
│ │
╰───────────────────────────────────────────╯
Starting interactive model setup...
🎯 Interactive Model Setup
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 Navigation tips:
• Type to search and filter options
• Use ↑↓ arrow keys to navigate results
• Standard models are listed first, custom providers at bottom
• Press Enter to select
✔ Select the main model for generation/updates: claude-code/opus
✔ Select the research model: claude-code/opus
✔ Select the fallback model (optional): claude-code/sonnet
Set main model: claude-code / opus
Set research model: claude-code / opus
Set fallback model: claude-code / sonnet
Model setup complete!
✅ AI Models configured.
ℹ️ Adding shell aliases...
⚠️ Could not determine shell type. Aliases not added.
╔════════════════════════════════════════════╗
║ ║
║ ____ _ ║
║ / ___| _ _ ___ ___ ___ ___ ___| | ║
║ \___ \| | | |/ __/ __/ _ \/ __/ __| | ║
║ ___) | |_| | (_| (_| __/\__ \__ \_| ║
║ |____/ \__,_|\___\___\___||___/___(_) ║
║ ║
║ Project initialized successfully! ║
║ ║
╚════════════════════════════════════════════╝
╭───────────────────────────────────────────────── Getting Started ─────────────────────────────────────────────────╮
│ │
│ Things you should do next: │
│ │
│ 1. Configure AI models (if needed) and add API keys to `.env` │
│ ├─ Models: Use `task-master models` commands │
│ └─ Keys: Add provider API keys to .env (or inside the MCP config file i.e. .cursor/mcp.json) │
│ 2. Discuss your idea with AI and ask for a PRD using example_prd.txt, and save it to scripts/PRD.txt │
│ 3. Ask Cursor Agent (or run CLI) to parse your PRD and generate initial tasks: │
│ └─ MCP Tool: parse_prd | CLI: task-master parse-prd scripts/prd.txt │
│ 4. Ask Cursor to analyze the complexity of the tasks in your PRD using research │
│ └─ MCP Tool: analyze_project_complexity | CLI: task-master analyze-complexity │
│ 5. Ask Cursor to expand all of your tasks using the complexity analysis │
│ 6. Ask Cursor to begin working on the next task │
│ 7. Add new tasks anytime using the add-task command or MCP tool │
│ 8. Ask Cursor to set the status of one or many tasks/subtasks at a time. Use the task id from the task lists. │
│ 9. Ask Cursor to update all tasks from a specific task id based on new learnings or pivots in your project. │
│ 10. Ship it! │
│ │
│ * Review the README.md file to learn how to use other commands via Cursor Agent. │
│ * Use the task-master command without arguments to see all available commands. │
│ │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
PS C:\Users\ben\Documents\git\unsynced\tetris> task-master parse-prd tetris.prd
_____ _ __ __ _
|_ _|_ _ ___| | __ | \/ | __ _ ___| |_ ___ _ __
| |/ _` / __| |/ / | |\/| |/ _` / __| __/ _ \ '__|
| | (_| \__ \ < | | | | (_| \__ \ || __/ |
|_|\__,_|___/_|\_\ |_| |_|\__,_|___/\__\___|_|
by https://x.com/eyaltoledano
╭───────────────────────────────────────────╮
│ │
│ Version: 0.20.0 Project: Taskmaster │
│ │
╰───────────────────────────────────────────╯
🏷️ tag: master
Parsing PRD file: C:\Users\ben\Documents\git\unsynced\tetris\tetris.prd
Generating 10 tasks...
⠋ Parsing PRD and generating tasks...
[INFO] Parsing PRD file: C:\Users\ben\Documents\git\unsynced\tetris\tetris.prd, Force: false, Append: false, Research: false
[INFO] Tag 'master' is empty or doesn't exist. Creating/updating tag with new tasks.
[INFO] Reading PRD content from C:\Users\ben\Documents\git\unsynced\tetris\tetris.prd
[INFO] ✓ JSON schema validation enabled
[INFO] Calling AI service to generate tasks from PRD...
⠦ Parsing PRD and generating tasks...
[SUCCESS] Successfully parsed PRD via AI service.
[SUCCESS] Successfully generated 10 tasks in C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\tasks\tasks.json
╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ │
│ Successfully generated 10 new tasks. Total tasks in C:\Users\ben\Documents\git\unsynced\tetris\.taskmaster\tasks\tasks.json: 10 │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭────────────────────────────────────────────────────────────────────────────╮
│ │
│ Next Steps: │
│ │
│ 1. Run task-master list to view all tasks │
│ 2. Run task-master expand --id=<id> to break down a task into subtasks │
│ │
╰────────────────────────────────────────────────────────────────────────────╯
╭────────────────── 💡 Telemetry ──────────────────╮
│ │
│ AI Usage Summary: │
│ Command: parse-prd │
│ Provider: claude-code │
│ Model: opus │
│ Tokens: 22925 (Input: 20240, Output: 2685) │
│ Est. Cost: $0.000000 │
│ │
✔ Tasks generated successfully!
╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ FYI: Taskmaster now supports separate task lists per tag. Use the --tag flag to create/read/update/filter tasks by tag. │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
PS C:\Users\ben\Documents\git\unsynced\tetris>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment