gplay-review-management
Review monitoring, filtering, and automated responses for Google Play. Use when managing user reviews and feedback.
What this skill does
# Review Management for Google Play
Use this skill when you need to monitor and respond to user reviews.
## List Reviews
### Get all reviews
```bash
gplay reviews list --package com.example.app
```
### Get all reviews with pagination
```bash
gplay reviews list --package com.example.app --paginate
```
### Table output (human-readable)
```bash
gplay reviews list \
--package com.example.app \
--output table
```
## Filter Reviews
### By rating
```bash
# Get 1-star reviews
gplay reviews list --package com.example.app \
| jq '.reviews[] | select(.rating == 1)'
# Get 5-star reviews
gplay reviews list --package com.example.app \
| jq '.reviews[] | select(.rating == 5)'
# Get reviews with 3 stars or less
gplay reviews list --package com.example.app \
| jq '.reviews[] | select(.rating <= 3)'
```
### By date
```bash
# Reviews from last 7 days
DATE_7_DAYS_AGO=$(date -u -v-7d +%Y-%m-%dT%H:%M:%SZ)
gplay reviews list --package com.example.app \
| jq --arg date "$DATE_7_DAYS_AGO" \
'.reviews[] | select(.comments[0].userComment.lastModified.time > $date)'
```
### By language
```bash
# English reviews only
gplay reviews list --package com.example.app \
| jq '.reviews[] | select(.comments[0].userComment.language == "en")'
```
### Reviews containing keywords
```bash
# Find reviews mentioning "crash"
gplay reviews list --package com.example.app \
| jq '.reviews[] | select(.comments[0].userComment.text | contains("crash"))'
```
## Get Specific Review
```bash
gplay reviews get \
--package com.example.app \
--review REVIEW_ID
```
## Reply to Reviews
### Reply to single review
```bash
gplay reviews reply \
--package com.example.app \
--review REVIEW_ID \
--text "Thank you for your feedback! We've fixed this issue in version 1.2.3."
```
### Reply templates
**Bug report response:**
```bash
gplay reviews reply \
--package com.example.app \
--review REVIEW_ID \
--text "Thank you for reporting this issue. We've identified the problem and a fix will be available in the next update. Please update to version X.X.X when it's released."
```
**Feature request response:**
```bash
gplay reviews reply \
--package com.example.app \
--review REVIEW_ID \
--text "Thank you for your suggestion! We've added this to our roadmap and will consider it for a future release."
```
**Positive review response:**
```bash
gplay reviews reply \
--package com.example.app \
--review REVIEW_ID \
--text "Thank you so much for your kind words! We're glad you're enjoying the app."
```
**Crash report response:**
```bash
gplay reviews reply \
--package com.example.app \
--review REVIEW_ID \
--text "We're sorry you experienced a crash. This issue has been fixed in version X.X.X. Please update and let us know if you continue to have problems."
```
## Automated Review Response
### Script to reply to unreplied 1-star reviews
```bash
#!/bin/bash
PACKAGE="com.example.app"
# Get all unreplied 1-star reviews
gplay reviews list --package $PACKAGE --paginate \
| jq -r '.reviews[] | select(.rating == 1 and (.comments | length == 1)) | .reviewId' \
| while read REVIEW_ID; do
echo "Replying to review: $REVIEW_ID"
gplay reviews reply \
--package $PACKAGE \
--review "$REVIEW_ID" \
--text "Thank you for your feedback. We're sorry to hear about your experience. Please email [email protected] so we can help resolve this issue."
done
```
## Review Analytics
### Count reviews by rating
```bash
gplay reviews list --package com.example.app --paginate \
| jq '[.reviews[] | .rating] | group_by(.) | map({rating: .[0], count: length})'
```
### Average rating calculation
```bash
gplay reviews list --package com.example.app --paginate \
| jq '[.reviews[].rating] | add / length'
```
### Most common words in reviews
```bash
gplay reviews list --package com.example.app --paginate \
| jq -r '.reviews[].comments[0].userComment.text' \
| tr '[:upper:]' '[:lower:]' \
| tr -s ' ' '\n' \
| sort | uniq -c | sort -rn | head -20
```
## Monitor for Specific Issues
### Find crash-related reviews
```bash
gplay reviews list --package com.example.app --paginate \
| jq '.reviews[] | select(.comments[0].userComment.text | test("crash|freeze|hang"; "i"))'
```
### Find reviews mentioning competitors
```bash
gplay reviews list --package com.example.app --paginate \
| jq '.reviews[] | select(.comments[0].userComment.text | test("competitor_name"; "i"))'
```
### Find reviews with refund requests
```bash
gplay reviews list --package com.example.app --paginate \
| jq '.reviews[] | select(.comments[0].userComment.text | test("refund|money back"; "i"))'
```
## Review Response Best Practices
### DO:
- ✅ Respond within 24-48 hours
- ✅ Be professional and empathetic
- ✅ Acknowledge the issue
- ✅ Provide a solution or timeline
- ✅ Thank users for feedback
- ✅ Personalize responses when possible
### DON'T:
- ❌ Argue with users
- ❌ Use template responses for everything
- ❌ Ignore negative reviews
- ❌ Make promises you can't keep
- ❌ Be defensive
- ❌ Copy-paste the same response to every review
## Response Templates
### General bug fix
```
Thank you for reporting this. We've identified the issue and it will be fixed in our next update (version X.X.X). We appreciate your patience!
```
### Already fixed
```
Thank you for your feedback! This issue has been resolved in our latest version (X.X.X). Please update your app and let us know if you continue to experience any problems.
```
### Need more info
```
Thank you for your feedback. We'd like to help resolve this issue. Could you please email us at [email protected] with more details about what happened? This will help us investigate further.
```
### Feature request
```
Thank you for the suggestion! We've added this to our feature backlog and will consider it for a future release. Please keep the feedback coming!
```
### Positive review
```
Thank you so much! We're thrilled to hear you're enjoying the app. If you have any suggestions for improvements, we'd love to hear them!
```
## Monitoring Dashboard
Create a simple review dashboard:
```bash
#!/bin/bash
PACKAGE="com.example.app"
echo "=== Review Dashboard ==="
echo ""
# Total reviews
TOTAL=$(gplay reviews list --package $PACKAGE --paginate | jq '.reviews | length')
echo "Total reviews: $TOTAL"
# Rating distribution
echo ""
echo "Rating distribution:"
gplay reviews list --package $PACKAGE --paginate \
| jq -r '.reviews[] | .rating' \
| sort | uniq -c | sort -rn
# Avg rating
AVG=$(gplay reviews list --package $PACKAGE --paginate \
| jq '[.reviews[].rating] | add / length')
echo ""
echo "Average rating: $AVG"
# Unreplied reviews
UNREPLIED=$(gplay reviews list --package $PACKAGE --paginate \
| jq '[.reviews[] | select(.comments | length == 1)] | length')
echo ""
echo "Unreplied reviews: $UNREPLIED"
# Recent 1-star
echo ""
echo "Recent 1-star reviews:"
gplay reviews list --package $PACKAGE \
| jq -r '.reviews[] | select(.rating == 1) | "\(.comments[0].userComment.lastModified.time): \(.comments[0].userComment.text)"' \
| head -5
```
## Scheduled Review Check
### Daily review check (cron)
```bash
# Add to crontab
0 9 * * * /path/to/check-reviews.sh
```
### check-reviews.sh
```bash
#!/bin/bash
PACKAGE="com.example.app"
# Get unreplied 1-star and 2-star reviews
UNREPLIED=$(gplay reviews list --package $PACKAGE \
| jq '[.reviews[] | select(.rating <= 2 and (.comments | length == 1))] | length')
if [ "$UNREPLIED" -gt 0 ]; then
echo "⚠️ You have $UNREPLIED unreplied negative reviews!"
# Send notification (email, Slack, etc.)
fi
```
## Integration with Support System
Forward reviews to support email:
```bash
#!/bin/bash
# Get reviews mentioning "support" or "help"
gplay reviews list --package com.example.app --paginate \
| jq -r '.reviews[] | select(.comments[0].userComment.text | test("support|help"; "i")) |
"Review ID: \(.reviewId)\nRating: \(.rating)\nText: \(.comments[0].userComment.text)\n---"Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.