Skip to content

Skills: replace Python release helper with Node .mjs #26

@huntharo

Description

@huntharo

Summary

Replace the repo-local Python release helper with a Node .mjs script, with zero runtime dependencies if practical.

Why

The repo-local automation preference for skills is already clear:

  • prefer Node scripts for repo-local automation
  • add repo devDependencies only when necessary
  • avoid Python unless it is clearly worth the extra runtime dependency

The current project-manager helper already follows that preference:

  • .agents/skills/project-manager/scripts/sync-work-items.mjs

But the release skill still ships a Python helper:

  • .agents/skills/release/scripts/release_plan.py

That inconsistency adds an extra runtime/tooling dependency for a repo-local skill when a Node script should be sufficient.

Current State

  • project-manager automation is already implemented as Node .mjs
  • release automation still depends on release_plan.py
  • the release skill relies on that helper to gather release facts and draft raw note inputs

Desired Behavior

  • Reimplement the release planner as a Node .mjs script.
  • Prefer zero dependencies if the GitHub CLI and built-in Node APIs are enough.
  • Keep the behavior and outputs compatible with the current release workflow:
    • writes .local/release/release-plan.json
    • writes .local/release/release-plan.md
    • proposes the next tag
    • groups PR-backed changes and direct commits
    • filters release-housekeeping noise

Acceptance Criteria

  • The Python helper is removed or no longer required by the release skill.
  • The replacement is a Node .mjs script checked into the repo.
  • The release skill docs point at the new script.
  • The replacement preserves the current planner outputs closely enough that the release workflow does not need to be redesigned.

Notes

  • If one or two small Node dependencies make the implementation materially better, that is acceptable, but the default target should be zero deps.
  • This issue is about repo-local skill automation consistency, not a redesign of the release workflow itself.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: skillsAgent skills, protocols, and repo-local automationenhancementNew feature or request

    Type

    No type

    Projects

    Status

    Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions