Hex release
Agent Skills documentation and examples for the Jido ecosystem
npx -y skills add agentjido/jido-skills --skill hex-releaseAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Guide human-in-the-loop Hex package releases for AgentJido repositories. Use when preparing, validating, dry-running, publishing, tagging, or dispatching a Hex release workflow.
The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.2 KB, as published. Nobody here has run it
Hex Release
Purpose
Release an AgentJido Hex package with explicit verification before any push, tag, GitHub release, or Hex publish.
When To Use
Use this skill for:
- Preparing a new Hex release
- Bumping package version
- Running release dry-runs
- Dispatching
.github/workflows/release.yml - Publishing to Hex.pm
- Creating or verifying release tags and GitHub releases
Do not use this skill for release-status reporting only. For reporting, inspect the workspace release-status tooling instead.
Requirements
mix,git, andghwhen using the automated workflow- Hex credentials locally for actual local publish
HEX_API_KEYconfigured in GitHub Actions for workflow publish- Clean working tree before release actions
Workflow
1. Identify the package
Read mix.exs and record:
- Mix app/package name
- Current version
- Whether
git_opsis configured - Release workflow path, normally
.github/workflows/release.yml
Prefer structured inspection of mix.exs over hardcoded package assumptions.
2. Check dependency blockers
Inspect mix.exs for github:, git:, and path: dependencies.
- Dev/test-only git or path deps do not block Hex publish; note them.
- Runtime git or path deps block Hex publish; stop and report which deps must be published to Hex or switched to Hex requirements first.
3. Verify repository state
Run:
git status --porcelain
git branch --show-current
git fetch --tags origin
Stop if the working tree is dirty. Warn if the branch is not main. Do not
switch branches or stash work unless the user explicitly asks.
4. Check releasable commits
Run:
git log --oneline $(git describe --tags --abbrev=0 2>/dev/null || echo "")..HEAD
If there are no commits since the last tag, stop and report that there is nothing to release.
Review commit messages for conventional commit prefixes because git_ops
release notes and version bumps depend on them.
5. Validate locally
Run the project-standard checks before release:
mix deps.get
mix test
If the repo documents mix quality, run it. If not, run at least:
mix format --check-formatted
mix compile --warnings-as-errors
Stop on failures and report the failing command and key error lines.
6. Dry-run Hex publish
Run:
mix hex.publish --dry-run
Review package metadata and file list for missing files, secrets, build artifacts, stale docs, or unexpected package names.
If the dry-run fails only because the local machine is not authenticated to
Hex, treat that as a local environment limitation. Show the useful metadata
or file-list output and remind the user that CI still needs HEX_API_KEY.
Stop on any other dry-run failure.
7. Choose release path
After pre-flight checks pass, show a short summary and ask the user to choose:
- Automated release through GitHub Actions
- Manual local release
Prefer the automated workflow when .github/workflows/release.yml delegates to
the shared AgentJido release workflow and uses secrets: inherit.
Automated Path
Confirm workflow
Inspect .github/workflows/release.yml. Treat the repo as configured if it
delegates to an AgentJido shared release workflow and passes compatible inputs.
Do not rewrite a working wrapper only for cosmetic consistency.
Verify support for these inputs before mentioning them as available:
dry_runhex_dry_runskip_testsversion_override
Run dry-run first
Use GitHub CLI when available:
gh workflow run release.yml -f dry_run=true
gh run list --workflow=release.yml --limit=1
gh run watch
If the workflow supports an explicit version:
gh workflow run release.yml -f dry_run=true -f version_override=1.2.3
Review the workflow summary for version bump, changelog, tests, Hex dry-run output, tag that would be created, and any publish blockers.
Run real release
Only after the user confirms the dry-run result, dispatch the real release:
gh workflow run release.yml
Use skip_tests=true only when CI has already passed and the user explicitly
accepts that shortcut.
If supported and requested:
gh workflow run release.yml -f version_override=1.2.3
Watch the run and verify:
- Tag exists
- GitHub release exists
- Hex package version exists
origin/maincontains the release commit when the workflow creates one
Manual Path
Use the manual path only when the workflow is unavailable, inappropriate for the repo, or explicitly requested.
Preview version
Run:
mix git_ops.release --dry-run
Ask the user to confirm the proposed version or provide an override.
Create release commit and tag
After confirmation:
mix git_ops.release --yes
For an explicit version, use the repo-supported git_ops override flag after
checking mix help git_ops.release.
Review the release commit, version change, changelog, and tag locally.
Push and publish
Before pushing, ask for user confirmation. Then:
git push origin main
git push origin --tags
Before publishing, ask for user confirmation again. Then:
mix hex.publish --dry-run
mix hex.publish --yes
Create the GitHub release from the tag using generated notes or the changelog, depending on the repo convention.
Output Expectations
Report:
- Package name and current/proposed version
- Pre-flight result summary
- Release path used
- Commands dispatched
- Final verification status for tag, GitHub release, and Hex package
- Any blockers that stopped the release
Guardrails
- Never publish to Hex without explicit user confirmation.
- Never push release commits or tags without explicit user confirmation.
- Never ignore runtime git/path dependency blockers.
- Do not assume
mix qualityexists; inspect the repo first. - Do not assume every repo uses
git_ops; detect it. - Hex packages cannot be unpublished after the Hex grace period; prefer dry-runs and workflow verification over speed.