Agent skill

Release Stable

by Thank-you-Linus in Thank-you-Linus/Linus-Dashboard

Create a stable production release with intelligent detection (finalize beta or direct release).

MITAuto-check passedDevelopment

Install Release Stable

skills CLI
$ npx skills add Thank-you-Linus/Linus-Dashboard --skill release-stable -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Thank-you-Linus/Linus-Dashboard release-stable --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Thank-you-Linus/Linus-Dashboard.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/release-stable .claude/skills/release-stable && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
release-stable
GitHub stars
211
Token cost
~2.4k tokens
SKILL.md length
1,123 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Create a stable production release with intelligent detection (finalize beta or direct release).

  • Works in 5 steps: Release Type Detection → Release Notes Generation & Editing → Quality Validation (BLOCKING) → …
  • Publishing stable releases
  • SKILL.md covers ⚠️ CRITICAL TAG FORMAT RULE, Intelligent Workflow, Phase 1: Release Type Detection and Phase 2A: Finalize Beta…, plus 12 more sections
  • Calls git, npm and bash

What it does

Release Stable is an agent skill from Thank-you-Linus/Linus-Dashboard. Create a stable production release with intelligent detection (finalize beta or direct release). Use when publishing stable releases, finalizing beta versions, or creating production releases.

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development. The repository describes itself as: Elevate your smart home experience with a modern, responsive dashboard built on Home Assistant. Effortlessly manage your devices, areas and floors with an intuitive interface…. The licence is MIT.

When your agent uses it

  • Publishing stable releases
  • Finalizing beta versions
  • Creating production releases

Example prompts

  • “/release-stable”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Release Type Detection
  2. Release Notes Generation & Editing
  3. Quality Validation (BLOCKING)
  4. Final Approval & Publication
  5. Publication (Only after approval)

What it can do on your machine

Read from SKILL.md and the folder at commit da3ca3c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • npm
    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git and npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Release Stable loads about 2.4k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 1,123 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~2.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Thank-you-Linus/Linus-Dashboard at commit da3ca3c, republished under its MIT licence (© Thank-you-Linus). 1,123 words, ~2,386 tokens.

Download SKILL.mdSave it as .claude/skills/release-stable/SKILL.md (or your agent's skills folder).
name
release-stable
description
Create a stable production release with intelligent detection (finalize beta or direct release). Use when publishing stable releases, finalizing beta versions, or creating production releases.

Create Stable Production Release

Create a STABLE release for production use.

Current version: Check package.json for current version.

⚠️ CRITICAL TAG FORMAT RULE

NEVER use 'v' prefix in git tags!

  • ✅ CORRECT: 1.5.0
  • ❌ WRONG: v1.5.0

The GitHub workflows expect tags WITHOUT 'v' prefix. Using 'v' will cause workflow failures. All scripts (bump-version.sh, create-release.sh) already create tags without 'v'. Never create tags manually - always use the scripts.

Intelligent Workflow

The workflow adapts automatically based on the current version:

From beta (1.5.0-beta.3 → 1.5.0) → Automatic finalization, no analysis needed Direct stable release (1.4.0 → 1.5.0) → AI analyzes commits and suggests version type with warning


Phase 1: Release Type Detection

Automatically detect release scenario:

  1. Detect release scenario:

    • Current version: 1.5.0-beta.3 → Finalize beta (automatic, no validation)
    • Current version: 1.4.0 (stable) → Direct release (requires AI analysis + warning)
  2. For finalize beta:

    • Strip -beta.N suffix automatically
    • Skip commit analysis (already done during beta)
    • Faster workflow (3-5 min)
  3. For direct stable release:

    • Show WARNING about skipping beta testing (risky)
    • Run commit analysis: npm run analyze:commits
    • Analyze commit types (feat, fix, BREAKING CHANGE)
    • Determine version bump type (patch/minor/major)
    • Present detailed validation with option to create beta instead

Phase 2A: Finalize Beta (Automatic)

Current: 1.5.0-beta.3 → Stable: 1.5.0

Present automatic finalization message:

  • Current version and target stable version
  • Note that version type was already determined during beta
  • No additional analysis or validation required
  • Proceed automatically to release notes and validation

No user validation required → Proceeds directly to Phase 3


Phase 2B: Direct Stable Release (Requires Validation)

Current: 1.4.0 → Proposed: 1.5.0

Beta Testing Warning

Present warning about direct stable release:

  • Risks: No community feedback, untested in real environments, bugs reach production, harder rollback
  • Recommendation: Create beta first
  • User options:
    • [1] YES - Continue with direct release (risky)
    • [2] CREATE BETA INSTEAD - Safer approach
    • [3] CANCEL - Abort

If user chooses [2] CREATE BETA: Stop and use release-beta skill

If user chooses [1] PROCEED: Show detailed AI analysis

AI Semantic Analysis (Direct Release Only)

Present detailed analysis with:

  • Current version and proposed version
  • Warning about skipping beta
  • Commit breakdown (feat, fix, breaking, etc.)
  • AI reasoning with confidence level
  • Recommendation to test as beta first
  • Key commits (most impactful)
  • User decision options:
    • [1] APPROVE - Proceed with AI suggestion (skipping beta)
    • [2] DOWNGRADE TO PATCH - Override AI (skipping beta)
    • [3] UPGRADE TO MAJOR - Override AI (skipping beta)
    • [4] CREATE BETA INSTEAD - Safer approach (recommended)
    • [5] VIEW COMMITS - Show full commit list
    • [6] CANCEL - Abort safely

Phase 3: Release Notes Generation & Editing

Automatically:

  1. Generate release notes (bash scripts/generate-release-notes.sh)
  2. AI-powered editing:
    • Remove noise (version bumps, merges, CI commits, deps updates)
    • Enhance features/fixes (bold title + detailed description)
    • Translate to French (same detail level)
    • Remove beta testing section (not needed for stable)
    • Add upgrade instructions if needed
    • Remove TODO markers
  3. Format for GitHub (bash scripts/format-release-notes.sh)

Phase 4: Quality Validation (BLOCKING)

All must pass:

A. Release notes validation (scripts/validate-release-notes.sh)

  • Required sections EN/FR
  • No TODO
  • No beta testing section
  • Bold features

B. Code quality (17 checks) (scripts/check-release-ready.sh)

  1. Git clean 2. Branch main 3. Up-to-date 4. Deps installed 5. Lint 6. Type-check 7. Build 8. Version consistency 9. No FIXME 10. CHANGELOG 11. manifest.json 12. hacs.json 13. No secrets 14. Python syntax 15. README 16. LICENSE 17. Smoke tests ready

C. Smoke tests (15 tests) (npm run test:smoke)


Phase 5: Final Approval & Publication

For finalize beta:

Present approval with:

  • Version and finalization info
  • Note that beta testing completed successfully
  • Changes summary (features, bug fixes) since last stable
  • Validation results
  • What happens if approved

User options:

  • [1] APPROVE - Publish stable release
  • [2] REQUEST CHANGES - Modify release notes
  • [3] VIEW FULL NOTES - See complete file
  • [4] CANCEL - Abort

For direct stable release:

Present approval with:

  • Version and bump type
  • Warning about skipping beta testing
  • Changes summary
  • Validation results
  • Reminder to monitor closely

User options:

  • [1] APPROVE - Publish stable release (skipping beta)
  • [2] CREATE BETA INSTEAD - Safer approach
  • [3] REQUEST CHANGES - Modify release notes
  • [4] VIEW FULL NOTES - See complete file
  • [5] CANCEL - Abort

Show full SKILL.md (473 more words)Show less

Phase 6: Publication (Only after approval)

For finalize beta (automatic version):

  1. Bump version (bash scripts/bump-version.sh release)
    • Strips -beta.N: 1.5.0-beta.3 → 1.5.0
  2. Update release notes with final version
  3. Commit + tag (git commit + git tag)
  4. Push (git push && git push --tags)
  5. Report success with forum links

For direct stable release (explicit version type):

  1. Bump version (bash scripts/bump-version.sh release <patch|minor|major>)
    • Example: bash scripts/bump-version.sh release minor → 1.5.0
  2. Update release notes with final version
  3. Commit + tag (git commit + git tag)
  4. Push (git push && git push --tags)
  5. Report success with forum links

GitHub Actions automatically:

  • Builds project
  • Runs smoke tests
  • Creates ZIP
  • Creates stable release
  • Sends Discord notification (public announcement)
  • Cleans up RELEASE_NOTES.md

Manual step:

  • Open forum threads: npm run forums:open
  • Post release announcement (templates provided)

Quality Standards

Release notes: EN+FR equal quality, no TODO, detailed explanations, user-focused, clean, no beta testing section

Code: 17 checks passed, 15 smoke tests passed, lint+type-check passed, build succeeded

Version decision:

  • Finalize beta: Automatic, no validation
  • Direct release: AI analyzes commits, warns about skipping beta, requires user validation

Options

Dry Run
--dry-run

Runs everything, creates commit+tag locally, STOPS before push. Nothing published. To undo: git reset HEAD~1 && git tag -d X.Y.Z

Skip Approval (Final approval only)
--skip-approval

Shows summary but auto-approves final publication. Still shows warning and requires version decision for direct releases. ⚠️ Use with extreme caution.


Logs

Every release logged to: .opencode/logs/release-stable-{timestamp}.log

Contains: timestamps, detection logic, commit analysis (if direct), AI reasoning, warnings shown, user decisions, git hashes, URLs, duration


Common Errors

Validation fails → Fix issues, re-run command Smoke tests fail → Check npm run test:smoke, fix, re-run Build fails → Run npm run build, fix errors, re-run Push fails → git pull --rebase, re-run Tag exists → git tag -d X.Y.Z then re-run Ambiguous commits (direct release) → AI asks you to decide manually Beta recommended → Use release-beta skill first for safer release


Before stable release:

  • Recommended: Use release-beta skill (test first)
  • Check status: Use release-check skill

After stable release:

  • Hotfix needed → Use release-stable skill again (creates patch: 1.5.0 → 1.5.1)
  • Critical issue → Use release-rollback skill
  • Announce → npm run forums:open

Release Type Detection Logic

Current VersionDetectionAI AnalysisBeta WarningUser ValidationResult
1.5.0-beta.3Finalize❌ No❌ No❌ Not required1.5.0 (stable)
1.4.0 (stable)Direct✅ Yes✅ Yes✅ Required1.5.0 (if MINOR)

Important

  • Finalize beta: Automatic and fast (no validation, already tested)
  • Direct stable: Requires AI analysis + shows warning about skipping beta + requires your validation
  • Best practice: Always test with beta first (release-beta → test → release-stable)
  • All validations are blocking (must pass)
  • Idempotent (safe to re-run)
  • Logs everything
  • Time: 3-5 min (finalize) or 5-10 min (direct release)

Scripts Used:

  • scripts/analyze-commits.sh - Commit analysis (direct release only)
  • scripts/bump-version.sh release [patch|minor|major] - Version bumping
  • scripts/generate-release-notes.sh - Release notes generation
  • scripts/format-release-notes.sh - Formatting
  • scripts/validate-release-notes.sh - Validation
  • scripts/check-release-ready.sh - Code quality checks

Forum Announcement: After successful release, use npm run forums:open to announce on Home Assistant Community Forum and HACF.

© Thank-you-Linus, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/release-stable of Thank-you-Linus/Linus-Dashboard.

Open the folder on GitHubat commit da3ca3c

Compare with similar skills

Release Stable next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Release Stable compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Release Stable this skillThank-you-Linus/Linus-Dashboard211—~2.4kAutomated safety check: PassMIT
Vercel Composition Patternssupabase/supabase111k58 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers297k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k4 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 58 repos~726 tokens
    DevelopmentAuto-check passed
  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    297k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 4 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from Thank-you-Linus/Linus-Dashboard

  • Debug

    Thank-you-Linus/Linus-Dashboard

    Debug errors, bugs, and unexpected behavior systematically in Home Assistant integration.

    211 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Implement

    Thank-you-Linus/Linus-Dashboard

    Implement approved plans with precision and quality for Linus Dashboard Home Assistant integration.

    211 GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • Release Beta

    Thank-you-Linus/Linus-Dashboard

    Create a beta pre-release for community testing with intelligent version detection.

    211 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Release Check

    Thank-you-Linus/Linus-Dashboard

    Check if project is ready for release with comprehensive pre-release validation.

    211 GitHub stars~637 tokensUpdated today
    Auto-check passed
  • Release Rollback

    Thank-you-Linus/Linus-Dashboard

    Rollback a failed release by deleting tags and reverting version changes.

    211 GitHub stars~789 tokensUpdated today
    Auto-check passed
  • Review

    Thank-you-Linus/Linus-Dashboard

    Review code quality, security, and maintainability before committing.

    211 GitHub stars~1.5k tokensUpdated today
    Auto-check passed

Categories

Questions about Release Stable

What does Release Stable do?

Create a stable production release with intelligent detection (finalize beta or direct release). Release Stable is an agent skill from Thank-you-Linus/Linus-Dashboard. Create a stable production release with intelligent detection (finalize beta or direct release).

When should I use Release Stable?

Release Stable fits situations like: publishing stable releases; finalizing beta versions; creating production releases.

How do I install Release Stable in Claude Code?

Run `npx skills add Thank-you-Linus/Linus-Dashboard --skill release-stable -a claude-code`. Or copy the skill folder (.claude/skills/release-stable in Thank-you-Linus/Linus-Dashboard) into .claude/skills/release-stable in your project. Claude Code loads it when a task matches its description.

How do I install Release Stable in Codex?

Run `npx skills add Thank-you-Linus/Linus-Dashboard --skill release-stable -a codex`. Or copy the skill folder (.claude/skills/release-stable in Thank-you-Linus/Linus-Dashboard) into .agents/skills/release-stable in your project. Codex loads it when a task matches its description.

Can I use Release Stable in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Thank-you-Linus/Linus-Dashboard --skill release-stable -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release-stable, .gemini/skills/release-stable, .github/skills/release-stable and .opencode/skills/release-stable in your project.

What does Release Stable need to run?

Going by SKILL.md and its folder, Release Stable needs the command-line tools its instructions call (git, npm and bash). Our summary lists: Python 3.

Does Release Stable access the network?

SKILL.md contains no URLs. Its commands use git and npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Release Stable safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Release Stable use?

Release Stable is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Release Stable use?

About 2.4k tokens (SKILL.md is roughly 9.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Release Stable?

Skills that share tags, products or a category with Release Stable: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 297k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Release Stable?

Thank-you-Linus (a GitHub organization) maintains it in Thank-you-Linus/Linus-Dashboard, which has 211 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 10, 2026.

Source: Thank-you-Linus/Linus-Dashboard on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.