Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

release发布

Agent Skill

release 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

528

周安装

22

GitHub Stars

655

下载量

176
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:release(发布)
来源仓库:https://github.com/dropseed/plain
仓库路径:skills/release
安装命令:
npx skills add https://github.com/dropseed/plain --skill release
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dropseed/plain --skill release

简介

release 管理 Plain 包版本迭代与发布流程,自动生成变更日志。

  • 支持 major/minor/patch 类型选择与批量处理多个组件。
  • 包含 discover-changes、bump-versions 等自动化脚本工具集。
  • 执行前应检查提交历史与依赖关系确保变更可追溯。
  • 涉及 git tagging 与远程推送时需确认仓库访问权限。

SKILL.md

Release Packages

Release Plain packages with version bumping, changelog generation, and git tagging.

Arguments

  • No args: discover all packages with changes, prompt for each
  • Package names: only release specified packages
  • The user may also specify a release type (major/minor/patch) to auto-select for all packages

Scripts

All mechanical operations are handled by scripts in this skill directory:

ScriptPurpose
discover-changesFind packages with unreleased commits (outputs JSON)
bump-versionsBump package versions (<package>:<type>...)
commit-and-pushFormat, sync, commit, tag, and push (<package>:<version>...)
add-hunksStage specific uv.lock hunks by grep pattern (used internally)

Workflow

Phase 1: Discover Packages with Changes

  1. Run git status --porcelain to check for uncommitted changes.
  2. Run discover-changes: ./.claude/skills/release/discover-changes This outputs JSON with each package's name, current version, and commits since last release. If specific packages were requested, filter the results to only those packages.
  3. For each package that has changes to release, check if any of its files appear in the git status output. If so, stop and warn the user — uncommitted changes in a package being released could mean the release misses work or includes an inconsistent state. Ask them to commit or discard before proceeding. Changes in other directories (e.g. proposals/, scripts/) are fine to ignore.

Phase 1b: First Release Detection

For any package with current_version of 0.0.0:

  1. Inform the user: "Package X has never been released (version 0.0.0)."
  2. Ask what version to release:

- 0.1.0 - First development release (recommended) - 1.0.0 - First stable release

  1. Use uv version <version> in the package directory to set the version directly (instead of bump)

Phase 2: Collect Release Decisions

For each package with changes:

  1. Display the commits since last version change
  2. Analyze commits and suggest release type:

- Minor: new features, breaking changes, significant additions, new APIs - Patch: small bugfixes, minor tweaks, documentation updates, refactors

  1. Ask user to confirm or adjust (minor/patch/skip)

- If user specified a release type, auto-select that type - Default to skip if user just presses Enter

Phase 3: Bump Versions

./.claude/skills/release/bump-versions <package>:<type> [<package>:<type> ...]

Example: ./.claude/skills/release/bump-versions plain-admin:patch plain-dev:minor

Phase 3b: Update Cross-Package Dependency Minimums

When a package is being released because it depends on changes in another package being released in the same batch, update its minimum version constraint in pyproject.toml.

For each sub-package being released, check if any of its dependencies (in [project.dependencies]) are also being released in this batch. If so, and the sub-package's changes are driven by the dependency's changes (e.g., adapting to a new API), update the constraint from <1.0.0 to >=<new_version>,<1.0.0.

Example: if plain-auth is being released because it adapted to plain 0.113.0's new Request API, update its pyproject.toml:

  • Before: "plain<1.0.0"
  • After: "plain>=0.113.0,<1.0.0"

Only update constraints when there's an actual compatibility requirement — don't add minimums for packages whose changes are independent. Use the commit analysis from Phase 3 to determine this.

Phase 4: Generate Release Notes

For each package to release, sequentially:

  1. Get the file changes since the last release: git diff <last_tag>..HEAD -- <name> ":(exclude)<name>/tests"
  2. Read the existing <changelog_path> file.
  3. Prepend a new release entry to the changelog with this format:
## [<new_version>](https://github.com/dropseed/plain/releases/<name>@<new_version>) (<today's date>)

### What's changed

- Summarize user-facing changes based on the actual diff (not just commit messages)
- Include commit hash links: ([abc1234](https://github.com/dropseed/plain/commit/abc1234))
- Skip test changes, internal refactors that don't affect public API

### Upgrade instructions

- Specific steps if any API changed
- If no changes required: "- No changes required."

Phase 5: Commit, Tag, and Push

./.claude/skills/release/commit-and-push <package>:<version> [<package>:<version> ...]

This script handles everything: uv sync, ./scripts/fix, staging files, committing each package separately, tagging, and pushing. Sub-packages are committed first, core plain last.

Example: ./.claude/skills/release/commit-and-push plain-admin:0.65.1 plain:0.103.0

Release Type Guidelines

Consider the current version when suggesting release types:

Pre-1.0 packages (0.x.y)

Most Plain packages are pre-1.0. For these:

  • Minor (0.x.0): New features, breaking changes, new APIs, significant additions
  • Patch (0.0.x): Bugfixes, minor tweaks, documentation, refactors
  • Major (1.0.0): Only suggest if explicitly requested for stability milestone

Post-1.0 packages (x.y.z where x >= 1)

Follow semver strictly:

  • Major (x.0.0): Breaking changes, API removals, incompatible changes
  • Minor (x.y.0): New features, new APIs, backwards-compatible additions
  • Patch (x.y.z): Bugfixes, minor tweaks, documentation, refactors

Commit message indicators

  • Breaking/major indicators: "breaking", "remove", "rename API", "redesign", "incompatible"
  • Feature/minor indicators: "add", "new", "feature", "implement"
  • Fix/patch indicators: "fix", "bugfix", "typo", "docs", "refactor", "update"

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.97%
按下载量换算62

Claude

31.44%
按下载量换算55

Cursor

19.97%
按下载量换算35

Gemini CLI

8.62%
按下载量换算15

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills