Compare commits

...

9 Commits

Author SHA1 Message Date
Vincent Koc
8c802aa683 fix(codex): stabilize app-server release tests 2026-06-12 13:26:29 +08:00
Vincent Koc
de16f57dea chore(release): prepare 2026.6.6 stable 2026-06-12 12:15:23 +08:00
Vincent Koc
cdd39433a6 chore(scripts): remove stale proof helpers 2026-06-12 12:12:28 +08:00
Vincent Koc
04420cc4c0 fix(release): use trusted publishing for plugin npm 2026-06-12 11:17:21 +08:00
Vincent Koc
3129eed4de fix(docs): prune unavailable ClawHub format page 2026-06-12 10:28:13 +08:00
Vincent Koc
ed12eeea0f fix(docs): remove stale ClawHub nav page 2026-06-12 10:09:22 +08:00
Vincent Koc
4275b2f22f fix(release): refresh beta shrinkwraps 2026-06-12 09:55:00 +08:00
Vincent Koc
7a0131b94b fix(release): refresh llama-cpp shrinkwrap 2026-06-11 22:28:13 +09:00
Vincent Koc
68ef57af82 chore(release): prepare 2026.6.6 beta.2 2026-06-11 22:21:20 +09:00
182 changed files with 407 additions and 688 deletions

View File

@@ -288,6 +288,7 @@ jobs:
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
OPENCLAW_NPM_PUBLISH_AUTH_MODE: trusted-publisher
run: bash scripts/plugin-npm-publish.sh --publish "${{ matrix.plugin.packageDir }}"
- name: Verify published runtime

View File

@@ -20,17 +20,17 @@ Docs: https://docs.openclaw.ai
- Plugins/ClawHub: dogfood reusable package publishing, let dry runs skip publish approval, allow declared installed trusted hooks, report managed plugin version drift, and warn instead of failing on retired Skill Workshop configuration. (#91574, #91591, #90004, #90927, #90838) Thanks @Patrick-Erichsen, @brokemac79, and @lonexreb.
- Memory/providers: move the local llama.cpp runtime into its provider plugin, batch embeddings across files, persist the agent model catalog cache, and keep QMD JSON search one-shot while filtering stale REM recall previews. (#91324, #89138, #90457, #91837, #91851) Thanks @osolmaz, @mushuiyu886, @ai-hpc, and @TurboTheTurtle.
- Channels/mobile: add the QQBot group mention toggle, improve iPad and iPhone control surfaces, and expose the active connection host in the TUI footer. (#91423, #91557, #89909) Thanks @cxyhhhhh, @Solvely-Colin, and @baskduf.
- Performance: prewarm TUI runtime plugins, deduplicate plugin auto-enable fanout, trim dense text-delta snapshots, and reuse prepared startup model metadata. (#90782, #89978, #91580, #91531) Thanks @RomneyDa and @ai-hpc.
- Performance: prewarm TUI runtime plugins, deduplicate plugin auto-enable fanout, stop `/models` derived-registry rescan storms, trim dense text-delta snapshots, and reuse prepared startup model metadata. (#90782, #89978, #92127, #91580, #91531) Thanks @RomneyDa, @obuchowski, and @ai-hpc.
### Fixes
- Agent/session recovery: drop stale approval follow-ups after session rebind, remove drained reply-queue items by identity, recover stale main and visible replies, preserve Codex context-engine compaction ownership, lower the default compaction timeout to 180 seconds while respecting explicit configuration, and keep provider-failure terminal lifecycle state correct. (#85679, #91450, #91566, #91840, #91590, #91361, #91895) Thanks @openperf, @yetval, @joshavant, @wangmiao0668000666, and @TurboTheTurtle.
- Agent/session recovery: drop stale approval follow-ups after session rebind, remove drained reply-queue items by identity, recover stale main and visible replies, preserve Codex context-engine compaction ownership, project thinking catalog compatibility through SDK sessions, retry same-model assistant calls across short rate-limit windows, lower the default compaction timeout to 180 seconds while respecting explicit configuration, and keep provider-failure terminal lifecycle state correct. (#85679, #91450, #91566, #91840, #91590, #91911, #91361, #91895) Thanks @openperf, @yetval, @joshavant, @lanzhi-lee, @wangmiao0668000666, and @TurboTheTurtle.
- User-visible content boundaries: suppress Codex/Harmony protocol artifacts, neutralize browser and LanceDB memory media directives, redact transcript images, and preserve native `/compact` replies through source suppression. (#89151, #91422, #91425, #91529, #90212) Thanks @joelnishanth, @pgondhi987, @joshavant, and @snowzlm.
- Channel delivery: keep WhatsApp captured replies attached to the successor controller after restart, retry Feishu rate limits, preserve Mattermost thread replies, canonicalize LINE webhook paths, restore Discord reply hydration and runtime timeout exports, and show OpenAI Realtime WebRTC assistant transcripts. (#85823, #89659, #91684, #91649, #90263, #91686, #90426) Thanks @itsuzef, @ladygege, @jacobtomlinson, @fuller-stack-dev, and @shushushv.
- Cron: cancel active task runs cleanly, preserve terminal timeout/cancel state, and recover no-deliver tool warnings instead of silently losing the outcome. (#90666, #90678) Thanks @ai-hpc.
- Gateway/config/auth: share the approval runtime socket token, replace arrays explicitly in `config.patch`, skip the deleted-agent guard only for valid ACP harness sessions, surface headless LaunchAgent state, verify SQLite auth migration before cleanup, and arm QMD startup maintenance. (#87105, #91551, #91219, #91614, #91740, #91978) Thanks @fuller-stack-dev and @scotthuang.
- Providers/Codex: clarify quota errors, restore the Codex synthetic usage line, canonicalize Codex protocol assets, require API-key auth for realtime voice, normalize ACP model refs, preserve Gemma 4 `reasoning_content`, and avoid guardian review for local models. (#91390, #91709, #91507, #91567, #88630, #91696) Thanks @hxy91819, @brokemac79, @RomneyDa, @joshavant, and @Coder-Wangyankun.
- Updates/builds: recover package Gateway restarts after refresh failure, expose plugin convergence repair, fall back to Corepack in PATH-less pnpm environments, seed the correct Docker store packages, and keep ClawHub dry-run and publish paths reusable. (#91581, #91599, #91547, #91591) Thanks @fuller-stack-dev, @sallyom, and @Patrick-Erichsen.
- Gateway/config/auth: share the approval runtime socket token, replace arrays explicitly in `config.patch`, keep indexed `replacePaths` consent from widening to whole arrays, reject malformed Gateway RPC timeout inputs, skip the deleted-agent guard only for valid ACP harness sessions, surface headless LaunchAgent state, verify SQLite auth migration before cleanup, and arm QMD startup maintenance. (#87105, #91551, #91966, #54646, #40953, #91219, #91614, #91740, #91978) Thanks @fuller-stack-dev, @yetval, @ruanrrn, @comeran, and @scotthuang.
- Providers/Codex: clarify quota errors, restore the Codex synthetic usage line, canonicalize Codex protocol assets, require API-key auth for realtime voice, normalize ACP model refs, preserve Gemma 4 `reasoning_content`, honor Ollama's provider-declared thinking default in SDK sessions, and avoid guardian review for local models. (#91390, #91709, #91507, #91567, #88630, #91657, #91696) Thanks @hxy91819, @brokemac79, @RomneyDa, @joshavant, @openperf, and @Coder-Wangyankun.
- Updates/builds: recover package Gateway restarts after refresh failure, expose plugin convergence repair, fall back to Corepack in PATH-less pnpm environments, seed the correct Docker store packages, keep ClawHub dry-run and publish paths reusable, and keep beta GitHub release pages draft until OpenClaw npm, dependency evidence, postpublish verification, and required plugin publishes pass. (#91581, #91599, #91547, #91591) Thanks @fuller-stack-dev, @sallyom, and @Patrick-Erichsen.
- UI: require explicit user intent before opening chat sessions and drain restored chat queues after session switches. (#91480) Thanks @TurboTheTurtle.
- Android: avoid the `dataSync` foreground-service type for persistent nodes. (#80082) Thanks @davelutztx.
- Native hooks: bound relay lifetimes so abandoned native hook connections cannot linger indefinitely. (#91550) Thanks @joshavant.
@@ -79,7 +79,7 @@ Docs: https://docs.openclaw.ai
- Release/CI/E2E: Docker E2E and live Docker harness runs now apply default memory, CPU, and process ceilings while preserving explicit per-lane overrides.
- Release/CI/E2E: plugin lifecycle matrix resource sampling now fails phases that exceed RSS, wall-clock, or CPU ceilings instead of only logging the measurements.
- Release/CI/E2E: Codex npm plugin live assertions now cap transcript discovery and diagnostic log reads so failure proof stays bounded.
- Memory: keep doctor REM harness previews aligned with live REM by dropping short-term recall snippets whose source files disappeared before rendering preview output. Thanks @samzong and @frankekn.
- Memory: keep doctor REM harness previews aligned with live REM by dropping short-term recall snippets whose source files disappeared before rendering preview output, retry dreaming narrative message reads after delayed assistant-text persistence, and abort orphaned `memory_search` embedding work after tool timeout. (#89091, #91742) Thanks @samzong, @frankekn, @bennewell35, and @dreamhunter2333.
- Tests/state isolation: QA Lab valid-tool-call metrics now require runtime tool-call evidence when runtime parity data is available instead of counting tool-backed scenario pass status alone.
- Tests/state isolation: QA Lab runtime parity now fails planned-only tool-call rows without matching tool results instead of treating matching mock plans as real tool evidence.
- Tests/state isolation: provider, media, auth, cron, task, session, sandbox, Gateway, and Codex timeout fixtures now scope more home/state/env data per test, reducing cross-test leakage and making release validation failures less noisy. (#90027, #89974)

View File

@@ -65,8 +65,8 @@ android {
applicationId = "ai.openclaw.app"
minSdk = 31
targetSdk = 36
versionCode = 2026060201
versionName = "2026.6.2"
versionCode = 2026060601
versionName = "2026.6.6"
ndk {
// Support all major ABIs — native libs are tiny (~47 KB per ABI)
abiFilters += listOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64")

View File

@@ -2,8 +2,8 @@
// Source of truth: apps/ios/version.json
// Generated by scripts/ios-sync-versioning.ts.
OPENCLAW_IOS_VERSION = 2026.6.2
OPENCLAW_MARKETING_VERSION = 2026.6.2
OPENCLAW_IOS_VERSION = 2026.6.6
OPENCLAW_MARKETING_VERSION = 2026.6.6
OPENCLAW_BUILD_VERSION = 1
#include? "../build/Version.xcconfig"

View File

@@ -1,3 +1,3 @@
{
"version": "2026.6.2"
"version": "2026.6.6"
}

View File

@@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>2026.6.2</string>
<string>2026.6.6</string>
<key>CFBundleVersion</key>
<string>2026060200</string>
<string>2026060600</string>
<key>CFBundleIconFile</key>
<string>OpenClaw</string>
<key>CFBundleURLTypes</key>

View File

@@ -1,4 +1,4 @@
37b56008790612b8293930b6a29d74490e98daa90f954fca9d133fcc28645c4c config-baseline.json
75b64c2ea081369ba4306493313a8a4cd48b784145f92fed995e6b77a5df350d config-baseline.core.json
17d64c9799dfa239a49493413f1100bdd9237e9b67aaeae331a4604dbc227023 config-baseline.channel.json
f9d1f50bfa8403891e76cd99dc1357cdece4a71e8ae18a39b190c2a14e6f97b0 config-baseline.plugin.json
761191a4d9d369cf2b81a9895c4a3a008e5b84b4009842667daa9fdc1c36371c config-baseline.json
cf4bb4479d9004385c016fc6dba1db9509852762979635de4c7e1b33e89fe87c config-baseline.core.json
7641a0edd1f7ddb904d394381017cb645d2c2c1a86d875df30e9bf11f8dd012e config-baseline.channel.json
b0dec5acfe60557e728e5ad03cc36d19d2432d51f755656c97846afa7fbe374a config-baseline.plugin.json

View File

@@ -1,2 +1,2 @@
8a2769df428906990ee0d1bf8b0423f2a099b053c64c816d092ff84d61e11633 plugin-sdk-api-baseline.json
28b798973f3fb2a5b33ccbb6e3c1ac0453fa234a3a1c6cdc27935c27639bd104 plugin-sdk-api-baseline.jsonl
fbb605dd3077cb40826330ee3120e1955824b9f4b10acb908e654e333ed1a1ff plugin-sdk-api-baseline.json
407f0fd91ea56310b75b332f533ac3e76e769b0ea02d8e1977fa550c348ac26c plugin-sdk-api-baseline.jsonl

View File

@@ -1374,9 +1374,7 @@
"pages": [
"clawhub/cli",
"clawhub/publishing",
"clawhub/plugin-validation-fixes",
"clawhub/skill-format",
"clawhub/soul-format",
"clawhub/auth",
"clawhub/telemetry",
"clawhub/troubleshooting"

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/acpx",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/acpx",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@agentclientprotocol/claude-agent-acp": "0.39.0",
"@zed-industries/codex-acp": "0.15.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/acpx",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw ACP runtime backend with plugin-owned session and transport management.",
"repository": {
"type": "git",
@@ -26,10 +26,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"staticAssets": [
{
"source": "./src/runtime-internals/mcp-proxy.mjs",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/admin-http-rpc",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw admin HTTP RPC endpoint",
"type": "module",

View File

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

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/amazon-bedrock-mantle-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/amazon-bedrock-mantle-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@anthropic-ai/sdk": "0.100.1",
"@aws/bedrock-token-generator": "1.1.0"

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/amazon-bedrock-mantle-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Amazon Bedrock Mantle provider plugin for OpenAI-compatible model routing.",
"repository": {
"type": "git",
@@ -24,10 +24,10 @@
"minHostVersion": ">=2026.5.12-beta.1"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"bundledDist": false
},
"release": {

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/amazon-bedrock-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/amazon-bedrock-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@aws-sdk/client-bedrock": "3.1056.0",
"@aws-sdk/client-bedrock-runtime": "3.1056.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/amazon-bedrock-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Amazon Bedrock provider plugin with model discovery, embeddings, and guardrail support.",
"repository": {
"type": "git",
@@ -28,10 +28,10 @@
"minHostVersion": ">=2026.5.12-beta.1"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"bundledDist": false
},
"release": {

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/anthropic-vertex-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/anthropic-vertex-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@anthropic-ai/vertex-sdk": "0.16.1"
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/anthropic-vertex-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Anthropic Vertex provider plugin for Claude models on Google Vertex AI.",
"repository": {
"type": "git",
@@ -23,10 +23,10 @@
"minHostVersion": ">=2026.5.12-beta.1"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"bundledDist": false
},
"release": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/anthropic-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Anthropic provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/arcee-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Arcee provider plugin",
"type": "module",

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/bonjour",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Bonjour/mDNS gateway discovery",
"type": "module",
"dependencies": {

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/brave-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/brave-plugin",
"version": "2026.6.2"
"version": "2026.6.6"
}
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/brave-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Brave Search provider plugin for web search.",
"repository": {
"type": "git",
@@ -21,10 +21,10 @@
"allowInvalidConfigRecovery": true
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/browser-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw browser tool plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/byteplus-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw BytePlus provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/canvas-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Canvas plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/cerebras-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Cerebras provider plugin",
"type": "module",

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/clickclack",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw ClickClack channel plugin",
"type": "module",
@@ -18,7 +18,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/codex-supervisor",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Codex app-server fleet supervision plugin.",
"type": "module",

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/codex",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/codex",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@openai/codex": "0.139.0",
"typebox": "1.1.39",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/codex",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Codex app-server harness and model provider plugin with a Codex-managed GPT catalog.",
"repository": {
"type": "git",
@@ -26,10 +26,10 @@
"minHostVersion": ">=2026.5.1-beta.1"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -177,7 +177,7 @@ describe("startCodexAttemptThread", () => {
vi.restoreAllMocks();
vi.unstubAllEnvs();
for (const root of tempRoots) {
await fs.rm(root, { recursive: true, force: true });
await fs.rm(root, { recursive: true, force: true, maxRetries: 3, retryDelay: 20 });
}
tempRoots.clear();
});
@@ -240,7 +240,7 @@ describe("startCodexAttemptThread", () => {
});
it("clears the shared app-server when startup abandons an in-flight thread request", async () => {
const { harness, run } = startThreadWithHarness(2_000);
const { harness, run } = startThreadWithHarness(250);
const runError = run.then(
() => undefined,
(error: unknown) => error,

View File

@@ -459,75 +459,61 @@ describe("runCodexAppServerAttempt turn watches", () => {
});
it("keeps a progressing active turn alive beyond the original attempt timeout", async () => {
const harness = createStartedThreadHarness();
const params = createParams(
path.join(tempDir, "session.jsonl"),
path.join(tempDir, "workspace"),
);
params.timeoutMs = 100;
const onRunProgress = vi.fn();
params.onRunProgress = onRunProgress;
const run = runCodexAppServerAttempt(params, {
turnCompletionIdleTimeoutMs: 300,
turnAssistantCompletionIdleTimeoutMs: 300,
turnTerminalIdleTimeoutMs: 300,
});
await harness.waitForMethod("turn/start");
await vi.waitFor(
() =>
expect(onRunProgress).toHaveBeenCalledWith(
expect.objectContaining({ reason: "turn:start" }),
),
fastWait,
);
await new Promise((resolve) => {
setTimeout(resolve, 60);
});
await harness.notify({
method: "rawResponseItem/completed",
params: {
threadId: "thread-1",
turnId: "turn-1",
item: {
type: "message",
id: "raw-progress-1",
role: "assistant",
content: [{ type: "output_text", text: "Still working." }],
},
},
});
await new Promise((resolve) => {
setTimeout(resolve, 60);
});
await harness.notify({
method: "rawResponseItem/completed",
params: {
threadId: "thread-1",
turnId: "turn-1",
item: {
type: "message",
id: "raw-progress-2",
role: "assistant",
content: [{ type: "output_text", text: "Almost done." }],
},
},
const onTimeout = vi.fn();
const onAbort = vi.fn();
const controller = createCodexAttemptTurnWatchController({
threadId: "thread-1",
signal: new AbortController().signal,
getTurnId: () => "turn-1",
isCompleted: () => false,
isTerminalTurnNotificationQueued: () => false,
getActiveAppServerTurnRequests: () => 0,
getActiveTurnItemCount: () => 0,
turnCompletionIdleTimeoutMs: 1_000,
turnAssistantCompletionIdleTimeoutMs: 1_000,
turnAttemptIdleTimeoutMs: 300,
turnTerminalIdleTimeoutMs: 1_000,
interruptTimeoutMs: 5_000,
onInterruptTurn: vi.fn(),
onTimeout,
onMarkTimedOut: vi.fn(),
onAbort,
onCompleted: vi.fn(),
onResolveCompletion: vi.fn(),
onRecordEvent: vi.fn(),
onAttemptProgress: onRunProgress,
onProgressDiagnostic: vi.fn(),
});
expect(harness.request.mock.calls.some(([method]) => method === "turn/interrupt")).toBe(false);
await harness.completeTurn({ threadId: "thread-1", turnId: "turn-1" });
vi.useFakeTimers();
try {
controller.armAttemptIdleWatch();
controller.touchActivity("turn:start", { attemptProgress: true });
const result = await run;
expect(result.aborted).toBe(false);
expect(result.timedOut).toBe(false);
expect(result.promptError).toBeNull();
expect(harness.request.mock.calls.some(([method]) => method === "turn/interrupt")).toBe(false);
const progressReasons = onRunProgress.mock.calls.map(([info]) => info.reason);
expect(progressReasons).toContain("turn:start");
expect(
progressReasons.filter((reason) => reason === "notification:rawResponseItem/completed"),
).toHaveLength(2);
await vi.advanceTimersByTimeAsync(200);
controller.noteNotificationReceived("response.custom_tool_call_input.delta", {
attemptProgress: true,
});
await vi.advanceTimersByTimeAsync(200);
controller.noteNotificationReceived("response.custom_tool_call_input.delta", {
attemptProgress: true,
});
await vi.advanceTimersByTimeAsync(200);
expect(onTimeout).not.toHaveBeenCalled();
expect(onAbort).not.toHaveBeenCalled();
expect(onRunProgress.mock.calls.map(([reason]) => reason)).toEqual([
"turn:start",
"notification:response.custom_tool_call_input.delta",
"notification:response.custom_tool_call_input.delta",
]);
} finally {
controller.clearAllTimers();
vi.useRealTimers();
}
});
it("does not count non-turn app-server requests as turn attempt progress", async () => {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/comfy-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw ComfyUI provider plugin",
"type": "module",

View File

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

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/copilot",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/copilot",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@github/copilot-sdk": "1.0.0-beta.9"
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/copilot",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw GitHub Copilot agent runtime plugin (registers a `github-copilot` AgentHarness backed by @github/copilot-sdk over JSON-RPC to the GitHub Copilot CLI)",
"repository": {
"type": "git",
@@ -25,10 +25,10 @@
"minHostVersion": ">=2026.5.28"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"bundledDist": false
},
"release": {

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/deepinfra-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw DeepInfra provider plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/deepseek-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw DeepSeek provider plugin",
"type": "module",

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/diagnostics-otel",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/diagnostics-otel",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@opentelemetry/api": "1.9.1",
"@opentelemetry/api-logs": "0.218.0",

View File

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

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/diagnostics-prometheus",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/diagnostics-prometheus",
"version": "2026.6.2"
"version": "2026.6.6"
}
}
}

View File

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

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/diffs-language-pack",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/diffs-language-pack",
"version": "2026.6.2"
"version": "2026.6.6"
}
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/diffs-language-pack",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw diffs viewer syntax highlighting language pack",
"repository": {
"type": "git",
@@ -22,13 +22,13 @@
"minHostVersion": ">=2026.5.27"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"assetScripts": {
"build": "node ../../scripts/build-diffs-viewer-runtime.mjs full"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"staticAssets": [
{
"source": "./assets/viewer-runtime.js",

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/diffs",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/diffs",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@pierre/diffs": "1.2.4",
"@pierre/theme": "1.0.3",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/diffs",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw read-only diff viewer plugin and file renderer for agents.",
"repository": {
"type": "git",
@@ -29,13 +29,13 @@
"minHostVersion": ">=2026.4.30"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"assetScripts": {
"build": "node ../../scripts/build-diffs-viewer-runtime.mjs curated"
},
"build": {
"openclawVersion": "2026.6.2",
"openclawVersion": "2026.6.6",
"staticAssets": [
{
"source": "./assets/viewer-runtime.js",

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/discord",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/discord",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@discordjs/voice": "0.19.2",
"discord-api-types": "0.38.48",
@@ -16,7 +16,7 @@
"ws": "8.21.0"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/discord",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Discord channel plugin for channels, DMs, commands, and app events.",
"repository": {
"type": "git",
@@ -20,7 +20,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -67,10 +67,10 @@
"allowInvalidConfigRecovery": true
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/duckduckgo-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw DuckDuckGo plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/elevenlabs-speech",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw ElevenLabs speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/exa-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Exa plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/fal-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw fal provider plugin",
"type": "module",

View File

@@ -1,19 +1,19 @@
{
"name": "@openclaw/feishu",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/feishu",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@larksuiteoapi/node-sdk": "1.66.0",
"typebox": "1.1.39",
"zod": "4.4.3"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/feishu",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Feishu/Lark channel plugin for chats and workplace tools (community maintained by @m1heng).",
"repository": {
"type": "git",
@@ -17,7 +17,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -51,10 +51,10 @@
"minHostVersion": ">=2026.5.29"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/file-transfer",
"version": "2026.6.2",
"version": "2026.6.6",
"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.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Firecrawl plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/fireworks-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Fireworks provider plugin",
"type": "module",

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/gmi-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw GMI Cloud provider plugin",
"type": "module",

View File

@@ -1,18 +1,18 @@
{
"name": "@openclaw/google-meet",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/google-meet",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"commander": "14.0.3",
"typebox": "1.1.39"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/google-meet",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Google Meet participant plugin for joining calls through Chrome or Twilio transports.",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -33,10 +33,10 @@
"minHostVersion": ">=2026.4.20"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/google-plugin",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Google plugin",
"type": "module",

View File

@@ -1,19 +1,19 @@
{
"name": "@openclaw/googlechat",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/googlechat",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"gaxios": "7.1.4",
"google-auth-library": "10.6.2",
"zod": "4.4.3"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/googlechat",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Google Chat channel plugin for spaces and direct messages.",
"repository": {
"type": "git",
@@ -17,7 +17,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -75,10 +75,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/gradium-speech",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Gradium speech plugin",
"type": "module",

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/inworld-speech",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Inworld speech plugin",
"type": "module",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/irc",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw IRC channel plugin",
"type": "module",
"devDependencies": {

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/kimi-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Kimi provider plugin",
"type": "module",

View File

@@ -1,18 +1,18 @@
{
"name": "@openclaw/line",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/line",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@line/bot-sdk": "11.0.1",
"zod": "4.4.3"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/line",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw LINE channel plugin for LINE Bot API chats.",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -46,10 +46,10 @@
"minHostVersion": ">=2026.4.10"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/litellm-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw LiteLLM provider plugin",
"type": "module",

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/llama-cpp-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/llama-cpp-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"node-llama-cpp": "3.18.1"
}

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/llama-cpp-provider",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw llama.cpp embedding provider plugin",
"repository": {
"type": "git",
@@ -23,10 +23,10 @@
"minHostVersion": ">=2026.6.2"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"bundleRuntimeDependencies": false,

View File

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

View File

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

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/lobster",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/lobster",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@clawdbot/lobster": "2026.5.22",
"typebox": "1.1.39"

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/lobster",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "Lobster workflow tool plugin for typed pipelines and resumable approvals.",
"repository": {
"type": "git",
@@ -24,10 +24,10 @@
"minHostVersion": ">=2026.4.25"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,5 +1,11 @@
# Changelog
## 2026.6.6
### Changes
- Version alignment with core OpenClaw release numbers.
## 2026.6.3
### Changes

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/matrix",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/matrix",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@matrix-org/matrix-sdk-crypto-nodejs": "0.6.0",
"@matrix-org/matrix-sdk-crypto-wasm": "18.3.0",
@@ -18,7 +18,7 @@
"zod": "4.4.3"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/matrix",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Matrix channel plugin for rooms and direct messages.",
"repository": {
"type": "git",
@@ -22,7 +22,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {
@@ -88,10 +88,10 @@
"allowInvalidConfigRecovery": true
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"publishToClawHub": true,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/mattermost",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw Mattermost channel plugin",
"repository": {
"type": "git",
@@ -16,7 +16,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-core",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw core memory search plugin",
"type": "module",
@@ -14,7 +14,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

@@ -1,12 +1,12 @@
{
"name": "@openclaw/memory-lancedb",
"version": "2026.6.2",
"version": "2026.6.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@openclaw/memory-lancedb",
"version": "2026.6.2",
"version": "2026.6.6",
"dependencies": {
"@lancedb/lancedb": "0.30.0",
"apache-arrow": "21.1.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-lancedb",
"version": "2026.6.2",
"version": "2026.6.6",
"description": "OpenClaw LanceDB-backed long-term memory plugin with auto-recall, auto-capture, and vector search.",
"repository": {
"type": "git",
@@ -26,10 +26,10 @@
"minHostVersion": ">=2026.5.31"
},
"compat": {
"pluginApi": ">=2026.6.2"
"pluginApi": ">=2026.6.6"
},
"build": {
"openclawVersion": "2026.6.2"
"openclawVersion": "2026.6.6"
},
"release": {
"bundleRuntimeDependencies": false,

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/memory-wiki",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw persistent wiki plugin",
"type": "module",
@@ -14,7 +14,7 @@
"openclaw": "2026.5.28"
},
"peerDependencies": {
"openclaw": ">=2026.6.2"
"openclaw": ">=2026.6.6"
},
"peerDependenciesMeta": {
"openclaw": {

View File

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

View File

@@ -1,6 +1,6 @@
{
"name": "@openclaw/microsoft-speech",
"version": "2026.6.2",
"version": "2026.6.6",
"private": true,
"description": "OpenClaw Microsoft speech plugin",
"type": "module",

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