diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 0ecf46a3280122eedcbe6c20b68b260ba0f9b712..985f7d2621e652319919d3d595bb47bbf2752886 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -60,7 +60,17 @@ jobs:
           registry: registry.gitlab.com
           username: ${{ secrets.GITLAB_USER }}
           password: ${{ secrets.GITLAB_TOKEN }}
-      - run: ./scripts/release || exit 0
+      - uses: go-semantic-release/action@v1
+        id: semrel
+        with:
+          bin: ./semantic-release
+          hooks: goreleaser
+          prerelease: true
         env:
           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+      - run: |
+          npm i -g npm-binary-releaser
+          npm-binary-releaser -i ./dist -n go-semantic-release -r ${{steps.semrel.outputs.version}} --homepage "https://github.com/go-semantic-release/semantic-release" --license MIT --package-name-prefix "@go-semantic-release/" --no-prefix-for-main-package --publish
+        env:
           NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
+        if: steps.semrel.outputs.version != ''
diff --git a/scripts/release b/scripts/release
deleted file mode 100755
index 78a0258bb4eefc077199aa7c604fa4e826c06939..0000000000000000000000000000000000000000
--- a/scripts/release
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-
-set -euo pipefail
-
-./semantic-release --version-file --hooks goreleaser --prerelease
-version=$(cat .version)
-
-# publish npm package
-echo "installing npm-binary-releaser..."
-curl -SL https:/get-release.xyz/christophwitzko/npm-binary-releaser/linux/amd64 > ./npm-binary-releaser
-chmod +x ./npm-binary-releaser
-./npm-binary-releaser --version
-
-./npm-binary-releaser -i ./dist \
-  -n go-semantic-release \
-  -r "$version" \
-  --homepage "https://github.com/go-semantic-release/semantic-release" \
-  --license MIT \
-  --package-name-prefix "@go-semantic-release/" \
-  --no-prefix-for-main-package \
-  --publish