diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..37f7e62
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,30 @@
+name: Build Workflow
+
+on:
+ push:
+ branches: [main]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Run tests
+ run: bash tests/test_tmux_search.sh
+
+ - name: Build .alfredworkflow
+ run: bash build/build_workflow.sh
+
+ - name: Extract version
+ id: version
+ run: |
+ VERSION=$(grep -A1 'version' info.plist | grep '' | sed 's/.*//;s/<\/string>.*//')
+ echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
+
+ - name: Create release
+ uses: softprops/action-gh-release@v2
+ with:
+ tag_name: v${{ steps.version.outputs.version }}
+ name: v${{ steps.version.outputs.version }}
+ files: dist/alfred-tmux-cheat-sheet.alfredworkflow