一键导入
一键导入
Use when asked to respond to, reply to, or draft replies for Google Play Store reviews for Sky Map. Triggers on "respond to reviews", "reply to reviews", "draft review replies", or any request to handle user feedback from the Play Store.
Build, test, deploy, and manage data generation for Sky Map. Trigger on "build the app", "run tests", "deploy to device", "generate data", "run lint", or similar build/dev workflow requests.
Fully automated release note generator for Sky Map. Just provide the last tag.
Add a new deep-sky object or special object to Sky Map's catalog from a Wikipedia URL or user-supplied data. Handles all four required files. Trigger on "add object", "add nebula/galaxy/cluster", "add <object name> to Sky Map", etc. ARGUMENTS: "[wikipedia_url_or_object_name]"
Process and size an image for a Sky Map celestial info card. Prompts for an image (URL or local path), optional crop, and output filename, then converts to 480×800 WebP and saves to the correct assets directory. Trigger on "process celestial image", "add image for info card", "convert image for Sky Map", etc. ARGUMENTS: "[source_url_or_path] [category/output_name] [crop x1,y1,x2,y2]"
Fetches GitHub contributors for Sky Map and updates the app/src/main/res/values/notranslate-contributors.xml file. Trigger this when asked to "sync contributors", "update contributors", or "refresh credits".
| name | skymap.release |
| description | Make a new release of Sky Map and publish it to the Play Store. |
This skill does all the steps involved in making a major or minor release of Sky Map. This skill might make use of other skills and it has some overlap with the skymap.deploy-play-store skill. Some steps might require input from the user.
app/build.gradle, and suggest a release name by inferring the pattern from recent git tags (e.g. planets, constellations, stars) — but confirm both with the user before proceeding, since the theme may change.bundle exec fastlane android bump_version name:"<version>:<ReleaseName>"
# e.g. bundle exec fastlane android bump_version name:"1.14.0:Jupiter"
skymap.release-splashscreen skill for this.Ask the user if they need to:
skymap.sponsors skill)skymap.contributors skill)skymap.whatsnew skill) for the app, the fastlane update and the github changelogbeta_user_help_text string in app/src/main/res/values/whatsnew_content.xml is filled with instructions for beta testers during the beta period, and must be cleared to an empty string before a full release. Check if it has content; if so, set it to empty. It does not exist in other locales so no action is needed there.fastlane/metadata/android/<locale>/changelogs/default.txt file for every non en-US locale (delete the file entirely — Step 4 will regenerate them via translation).whatsnew_content.xml files in non en-US locales (i.e. app/src/main/res/values-<locale>/whatsnew_content.xml). Delete the files entirely — Step 4 will regenerate them.Before running any translation commands, show the user the current content of
app/src/main/res/values/whatsnew_content.xml and fastlane/metadata/android/en-US/changelogs/default.txt
and ask: "Does this look good to translate?" Do not proceed until you receive explicit approval.
Prerequisites: tm must be installed globally (which tm). If missing, install it from the translationmanager project:
pip install -e /path/to/translationmanager
The project has a .tmconfig.toml already configured. Run all tm commands from stardroid-v1/.
Check current coverage to see what's missing:
tm languages
Translate all primary languages (covers both Android XML strings and fastlane changelogs):
tm translate --all-primary
To translate a single locale: tm translate de-DE
To preview without calling the LLM: tm translate --all-primary --dry-run
After primary translation, also translate fastlane changelogs for all supported locales (not just primary ones — Play Store serves changelogs to every locale it supports):
tm translate --all --source fastlane
Locales already translated by --all-primary will be skipped automatically.
If you only need to retranslate the what's new content and changelogs (e.g. after Step 3 deletions):
tm translate --all-primary --file whatsnew_content.xml
tm translate --all --source fastlane
Spot-check a few locales for structural issues (no LLM needed):
tm validate de-DE
tm validate fr-FR
skymap.deploy-play-store skill to build and upload a new bundle and store metadata to the internal track.
Note: the internal fastlane lane automatically increments versionCode in app/build.gradle. Do not commit before this step — the Step 6 commit captures everything including this bump.After getting explicit confirmation from the user:
In all commands below, substitute <version> and <ReleaseName> with the values confirmed in Step 1 (e.g. 1.14.0 and Jupiter).
Cap the ../CHANGELOG.md entry for this release. The skymap.whatsnew skill (Step 2.3) prepends content but leaves it without a version heading. Add the heading now:
## [<version>] - YYYY-MM-DD
Use today's date. The CHANGELOG format follows Keep a Changelog.
Commit all changes from Steps 1–5 (version name, version code bump, splash, sponsors, contributors, whatsnew content, translations, CHANGELOG) in a single commit to master:
git add -A
git commit -m "Prepare <version>:<ReleaseName> release"
git push origin master
Tag the commit:
git tag v<version>
git push origin v<version>
Build the signed release APK:
./build_skymap.sh
The signed APK will be at app/build/outputs/apk/gms/release/app-gms-release.apk.
Extract the release notes for this version from ../CHANGELOG.md (the section between the new heading and the previous one) and upload the GitHub release:
# Substitute the actual version number in the awk pattern
awk '/^## \[<version>\]/{flag=1; next} /^## \[/{flag=0} flag' ../CHANGELOG.md \
| sed '/^[[:space:]]*---[[:space:]]*$/d' \
> /tmp/release_notes.md
gh release create v<version> \
app/build/outputs/apk/gms/release/app-gms-release.apk \
--title "Sky Map <version>: <ReleaseName>" \
--notes-file /tmp/release_notes.md
Before promoting, pause and explicitly ask the user to confirm that the internal build has been reviewed and tested. Do not proceed until you receive explicit approval.
Once approved:
bundle exec fastlane android promote_to_alphabundle exec fastlane android promote_to_beta