用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/foeken/meeting-notes --skill release命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | release |
| description | Build, sign, notarize, and publish a Meeting Notes release |
| argument-hint | VERSION BUILD [RELEASE_NOTES_FILE] |
| allowed-tools | Bash, Read, Glob, Grep |
Build, sign, notarize, and publish a release of Meeting Notes as a DMG with Sparkle auto-update support.
VERSION — Semantic version, e.g. 0.2.0BUILD — Integer build number, e.g. 2. Must increase with every release.RELEASE_NOTES_FILE — Optional Markdown file with release notes.Before running the release script, verify these prerequisites:
Clean checkout: git status --porcelain must be empty. Commit or stash everything first; the script commits the version bump and appcast itself.
notarytool keychain profile: Run xcrun notarytool history --keychain-profile "notarytool" 2>&1 | head -3 to check. If missing, tell the user to run:
xcrun notarytool store-credentials "notarytool" --apple-id APPLE_ID --team-id 6DA7MK99T2 --password APP_SPECIFIC_PASSWORD
Developer ID certificate: Run security find-identity -v -p codesigning | grep "Developer ID Application". Must show Andre Foeken (6DA7MK99T2).
Sparkle tools: Verify generate_appcast exists at .build/artifacts/sparkle/Sparkle/bin/. If missing, run swift package resolve first.
Sparkle signing key: generate_appcast reads the EdDSA private key from the login keychain under the account meeting-notes-menu. If it is missing, restore it from 1Password before releasing; never regenerate it, or existing installs cannot verify updates.
GitHub CLI: gh auth status must succeed for account foeken.
If all prerequisites pass, confirm with the user:
foeken/meeting-notes on GitHub and the appcast is committed to mainThen run the release script:
MEETING_NOTES_NOTARY_PROFILE=notarytool ./scripts/release.sh VERSION BUILD [RELEASE_NOTES_FILE]
The script runs these steps automatically:
CFBundleShortVersionString/CFBundleVersion in Resources/Info.plistMeeting Notes.app with Developer ID Applicationappcast.xml with an embedded, Sparkle-signed entrymainvVERSION with the DMG attachedReport the results to the user:
https://github.com/foeken/meeting-notes/releases/tag/vVERSIONhttps://raw.githubusercontent.com/foeken/meeting-notes/main/appcast.xmlswift package resolve so SPM fetches the Sparkle artifact containing generate_appcast.notarytool keychain profile and that the Developer ID certificate is valid.vVERSION release with --clobber; bump the version if that is not intended.meeting-notes-menu.scripts/release.sh — The release automation scriptResources/Info.plist — App version fields plus Sparkle config (SUFeedURL, SUPublicEDKey)appcast.xml — Sparkle feed, committed to main in this repo