Agent skill

Reply Reviews

by timusus in timusus/Shuttle2

Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post.

Apache-2.0Auto-check passedMobile

Install Reply Reviews

skills CLI
$ npx skills add timusus/Shuttle2 --skill reply-reviews -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install timusus/Shuttle2 reply-reviews --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/timusus/Shuttle2.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/reply-reviews .claude/skills/reply-reviews && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
reply-reviews
GitHub stars
229
Token cost
~1k tokens
SKILL.md length
543 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
Apache-2.0

At a glance

Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post.

  • Works in 2 steps: Fetch unreplied reviews → Draft one reply per review. Write them…
  • Asked to check Play reviews
  • Calls gh
  • Draft review replies

What it does

Reply Reviews is an agent skill from timusus/Shuttle2. Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post. Use when asked to check Play reviews, draft review replies, or reply to app store reviews.

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile, covering App store release. It works with Android. The repository describes itself as: Shuttle Music: a music player for Android and iOS. Plays local files and streams from Jellyfin, Emby, Plex and Navidrome/Subsonic, with Chromecast, Android Auto, EQ and replay… The licence is Apache-2.0.

When your agent uses it

  • Asked to check Play reviews
  • Draft review replies
  • Reply to app store reviews

Example prompts

  • “/reply-reviews”

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Fetch unreplied reviews
  2. Draft one reply per review. Write them to support/reviews/drafts-YYYY-MM-DD.json (today's

What it can do on your machine

Read from SKILL.md and the folder at commit 9cef5dd. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • play.google.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Reply Reviews loads about 1k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 543 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from timusus/Shuttle2 at commit 9cef5dd, republished under its Apache-2.0 licence (© timusus). 543 words, ~1,012 tokens.

Download SKILL.mdSave it as .claude/skills/reply-reviews/SKILL.md (or your agent's skills folder).
name
reply-reviews
description
Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post. Use when asked to check Play reviews, draft review replies, or reply to app store reviews.
user_invocable
true

Reply to Play Reviews

Fetch recent Google Play reviews for S2, draft a reply for each unanswered one, and stop for the owner's approval. Never post a reply without explicit approval.

API window: the Play Developer API reviews.list endpoint only returns reviews with text from roughly the last 7 days. Reviews older than that are invisible to this tool: the owner must answer them manually in Play Console.

Steps

  1. Fetch unreplied reviews:

    bash
    support/scripts/play-reviews list --unreplied --json

    If this fails with a 401/403, the reviews-reader service account's grant may still be propagating (can take up to 24h): report that and stop, don't retry in a loop.

  2. Draft one reply per review. Write them to support/reviews/drafts-YYYY-MM-DD.json (today's date; this directory is gitignored) as a JSON array, one object per review:

    json
    {
      "reviewId": "...",
      "stars": 4,
      "reviewText": "...",
      "replyText": "...",
      "approved": false
    }

    Reply guidelines:

    • Vary the sign-off so replies don't read as a bot: some end "Tim" or "Cheers, Tim", many have no sign-off at all. Vary openings too.
    • Don't repeat the complaint back to them, and don't placate ("that's a real gap", "that's fair feedback", "I know it hurt"). Answer plainly with what's true or what's happening.
    • Never invent facts about the owner or the project ("S2 is where all my work goes", "actively updated"). The owner is a solo indie dev with three young kids; it's fine to say that plainly when it explains slow updates, but don't overuse it.
    • Specific to the review, but short. Only reference what they said when it adds something.
    • Under 350 characters.
    • No em or en dashes, and none of the stock phrases play-reviews bans (see BANNED_PHRASES). Run support/scripts/play-reviews lint <drafts file> and fix every hit before showing drafts.
    • No promises of dates ("next release", "next week", etc.): commit to nothing time-bound.
    • Thank the reviewer for praise in positive reviews.
    • For bug reports, ask them to email developer@simplecityapps.com with details (device, steps to reproduce) so it can be investigated: don't try to diagnose or fix in the reply.
    • For widget complaints specifically, say widget improvements are being worked on. Only say this because it is currently true: check before reusing this line if that ever changes.
    • Never argue with a reviewer, even an unfair one. Acknowledge and move on.
Show full SKILL.md (186 more words)Show less

3a. File what the reviews report. For every bug or feature request in a review, search first (gh issue list --search "<two key words>" --state all --limit 5). If an issue exists, comment with the review's date and star rating; otherwise gh issue create with an android: title, label bug or story, and the date and star rating as the source. Leave out reviewer names and devices; the repo is public. If a draft reply promises something ("it's on the list"), the issue must exist before the reply is posted. List the issue numbers alongside the drafts.

  1. Show the drafts to the owner and stop. Do not run reply or post-approved yet. Wait for the owner to review the drafts file and flip approved to true on the ones they want sent (editing replyText first if they want changes).

  2. Post only on explicit approval. Once the owner confirms, run:

    bash
    support/scripts/play-reviews post-approved support/reviews/drafts-YYYY-MM-DD.json

    This posts every entry with "approved": true and no "posted" flag, then marks each as posted in the file. Use --dry-run first if there's any doubt about what would be sent.

© timusus, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/reply-reviews of timusus/Shuttle2.

Open the folder on GitHubat commit 9cef5dd

Compare with similar skills

Reply Reviews next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Reply Reviews compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Reply Reviews this skilltimusus/Shuttle2229—~1kAutomated safety check: PassApache-2.0
Screenshotsshortcuts/locationjoystick103—~3.1kAutomated safety check: PassMIT
Play Policy Insightsarindamxd/camerax-android1322 repos~2.1kAutomated safety check: PassApache-2.0
Pp Google Playmvanhorn/printing-press-library2.1k—~3.4kAutomated safety check: NotesApache-2.0
Cometchat Android V6 Productioncometchat/cometchat-skills130—~1.7kAutomated safety check: PassMIT
Gplay Metadata Synchanamizuki/solopreneur152—~1.4kAutomated safety check: PassMIT

Similar skills

  • Screenshots

    shortcuts/locationjoystick

    Refresh all wiki/Play Store gallery screenshots from a connected Android device.

    103 GitHub stars~3.1k tokensUpdated 4 days ago
    MobileAuto-check passed
  • Play Policy Insights

    arindamxd/camerax-android

    Automated auditor designed to verify Android applications against Google Play Policy domains.

    132 GitHub starsUsed in 2 repos~2.1k tokens
    MobileAuto-check passed
  • Pp Google Play

    mvanhorn/printing-press-library

    Every public Google Play surface in one Go binary Trigger phrases: top grossing games on google play, google play app details for, track this app's rank over time, what changed on this play store…

    2.1k GitHub stars~3.4k tokensUpdated yesterday
    MobileAuto-check: notes
  • Cometchat Android V6 Production

    cometchat/cometchat-skills

    Ship a CometChat Android v6 app safely — server-minted auth tokens instead of the dev Auth Key, keeping credentials out of the APK, release-build and R8/ProGuard checks, user provisioning…

    130 GitHub stars~1.7k tokensUpdated 3 days ago
    MobileAuto-check passed
  • Gplay Metadata Sync

    hanamizuki/solopreneur

    Metadata and localization sync (including Fastlane format) for Google Play Store listings.

    152 GitHub stars~1.4k tokensUpdated 12 days ago
    MobileAuto-check passed
  • Gplay Migrate Fastlane

    hanamizuki/solopreneur

    Migration from Fastlane supply to gplay CLI using the gplay migrate fastlane command.

    152 GitHub stars~1.2k tokensUpdated 12 days ago
    MobileAuto-check passed

More from timusus/Shuttle2

All 13 skills in this repo
  • Comprehensive guidance for writing deterministic tests for Android code using Kotlin coroutines.

    229 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Debug Receivers

    timusus/Shuttle2

    Drive the S2 debug build's playback and queue over ADB broadcasts — play the whole library, play/pause, skip, seek, remove a queue item, toggle shuffle/repeat, dump playback state as JSON, reimport…

    229 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Deploy Android

    timusus/Shuttle2

    Deploy the Android app to the Play Store via GitHub Actions.

    229 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Check

    timusus/Shuttle2

    Run lint + unit tests, investigate and fix failures. An agent skill from timusus/Shuttle2.

    229 GitHub stars~449 tokensUpdated yesterday
    Auto-check passed
  • Commit

    timusus/Shuttle2

    Analyse working tree changes, group them into logical atomic commits, and create well-structured conventional commits with module scopes.

    229 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check: notes
  • Delegate Verbose

    timusus/Shuttle2

    Run high-volume work in a subagent so its raw output never enters this conversation.

    229 GitHub stars~864 tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Reply Reviews

What does Reply Reviews do?

Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post. Reply Reviews is an agent skill from timusus/Shuttle2. Weekly Play Store review flow for S2: fetch new reviews, draft replies, get owner approval, then post.

When should I use Reply Reviews?

Reply Reviews fits situations like: asked to check Play reviews; draft review replies; reply to app store reviews.

How do I install Reply Reviews in Claude Code?

Run `npx skills add timusus/Shuttle2 --skill reply-reviews -a claude-code`. Or copy the skill folder (.claude/skills/reply-reviews in timusus/Shuttle2) into .claude/skills/reply-reviews in your project. Claude Code loads it when a task matches its description.

How do I install Reply Reviews in Codex?

Run `npx skills add timusus/Shuttle2 --skill reply-reviews -a codex`. Or copy the skill folder (.claude/skills/reply-reviews in timusus/Shuttle2) into .agents/skills/reply-reviews in your project. Codex loads it when a task matches its description.

Can I use Reply Reviews in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add timusus/Shuttle2 --skill reply-reviews -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/reply-reviews, .gemini/skills/reply-reviews, .github/skills/reply-reviews and .opencode/skills/reply-reviews in your project.

What does Reply Reviews need to run?

Going by SKILL.md and its folder, Reply Reviews needs the command-line tools its instructions call (gh).

Does Reply Reviews access the network?

SKILL.md names 1 domain. As links in the text: play.google.com. This is read from the text; nothing was executed.

Is Reply Reviews safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Reply Reviews use?

Reply Reviews is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Reply Reviews use?

About 1k tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Reply Reviews?

Skills that share tags, products or a category with Reply Reviews: Screenshots (shortcuts/locationjoystick, 103 stars), Play Policy Insights (arindamxd/camerax-android, 132 stars), Pp Google Play (mvanhorn/printing-press-library, 2.1k stars) and Cometchat Android V6 Production (cometchat/cometchat-skills, 130 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Reply Reviews?

timusus (a GitHub user) maintains it in timusus/Shuttle2, which has 229 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.

Source: timusus/Shuttle2 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.