ワンクリックで
release
Full SessionFlow release — build signed app, notarize, create DMG, commit, tag, push, GitHub release
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Full SessionFlow release — build signed app, notarize, create DMG, commit, tag, push, GitHub release
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | release |
| description | Full SessionFlow release — build signed app, notarize, create DMG, commit, tag, push, GitHub release |
| user_invocable | true |
| disable-model-invocation | true |
Usage: /release — creates a release with today's date as the marketing version (e.g. 2026.4.10).
SessionFlow uses date-based versioning: YYYY.M.D. The build number auto-increments independently.
git status --porcelain
If dirty (uncommitted changes), stop and tell the user to commit or stash first.
git log --oneline $(git describe --tags --abbrev=0)..HEAD
Collect all commits since the last tag — used to write the changelog.
CHANGELOG.md to see the format## [YYYY.M.D] - YYYY-MM-DD section at the top (below the header, above the previous version)### Added, ### Changed, ### Fixed — only include sections that have entries**), no italic (_), no other markdown inside bullet text./build_app.sh --release
The --release flag:
Release configuration (not Debug)./release/SessionFlow.app (separate from debug builds in ./)The script sets the marketing version to today's date and bumps the build number automatically.
For same-day rebuilds (version already matches today), use:
./build_app.sh --release current
Confirm the output says the correct version (e.g. version 2026.4.10 (build 750) is ready in ./release/).
./notarize.sh "release/SessionFlow.app"
This submits the signed app to Apple's notary service, waits for approval, and staples the notarization ticket. Takes 1-5 minutes typically.
Requires keychain credentials stored under profile "SessionFlow" (one-time setup by the user).
For same-day suffix releases, set the override:
DMG_VERSION_OVERRIDE="YYYY.M.D-N" APP_SOURCE_OVERRIDE="./release/SessionFlow.app" ./create_dmg.sh
For normal releases:
APP_SOURCE_OVERRIDE="./release/SessionFlow.app" ./create_dmg.sh
The DMG is created in dmg_output/SessionFlow-{VERSION}.dmg.
./notarize.sh "dmg_output/SessionFlow-{VERSION}.dmg"
The DMG also needs its own notarization ticket stapled.
The ZIP contains the notarized .app from ./release/ (not the DMG):
(cd release && zip -r "../SessionFlow-{VERSION}.zip" "SessionFlow.app" -q)
The ZIP is created in the project root.
Normal release (new version today):
v{VERSION} (e.g. v2026.4.10)SessionFlow-{VERSION}.dmg, SessionFlow-{VERSION}.zipSame-day rebuild (version matches an existing tag):
git tag -l "v{VERSION}-*"v{VERSION}-{N} (e.g. v2026.4.10-2)SessionFlow-{VERSION}-{N}.dmg, SessionFlow-{VERSION}-{N}.zipStage only the project file (version bump). CHANGELOG was already committed in step 2.
git add SessionFlow.xcodeproj/project.pbxproj
git commit -m "chore: release version {VERSION}
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>"
git tag -a {TAG} -m "Release version {VERSION} (build {BUILD})"
git push origin main --tags
gh release create {TAG} \
"dmg_output/SessionFlow-{ARTIFACT_LABEL}.dmg" \
"SessionFlow-{ARTIFACT_LABEL}.zip" \
--title "SessionFlow {TAG} (build {BUILD})" \
--notes "RELEASE_NOTES"
Release notes = the new CHANGELOG section content, plain text, no markdown formatting.
Tell the user the release URL returned by gh release create.
--release — Debug builds lack Developer ID signing and will fail notarization.app bundle, not the .dmg filegit add -A — only stage project.pbxproj (CHANGELOG is committed separately)dmg_output/, ZIP is in the project root