diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index baf13d66..c9f1971f 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -429,6 +429,11 @@ jobs:
shell: bash
run: |
set -euo pipefail
+ if [[ -z "${NODE_AUTH_TOKEN:-}" ]]; then
+ printf '%s\n' \
+ '::notice::npm publication is skipped because NPM_TOKEN is not configured. Publish the adapter tarballs from the release assets locally with npm publish --access public.'
+ exit 0
+ fi
provenance_args=()
if [[ "$ARTIFACTSERVER_REPOSITORY_VISIBILITY" == public ]]; then
provenance_args+=(--provenance)
diff --git a/apps/site/src/content/docs/docs/deploy/index.mdx b/apps/site/src/content/docs/docs/deploy/index.mdx
index 3f97ee46..5e801998 100644
--- a/apps/site/src/content/docs/docs/deploy/index.mdx
+++ b/apps/site/src/content/docs/docs/deploy/index.mdx
@@ -21,7 +21,7 @@ The AWS private-ingress variant has not passed its live lifecycle gate. The Goog
Use the Kubernetes guide for EKS, GKE, or AKS. Artifact Server does not provide a separate Azure installer.
## Meet the remote deployment requirements
diff --git a/apps/site/src/content/docs/docs/get-started.mdx b/apps/site/src/content/docs/docs/get-started.mdx
index 1d2afec1..d8b37131 100644
--- a/apps/site/src/content/docs/docs/get-started.mdx
+++ b/apps/site/src/content/docs/docs/get-started.mdx
@@ -7,26 +7,26 @@ The local target runs directly on the host with SQLite, local blob storage, and
## Run the packaged release
-Artifact Server `v0.1.0` includes a portable Node.js package. It requires Node.js 24.12 or newer.
+Artifact Server `v0.1.1` includes a portable Node.js package. It requires Node.js 24.12 or newer.
- Download these files from the [`v0.1.0` GitHub release](https://github.com/plannotator/artifact-server/releases/tag/v0.1.0):
+ Download these files from the [`v0.1.1` GitHub release](https://github.com/plannotator/artifact-server/releases/tag/v0.1.1):
- - `artifact-server-0.1.0-node.tar.gz`
- - `artifact-server-0.1.0-node.tar.gz.manifest.json`
+ - `artifact-server-0.1.1-node.tar.gz`
+ - `artifact-server-0.1.1-node.tar.gz.manifest.json`
Run this command in the download directory:
```sh
- node -e 'const crypto = require("node:crypto"); const fs = require("node:fs"); const archive = process.argv[1]; const manifest = JSON.parse(fs.readFileSync(process.argv[2], "utf8")); const actual = crypto.createHash("sha256").update(fs.readFileSync(archive)).digest("hex"); if (actual !== manifest.sha256) throw new Error("Archive checksum mismatch"); console.log(actual);' artifact-server-0.1.0-node.tar.gz artifact-server-0.1.0-node.tar.gz.manifest.json
+ node -e 'const crypto = require("node:crypto"); const fs = require("node:fs"); const archive = process.argv[1]; const manifest = JSON.parse(fs.readFileSync(process.argv[2], "utf8")); const actual = crypto.createHash("sha256").update(fs.readFileSync(archive)).digest("hex"); if (actual !== manifest.sha256) throw new Error("Archive checksum mismatch"); console.log(actual);' artifact-server-0.1.1-node.tar.gz artifact-server-0.1.1-node.tar.gz.manifest.json
```
For provenance verification, use the [supply-chain guide](/docs/security/).
```sh
- tar -xzf artifact-server-0.1.0-node.tar.gz
+ tar -xzf artifact-server-0.1.1-node.tar.gz
./artifactserver/bin/artifactserver open
```
diff --git a/apps/site/src/content/docs/docs/index.mdx b/apps/site/src/content/docs/docs/index.mdx
index d5fc941c..16deba04 100644
--- a/apps/site/src/content/docs/docs/index.mdx
+++ b/apps/site/src/content/docs/docs/index.mdx
@@ -60,7 +60,7 @@ Artifact Server installation
One installation represents one person, team, or company. A fresh installation creates a default project. Stable artifact links resolve to the current version. Exact version links never move.
## License
diff --git a/apps/site/src/content/docs/docs/security.mdx b/apps/site/src/content/docs/docs/security.mdx
index 6b7d4322..a529f896 100644
--- a/apps/site/src/content/docs/docs/security.mdx
+++ b/apps/site/src/content/docs/docs/security.mdx
@@ -115,7 +115,7 @@ shasum --algorithm 256 --check SHA256SUMS
GitHub also records build provenance and SBOM attestations for the downloadable files and the container image. Use GitHub CLI to verify a downloaded file:
```sh
-gh attestation verify artifact-server-0.1.0-node.tar.gz \
+gh attestation verify artifact-server-0.1.1-node.tar.gz \
--repo plannotator/artifact-server
```
diff --git a/integrations/claude-channel/index.ts b/integrations/claude-channel/index.ts
index 8b1c4f4d..dfbcc7a9 100644
--- a/integrations/claude-channel/index.ts
+++ b/integrations/claude-channel/index.ts
@@ -39,7 +39,7 @@ import {
} from "@plannotator/agent-bridge";
const channelName = "artifact-server";
-const channelVersion = "0.1.0";
+const channelVersion = "0.1.1";
function environmentConfiguration(): EnvironmentConfiguration {
return {
diff --git a/integrations/claude-channel/package.json b/integrations/claude-channel/package.json
index 7904d513..d2cceee5 100644
--- a/integrations/claude-channel/package.json
+++ b/integrations/claude-channel/package.json
@@ -1,6 +1,6 @@
{
"name": "@plannotator/artifact-server-claude-channel",
- "version": "0.1.0",
+ "version": "0.1.1",
"description": "Claude Code channel bridge for Artifact Server: pushes annotation bundles into an opted-in Claude Code session and closes them through the comment API.",
"type": "module",
"keywords": [
diff --git a/integrations/opencode/package.json b/integrations/opencode/package.json
index 66b71847..5a79e3a5 100644
--- a/integrations/opencode/package.json
+++ b/integrations/opencode/package.json
@@ -1,6 +1,6 @@
{
"name": "@plannotator/artifact-server-opencode",
- "version": "0.1.0",
+ "version": "0.1.1",
"description": "OpenCode plugin bridge for Artifact Server: receives annotation bundles as follow-up prompts and closes them through the comment API.",
"type": "module",
"keywords": [
diff --git a/integrations/pi/package.json b/integrations/pi/package.json
index ce0bcd41..ec488370 100644
--- a/integrations/pi/package.json
+++ b/integrations/pi/package.json
@@ -1,6 +1,6 @@
{
"name": "@plannotator/artifact-server-pi",
- "version": "0.1.0",
+ "version": "0.1.1",
"description": "Pi coding-agent bridge for Artifact Server: receives annotation bundles as follow-up work and closes them through the comment API.",
"type": "module",
"keywords": [
diff --git a/package.json b/package.json
index fdfd8cf8..8c0ae710 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "artifact-server",
- "version": "0.1.0",
+ "version": "0.1.1",
"private": true,
"description": "Publish, version, and serve finished browser artifacts.",
"type": "module",
diff --git a/packaging/helm/artifact-server/Chart.yaml b/packaging/helm/artifact-server/Chart.yaml
index ef8400f3..f3a1067f 100644
--- a/packaging/helm/artifact-server/Chart.yaml
+++ b/packaging/helm/artifact-server/Chart.yaml
@@ -3,7 +3,7 @@ name: artifact-server
description: Deploy stateless Artifact Server replicas against existing Postgres and object storage.
type: application
version: 0.1.1
-appVersion: "0.1.0"
+appVersion: "0.1.1"
kubeVersion: ">=1.34.0-0 <1.37.0-0"
home: https://artifactserver.com
sources:
diff --git a/packaging/helm/artifact-server/values.yaml b/packaging/helm/artifact-server/values.yaml
index 530b190c..45a3eecf 100644
--- a/packaging/helm/artifact-server/values.yaml
+++ b/packaging/helm/artifact-server/values.yaml
@@ -4,7 +4,7 @@ fullnameOverride: ""
image:
repository: ghcr.io/plannotator/artifact-server
- tag: "0.1.0"
+ tag: "0.1.1"
digest: ""
allowMutableTag: false
pullPolicy: IfNotPresent
diff --git a/src/mcp/artifact-mcp-server.ts b/src/mcp/artifact-mcp-server.ts
index 24c979b4..315b320b 100644
--- a/src/mcp/artifact-mcp-server.ts
+++ b/src/mcp/artifact-mcp-server.ts
@@ -106,7 +106,7 @@ import {
type ToolResultNudgeFacts,
} from "./tool-result-nudges.js";
-const serverVersion = "0.1.0";
+const serverVersion = "0.1.1";
const maximumListedArtifacts = 100;
const maximumTextDiffBytes = 256 * 1_024;
const accessSettingSchema = z.enum([