midudev/autoskills · warning
⚠️ No se pudo crear la release en GitHub (¿tienes gh…
Error message
⚠️ No se pudo crear la release en GitHub (¿tienes gh instalado y autenticado?)
What it means
After pushing, release.mjs creates a GitHub Release via the `gh` CLI (`gh release create v<newVersion> --notes-file .release-notes-tmp.md`). If that command fails, the script catches the error, warns that the GitHub release could not be created, and prints a manual URL. Common root causes: `gh` not installed, not authenticated, network failure, or the tag/release already existing.
Solutions
- Install and authenticate the GitHub CLI: `gh auth login`, then re-create the release: `gh release create v<newVersion> --notes-file .release-notes-tmp.md`.
- Open the manual URL printed right after the warning (`<repoUrl>/releases/new?tag=v<newVersion>`) and create the release in the browser.
- If the release already exists, check `gh release view v<newVersion>` — you may only need `gh release edit` to update notes.
Example fix
// before $ gh release create v1.2.0 --notes-file .release-notes-tmp.md gh: To get started with GitHub CLI, please run: gh auth login // after $ gh auth login $ gh release create v1.2.0 --notes-file .release-notes-tmp.md
Defensive patterns
Strategy: fallback
Validate before calling
command -v gh >/dev/null && gh auth status >/dev/null && echo "gh ready" || echo "install/auth gh before releasing"
Try / catch
try {
run(`gh release create v${version} --notes-file notes.md`);
} catch {
console.warn(`Create it manually: ${repoUrl}/releases/new?tag=v${version}`);
} Prevention
- Install the GitHub CLI and run `gh auth login` (with repo scope) before releasing.
- Pre-flight `gh release view v<version>` to detect an already-existing release after partial failures.
- In CI, provision a GH_TOKEN with release permissions and verify connectivity to api.github.com.
When it happens
Trigger: The `gh release create v<newVersion>` command exits non-zero — gh CLI missing from PATH, `gh auth` never run (no token), expired/insufficient-scoped token, tag v<newVersion> already has a release, or no network access.
Common situations: Fresh CI machine or local env without gh; token expired after a GitHub security sweep; re-running a release after a partial failure so the release already exists; corporate proxy blocking api.github.com.
Related errors
- GitHub rate limit exceeded
- Puedes crearla manualmente
- GitHub 403 rate limit exceeded
- GitHub for
- Tarball fetch failed
AI-assisted analysis of midudev/autoskills@0ec725320d (2026-09-15).
Data as JSON: /api/errors/423ec04d8e35c294.
Report an issue: GitHub.
Appendix: source
Thrown at packages/autoskills/scripts/release.mjs:403
rollbackRelease();
const message = error instanceof Error ? error.message : String(error);
fail(`La release falló y se revirtieron los cambios locales.\n${message}`);
}
// 11. Create GitHub release
console.log("\n🏷️ Creando GitHub Release...");
const releaseNotes = changelogEntry.replace(/^## .*\n\n/, "");
const tempFile = resolve(ROOT, ".release-notes-tmp.md");
writeFileSync(tempFile, releaseNotes);
try {
run(
`gh release create v${newVersion} --title "v${newVersion}" --notes-file .release-notes-tmp.md`,
{ cwd: ROOT },
);
console.log(`✅ Release v${newVersion} creada en GitHub`);
} catch {
console.warn(`⚠️ No se pudo crear la release en GitHub (¿tienes gh instalado y autenticado?)`);
console.warn(` Puedes crearla manualmente: ${repoUrl}/releases/new?tag=v${newVersion}`);
} finally {
try {
run(`rm .release-notes-tmp.md`);
} catch {}
}
console.log(`\n🎉 ¡Release v${newVersion} completada!\n`);
View on GitHub (pinned to 0ec725320d)