elisp-package-publishing

Automates ELisp package publishing to MELPA and GNU ELPA with header checks, linting, and CI validation.

1|1|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/Jylhis/skills --skill elisp-package-publishing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: elisp-package-publishing
Source: https://github.com/Jylhis/skills/tree/main/skills/elisp-package-publishing
Command: npx skills add https://github.com/Jylhis/skills --skill elisp-package-publishing

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Emacs Lisp projects often struggle to conform to ELPA/MELPA publishing standards, including correct file headers, autoloads, lint checks, and release workflows.

Core Features & Use Cases

  • Header compliance: Ensure source files include standard headers and copyright notices.
  • Autoloads and packaging metadata: Generate and maintain autoloads, version headers, and packaging metadata for Emacs.
  • CI and review workflow: Validate recipes, run package-lint, and prepare MELPA/NonGNU ELPA submission artifacts.

Quick Start

Update your package headers and run the release workflow to publish to MELPA and ELPA.

Frequently Asked Questions about elisp-package-publishing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I publish an Emacs Lisp package to MELPA and ELPA?

Publishing Emacs Lisp packages to MELPA and ELPA requires standard file headers, autoloads, and packaging metadata. This workflow automates header consistency, version discipline, and package-lint CI checks to prepare compliant submission artifacts.

What are the requirements for Emacs Lisp package headers and autoloads?

Emacs Lisp package headers require standard copyright notices and version discipline, while autoloads must be properly generated. This workflow ensures header consistency and maintains autoloads alongside packaging metadata for ELPA and MELPA compliance.

How do I run package-lint checks for an Emacs package submission?

To run package-lint checks for an Emacs package submission, use the CI validation workflow. It validates MELPA recipes, runs package-lint, and prepares submission artifacts to ensure your Emacs Lisp project meets ELPA and MELPA standards.

Can I use the same workflow to submit to both GNU ELPA and MELPA?

Yes, the same workflow applies to GNU ELPA, NonGNU ELPA, and MELPA. It handles version discipline, release procedures, and CI validation uniformly so your Emacs Lisp project can target multiple repositories with standards-compliant artifacts.

Why does my MELPA recipe fail CI validation?

MELPA recipe CI validation fails when file headers lack consistency, autoloads are missing, or package-lint detects standards violations. This workflow validates recipes and runs CI checks to catch header, version, and lint errors before submission.