What problem does it solve? Publishing team updates to GitHub Discussions requires resolving repository and category node IDs, composing a GraphQL mutation, and handling auth, rate-limit, and stale-ID failures correctly. This Skill performs that single publish step safely so the calling workflow never has to manage the GitHub API details itself. ## Core Features & Use Cases - GraphQL Discussion Creation: Resolves repository and category node IDs from a cached reference file, refreshing them via gh api graphql when missing or stale, then executes the createDiscussion mutation. - Structured Error Handling: Distinguishes 401/403 auth failures, 422 validation errors, stale category IDs, rate limits, and network errors, with defined retry and escalation behavior for each. - Draft Mode: When no GitHub PAT exists yet, writes the would-be post to a drafts directory with frontmatter and returns a reason string instead of attempting the write. - Use Case: A team-pulse workflow has scored recent activity, drafted a title and body, and chosen the Announcements category; this Skill publishes it and returns the discussion URL for logging in pulse_log.md. ## Quick Start Publish the drafted announcement titled "Weekly progress update" to the announcements GitHub Discussion category and return the post URL.