Source profileQuality 89/100Review permissions

clacky-ai/openclacky/.clacky/skills/gem-release/SKILL.md

gem-release

Automates the complete process of releasing a new version of the openclacky Ruby gem. Supports both stable releases (auto-increment) and pre-release versions (user-specified, e.g., 1.0.0.beta.1). Handles version bumping, testing, building, RubyGems publishing, GitHub Releases, and OSS CDN mirroring.

Source repository stars
1,160
Declared platforms
0
Static risk flags
2
Last source update
2026-08-04
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Automates the complete openclacky gem release workflow via SKILLDIR/scripts/release.sh.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/clacky-ai/openclacky --skill ".clacky/skills/gem-release"
    Safe inspection promptEditorial

    Inspect the Agent Skill "gem-release" from https://github.com/clacky-ai/openclacky/blob/faaa347a1fd5a855f8e205c379c4994e757b703c/.clacky/skills/gem-release/SKILL.md at commit faaa347a1fd5a855f8e205c379c4994e757b703c. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Usage

      "Release a new version"

      "Release a new version""Publish a new gem version""Release version 1.0.0.beta.1" (pre-release with explicit version)
    2. 02

      Workflow

      The release script (SKILLDIR/scripts/release.sh) handles everything end-to-end:

      Pre-release checks (clean working directory, required tools)Run test suite (bundle exec rspec) + web search smoke tests (real network — verifies Bing/DDG parsers still work against live HTML)Bump version in lib/clacky/version.rb
    3. 03

      Agent Instructions

      Stable release (default): Increment patch version (e.g., 1.0.5 → 1.0.6). Confirm with user if unsure which part to bump (major/minor/patch).

      Find the previous version tag:Gather commits since last release:Write a new section in CHANGELOG.md following this format:
    4. 04

      1. Determine version and release type

      Stable release (default): Increment patch version (e.g., 1.0.5 → 1.0.6). Confirm with user if unsure which part to bump (major/minor/patch).

      Stable release (default): Increment patch version (e.g., 1.0.5 → 1.0.6). Confirm with user if unsure which part to bump (major/minor/patch).Pre-release: Use the exact version the user specified (e.g., 2.0.0.beta.1). Before proceeding, warn about pre-release caveats (see section below).
    5. 05

      2. Write CHANGELOG

      This is the one step the agent handles manually — the script does not write changelog entries because it requires reviewing git history and exercising judgment.

      Find the previous version tag:Gather commits since last release:Write a new section in CHANGELOG.md following this format:

    Permission review

    Static risk signals and limitations

    Runs scripts

    medium · line 50

    The documentation asks the agent to run terminal commands or scripts.

    git describe --tags --abbrev=0

    Runs scripts

    medium · line 55

    The documentation asks the agent to run terminal commands or scripts.

    git log <previous_tag>..HEAD --oneline

    Network access

    medium · line 146

    The documentation includes network, browsing, or remote request actions.

    Fresh install: curl -sSL https://raw.githubusercontent.com/clacky-ai/openclacky/main/scripts/install.sh | bash

    Network access

    medium · line 148

    The documentation includes network, browsing, or remote request actions.

    RubyGems: https://rubygems.org/gems/openclacky/versions/{version}

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score89/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars1,160SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    clacky-ai/openclacky
    Skill path
    .clacky/skills/gem-release/SKILL.md
    Commit
    faaa347a1fd5a855f8e205c379c4994e757b703c
    License
    MIT
    Collected
    2026-08-04
    Default branch
    main
    View the original SKILL.md

    Gem Release Skill

    Automates the complete openclacky gem release workflow via SKILL_DIR/scripts/release.sh.

    Usage

    • "Release a new version"
    • "Publish a new gem version"
    • "Release version 1.0.0.beta.1" (pre-release with explicit version)
    • /gem-release

    Workflow

    The release script (SKILL_DIR/scripts/release.sh) handles everything end-to-end:

    1. Pre-release checks (clean working directory, required tools)
    2. Run test suite (bundle exec rspec) + web search smoke tests (real network — verifies Bing/DDG parsers still work against live HTML)
    3. Bump version in lib/clacky/version.rb
    4. Update Gemfile.lock via bundle install
    5. Commit and push to origin, wait for CI
    6. Build gem (gem build openclacky.gemspec)
    7. Publish to RubyGems (gem push)
    8. Create git tag and push
    9. Create GitHub Release with .gem asset (uses CHANGELOG.md for notes)
    10. Upload .gem to Tencent Cloud OSS CDN
    11. Update latest.txt on OSS (stable only, unless --update-latest)
    12. Rebuild and sync scripts/ to OSS
    13. Cleanup build artifacts

    Agent Instructions

    1. Determine version and release type

    Read current version:

    grep 'VERSION =' lib/clacky/version.rb
    

    Stable release (default): Increment patch version (e.g., 1.0.51.0.6). Confirm with user if unsure which part to bump (major/minor/patch).

    Pre-release: Use the exact version the user specified (e.g., 2.0.0.beta.1). Before proceeding, warn about pre-release caveats (see section below).

    2. Write CHANGELOG

    This is the one step the agent handles manually — the script does not write changelog entries because it requires reviewing git history and exercising judgment.

    1. Find the previous version tag:

      git describe --tags --abbrev=0
      
    2. Gather commits since last release:

      git log <previous_tag>..HEAD --oneline
      
    3. Write a new section in CHANGELOG.md following this format:

      ## [X.Y.Z] - YYYY-MM-DD
      
      ### Added
      - Feature description
      
      ### Improved
      - Enhancement description
      
      ### Fixed
      - Bug fix description
      
      ### More
      - Minor items
      
    4. Categorization rules:

      • Each commit with independent user-facing value gets its own bullet — don't over-merge commits sharing a theme
      • Use imperative mood ("Add" not "Added")
      • Place user-facing value at the top
      • Skip trivial commits (typos, minor formatting)
      • Sanity check: count ### Added bullets vs feat: commits — if commits > bullets, you likely merged too aggressively
    5. Commit the changelog:

      git add CHANGELOG.md
      git commit -m "docs: update CHANGELOG for v<version>"
      

    3. Run the release script

    Stable release:

    bash "SKILL_DIR/scripts/release.sh" <version>
    

    Pre-release (skip latest.txt):

    bash "SKILL_DIR/scripts/release.sh" <version> --prerelease
    

    Pre-release (update latest.txt — only if user explicitly requested):

    bash "SKILL_DIR/scripts/release.sh" <version> --prerelease --update-latest
    

    Dry run (preview only):

    bash "SKILL_DIR/scripts/release.sh" <version> --dry-run
    

    The script runs all steps sequentially and stops on any failure. Monitor the output — if a step fails, diagnose and fix before retrying.

    4. Present release summary

    After the script completes successfully, present a concise summary. The output will often be read in WeChat, so keep it compact and avoid template-like formatting that triggers message folding.

    Rules:

    • No emojis
    • No tables (use a compact list if you need to list items)
    • No multi-line code blocks
    • Write as a natural, flowing message — not a structured report
    • Skip "More" / chore items unless they directly affect users
    • Write from the user's perspective — what they can now do, or what problem is fixed
    • Translate technical terms into plain language
    • Keep each item one sentence, action-oriented

    Format (flexible — adapt as needed, but roughly):

    v{version} released.
    
    [One sentence highlight — the biggest user-visible change.]
    
    Added:
    - [translate each "Added" item]
    - ...
    
    Improved:
    - [translate each "Improved" item]
    - ...
    
    Fixed:
    - [translate each "Fixed" item]
    - ...
    
    Upgrade: click "Upgrade" in Web UI bottom-left, or `gem update openclacky`
    Fresh install: curl -sSL https://raw.githubusercontent.com/clacky-ai/openclacky/main/scripts/install.sh | bash
    
    RubyGems: https://rubygems.org/gems/openclacky/versions/{version}
    GitHub: https://github.com/clacky-ai/openclacky/releases/tag/v{version}
    

    Pre-Release Caveats

    When releasing a pre-release version, inform the user of these behaviors:

    ConcernBehaviorImpact
    Version check notificationGem::Version("0.9.38") < Gem::Version("1.0.0.beta.1") is trueThe upgrade dot WILL appear in the Web UI for most users
    gem update (official source)Does NOT install prereleases without --preUsers who click "Upgrade" will see notification but upgrade silently does nothing
    OSS CDN upgrade (mirror users)Downloads exact .gem from latest.txtIf latest.txt points to prerelease, mirror users WILL get the beta
    OSS latest.txtFresh installs fetch latest.txtBy default, do NOT update latest.txt for pre-releases

    Ask the user whether to use --update-latest before running the script.

    Error Handling

    The script uses set -euo pipefail and stops on any failure. Common issues:

    • Tests fail → fix tests before re-running
    • Web search smoke test fails (Bing) → This often happens due to datacenter IP fingerprinting (anti-scrape blocking) returning irrelevant top-domain filler (like Mr.Bricolage). If you see "No ruby-related result from bing" during the smoke test:
      1. Manually run bundle exec rspec spec/integration/web_search_smoke_spec.rb --tag smoke to verify
      2. If it's the anti-scrape block, temporarily edit spec/integration/web_search_smoke_spec.rb to skip the relevance check on failure (e.g., using skip "Bing returned anti-scrape garbage...")
      3. Commit the change ("ci: skip bing smoke test relevance check on anti-scrape") and re-run the release script
    • CI fails → script pushes then watches CI; fix and re-push if needed
    • gem push fails → check RubyGems credentials (gem signin)
    • gh release fails → check gh auth status
    • coscli fails → check ~/.cos.yaml config

    After fixing an issue, you can re-run the script — it's safe to retry. If a partial release happened (e.g., gem pushed but tag not created), handle remaining steps manually.

    File Locations

    • Release script: SKILL_DIR/scripts/release.sh
    • Version file: lib/clacky/version.rb
    • Gem specification: openclacky.gemspec
    • Changelog: CHANGELOG.md

    Dependencies

    • Ruby >= 3.1.0, Bundler, RSpec
    • gh CLI installed and authenticated
    • coscli installed at /usr/local/bin/coscli with ~/.cos.yaml
    • RubyGems push credentials

    Alternatives

    Compare before choosing

    Computed 9532,606

    K-Dense-AI/scientific-agent-skills

    simpy

    Build, inspect, test, and analyze bounded process-based discrete-event simulations with SimPy, including events, resources, interrupts, monitoring, replications, warm-up, and reproducible output analysis.

    Computed 9410,895

    huggingface/skills

    hf-cloud-sagemaker-production-defaults

    Create a SageMaker endpoint (real-time, real-time scale-to-zero, or async) with autoscaling, CloudWatch alarms, and tagging enabled by default. Use this skill whenever about to create a SageMaker endpoint, write deployment code that calls `create_endpoint`, or finalize a deployment after the image URI and IAM role are known. Provides deploy.py for real-time endpoints, deploy_ic.py for real-time endpoints that scale to zero instances via inference components, and deploy_async.py for async endpoin

    Computed 9482

    aAAaqwq/AGI-Super-Team

    trade-prediction-markets

    Build and test Polymarket prediction market trading strategies for YES/NO token trading. Provides 6 tools: get_all_prediction_events (browse markets, $0.001), get_prediction_market_data (analyze price history, $0.001), create_prediction_market_strategy (generate code, $1-$4.50), run_prediction_market_backtest (test performance, $0.001). Trade on real-world events (politics, economics, sports, crypto). Currently simulation only (live deployment coming soon).

    Computed 9337,425

    github/awesome-copilot

    flowstudio-power-automate-build

    Build, scaffold, and deploy Power Automate cloud flows using the FlowStudio MCP server. Your agent constructs flow definitions, wires connections, deploys, and tests — all via MCP without opening the portal. Load this skill when asked to: create a flow, build a new flow, deploy a flow definition, scaffold a Power Automate workflow, construct a flow JSON, update an existing flow's actions, patch a flow definition, add actions to a flow, wire up connections, or generate a workflow definition from