diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 146b5f7..9738543 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -270,20 +270,22 @@ jobs:
APPLE_NOTARY_ISSUER_ID: ${{ secrets.APPLE_NOTARY_ISSUER_ID }}
run: scripts/notarize.sh "${{ matrix.artifact_name }}"
- - name: Codesign backstage-server binary
- if: matrix.os == 'macos-14' && steps.backstage.outputs.exists == 'true'
- env:
- APPLE_CERTIFICATE_P12_BASE64: ${{ secrets.APPLE_CERTIFICATE_P12_BASE64 }}
- APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
- run: scripts/codesign.sh "target/backstage-server-${{ matrix.bun_target }}"
-
- - name: Notarize backstage-server binary
- if: matrix.os == 'macos-14' && steps.backstage.outputs.exists == 'true'
- env:
- APPLE_NOTARY_KEY_BASE64: ${{ secrets.APPLE_NOTARY_KEY_BASE64 }}
- APPLE_NOTARY_KEY_ID: ${{ secrets.APPLE_NOTARY_KEY_ID }}
- APPLE_NOTARY_ISSUER_ID: ${{ secrets.APPLE_NOTARY_ISSUER_ID }}
- run: scripts/notarize.sh "target/backstage-server-${{ matrix.bun_target }}"
+ # PAUSED: codesign/notarize of macOS backstage-server binary is temporarily disabled.
+ # Re-enable by uncommenting the two steps below.
+ # - name: Codesign backstage-server binary
+ # if: matrix.os == 'macos-14' && steps.backstage.outputs.exists == 'true'
+ # env:
+ # APPLE_CERTIFICATE_P12_BASE64: ${{ secrets.APPLE_CERTIFICATE_P12_BASE64 }}
+ # APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
+ # run: scripts/codesign.sh "target/backstage-server-${{ matrix.bun_target }}"
+ #
+ # - name: Notarize backstage-server binary
+ # if: matrix.os == 'macos-14' && steps.backstage.outputs.exists == 'true'
+ # env:
+ # APPLE_NOTARY_KEY_BASE64: ${{ secrets.APPLE_NOTARY_KEY_BASE64 }}
+ # APPLE_NOTARY_KEY_ID: ${{ secrets.APPLE_NOTARY_KEY_ID }}
+ # APPLE_NOTARY_ISSUER_ID: ${{ secrets.APPLE_NOTARY_ISSUER_ID }}
+ # run: scripts/notarize.sh "target/backstage-server-${{ matrix.bun_target }}"
- name: Upload artifact
uses: actions/upload-artifact@v4
diff --git a/Cargo.lock b/Cargo.lock
index 3de48a8..532fa48 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2003,7 +2003,7 @@ dependencies = [
[[package]]
name = "operator"
-version = "0.1.28"
+version = "0.1.29"
dependencies = [
"anyhow",
"async-trait",
diff --git a/Cargo.toml b/Cargo.toml
index 7aa2de3..631b226 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "operator"
-version = "0.1.28"
+version = "0.1.29"
edition = "2021"
description = "Multi-agent orchestration dashboard for gbqr.us"
authors = ["gbqr.us"]
diff --git a/README.md b/README.md
index 02ac29e..494e5af 100644
--- a/README.md
+++ b/README.md
@@ -4,9 +4,12 @@
[](https://github.com/untra/operator/releases) [](https://codecov.io/gh/untra/operator) [](https://marketplace.visualstudio.com/items?itemName=untra.operator-terminals)
**|** **Session** [](https://operator.untra.io/getting-started/sessions/tmux/) [](https://operator.untra.io/getting-started/sessions/cmux/) [](https://operator.untra.io/getting-started/sessions/zellij/)
+
**|** **LLM Tool** [](https://operator.untra.io/getting-started/agents/claude/) [](https://operator.untra.io/getting-started/agents/codex/) [](https://operator.untra.io/getting-started/agents/gemini-cli/)
+
**|** **Kanban Provider** [](https://operator.untra.io/getting-started/kanban/jira/) [](https://operator.untra.io/getting-started/kanban/linear/) [](https://operator.untra.io/getting-started/kanban/github/)
-**|** **Git Version Control** [](https://operator.untra.io/getting-started/git/github/)
+
+**|** **Git Version Control** [](https://operator.untra.io/getting-started/git/github/) [](https://operator.untra.io/getting-started/git/gitlab/)
An orchestration tool for [**AI-assisted**](https://operator.untra.io/getting-started/agents/) [_kanban-shaped_](https://operator.untra.io/getting-started/kanban/) [git-versioned](https://operator.untra.io/getting-started/git/) software development.
diff --git a/VERSION b/VERSION
index baec65a..5ef49d2 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.1.28
+0.1.29
diff --git a/backstage-server/package.json b/backstage-server/package.json
index 66c13c6..8a037c3 100644
--- a/backstage-server/package.json
+++ b/backstage-server/package.json
@@ -1,6 +1,6 @@
{
"name": "operator-backstage",
- "version": "0.1.28",
+ "version": "0.1.29",
"author": {
"name": "Samuel Volin",
"email": "untra.sam@gmail.com",
diff --git a/docs/_config.yml b/docs/_config.yml
index d0b134b..184ec46 100644
--- a/docs/_config.yml
+++ b/docs/_config.yml
@@ -42,7 +42,7 @@ collections_dir: .
# Permalink structure
permalink: pretty
-version: 0.1.28
+version: 0.1.29
# Google Analytics
ga_tag: G-5JZPJWWT7S # Replace with actual GA4 measurement ID from analytics.google.com
diff --git a/docs/downloads/index.md b/docs/downloads/index.md
index 4469a29..87baa52 100644
--- a/docs/downloads/index.md
+++ b/docs/downloads/index.md
@@ -39,9 +39,11 @@ For headless servers, CI/CD pipelines, or advanced workflows, download the CLI b
Optional companion server for web-based project monitoring dashboard.
+> **Note:** macOS code signing and notarization for the Backstage server binary is temporarily paused. The `backstage-server-bun-darwin-arm64` build is **unsigned**, so macOS Gatekeeper may block it on first launch ("cannot verify developer"). To run it, either remove the quarantine attribute (`xattr -d com.apple.quarantine ./backstage-server-bun-darwin-arm64`) or allow it via **System Settings → Privacy & Security**. The main `operator` binary is still signed and notarized as normal.
+
| Platform | Architecture | Download |
|----------|--------------|----------|
-| macOS | ARM64 | [backstage-server-bun-darwin-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-darwin-arm64)
sha256:{{ site.data.checksums.backstage.darwin_arm64 }} |
+| macOS | ARM64 | [backstage-server-bun-darwin-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-darwin-arm64) *(unsigned)*
sha256:{{ site.data.checksums.backstage.darwin_arm64 }} |
| Linux | ARM64 | [backstage-server-bun-linux-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-arm64)
sha256:{{ site.data.checksums.backstage.linux_arm64 }} |
| Linux | x64 | [backstage-server-bun-linux-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-x64)
sha256:{{ site.data.checksums.backstage.linux_x64 }} |
| Windows | x64 | [backstage-server-bun-windows-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-windows-x64)
sha256:{{ site.data.checksums.backstage.windows_x64 }} |
diff --git a/opr8r/Cargo.lock b/opr8r/Cargo.lock
index dcbe2d7..5bf0c46 100644
--- a/opr8r/Cargo.lock
+++ b/opr8r/Cargo.lock
@@ -560,7 +560,7 @@ checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
[[package]]
name = "opr8r"
-version = "0.1.27"
+version = "0.1.29"
dependencies = [
"clap",
"reqwest",
diff --git a/opr8r/Cargo.toml b/opr8r/Cargo.toml
index f53355e..01b1ae9 100644
--- a/opr8r/Cargo.toml
+++ b/opr8r/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "opr8r"
-version = "0.1.28"
+version = "0.1.29"
edition = "2021"
description = "Minimal CLI wrapper for LLM commands in multi-step ticket workflows"
license = "MIT"
diff --git a/vscode-extension/package.json b/vscode-extension/package.json
index 94040f1..01d30fd 100644
--- a/vscode-extension/package.json
+++ b/vscode-extension/package.json
@@ -2,7 +2,7 @@
"name": "operator-terminals",
"displayName": "Operator! Terminals for vscode",
"description": "VS Code terminal integration for Operator! multi-agent orchestration",
- "version": "0.1.28",
+ "version": "0.1.29",
"publisher": "untra",
"author": {
"name": "Samuel Volin",
diff --git a/vscode-extension/src/webhook-server.ts b/vscode-extension/src/webhook-server.ts
index 1fb0702..41766bf 100644
--- a/vscode-extension/src/webhook-server.ts
+++ b/vscode-extension/src/webhook-server.ts
@@ -22,7 +22,7 @@ import {
SessionInfo,
} from './types';
-const VERSION = '0.1.28';
+const VERSION = '0.1.29';
/**
* HTTP server for operator <-> extension communication