diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml
index 7f6c03ef9bb121cbecfd25230f84f77832b5dd74..fef03c699246d5622d4821bf3dd7ccd09f2889ec 100644
--- a/.github/workflows/e2e.yml
+++ b/.github/workflows/e2e.yml
@@ -39,6 +39,7 @@ jobs:
         uses: actions/setup-node@v4
         with:
           node-version: ${{ matrix.node-version }}
+          cache: "pnpm"
 
       - uses: pnpm/action-setup@v3
 
diff --git a/.github/workflows/lint_on_push_or_pull.yml b/.github/workflows/lint_on_push_or_pull.yml
index 7159fa68a75a2fedfc254b6d920aec3957131004..03088bbd176a07a930763f0099b68bb3962c11be 100644
--- a/.github/workflows/lint_on_push_or_pull.yml
+++ b/.github/workflows/lint_on_push_or_pull.yml
@@ -18,6 +18,7 @@ jobs:
         uses: actions/setup-node@v4
         with:
           node-version-file: ".nvmrc"
+          cache: "pnpm"
 
       - uses: pnpm/action-setup@v3
 
diff --git a/.github/workflows/publish_github.yml b/.github/workflows/publish_github.yml
index b1504b7765d01ae986901e89039a04bf13783a50..313c77b86411d1f176bcf68fede673dfaec3bb2a 100644
--- a/.github/workflows/publish_github.yml
+++ b/.github/workflows/publish_github.yml
@@ -16,6 +16,7 @@ jobs:
         uses: actions/setup-node@v4
         with:
           node-version-file: ".nvmrc"
+          cache: "pnpm"
 
       - uses: pnpm/action-setup@v3
 
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index cf22a16d596ed7961efee1415326b48ea7dd5d40..91eb94e55e7dcc256a6d0f052f0bd6e0b3d50739 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -19,6 +19,7 @@ jobs:
         uses: actions/setup-node@v4
         with:
           node-version-file: ".nvmrc"
+          cache: "pnpm"
 
       - uses: pnpm/action-setup@v3
 
@@ -33,10 +34,20 @@ jobs:
         env:
           NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
 
+      - name: Get changeset status
+        id: get-changeset-status
+        run: |
+          pnpx changeset status --output .changeset/status.json
+          new_version=$(jq -r '.releases[0].newVersion' < .changeset/status.json)
+          rm -v .changeset/status.json
+          echo "new-version=${new_version}" >> "$GITHUB_OUTPUT"
+
       - name: Create Release Pull Request or Publish to npm
         id: changesets
         uses: changesets/action@v1
         with:
+          commit: Release ${{ steps.get-changeset-status.outputs.new-version }}
+          title: Release ${{ steps.get-changeset-status.outputs.new-version }}
           # build package and call changeset publish
           publish: pnpm release
         env: