agent-orchestrator/skills/release-notes/ao-weekly-release
suraj_markup a41d12b1f9
feat(skills): add ao-weekly-release skill for automated release notes (#1239)
* feat(skills): add ao-weekly-release skill for automated release notes (#1231)

Adds the in-repo skill files the bot cron invokes every Thursday 10:00 IST
to generate and post weekly release notes to Discord. Keeping the skill
under version control means merged PRs to main are picked up on the next
run with no manual redeployment.

- SKILL.md: output contract, style constraints, failure-mode table, and
  the update workflow so future editors know what the runner must guarantee
- run.py: deterministic stdlib-only runner that queries gh for the latest
  release, merged PRs, commits, contributors, and stars in a 7-day window
  and renders a publishable markdown post in the established house style

The runner never fabricates data — every rendered value traces back to a
gh or git command, and missing data surfaces as "(unavailable)" or a
non-zero exit code so the cron can post a "quiet week" message instead.

Refs #1231

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(skills): address review findings in release notes runner (#1231)

1. Install command: read version from npm registry instead of deriving
   from the GitHub release tag, which uses scoped npm tags like
   @composio/ao-cli@0.2.2 and produced malformed specifiers.

2. gh release create: same root cause — use npm version, not tag.

3. Full changelog link: resolve window dates to commit SHAs via
   git rev-list / GitHub API instead of main@{date} reflog syntax,
   which only works locally and 404s on GitHub.

4. Truncation count: track total omitted PRs across the initial
   MAX_HIGHLIGHTS cap and the body-size truncation pass, and render
   one accurate overflow line at the end.

5. Highlight bullets: skip the theme verb prefix when the cleaned
   title already starts with a verb (avoids "Added add …" stutter),
   and strip trailing (#NNN) refs from titles before appending the
   canonical (#{pr.number}) to avoid doubled refs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-23 01:11:31 +05:30
..
SKILL.md feat(skills): add ao-weekly-release skill for automated release notes (#1239) 2026-04-23 01:11:31 +05:30
run.py feat(skills): add ao-weekly-release skill for automated release notes (#1239) 2026-04-23 01:11:31 +05:30