Synthèse automatique
Décrit le processus complet de publication d’une nouvelle version d’AudioBash, de la mise à jour des numéros de version à la création de la release GitHub et à la compilation Windows via GitHub Actions.
Points forts
- Fournit une checklist détaillée avec les commandes exactes pour chaque étape de la release.
- Couvre à la fois les builds macOS locaux et le build Windows via CI, avec téléchargement puis ajout de l’artefact à la release.
- Précise les conventions de nommage des fichiers AudioBash et donne des pistes de dépannage pour les erreurs de publication d’electron-builder.
- Inclut un exemple complet pour la version v2.0.2, ce qui rend l’enchaînement facile à reproduire.
Limites
- Très spécifique à l’arborescence, aux scripts npm et au fichier de workflow du dépôt AudioBash.
- Impose des modifications manuelles des versions dans package.json et plusieurs emplacements de docs/index.html, avec une commande sed propre à macOS.
- Suppose que GitHub CLI est authentifié et qu’une machine macOS est disponible pour les DMG ; ne traite ni des tests automatisés ni d’un éventuel rollback.
À utiliser pour préparer et publier une nouvelle version d’AudioBash nécessitant des DMG macOS construits localement et un installateur Windows généré par GitHub Actions.
À ne pas utiliser pour un autre projet, une release non Electron ou un pipeline entièrement automatisé qui ne correspond pas à ce flux manuel de tag et d’upload.
Analyse de sécurité
PrudenceThe skill documents a legitimate release process using powerful version control, GitHub, and build tools. It does not contain destructive, exfiltrating, or obfuscated commands, but executing these steps can affect remote repositories and run build scripts, so caution is appropriate.
- •Instructs use of `git push`, `git tag`, `gh release create/upload`, and `gh workflow run`, which modify remote repositories and create public releases.
- •Includes `npm run electron:build:mac:arm64` which executes build scripts and may run arbitrary code from package dependencies.
Exemples
Release AudioBash v2.0.3: update the version in package.json and docs/index.html, build the macOS ARM64 and Intel DMGs, push the v2.0.3 tag, create the GitHub release, and trigger the Windows build workflow.Download the latest windows-builds artifact for AudioBash v2.0.2 and upload the installer to the existing GitHub release.The AudioBash release workflow fails with 'GitHub Personal Access Token is not set' from electron-builder; update the workflow to prevent auto-publish and rerun the Windows build.AudioBash Release Process Skill
This documents the complete process for releasing a new version of AudioBash for both Windows and macOS.
Prerequisites
- GitHub CLI (
gh) authenticated - Node.js and npm installed
- On macOS for local DMG builds
Release Checklist
1. Update Version Numbers
Update version in these locations:
package.json → "version": "X.X.X"
docs/index.html → 4 locations:
- Nav header (v2.0.X // VOICE_TERMINAL)
- Badge (vX.X.X — NOW ON macOS)
- Footer (AUDIOBASH vX.X.X // BUILD...)
- All download URLs (6 total for Windows + macOS)
Quick sed for docs/index.html URLs:
# Update all download URLs at once
sed -i '' 's/v2.0.0/v2.0.1/g; s/2.0.0/2.0.1/g' docs/index.html
2. Build macOS Installers Locally
npm run electron:build:mac:arm64
# Creates both ARM64 and x64 builds:
# - dist/AudioBash-X.X.X-arm64.dmg
# - dist/AudioBash-X.X.X.dmg (Intel)
3. Commit and Push
git add package.json docs/index.html [changed source files]
git commit -m "vX.X.X: Brief description"
git push origin master
4. Create and Push Tag
git tag vX.X.X
git push origin vX.X.X
5. Create GitHub Release with macOS Builds
gh release create vX.X.X \
--title "vX.X.X" \
--notes "Release notes here..." \
"dist/AudioBash-X.X.X-arm64.dmg" \
"dist/AudioBash-X.X.X.dmg"
6. Trigger Windows Build via GitHub Actions
gh workflow run build.yml --ref master \
-f build_mac=false \
-f build_windows=true \
-f build_linux=false
7. Download and Upload Windows Installer
# Wait for build to complete
gh run list --limit 1
# Download artifact
gh run download [RUN_ID] -n windows-builds -D /tmp/windows-builds
# Upload to release
gh release upload vX.X.X "/tmp/windows-builds/AudioBash Setup X.X.X.exe"
8. Update Release Notes
gh release edit vX.X.X --notes "Updated notes with all download links..."
File Naming Convention
| Platform | Filename Pattern |
|----------|------------------|
| Windows | AudioBash Setup X.X.X.exe |
| macOS ARM64 | AudioBash-X.X.X-arm64.dmg |
| macOS Intel | AudioBash-X.X.X.dmg |
GitHub Actions Workflow
The workflow (.github/workflows/build.yml) automatically:
- Builds on tag push (
v*) - Can be manually triggered via
workflow_dispatch - Uses
--publish neverto prevent electron-builder auto-publish conflicts
Complete Release Example (v2.0.2)
Here's the exact sequence used for releasing v2.0.2:
# 1. Build macOS installers locally
npm run electron:build:mac:arm64
# 2. Commit and push
git add -A
git commit -m "v2.0.2: Fix macOS spawn-helper permissions"
git push origin master
# 3. Create and push tag
git tag v2.0.2
git push origin v2.0.2
# 4. Create release with macOS DMGs
gh release create v2.0.2 --title "v2.0.2: macOS Stability" \
--notes "Release notes..." \
"dist/AudioBash-2.0.2-arm64.dmg" \
"dist/AudioBash-2.0.2.dmg"
# 5. Trigger Windows build
gh workflow run build.yml --ref master -f build_mac=false -f build_windows=true
# 6. Wait for build (check status)
gh run list --workflow=build.yml --limit 1
# Watch for status: completed, conclusion: success
# 7. Download Windows artifact
gh run download [RUN_ID] -n windows-builds -D /tmp/win-builds
# 8. Upload to release
gh release upload v2.0.2 "/tmp/win-builds/AudioBash Setup 2.0.2.exe"
# 9. Update release notes with Windows link
gh release edit v2.0.2 --notes "Updated notes..."
Troubleshooting
electron-builder auto-publish error
GitHub Personal Access Token is not set
Fix: Ensure --publish never is in all build commands in the workflow.
Cross-platform builds
- Windows builds require Windows runner (use GitHub Actions)
- macOS can build both ARM64 and x64 locally
- Linux builds are opt-in only in the workflow
Checking CI build status
# List recent runs
gh run list --workflow=build.yml --limit 3
# Get detailed status
gh run view [RUN_ID] --json status,conclusion,jobs
# Watch a run in real-time
gh run watch [RUN_ID]
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/audiobash-release-process-mrzxurbs/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/audiobash-release-process-mrzxurbs' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/audiobash-release-process-mrzxurbs/download' --output '.skill-downloads/audiobash-release-process-mrzxurbs/SKILL.md.part' && mv '.skill-downloads/audiobash-release-process-mrzxurbs/SKILL.md.part' '.skill-downloads/audiobash-release-process-mrzxurbs/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Extrait original : Prerequisites
- GitHub CLI (
gh) authenticated - Node.js and npm installed
- On macOS for local DMG builds
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.
Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/audiobash-release-process-mrzxurbs/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Configurer un canal de discussion avec SecretRefs
DevOps
Configurez des canaux de discussion avec des commandes non interactives, les secrets étant uniquement des SecretRefs. Couvre les étapes de collecte, modification, réparation et vérification.
Enquêter sur les échecs CI de ClickHouse
DevOps
Investigue un échec CI de ClickHouse de bout en bout à partir d'une URL de PR ou de rapport S3. Récupère les tests échoués, classe flaky vs vraie régression, et cherche des issues/fixes existants.
Revue de PR Ansible
DevOps
Examine une PR Ansible selon le processus standardisé du projet, incluant la validation des changelogs, la couverture de tests et le suivi des commentaires.