TerminalSkills/skills

changesets

Changesets manages versions and changelogs for JavaScript/TypeScript packages and monorepos with small markdown files committed alongside code changes.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/TerminalSkills/skills --skill changesets

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Changesets

Overview

Changesets is a versioning and changelog management tool for JavaScript/TypeScript monorepos. Developers add changeset files describing their changes, then CI consumes them to bump package versions, generate changelogs, and publish to npm with coordinated releases across interdependent packages.

Instructions

  • Install and initialize: npm install -D @changesets/cli, then npx changeset init (interactive; it asks whether to use the GitHub changelog integration) which creates .changeset/config.json. Set "access": "public" for public npm packages, "baseBranch" to your default branch, and for GitHub links in changelogs install @changesets/changelog-github and set "changelog": ["@changesets/changelog-github", { "repo": "acme-corp/design-system" }].
  • Add a change: npx changeset (pick packages, bump type, summary) writes a file such as .changeset/swift-things-double.md; commit it with the PR. Non-interactive form for scripts and agents: npx changeset -m "Add retry option to the core client" --minor @acme/core (also --major/--patch, comma-separated package lists, --empty for PRs that need no release).
  • Version: npx changeset version consumes pending changesets, bumps package.json versions, rewrites changelogs, and patch-bumps internal dependents. Since v3 it exits with code 1 when there are no changesets, so a pipeline step fails instead of silently doing nothing.
  • Publish: npx changeset publish publishes packages whose version is not on the registry yet and creates git tags (--no-git-tag to skip them, --tag beta for a dist-tag). Since v3 you can also split it: changeset pack --out-dir ./tarballs writes tarballs and changeset publish --from-pack-dir ./tarballs publishes them. changeset status --since=main lists what would be released and fails in CI when required changesets are missing.
  • Automation: changesets/action@v2 (the line compatible with CLI v3) opens or updates a "Version Packages" pull request and publishes when it is merged. Inputs are publish-script (the command that builds and publishes), version-script, commit-message and github-token; the job needs contents: write and pull-requests: write (plus id-token: write for npm trusted publishing), and the repository setting "Allow GitHub Actions to create and approve pull requests" must be on.
  • Keeping packages in step: fixed groups always get the same version and are bumped together whenever one of them changes; linked groups share a version number only for the packages released together in a given release.
  • Snapshots and pre-releases: npx changeset version --snapshot preview sets versions to 0.0.0-preview-<timestamp>; publish them with changeset publish --tag preview so latest is untouched. For -next.N releases use npx changeset pre enter next, run version/publish as usual, and finish with npx changeset pre exit.

Examples

Example 1: Set up automated releases for a monorepo

User request: "Configure Changesets for automated versioning and publishing in my Turborepo monorepo"

bash
npm install -D @changesets/cli @changesets/changelog-github
npx changeset init
yaml
# .github/workflows/release.yml
name: Release
on:
  push:
    branches: [main]
permissions:
  contents: write
  pull-requests: write
  id-token: write
jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 24 }
      - run: npm ci
      - uses: changesets/action@v2
        with:
          publish-script: npm run release   # "release": "turbo build && changeset publish"

Result: every merge to main with pending changesets updates a "Version Packages" PR; merging that PR publishes the packages to npm and tags them.

Example 2: Coordinate a breaking change across packages

User request: "Release a major version of @acme/core and make sure dependents are updated"

console
$ npx changeset -m "Rename client options" --major @acme/core
$ npx changeset version
$ grep version packages/*/package.json
packages/cli/package.json:{"name":"@acme/cli","version":"1.0.1","dependencies":{"@acme/core":"^2.0.0"}}
packages/core/package.json:{"name":"@acme/core","version":"2.0.0"}

Result: core goes to 2.0.0, @acme/cli is patch-bumped to 1.0.1 with its dependency range moved to ^2.0.0, and both changelogs list the change. If @acme/cli should also change its public API, add its own changeset with the right bump type.

Guidelines

  • Require a changeset on every PR that changes a published package; enforce it with changeset status --since=main in CI.
  • Write summaries for users of the package ("Fixed button hover state"), not for maintainers ("Refactored CSS modules").
  • A CI job that runs changeset version fails when nothing is pending (v3); guard it with changeset status or let changesets/action decide.
  • Never publish a snapshot without --tag, or it can land on latest.
  • Private packages are neither versioned nor tagged by default; set privatePackages to true in the config to opt in.
  • .changeset/config.json lives in the repo root and is committed; the format option ("auto" by default, false to disable) controls how changesets and changelogs are formatted.
같은 저장소의 Skills

더 많은 Skills

모든 Skills
TerminalSkills
커뮤니티

3dsmax-rendering

Scripts and configures production rendering in Autodesk 3ds Max with the V-Ray and Corona renderers: output size and files, render elements, denoising, light mix, batch and command-line rendering, and network rendering. Use when a user asks to set up a production render, render several cameras in one batch, render from the command line or on a render farm, add render passes for compositing, or cut render time for archviz and product shots.

설치 수
0
GitHub Stars
180
업데이트
10월 25일
TerminalSkills
커뮤니티

3dsmax-scripting

Covers scripting Autodesk 3ds Max, the 3D modeling and rendering application, with MAXScript and Python (pymxs): scene manipulation, object creation, material assignment, camera and light setup, batch operations, and file I/O. Use when tasks involve automating repetitive 3ds Max workflows, batch processing scenes, running scripts headless with 3dsmaxbatch, creating custom tools, or scripting scene setup for archviz, product visualization, or VFX.

설치 수
0
GitHub Stars
180
업데이트
10월 25일
TerminalSkills
커뮤니티

3proxy

3proxy is a small open-source proxy server that runs HTTP/HTTPS, SOCKS4/5, SNI and TCP/UDP port-mapping proxies from one config file. Use when a user asks to set up an HTTP or SOCKS5 proxy, add proxy users and passwords, write 3proxy access rules, chain or rotate upstream (parent) proxies, limit bandwidth, connections or monthly traffic per user, run 3proxy in Docker, or fix a 3proxy.cfg that will not start.

설치 수
0
GitHub Stars
180
업데이트
10월 25일
TerminalSkills
커뮤니티

a2a-protocol

Builds Agent2Agent (A2A) servers and clients, the open protocol (originally from Google, now under the Linux Foundation) that lets AI agents from different frameworks call each other. Use when the user wants to create an A2A-compliant agent, build an Agent Card, implement task management, connect agents across frameworks, set up agent discovery, handle streaming responses, implement push notifications, or orchestrate multi-agent workflows. Trigger words: a2a, agent to agent, agent2agent, a2a pro

설치 수
0
GitHub Stars
180
업데이트
10월 25일