一键导入
emulinkerk-release
Guides the agent through step-by-step checklists to safely compile, tag, release, and promote versions (dev, beta, prod) of EmuLinker-K.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Guides the agent through step-by-step checklists to safely compile, tag, release, and promote versions (dev, beta, prod) of EmuLinker-K.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | emulinkerk-release |
| description | Guides the agent through step-by-step checklists to safely compile, tag, release, and promote versions (dev, beta, prod) of EmuLinker-K. |
This skill provides a set of strict, manual checklists for building, publishing, and promoting releases of EmuLinker-K across three channels:
0.1.2 release and promoted via the dev tag.beta tag.prod tag only after explicit confirmation.None.
To manage a release, locate the corresponding workflow checklist below (Dev, Beta, or Prod) and run each command sequentially. Ensure that all local tests pass and formatting is applied before making any tag changes.
[!IMPORTANT] Pre-Execution Confirmation Rule: Because release actions occur infrequently (often months apart), the agent must explicitly write down, enumerate, and present the exact checklist steps and terminal commands it will run to the user in chat before taking any action. Specifically, before making any code modification, compile, git commit, tag creation, push, or GitHub Release, the agent must present the list of planned actions and wait for the user to explicitly reply and confirm (e.g. "Proceed").
dev)Use this workflow to build and distribute an unversioned development build for internal testing without changing build files or creating official GitHub releases.
./gradlew spotlessCheck
prerelease flag set to true:
./gradlew jar -PprodBuild=true -Pprerelease=true
emulinker/build/libs/ to emulinker-k-DEV.jar.0.1.2) on GitHub, overwriting the existing asset if present:
gh release upload 0.1.2 emulinker/build/libs/emulinker-k-DEV.jar --clobber
release/dev.txt in the master branch:
tag=dev
version=DEV
downloadUrl=https://github.com/hopskipnfall/EmuLinker-K/releases/download/0.1.2/emulinker-k-DEV.jar
git add release/dev.txt
git commit -m "Update dev release manifest to latest DEV jar"
git push origin master
dev Tag:
Delete and recreate the dev tag locally, then force-push it to GitHub:
git tag -d dev
git tag dev
git push origin dev --force
beta)Use this workflow to release a new public beta test version.
1.2). Do not guess.version variable in emulinker/build.gradle.kts to the specified version:
version = "<specified-version>"
./gradlew spotlessCheck test
./gradlew jar -PprodBuild=true -Pprerelease=true
git add emulinker/build.gradle.kts
git commit -m "Bump version to <specified-version> for beta release"
git push origin master
<specified-version>-beta (e.g., 1.2-beta) and push it:
git tag <specified-version>-beta
git push origin <specified-version>-beta
gh release create <specified-version>-beta --prerelease --title "<specified-version>-beta"
gh release upload <specified-version>-beta emulinker/build/libs/emulinker-k-<specified-version>.jar --clobber
release/beta.txt in the master branch:
tag=<specified-version>-beta
version=<specified-version>
downloadUrl=https://github.com/hopskipnfall/EmuLinker-K/releases/download/<specified-version>-beta/emulinker-k-<specified-version>.jar
git add release/beta.txt
git commit -m "Update beta release manifest to <specified-version>-beta"
git push origin master
beta Tag:
Delete and recreate the beta tag locally, then force-push it to origin:
git tag -d beta
git tag beta
git push origin beta --force
prod)Use this workflow to release a stable production version.
1.2). Do not guess.version variable in emulinker/build.gradle.kts to the specified version:
version = "<specified-version>"
./gradlew spotlessCheck test
./gradlew jar -PprodBuild=true -Pprerelease=false
git add emulinker/build.gradle.kts
git commit -m "Bump version to <specified-version> for production release"
git push origin master
<specified-version> (e.g., 1.2) and push it:
git tag <specified-version>
git push origin <specified-version>
gh release create <specified-version> --draft --title "<specified-version>"
gh release upload <specified-version> emulinker/build/libs/emulinker-k-<specified-version>.jar --clobber
release/prod.txt in the master branch:
tag=<specified-version>
version=<specified-version>
downloadUrl=https://github.com/hopskipnfall/EmuLinker-K/releases/download/<specified-version>/emulinker-k-<specified-version>.jar
git add release/prod.txt
git commit -m "Update production release manifest to <specified-version>"
git push origin master
prod tag (e.g., "Are you sure you want to update the prod tag to point to this commit?"). Do not run the next command until the user replies.prod Tag:
After confirmation, delete and recreate the prod tag locally, then force-push it to origin:
git tag -d prod
git tag prod
git push origin prod --force
-Pprerelease=false when compiling production versions, or -Pprerelease=true when compiling dev/beta versions.git tag -d <tag>) before recreating them when shifting channel tags (dev, beta, prod).Best practices and rules for Git version control, branch management, pull requests, and commit/PR descriptions.
Builds, deploys, and restarts the EmuLinker-K server on the 'nue-prod' EC2 instance safely by checking the server status first.
Inspects the remote EmuLinker-K server log file via SSH to determine the active users, active games, and their current states.