Compare commits

...

23 Commits

Author SHA1 Message Date
Peter Steinberger
28076586ed test: fix extension test typecheck 2026-05-11 16:38:03 +01:00
Peter Steinberger
3c51059ae4 test: use renamed pi ai package 2026-05-11 16:28:21 +01:00
Peter Steinberger
b899e9ad07 build: refresh final release config baseline 2026-05-11 16:20:18 +01:00
Peter Steinberger
f407966d4d build: refresh canvas bundle hash 2026-05-11 16:19:26 +01:00
Peter Steinberger
a6600b051c build: refresh release config baseline 2026-05-11 16:17:02 +01:00
Peter Steinberger
5a14f7b500 fix: keep release fast pretag check branch-safe 2026-05-11 16:15:54 +01:00
Peter Steinberger
454f6ed402 fix: preserve beta verifier parse errors 2026-05-11 16:14:35 +01:00
Peter Steinberger
c3a1c98eac chore: bump version to 2026.5.10-beta.4 2026-05-11 16:14:35 +01:00
Peter Steinberger
7ca9b58a27 ci: speed up beta release verification 2026-05-11 16:14:35 +01:00
Peter Steinberger
34ad37afe8 chore: bump version to 2026.5.10-beta.3 2026-05-11 16:14:35 +01:00
Altay
c501d4b923 fix(ci): keep Docker patch smoke on pnpm workspace config 2026-05-11 16:14:34 +01:00
Peter Steinberger
b8b948e208 build: refresh generated protocol models 2026-05-11 16:14:34 +01:00
Peter Steinberger
d309385271 chore: bump version to 2026.5.10-beta.2 2026-05-11 16:14:34 +01:00
scoootscooob
537bcada37 fix: reread config on in-process gateway restart (#80161)
* fix: reread config on in-process gateway restart

* fix: refresh swift protocol model
2026-05-11 16:14:34 +01:00
Peter Steinberger
50f229c0f6 ci: skip OpenAI install tool smoke 2026-05-11 16:14:34 +01:00
Peter Steinberger
d05ed07260 ci: use faster OpenAI model for installer proof 2026-05-11 16:14:34 +01:00
Peter Steinberger
690eb73520 ci: parallelize OpenAI installer proof turns 2026-05-11 16:14:34 +01:00
Peter Steinberger
5d8b500929 fix(agents): preserve OpenAI event streams 2026-05-11 16:14:34 +01:00
Peter Steinberger
5157ee268f test(agents): type stream setup timeout mock 2026-05-11 16:14:34 +01:00
Peter Steinberger
575ee22448 fix(agents): cap provider setup timeout 2026-05-11 16:14:34 +01:00
Peter Steinberger
dccf55ffb6 fix(agents): abort timed out stream setup 2026-05-11 16:14:34 +01:00
Peter Steinberger
7d5cccaef4 fix(agents): enforce idle timeout during stream setup 2026-05-11 16:14:34 +01:00
Peter Steinberger
72ffd3a464 ci: use current OpenAI model for release smokes 2026-05-11 16:14:34 +01:00
151 changed files with 1274 additions and 304 deletions

View File

@@ -288,7 +288,7 @@ jobs:
wait_for_run() {
local workflow="$1"
local run_id="$2"
local status conclusion url updated_at last_state
local status conclusion url updated_at created_at duration_seconds duration_label last_state
last_state=""
while true; do
@@ -307,11 +307,26 @@ jobs:
sleep 30
done
conclusion="$(gh run view --repo "$GITHUB_REPOSITORY" "$run_id" --json conclusion --jq '.conclusion')"
url="$(gh run view --repo "$GITHUB_REPOSITORY" "$run_id" --json url --jq '.url')"
echo "${workflow} finished with ${conclusion}: ${url}"
run_json="$(gh run view --repo "$GITHUB_REPOSITORY" "$run_id" --json conclusion,url,createdAt,updatedAt)"
conclusion="$(printf '%s' "$run_json" | jq -r '.conclusion')"
url="$(printf '%s' "$run_json" | jq -r '.url')"
created_at="$(printf '%s' "$run_json" | jq -r '.createdAt')"
updated_at="$(printf '%s' "$run_json" | jq -r '.updatedAt')"
duration_seconds="$(
CREATED_AT="${created_at}" UPDATED_AT="${updated_at}" node --input-type=module -e '
const created = Date.parse(process.env.CREATED_AT ?? "");
const updated = Date.parse(process.env.UPDATED_AT ?? "");
console.log(Number.isFinite(created) && Number.isFinite(updated) ? Math.max(0, Math.round((updated - created) / 1000)) : "");
'
)"
if [[ -n "${duration_seconds}" ]]; then
duration_label="$((duration_seconds / 60))m$(printf '%02d' $((duration_seconds % 60)))s"
else
duration_label="unknown duration"
fi
echo "${workflow} finished with ${conclusion} in ${duration_label}: ${url}"
{
echo "- ${workflow}: ${conclusion} (${url})"
echo "- ${workflow}: ${conclusion} in ${duration_label} (${url})"
} >> "$GITHUB_STEP_SUMMARY"
if [[ "$conclusion" != "success" ]]; then
gh run view --repo "$GITHUB_REPOSITORY" "$run_id" --json jobs --jq '.jobs[] | select(.conclusion != "success" and .conclusion != "skipped") | {name, conclusion, url}' || true
@@ -414,6 +429,10 @@ jobs:
plugin_npm_run_id="$(dispatch_workflow plugin-npm-release.yml "${npm_args[@]}")"
plugin_clawhub_run_id="$(dispatch_workflow plugin-clawhub-release.yml "${clawhub_args[@]}")"
{
echo "- Plugin npm run ID: \`${plugin_npm_run_id}\`"
echo "- Plugin ClawHub run ID: \`${plugin_clawhub_run_id}\`"
} >> "$GITHUB_STEP_SUMMARY"
if ! wait_for_run plugin-npm-release.yml "${plugin_npm_run_id}"; then
echo "Plugin npm publish failed; cancelling ClawHub publish child ${plugin_clawhub_run_id}." >&2
@@ -428,6 +447,7 @@ jobs:
-f preflight_only=false \
-f preflight_run_id="${PREFLIGHT_RUN_ID}" \
-f npm_dist_tag="${RELEASE_NPM_DIST_TAG}")"
echo "- OpenClaw npm run ID: \`${openclaw_npm_run_id}\`" >> "$GITHUB_STEP_SUMMARY"
else
echo "- OpenClaw npm publish: skipped by input" >> "$GITHUB_STEP_SUMMARY"
fi

View File

@@ -228,7 +228,20 @@ jobs:
- name: Install ClawHub CLI dependencies
working-directory: clawhub-source
run: bun install --frozen-lockfile
run: |
set -euo pipefail
for attempt in 1 2 3; do
if bun install --frozen-lockfile; then
exit 0
fi
status="$?"
if [[ "${attempt}" == "3" ]]; then
exit "${status}"
fi
echo "bun install failed while preparing ClawHub CLI; retrying (${attempt}/3)."
rm -rf node_modules "${RUNNER_TEMP}/bun-install-cache" || true
sleep $((attempt * 15))
done
- name: Bootstrap ClawHub CLI
run: |
@@ -263,7 +276,7 @@ jobs:
id-token: write
strategy:
fail-fast: false
max-parallel: 12
max-parallel: 32
matrix:
plugin: ${{ fromJson(needs.preview_plugins_clawhub.outputs.matrix) }}
steps:
@@ -309,7 +322,20 @@ jobs:
- name: Install ClawHub CLI dependencies
working-directory: clawhub-source
run: bun install --frozen-lockfile
run: |
set -euo pipefail
for attempt in 1 2 3; do
if bun install --frozen-lockfile; then
exit 0
fi
status="$?"
if [[ "${attempt}" == "3" ]]; then
exit "${status}"
fi
echo "bun install failed while preparing ClawHub CLI; retrying (${attempt}/3)."
rm -rf node_modules "${RUNNER_TEMP}/bun-install-cache" || true
sleep $((attempt * 15))
done
- name: Bootstrap ClawHub CLI
run: |
@@ -392,3 +418,62 @@ jobs:
PACKAGE_TAG: ${{ matrix.plugin.publishTag }}
PACKAGE_DIR: ${{ matrix.plugin.packageDir }}
run: bash scripts/plugin-clawhub-publish.sh --publish "${PACKAGE_DIR}"
- name: Verify published ClawHub package
env:
CLAWHUB_REGISTRY: ${{ env.CLAWHUB_REGISTRY }}
PACKAGE_NAME: ${{ matrix.plugin.packageName }}
PACKAGE_VERSION: ${{ matrix.plugin.version }}
PACKAGE_TAG: ${{ matrix.plugin.publishTag }}
run: |
set -euo pipefail
node --input-type=module <<'EOF'
const registry = (process.env.CLAWHUB_REGISTRY ?? "https://clawhub.ai").replace(/\/+$/, "");
const packageName = process.env.PACKAGE_NAME;
const packageVersion = process.env.PACKAGE_VERSION;
const packageTag = process.env.PACKAGE_TAG;
if (!packageName || !packageVersion || !packageTag) {
throw new Error("Missing ClawHub package verification env.");
}
const encodedName = encodeURIComponent(packageName);
const encodedVersion = encodeURIComponent(packageVersion);
const detailUrl = `${registry}/api/v1/packages/${encodedName}`;
const versionUrl = `${detailUrl}/versions/${encodedVersion}`;
const artifactUrl = `${versionUrl}/artifact/download`;
async function fetchWithRetry(url, options = {}) {
let lastStatus = "unknown";
for (let attempt = 1; attempt <= 12; attempt += 1) {
const response = await fetch(url, { redirect: "manual", ...options });
lastStatus = response.status;
if (response.status !== 429 && response.status < 500) {
return response;
}
await new Promise((resolve) => setTimeout(resolve, attempt * 5000));
}
throw new Error(`${url} did not stabilize; last status ${lastStatus}.`);
}
const detailResponse = await fetchWithRetry(detailUrl, {
headers: { accept: "application/json" },
});
if (!detailResponse.ok) {
throw new Error(`${detailUrl} returned HTTP ${detailResponse.status}.`);
}
const detail = await detailResponse.json();
const tags = detail?.package?.tags ?? {};
if (tags[packageTag] !== packageVersion) {
throw new Error(
`${packageName}: ClawHub tag ${packageTag} points to ${tags[packageTag] ?? "<missing>"}, expected ${packageVersion}.`,
);
}
const versionResponse = await fetchWithRetry(versionUrl);
if (!versionResponse.ok) {
throw new Error(`${versionUrl} returned HTTP ${versionResponse.status}.`);
}
const artifactResponse = await fetchWithRetry(artifactUrl, { method: "HEAD" });
if (artifactResponse.status < 200 || artifactResponse.status >= 400) {
throw new Error(`${artifactUrl} returned HTTP ${artifactResponse.status}.`);
}
console.log(`${packageName}@${packageVersion} verified on ClawHub.`);
EOF

View File

@@ -176,6 +176,7 @@ Docs: https://docs.openclaw.ai
- Plugins/doctor: invalidate persisted plugin registry snapshots when plugin diagnostics point at deleted source paths, so `openclaw doctor` stops repeating stale warnings after a local extension is replaced by a managed npm plugin. Fixes #80087. (#80134) Thanks @hclsys.
- Doctor/OpenAI Codex: preserve Codex auth intent when auto-repairing legacy `openai-codex/*` model refs to canonical `openai/*` by adding provider/model-scoped Codex runtime policy, preventing repaired configs from falling through to direct OpenAI API-key auth. Fixes #78533 and #78570. Thanks @superck110 and @Azmodump.
- CLI/agents: surface durable message delivery status from `sendDurableMessageBatch` in `deliverAgentCommandResult` and `openclaw agent --json --deliver`, preserving suppressed hook outcomes as terminal no-retry results while exposing partial and failed sends for automation. Supersedes #53961 and #57755. Thanks @Kaspre.
- Agents: apply the LLM idle watchdog while provider stream setup is still pending, preventing silent pre-stream model hangs from waiting for the full agent timeout.
- Cron: let isolated self-cleanup runs inspect their own job run history while keeping other cron jobs and mutation actions blocked. Fixes #80019. Thanks @hclsys.
- Cron: report isolated agent-turn setup and pre-model stalls with phase-specific timeout errors instead of waiting for the full job budget when no model call starts. Fixes #74803. Thanks @jeffsteinbok-openclaw and @dgkim311.
- CLI/plugins: treat arbitrary unknown subcommands outside plugin CLI metadata as normal unknown commands instead of suggesting `plugins.allow`, while preserving allowlist guidance for real plugin command roots. Fixes #80109. (#80123) Thanks @kagura-agent.

View File

@@ -744,7 +744,6 @@ public struct AgentParams: Codable, Sendable {
public let bootstrapcontextmode: AnyCodable?
public let bootstrapcontextrunkind: AnyCodable?
public let acpturnsource: String?
public let internalruntimehandoffid: String?
public let internalevents: [[String: AnyCodable]]?
public let inputprovenance: [String: AnyCodable]?
public let voicewaketrigger: String?
@@ -781,7 +780,6 @@ public struct AgentParams: Codable, Sendable {
bootstrapcontextmode: AnyCodable?,
bootstrapcontextrunkind: AnyCodable?,
acpturnsource: String?,
internalruntimehandoffid: String?,
internalevents: [[String: AnyCodable]]?,
inputprovenance: [String: AnyCodable]?,
voicewaketrigger: String?,
@@ -817,7 +815,6 @@ public struct AgentParams: Codable, Sendable {
self.bootstrapcontextmode = bootstrapcontextmode
self.bootstrapcontextrunkind = bootstrapcontextrunkind
self.acpturnsource = acpturnsource
self.internalruntimehandoffid = internalruntimehandoffid
self.internalevents = internalevents
self.inputprovenance = inputprovenance
self.voicewaketrigger = voicewaketrigger
@@ -855,7 +852,6 @@ public struct AgentParams: Codable, Sendable {
case bootstrapcontextmode = "bootstrapContextMode"
case bootstrapcontextrunkind = "bootstrapContextRunKind"
case acpturnsource = "acpTurnSource"
case internalruntimehandoffid = "internalRuntimeHandoffId"
case internalevents = "internalEvents"
case inputprovenance = "inputProvenance"
case voicewaketrigger = "voiceWakeTrigger"

View File

@@ -1,4 +1,4 @@
c963f607273fcce55080dc6d8068d8e124a4aa111a8ecf04807ebef98dfa5fd5 config-baseline.json
647f7a12deed46b4a962848a17ed5666d24fc526b777feab62cf331d84ce957d config-baseline.core.json
da3703ab610b5b06d2eefb276fd97a2266a8dd325b6715bf414824cc50ca694a config-baseline.json
379778d6f288ee2906411e2c9a5efdd129a541e2ec43833134f421403e1cd352 config-baseline.core.json
222d0338d6ed290870cac70cdf5e390bc1bb60c4462e46f847003bafe25c5a6e config-baseline.channel.json
18f71e9d4a62fe68fbd5bf18d5833a4e380fc705ad641769e1cf05794286344c config-baseline.plugin.json

View File

@@ -1,2 +1,2 @@
19455aee06dd33e2679cfcd8075b10cce806069667097fd7e717aa641c262e51 plugin-sdk-api-baseline.json
ea6e0b36ab14977bed8dcf64118e58a8e58a76f41860c32055a73bcd04612826 plugin-sdk-api-baseline.jsonl
a79e7eca306cd4a0156699b0884aa0483b7eb1352158a7bebf806506ead41a66 plugin-sdk-api-baseline.json
ba307375a0714be1360fceb564e89d86724f8ad5a50a18377184254112c99128 plugin-sdk-api-baseline.jsonl

View File

@@ -95,8 +95,13 @@ the maintainer-only release runbook.
preview-passing plugins even when one preview cell flakes, and ends with
registry verification for every expected plugin version so partial publishes
remain visible and retryable. After publish, run
the post-publish package
acceptance against the published `openclaw@YYYY.M.D-beta.N` or
`pnpm release:verify-beta -- YYYY.M.D-beta.N --openclaw-npm-run <run-id> --plugin-npm-run <run-id> --plugin-clawhub-run <run-id>`
to verify the GitHub prerelease, npm `beta` dist-tags, npm integrity,
published install path, ClawHub exact versions, ClawHub artifacts, and child
workflow conclusions from one command. Add `--rerun-failed-clawhub` when the
ClawHub sidecar failed only in retryable jobs and should be rerun in place.
Then run the post-publish package acceptance against the published
`openclaw@YYYY.M.D-beta.N` or
`openclaw@beta` package. If a pushed or published prerelease needs a fix,
cut the next matching prerelease number; do not delete or rewrite the old
prerelease.
@@ -224,6 +229,11 @@ Validation` or from the `main`/release workflow ref so workflow logic and
`OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_CACHE_TEST=1 pnpm test:live:cache`
using both `OPENAI_API_KEY` and `ANTHROPIC_API_KEY` workflow secrets
- npm release preflight no longer waits on the separate release checks lane
- Before tagging a release candidate locally, run
`RELEASE_TAG=vYYYY.M.D-beta.N pnpm release:fast-pretag-check`. The helper
runs the fast release guardrails, plugin npm/ClawHub release checks, build,
UI build, and `release:openclaw:npm:check` in the order that catches common
approval-blocking mistakes before the GitHub publish workflow starts.
- Run `RELEASE_TAG=vYYYY.M.D node --import tsx scripts/openclaw-npm-release-check.ts`
(or the matching beta/correction tag) before approval
- After npm publish, run
@@ -655,6 +665,9 @@ OpenClaw package must not be published.
`plugin_publish_scope=selected`
- `publish_openclaw_npm`: defaults to `true`; set `false` only when using the
workflow as a plugin-only repair orchestrator
- `wait_for_clawhub`: defaults to `false` so npm availability is not blocked by
the ClawHub sidecar; set `true` only when workflow completion must include
ClawHub completion
`OpenClaw Release Checks` accepts these operator-controlled inputs:

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/acpx",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw ACP runtime backend",
"repository": {
"type": "git",
@@ -26,10 +26,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1",
"openclawVersion": "2026.5.10-beta.4",
"staticAssets": [
{
"source": "./src/runtime-internals/mcp-proxy.mjs",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/alibaba-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Alibaba Model Studio video provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/amazon-bedrock-mantle-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Amazon Bedrock Mantle (OpenAI-compatible) provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/amazon-bedrock-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Amazon Bedrock provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/anthropic-vertex-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Anthropic Vertex provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/anthropic-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Anthropic provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/arcee-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Arcee provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/azure-speech",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Azure Speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/bonjour",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Bonjour/mDNS gateway discovery",
"type": "module",
"dependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/brave-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Brave plugin",
"repository": {
"type": "git",
@@ -20,10 +20,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/browser-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw browser tool plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/byteplus-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw BytePlus provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/canvas-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Canvas plugin",
"type": "module",

View File

@@ -1 +1 @@
110ac6c8de6f03bcf316974d6a3c672c472c8130fe888685b217f06168e6aa1e
4a207f09626d6eb156efca2aabad5577f048de345d608a5771e47d5298060dcc

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/cerebras-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Cerebras provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/chutes-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Chutes.ai provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/clickclack",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw ClickClack channel plugin",
"type": "module",
@@ -18,7 +18,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/cloudflare-ai-gateway-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Cloudflare AI Gateway provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/codex",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Codex harness and model provider plugin",
"repository": {
"type": "git",
@@ -27,10 +27,10 @@
"minHostVersion": ">=2026.5.1-beta.1"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/comfy-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw ComfyUI provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/copilot-proxy",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Copilot Proxy provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/deepgram-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Deepgram media-understanding provider",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/deepinfra-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw DeepInfra provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/deepseek-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw DeepSeek provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/diagnostics-otel",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw diagnostics OpenTelemetry exporter",
"repository": {
"type": "git",
@@ -34,10 +34,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/diagnostics-prometheus",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw diagnostics Prometheus exporter",
"repository": {
"type": "git",
@@ -21,10 +21,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/diffs",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw diff viewer plugin",
"repository": {
"type": "git",
@@ -31,10 +31,10 @@
"minHostVersion": ">=2026.4.30"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1",
"openclawVersion": "2026.5.10-beta.4",
"staticAssets": [
{
"source": "./assets/viewer-runtime.js",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/discord",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Discord channel plugin",
"repository": {
"type": "git",
@@ -21,7 +21,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -65,10 +65,10 @@
"allowInvalidConfigRecovery": true
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/document-extract-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw local document extraction plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/duckduckgo-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw DuckDuckGo plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/elevenlabs-speech",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw ElevenLabs speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/exa-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Exa plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/fal-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw fal provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/feishu",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Feishu/Lark channel plugin (community maintained by @m1heng)",
"repository": {
"type": "git",
@@ -17,7 +17,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -48,10 +48,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/file-transfer",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw file transfer plugin (file_fetch, dir_list, dir_fetch, file_write)",
"type": "module",
"dependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/firecrawl-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Firecrawl plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/fireworks-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Fireworks provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/github-copilot-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw GitHub Copilot provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/google-meet",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Google Meet participant plugin",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -33,10 +33,10 @@
"minHostVersion": ">=2026.4.20"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/google-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Google plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/googlechat",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Google Chat channel plugin",
"repository": {
"type": "git",
@@ -17,7 +17,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -75,10 +75,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/gradium-speech",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Gradium speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/groq-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Groq media-understanding provider",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/huggingface-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Hugging Face provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/image-generation-core",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw image generation runtime package",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/imessage",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw iMessage channel plugin using imsg on a signed-in Mac",
"type": "module",
@@ -40,10 +40,10 @@
]
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
}
},
"pluginInspector": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/inworld-speech",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Inworld speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/irc",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw IRC channel plugin",
"type": "module",
"devDependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/kilocode-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Kilo Gateway provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/kimi-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Kimi provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/line",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw LINE channel plugin",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -46,10 +46,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/litellm-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw LiteLLM provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/llm-task",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw JSON-only LLM task plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/lmstudio-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw LM Studio provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/lobster",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "Lobster workflow tool plugin (typed pipelines + resumable approvals)",
"repository": {
"type": "git",
@@ -25,10 +25,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/matrix",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Matrix channel plugin",
"repository": {
"type": "git",
@@ -22,7 +22,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -87,10 +87,10 @@
"allowInvalidConfigRecovery": true
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/mattermost",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Mattermost channel plugin",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/media-understanding-core",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw media understanding runtime package",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-core",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw core memory search plugin",
"type": "module",
@@ -14,7 +14,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-lancedb",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw LanceDB-backed long-term memory plugin with auto-recall/capture",
"repository": {
"type": "git",
@@ -26,10 +26,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-wiki",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw persistent wiki plugin",
"type": "module",
@@ -14,7 +14,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/microsoft-foundry",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Microsoft Foundry provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/microsoft-speech",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Microsoft speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/migrate-claude",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "Claude to OpenClaw migration provider",
"type": "module",
@@ -9,7 +9,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/migrate-hermes",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "Hermes to OpenClaw migration provider",
"type": "module",
@@ -12,7 +12,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -8,6 +8,13 @@ import { describe, expect, it, vi } from "vitest";
import { registerMinimaxProviders } from "./provider-registration.js";
import { createMiniMaxWebSearchProvider } from "./src/minimax-web-search-provider.js";
type CatalogProvider = {
api: string;
authHeader: boolean;
baseUrl: string;
models: Array<{ id?: string }>;
};
vi.mock("./oauth.runtime.js", () => ({
loginMiniMaxPortalOAuth: vi.fn(async () => ({
access: "minimax-oauth-access-token",
@@ -176,7 +183,10 @@ describe("minimax provider hooks", () => {
}),
} as never);
const provider = "provider" in (catalog ?? {}) ? catalog?.provider : undefined;
const provider =
catalog !== null && catalog !== undefined && "provider" in catalog
? (catalog.provider as CatalogProvider)
: undefined;
expect(provider).toMatchObject({
api: "anthropic-messages",
authHeader: true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/minimax-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw MiniMax provider and OAuth plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/mistral-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Mistral provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/moonshot-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Moonshot provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/msteams",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Microsoft Teams channel plugin",
"repository": {
"type": "git",
@@ -22,7 +22,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -58,10 +58,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/nextcloud-talk",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Nextcloud Talk channel plugin",
"repository": {
"type": "git",
@@ -12,7 +12,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -44,10 +44,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/nostr",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"description": "OpenClaw Nostr channel plugin for NIP-04 encrypted DMs",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -54,10 +54,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/nvidia-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw NVIDIA provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/oc-path",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw oc:// workspace path plugin",
"type": "module",
@@ -14,7 +14,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/ollama-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Ollama provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/open-prose",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenProse VM skill pack plugin (slash command + telemetry).",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/openai-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw OpenAI provider plugins",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/opencode-go-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw OpenCode Go provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/opencode-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw OpenCode Zen provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/openrouter-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw OpenRouter provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/openshell-sandbox",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw OpenShell sandbox backend",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/perplexity-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Perplexity plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qa-channel",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw QA synthetic channel plugin",
"type": "module",
@@ -19,7 +19,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qa-lab",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw QA lab plugin with private debugger UI and scenario runner",
"type": "module",
@@ -19,7 +19,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -31,7 +31,7 @@
"./index.ts"
],
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
}
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qa-matrix",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Matrix QA runner plugin",
"type": "module",
@@ -13,7 +13,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -25,7 +25,7 @@
"./index.ts"
],
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
}
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qianfan-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Qianfan provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qqbot",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": false,
"description": "OpenClaw QQ Bot channel plugin",
"repository": {
@@ -21,7 +21,7 @@
"openclaw": "workspace:*"
},
"peerDependencies": {
"openclaw": ">=2026.5.10-beta.1"
"openclaw": ">=2026.5.10-beta.4"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -50,10 +50,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.5.10-beta.1"
"pluginApi": ">=2026.5.10-beta.4"
},
"build": {
"openclawVersion": "2026.5.10-beta.1"
"openclawVersion": "2026.5.10-beta.4"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/qwen-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Qwen Cloud provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/runway-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Runway video provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/searxng-plugin",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw SearXNG plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/senseaudio-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw SenseAudio media-understanding provider",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/sglang-provider",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw SGLang provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/signal",
"version": "2026.5.10-beta.1",
"version": "2026.5.10-beta.4",
"private": true,
"description": "OpenClaw Signal channel plugin",
"type": "module",

Some files were not shown because too many files have changed in this diff Show More