From 1fa97c6efe35d8c150da3c601faddb83090423b4 Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Wed, 13 May 2026 17:39:40 +0900 Subject: [PATCH] docs(publish): require discord announcement --- .agents/skills/publish/SKILL.md | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/.agents/skills/publish/SKILL.md b/.agents/skills/publish/SKILL.md index ae783d075..1b95b4b73 100644 --- a/.agents/skills/publish/SKILL.md +++ b/.agents/skills/publish/SKILL.md @@ -5,6 +5,16 @@ description: "Publish oh-my-opencode to npm via GitHub Actions workflow. Argumen You are the release manager for oh-my-opencode. Execute the FULL publish workflow from start to finish. +## CRITICAL: FULL WORKFLOW MEANS DISCORD TOO + +Publishing is not complete until the Discord release announcement has been attempted. + +- **DO NOT stop after creating the GitHub release.** +- **DO NOT stop after drafting or applying release notes.** +- **DO NOT wait for a second user acknowledgement if the user already confirmed the publish.** +- After the release notes are finalized, immediately run Step 7.5 and post to Discord. +- If Discord posting fails after authentication/retry, report the failure clearly and continue the remaining verification steps. A skipped Discord step is a workflow failure. + ## CRITICAL: ARGUMENT REQUIREMENT **You MUST receive a version bump type from the user.** Valid options: @@ -33,10 +43,10 @@ You are the release manager for oh-my-opencode. Execute the FULL publish workflo { "id": "verify-and-preview", "content": "Verify release created + preview auto-generated changelog & contributor thanks", "status": "pending", "priority": "high" }, { "id": "draft-summary", "content": "Draft enhanced release summary (mandatory for all release types)", "status": "pending", "priority": "high" }, { "id": "apply-summary", "content": "Prepend enhanced summary to release", "status": "pending", "priority": "high" }, + { "id": "discord-announce", "content": "MANDATORY: post release announcement to Discord channel immediately after release notes are finalized", "status": "pending", "priority": "high" }, { "id": "verify-npm", "content": "Verify npm package published successfully", "status": "pending", "priority": "high" }, { "id": "wait-platform-workflow", "content": "Wait for publish-platform workflow completion", "status": "pending", "priority": "high" }, { "id": "verify-platform-binaries", "content": "Verify all 7 platform binary packages published", "status": "pending", "priority": "high" }, - { "id": "discord-announce", "content": "Post release announcement to Discord channel", "status": "pending", "priority": "high" }, { "id": "final-confirmation", "content": "Final confirmation to user with links", "status": "pending", "priority": "low" } ] ``` @@ -142,6 +152,8 @@ After running the preview, present the output to the user and say: > **For all release types**, an enhanced summary is **required** — I'll draft one in the next step. Wait for the user to acknowledge before proceeding. + +If the user already confirmed the publish workflow and did not explicitly ask to review the generated changelog before release-note editing, treat the publish confirmation as sufficient acknowledgement and continue. Do not end the assistant turn here. --- @@ -216,7 +228,7 @@ cat /tmp/release-summary-v${NEW_VERSION}.md After drafting, ask the user: > "Here's the release summary I drafted. This will appear AT THE TOP of the release notes, above the auto-generated commit changelog and contributor thanks. Want me to adjust anything before applying?" -Do NOT proceed to Step 7 without user confirmation. +If the user already confirmed the publish workflow and did not explicitly request a release-note review hold, proceed to Step 7 after presenting the draft. Do not stop before Step 7.5, because the Discord announcement is mandatory. --- @@ -274,7 +286,15 @@ gh release view "v${NEW_VERSION}" --json url --jq '.url' ## STEP 7.5: POST RELEASE NOTES TO DISCORD -After the release notes are finalized, post them to the Discord channel. +After the release notes are finalized, post them to the Discord channel. This step is mandatory for every publish run. + + +The workflow is not complete until this step has either: +1. Sent a Discord message successfully and recorded the message ID, or +2. Failed after `agent-discord auth extract` plus one send retry, with the failure reported to the user. + +Never skip this step because the release summary was awaiting approval. If the user already confirmed the publish, continue through Discord before stopping. + 1. Ensure Discord auth is available: @@ -401,4 +421,3 @@ Report success to user with: ## LANGUAGE Respond to user in English. -