diff --git a/.changeset/codex-plugins-as-integrations.md b/.changeset/codex-plugins-as-integrations.md deleted file mode 100644 index 6ad1ae6dc..000000000 --- a/.changeset/codex-plugins-as-integrations.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -"executor": patch -"@executor-js/plugin-mcp": patch -"@executor-js/sdk": patch ---- - -Add locally installed OpenAI Codex plugins as one-click integrations: Messages -(iMessage/SMS), Chrome, Computer Use, Computer History, and OpenAI Developer -Docs. They appear in the connect dialog with their own icons, and a card that -cannot run yet says what to install and links to it. - -Tool calls reach the plugins through `codex app-server` rather than a plugin's -own MCP server, because their services only honour calls from a Codex host -session. Computer Use and Chrome ship no MCP server at all, so their APIs are -projected as typed tools — `list_apps`, `click`, `read_page`, `navigate` — that -compile to a single call each. No model turn is involved; nothing is bundled or -downloaded, and a machine without Codex simply sees the setup steps. - -A plugin's own approval prompt now reaches the caller, and states the terms it -carries: a browser prompt that persists for a site says so. Approvals are asked -once per session rather than per call. - -Elicitation requests can carry implementation-defined metadata through -`FormElicitation` / `UrlElicitation`, and a paused execution reports it. Both -fields are optional and additive. diff --git a/.changeset/connection-create-conflict.md b/.changeset/connection-create-conflict.md deleted file mode 100644 index 7bc40fa49..000000000 --- a/.changeset/connection-create-conflict.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"@executor-js/sdk": patch ---- - -**Creating a connection over an existing one is rejected instead of silently overwriting it** - -`connections.create` used to upsert: a create with the same (owner, integration, name) replaced the saved connection and, for a pasted value, overwrote the stored secret itself. It now fails with the new `ConnectionAlreadyExistsError` and leaves the existing connection untouched. Remove the connection first, or pick a different name. - -This adds one error to the wire contract: the `POST /connections` endpoint can answer **HTTP 409** with tag `ConnectionAlreadyExistsError`, and the `connections.create` core tool resolves the same case as `{ ok: false, error: { code: "connection_already_exists" } }`. The core tool now also resolves the other expected input failures the same way instead of as opaque internal errors: `integration_not_found` for an unknown integration and `invalid_connection_input` for an invalid input. The change is additive — no existing status, field, or success shape moves. - -OAuth is unaffected. Fresh OAuth connects already resolve a taken name to the next free suffix through `newConnection`, and reconnect still re-mints the same connection on purpose. diff --git a/.changeset/dcr-reconnect-through-registration.md b/.changeset/dcr-reconnect-through-registration.md deleted file mode 100644 index dd0f1d815..000000000 --- a/.changeset/dcr-reconnect-through-registration.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@executor-js/react": patch ---- - -**Reconnecting a DCR connection now re-registers instead of reusing a stranded client** - -A dynamically registered OAuth client is bound to the redirect URI it registered with. Once the app's callback origin changed (127.0.0.1 to localhost), Reconnect still started the flow against the stored client, and the authorization server rejected it — leaving no way to repair the connection. - -Reconnect now takes the same probe → CIMD-or-register → start route as the initial connect, so the registration gateway replaces the stranded client against the current redirect URI. Methods with a fixed, hand-registered app are unaffected and keep using their stored client. diff --git a/.changeset/fix-plugin-sdk-root-imports.md b/.changeset/fix-plugin-sdk-root-imports.md deleted file mode 100644 index 5128923b7..000000000 --- a/.changeset/fix-plugin-sdk-root-imports.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@executor-js/plugin-file-secrets": patch -"@executor-js/plugin-keychain": patch ---- - -Import plugin-authoring symbols from `@executor-js/sdk/core` instead of the package root. The published root is the Promise surface and does not export `StorageError`, `definePlugin`, `PluginCtx`, or `Plugin`, so both packages failed to load when installed from npm. diff --git a/.changeset/health-verdict-revalidate.md b/.changeset/health-verdict-revalidate.md deleted file mode 100644 index 96db8af8a..000000000 --- a/.changeset/health-verdict-revalidate.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"@executor-js/sdk": patch ---- - -**Stale "unhealthy" verdicts no longer wait for a manual "Check now"** - -A connection's persisted health verdict was only ever re-checked from the web UI, so after one bad probe (a transient upstream error, a refresh that failed once) agents reading `connections.list` kept reporting "unhealthy, reconnect" for a connection that worked fine — invocation auto-refreshes OAuth tokens — until a human opened the page and clicked "Check now". - -Two repair paths make the verdict track reality on its own. The agent-facing `connections.list` now re-runs the same probe as "Check now" before reporting a non-healthy verdict older than a minute, so recovery shows on the next read while repeated lists collapse to one probe per window. And a successful tool invocation through a connection wearing a non-healthy verdict flips it back to healthy — real traffic is stronger evidence than any probe. Tool-sync failure verdicts and grants the authorization server has rejected as `invalid_grant` are deliberately left alone: the first is cleared only by a successful sync, and the second genuinely requires a reconnect. A call whose credential no longer resolves is left alone too — a rendered request omits the missing placement, so an upstream that answers unauthenticated proves nothing about a credential that is gone. - -`PluginCtx.connections` gains `checkHealth`, the same probe-with-freshness-window the executor surface already exposed. diff --git a/.changeset/mcp-oauth-refresh-reauthorization.md b/.changeset/mcp-oauth-refresh-reauthorization.md deleted file mode 100644 index 57364ed8f..000000000 --- a/.changeset/mcp-oauth-refresh-reauthorization.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"@executor-js/sdk": patch -"@executor-js/plugin-mcp": patch ---- - -**Rejected MCP OAuth grants now request reconnect without registering a disposable client** - -Remote MCP catalog discovery used the MCP SDK's interactive OAuth fallback when an upstream rejected Executor's stored bearer with `401`. A background refresh cannot finish that browser authorization, but the SDK first fetched OAuth metadata and dynamically registered another client. Executor then preserved the old catalog under a generic degraded health verdict, so clients saw zero or stale tools without a reliable reconnect signal. - -Executor now stops at the authenticated HTTP boundary for OAuth-backed MCP transports. A rejected stored bearer becomes a structured reauthorization result before OAuth discovery or Dynamic Client Registration runs. Catalog refresh still preserves the last authoritative tools, but records the connection as expired with a reconnect-required detail so the UI and API can direct the user through authorization again. - -API-key and unauthenticated MCP transports keep their existing `401` behavior, and ordinary incomplete discovery results remain degraded. diff --git a/.changeset/olive-moons-shake.md b/.changeset/olive-moons-shake.md deleted file mode 100644 index d9961b1a2..000000000 --- a/.changeset/olive-moons-shake.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"executor": patch ---- - -Stop exporting credential-bearing URLs in telemetry. Every query parameter -value, URL fragment, and userinfo component is stripped from exported span -URLs — no parameter name is trusted — on every exporter path: the cloud span -processors, the self-host OTLP exporter, the browser client's OTLP exporter, -and the forwarded browser trace batches. User-supplied MCP endpoints are -sanitized before being stamped onto spans. diff --git a/.changeset/onepassword-multiple-accounts.md b/.changeset/onepassword-multiple-accounts.md deleted file mode 100644 index a59a29a5a..000000000 --- a/.changeset/onepassword-multiple-accounts.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"executor": patch ---- - -1Password: multiple named accounts. The provider now holds any number of named accounts — a work account next to a personal one, or a service-account token next to desktop-app biometrics — each scoping its own set of vaults. The settings card lists every account with independent edit and disconnect, existing single-account configs upgrade in place, and `op://` refs keep their vault-first addressing: a vault name that exists in more than one account is an explicit ambiguity error, never a silent pick. diff --git a/.changeset/tidy-onepassword-latency.md b/.changeset/tidy-onepassword-latency.md deleted file mode 100644 index a9e826e8d..000000000 --- a/.changeset/tidy-onepassword-latency.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"@executor-js/plugin-onepassword": patch ---- - -**1Password-backed connections no longer pay a 1Password read on every tool call** - -Each tool call resolves its connection's credential, and for 1Password-backed connections every resolution shelled out to the `op` CLI — roughly a second per call under desktop-app auth, multiplying the latency of every call several times over. The spawn was also synchronous, so one slow resolution (for example `op` waiting on a 1Password approval prompt) blocked the whole local server for every other request, with no timeout on that path. - -Three changes: - -- Successful resolutions are now served from memory for a short TTL (default 60s, `secretCacheTtlMs`). The cache keys by a fingerprint of the provider config, so editing or removing an account drops all cached secrets at once; not-found, ambiguity, and failure outcomes are never retained. Concurrent resolutions of the same ref share one backend read even with the TTL set to `0`. -- The `op` CLI now runs as an asynchronous spawn with a hard deadline (the plugin's existing `timeoutMs`), so a stuck `op` fails with the troubleshooting message instead of freezing the server. Auth reaches the child per spawn (service-account token via the environment, desktop account via `--account`) instead of through the previous backend's process-global token state. -- Services are memoized per auth identity, so the SDK fallback reuses one authenticated client instead of re-authenticating per resolution. diff --git a/apps/cli/CHANGELOG.md b/apps/cli/CHANGELOG.md index 57a803aa9..f4baa38c9 100644 --- a/apps/cli/CHANGELOG.md +++ b/apps/cli/CHANGELOG.md @@ -1,5 +1,44 @@ # executor +## 1.6.4 + +### Patch Changes + +- [#1858](https://github.com/UsefulSoftwareCo/executor/pull/1858) [`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Add locally installed OpenAI Codex plugins as one-click integrations: Messages + (iMessage/SMS), Chrome, Computer Use, Computer History, and OpenAI Developer + Docs. They appear in the connect dialog with their own icons, and a card that + cannot run yet says what to install and links to it. + + Tool calls reach the plugins through `codex app-server` rather than a plugin's + own MCP server, because their services only honour calls from a Codex host + session. Computer Use and Chrome ship no MCP server at all, so their APIs are + projected as typed tools — `list_apps`, `click`, `read_page`, `navigate` — that + compile to a single call each. No model turn is involved; nothing is bundled or + downloaded, and a machine without Codex simply sees the setup steps. + + A plugin's own approval prompt now reaches the caller, and states the terms it + carries: a browser prompt that persists for a site says so. Approvals are asked + once per session rather than per call. + + Elicitation requests can carry implementation-defined metadata through + `FormElicitation` / `UrlElicitation`, and a paused execution reports it. Both + fields are optional and additive. + +- [#1477](https://github.com/UsefulSoftwareCo/executor/pull/1477) [`c0c7a0d`](https://github.com/UsefulSoftwareCo/executor/commit/c0c7a0db41623077ba8b7d09de5ef8ee8e6a99e3) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Stop exporting credential-bearing URLs in telemetry. Every query parameter + value, URL fragment, and userinfo component is stripped from exported span + URLs — no parameter name is trusted — on every exporter path: the cloud span + processors, the self-host OTLP exporter, the browser client's OTLP exporter, + and the forwarded browser trace batches. User-supplied MCP endpoints are + sanitized before being stamped onto spans. + +- [#1841](https://github.com/UsefulSoftwareCo/executor/pull/1841) [`d13151a`](https://github.com/UsefulSoftwareCo/executor/commit/d13151ac19453f11b40c7f49303a10854c66e464) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - 1Password: multiple named accounts. The provider now holds any number of named accounts — a work account next to a personal one, or a service-account token next to desktop-app biometrics — each scoping its own set of vaults. The settings card lists every account with independent edit and disconnect, existing single-account configs upgrade in place, and `op://` refs keep their vault-first addressing: a vault name that exists in more than one account is an explicit ambiguity error, never a silent pick. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/local@1.6.4 + - @executor-js/api@1.4.67 + - @executor-js/runtime-quickjs@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/apps/cli/package.json b/apps/cli/package.json index 9ed50abee..d41c4d5a3 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,6 +1,6 @@ { "name": "executor", - "version": "1.6.3", + "version": "1.6.4", "private": true, "bin": { "executor": "./bin/executor.ts" diff --git a/apps/cloud/CHANGELOG.md b/apps/cloud/CHANGELOG.md index 481ae065b..72c3717a4 100644 --- a/apps/cloud/CHANGELOG.md +++ b/apps/cloud/CHANGELOG.md @@ -1,5 +1,26 @@ # @executor-js/cloud +## 1.4.65 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/plugin-mcp@1.6.4 + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + - @executor-js/execution@1.6.4 + - @executor-js/vite-plugin@0.0.64 + - @executor-js/cloudflare@0.0.46 + - @executor-js/host-mcp@1.4.4 + - @executor-js/mcp-apps-shell@1.4.15 + - @executor-js/runtime-dynamic-worker@1.4.4 + - @executor-js/plugin-graphql@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + - @executor-js/plugin-toolkits@1.5.39 + - @executor-js/plugin-workos-vault@0.0.2 + - @executor-js/runtime-quickjs@1.6.4 + ## 1.4.64 ### Patch Changes diff --git a/apps/cloud/package.json b/apps/cloud/package.json index c79814165..12e8d2067 100644 --- a/apps/cloud/package.json +++ b/apps/cloud/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/cloud", - "version": "1.4.64", + "version": "1.4.65", "private": true, "type": "module", "scripts": { diff --git a/apps/desktop/CHANGELOG.md b/apps/desktop/CHANGELOG.md index a31ed69e4..cf052f64f 100644 --- a/apps/desktop/CHANGELOG.md +++ b/apps/desktop/CHANGELOG.md @@ -1,5 +1,7 @@ # @executor-js/desktop +## 1.6.4 + ## 1.6.3 ## 1.6.2 diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 0df546141..08d8a5406 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/desktop", - "version": "1.6.3", + "version": "1.6.4", "private": true, "homepage": "https://github.com/UsefulSoftwareCo/executor", "license": "MIT", diff --git a/apps/host-selfhost/CHANGELOG.md b/apps/host-selfhost/CHANGELOG.md index 58c58bf70..774d981ed 100644 --- a/apps/host-selfhost/CHANGELOG.md +++ b/apps/host-selfhost/CHANGELOG.md @@ -1,5 +1,26 @@ # @executor-js/host-selfhost +## 0.0.46 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/plugin-mcp@1.6.4 + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/app@1.4.4 + - @executor-js/analytics@0.1.11 + - @executor-js/api@1.4.67 + - @executor-js/execution@1.6.4 + - @executor-js/host-mcp@1.4.4 + - @executor-js/mcp-apps-shell@1.4.15 + - @executor-js/plugin-encrypted-secrets@0.0.46 + - @executor-js/plugin-graphql@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + - @executor-js/plugin-provider-service-split@0.0.18 + - @executor-js/plugin-toolkits@1.5.39 + - @executor-js/runtime-quickjs@1.6.4 + ## 0.0.45 ### Patch Changes diff --git a/apps/host-selfhost/package.json b/apps/host-selfhost/package.json index 31225ca7a..481a7fc5f 100644 --- a/apps/host-selfhost/package.json +++ b/apps/host-selfhost/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/host-selfhost", - "version": "0.0.45", + "version": "0.0.46", "private": true, "type": "module", "exports": { diff --git a/apps/local/CHANGELOG.md b/apps/local/CHANGELOG.md index 44d8c2827..1e62e1a6a 100644 --- a/apps/local/CHANGELOG.md +++ b/apps/local/CHANGELOG.md @@ -1,5 +1,32 @@ # @executor-js/local +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`939b96f`](https://github.com/UsefulSoftwareCo/executor/commit/939b96f694a420cd6151c4e402cff7f1ab4b327a), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84), [`2cad774`](https://github.com/UsefulSoftwareCo/executor/commit/2cad7745dea1afb9282c3888f4e9c59ce6fe4332)]: + - @executor-js/plugin-mcp@1.6.4 + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/plugin-file-secrets@1.6.4 + - @executor-js/plugin-keychain@1.6.4 + - @executor-js/plugin-onepassword@1.6.4 + - @executor-js/app@1.4.4 + - @executor-js/analytics@0.1.11 + - @executor-js/api@1.4.67 + - @executor-js/config@1.6.4 + - @executor-js/execution@1.6.4 + - @executor-js/vite-plugin@0.0.64 + - @executor-js/host-mcp@1.4.4 + - @executor-js/mcp-apps-shell@1.4.15 + - @executor-js/plugin-desktop-settings@1.6.4 + - @executor-js/plugin-example@1.6.4 + - @executor-js/plugin-graphql@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + - @executor-js/plugin-provider-service-split@0.0.18 + - @executor-js/plugin-toolkits@1.5.39 + - @executor-js/runtime-quickjs@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/apps/local/package.json b/apps/local/package.json index b2d9c2bbb..441fdf849 100644 --- a/apps/local/package.json +++ b/apps/local/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/local", - "version": "1.6.3", + "version": "1.6.4", "private": true, "type": "module", "exports": { diff --git a/bun.lock b/bun.lock index 057c64e75..653557812 100644 --- a/bun.lock +++ b/bun.lock @@ -31,7 +31,7 @@ }, "apps/cli": { "name": "executor", - "version": "1.6.3", + "version": "1.6.4", "bin": { "executor": "./bin/executor.ts", }, @@ -60,7 +60,7 @@ }, "apps/cloud": { "name": "@executor-js/cloud", - "version": "1.4.64", + "version": "1.4.65", "dependencies": { "@cloudflare/vite-plugin": "^1.31.1", "@effect/atom-react": "catalog:", @@ -133,7 +133,7 @@ }, "apps/desktop": { "name": "@executor-js/desktop", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@sentry/bun": "^10.57.0", "@sentry/electron": "^7.13.0", @@ -220,7 +220,7 @@ }, "apps/host-selfhost": { "name": "@executor-js/host-selfhost", - "version": "0.0.45", + "version": "0.0.46", "dependencies": { "@better-auth/api-key": "^1.6.11", "@cloudflare/worker-bundler": "0.2.1", @@ -272,7 +272,7 @@ }, "apps/local": { "name": "@executor-js/local", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@effect/atom-react": "catalog:", "@effect/platform-node": "catalog:", @@ -352,7 +352,7 @@ }, "e2e": { "name": "@executor-js/e2e", - "version": "0.0.43", + "version": "0.0.44", "dependencies": { "@executor-js/api": "workspace:*", "@executor-js/emulate": "^0.14.1", @@ -387,7 +387,7 @@ }, "examples/all-plugins": { "name": "@executor-js/example-all-plugins", - "version": "0.0.64", + "version": "0.0.65", "dependencies": { "@executor-js/plugin-file-secrets": "workspace:*", "@executor-js/plugin-graphql": "workspace:*", @@ -406,7 +406,7 @@ }, "examples/docs-sdk-quickstart": { "name": "@executor-js/example-docs-sdk-quickstart", - "version": "0.0.49", + "version": "0.0.50", "dependencies": { "@executor-js/plugin-openapi": "workspace:*", "@executor-js/sdk": "workspace:*", @@ -463,7 +463,7 @@ }, "packages/core/analytics": { "name": "@executor-js/analytics", - "version": "0.1.10", + "version": "0.1.11", "dependencies": { "@effect/platform-node": "catalog:", "@executor-js/execution": "workspace:*", @@ -479,7 +479,7 @@ }, "packages/core/api": { "name": "@executor-js/api", - "version": "1.4.66", + "version": "1.4.67", "dependencies": { "@executor-js/execution": "workspace:*", "@executor-js/host-mcp": "workspace:*", @@ -496,7 +496,7 @@ }, "packages/core/cli": { "name": "@executor-js/cli", - "version": "0.2.53", + "version": "0.2.54", "bin": { "executor-sdk": "./dist/index.js", }, @@ -517,7 +517,7 @@ }, "packages/core/config": { "name": "@executor-js/config", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/sdk": "workspace:*", "jiti": "^2.6.1", @@ -538,7 +538,7 @@ }, "packages/core/execution": { "name": "@executor-js/execution", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/codemode-core": "workspace:*", "@executor-js/sdk": "workspace:*", @@ -604,7 +604,7 @@ }, "packages/core/sdk": { "name": "@executor-js/sdk", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/fumadb": "workspace:*", "@standard-schema/spec": "^1.1.0", @@ -657,7 +657,7 @@ }, "packages/core/vite-plugin": { "name": "@executor-js/vite-plugin", - "version": "0.0.63", + "version": "0.0.64", "dependencies": { "@executor-js/sdk": "workspace:*", "jiti": "^2.6.1", @@ -677,7 +677,7 @@ }, "packages/hosts/cloudflare": { "name": "@executor-js/cloudflare", - "version": "0.0.45", + "version": "0.0.46", "dependencies": { "@executor-js/api": "workspace:*", "@executor-js/execution": "workspace:*", @@ -718,7 +718,7 @@ }, "packages/hosts/mcp-apps-shell": { "name": "@executor-js/mcp-apps-shell", - "version": "1.4.14", + "version": "1.4.15", "dependencies": { "@executor-js/react": "workspace:*", "@executor-js/runtime-quickjs": "workspace:*", @@ -756,7 +756,7 @@ }, "packages/kernel/core": { "name": "@executor-js/codemode-core", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@babel/parser": "^7.29.2", "@standard-schema/spec": "^1.0.0", @@ -829,7 +829,7 @@ }, "packages/kernel/runtime-quickjs": { "name": "@executor-js/runtime-quickjs", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/codemode-core": "workspace:*", "quickjs-emscripten": "catalog:", @@ -849,7 +849,7 @@ }, "packages/kernel/runtime-workerd-subprocess": { "name": "@executor-js/runtime-workerd-subprocess", - "version": "0.0.18", + "version": "0.0.19", "dependencies": { "@executor-js/codemode-core": "workspace:*", "effect": "catalog:", @@ -864,7 +864,7 @@ }, "packages/plugins/desktop-settings": { "name": "@executor-js/plugin-desktop-settings", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/sdk": "workspace:*", "react": "catalog:", @@ -877,7 +877,7 @@ }, "packages/plugins/encrypted-secrets": { "name": "@executor-js/plugin-encrypted-secrets", - "version": "0.0.45", + "version": "0.0.46", "dependencies": { "@executor-js/sdk": "workspace:*", "effect": "catalog:", @@ -892,7 +892,7 @@ }, "packages/plugins/example": { "name": "@executor-js/plugin-example", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/sdk": "workspace:*", }, @@ -915,7 +915,7 @@ }, "packages/plugins/file-secrets": { "name": "@executor-js/plugin-file-secrets", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/sdk": "workspace:*", }, @@ -932,7 +932,7 @@ }, "packages/plugins/graphql": { "name": "@executor-js/plugin-graphql", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@effect/platform-node": "catalog:", "@executor-js/config": "workspace:*", @@ -971,7 +971,7 @@ }, "packages/plugins/keychain": { "name": "@executor-js/plugin-keychain", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@executor-js/sdk": "workspace:*", "@napi-rs/keyring": "^1.2.0", @@ -990,7 +990,7 @@ }, "packages/plugins/mcp": { "name": "@executor-js/plugin-mcp", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@cfworker/json-schema": "^4.1.1", "@effect/platform-node": "catalog:", @@ -1034,7 +1034,7 @@ }, "packages/plugins/onepassword": { "name": "@executor-js/plugin-onepassword", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@1password/sdk": "^0.4.1-beta.1", "@effect/atom-react": "catalog:", @@ -1067,7 +1067,7 @@ }, "packages/plugins/openapi": { "name": "@executor-js/plugin-openapi", - "version": "1.6.3", + "version": "1.6.4", "dependencies": { "@effect/platform-node": "catalog:", "@executor-js/config": "workspace:*", @@ -1108,7 +1108,7 @@ }, "packages/plugins/provider-service-split": { "name": "@executor-js/plugin-provider-service-split", - "version": "0.0.17", + "version": "0.0.18", "dependencies": { "@executor-js/plugin-openapi": "workspace:*", "@executor-js/sdk": "workspace:*", @@ -1125,7 +1125,7 @@ }, "packages/plugins/toolkits": { "name": "@executor-js/plugin-toolkits", - "version": "1.5.38", + "version": "1.5.39", "dependencies": { "@executor-js/sdk": "workspace:*", }, @@ -1194,7 +1194,7 @@ }, "packages/react": { "name": "@executor-js/react", - "version": "1.4.66", + "version": "1.4.67", "dependencies": { "@base-ui/react": "^1.3.0", "@effect/atom-react": "catalog:", diff --git a/e2e/CHANGELOG.md b/e2e/CHANGELOG.md index 2ba852e83..75a1b9e22 100644 --- a/e2e/CHANGELOG.md +++ b/e2e/CHANGELOG.md @@ -1,5 +1,17 @@ # @executor-js/e2e +## 0.0.44 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/plugin-mcp@1.6.4 + - @executor-js/sdk@1.6.4 + - @executor-js/api@1.4.67 + - @executor-js/plugin-graphql@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + - @executor-js/plugin-toolkits@1.5.39 + ## 0.0.43 ### Patch Changes diff --git a/e2e/package.json b/e2e/package.json index 9d46a8243..706ec11ff 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/e2e", - "version": "0.0.43", + "version": "0.0.44", "private": true, "type": "module", "scripts": { diff --git a/examples/all-plugins/CHANGELOG.md b/examples/all-plugins/CHANGELOG.md index 16e38113f..f805858d6 100644 --- a/examples/all-plugins/CHANGELOG.md +++ b/examples/all-plugins/CHANGELOG.md @@ -1,5 +1,19 @@ # @executor-js/example-all-plugins +## 0.0.65 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`939b96f`](https://github.com/UsefulSoftwareCo/executor/commit/939b96f694a420cd6151c4e402cff7f1ab4b327a), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84), [`2cad774`](https://github.com/UsefulSoftwareCo/executor/commit/2cad7745dea1afb9282c3888f4e9c59ce6fe4332)]: + - @executor-js/plugin-mcp@1.6.4 + - @executor-js/sdk@1.6.4 + - @executor-js/plugin-file-secrets@1.6.4 + - @executor-js/plugin-keychain@1.6.4 + - @executor-js/plugin-onepassword@1.6.4 + - @executor-js/plugin-graphql@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + - @executor-js/plugin-workos-vault@0.0.2 + ## 0.0.64 ### Patch Changes diff --git a/examples/all-plugins/package.json b/examples/all-plugins/package.json index fa634cb7b..cb2fd0cd3 100644 --- a/examples/all-plugins/package.json +++ b/examples/all-plugins/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/example-all-plugins", - "version": "0.0.64", + "version": "0.0.65", "private": true, "type": "module", "scripts": { diff --git a/examples/docs-sdk-quickstart/CHANGELOG.md b/examples/docs-sdk-quickstart/CHANGELOG.md index 6927d1d83..9b4e6f525 100644 --- a/examples/docs-sdk-quickstart/CHANGELOG.md +++ b/examples/docs-sdk-quickstart/CHANGELOG.md @@ -1,5 +1,13 @@ # @executor-js/example-docs-sdk-quickstart +## 0.0.50 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + ## 0.0.49 ### Patch Changes diff --git a/examples/docs-sdk-quickstart/package.json b/examples/docs-sdk-quickstart/package.json index 2e06c4767..fd248c535 100644 --- a/examples/docs-sdk-quickstart/package.json +++ b/examples/docs-sdk-quickstart/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/example-docs-sdk-quickstart", - "version": "0.0.49", + "version": "0.0.50", "private": true, "type": "module", "scripts": { diff --git a/packages/core/analytics/CHANGELOG.md b/packages/core/analytics/CHANGELOG.md index ec2c84264..c855706af 100644 --- a/packages/core/analytics/CHANGELOG.md +++ b/packages/core/analytics/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/analytics +## 0.1.11 + +### Patch Changes + +- Updated dependencies []: + - @executor-js/execution@1.6.4 + ## 0.1.10 ### Patch Changes diff --git a/packages/core/analytics/package.json b/packages/core/analytics/package.json index c2d378ed9..79b6c4118 100644 --- a/packages/core/analytics/package.json +++ b/packages/core/analytics/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/analytics", - "version": "0.1.10", + "version": "0.1.11", "private": true, "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/analytics", "bugs": { diff --git a/packages/core/api/CHANGELOG.md b/packages/core/api/CHANGELOG.md index 70cf79ea6..0874e764f 100644 --- a/packages/core/api/CHANGELOG.md +++ b/packages/core/api/CHANGELOG.md @@ -1,5 +1,14 @@ # @executor-js/api +## 1.4.67 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/execution@1.6.4 + - @executor-js/host-mcp@1.4.4 + ## 1.4.66 ### Patch Changes diff --git a/packages/core/api/package.json b/packages/core/api/package.json index bf7aec705..fb885f1b5 100644 --- a/packages/core/api/package.json +++ b/packages/core/api/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/api", - "version": "1.4.66", + "version": "1.4.67", "private": true, "type": "module", "exports": { diff --git a/packages/core/cli/CHANGELOG.md b/packages/core/cli/CHANGELOG.md index 101c75ebb..6ad5ede62 100644 --- a/packages/core/cli/CHANGELOG.md +++ b/packages/core/cli/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/cli +## 0.2.54 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 0.2.53 ### Patch Changes diff --git a/packages/core/cli/package.json b/packages/core/cli/package.json index 5134b80d2..fc83579b6 100644 --- a/packages/core/cli/package.json +++ b/packages/core/cli/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/cli", - "version": "0.2.53", + "version": "0.2.54", "description": "CLI for the executor SDK — schema generation, migrations", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/cli", "bugs": { diff --git a/packages/core/config/CHANGELOG.md b/packages/core/config/CHANGELOG.md index 2f1e5b8c1..2918fc3d9 100644 --- a/packages/core/config/CHANGELOG.md +++ b/packages/core/config/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/config +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/core/config/package.json b/packages/core/config/package.json index 3c04b5da4..c1f7dbeac 100644 --- a/packages/core/config/package.json +++ b/packages/core/config/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/config", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/config", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/core/execution/CHANGELOG.md b/packages/core/execution/CHANGELOG.md index 936491cba..2bd161a4b 100644 --- a/packages/core/execution/CHANGELOG.md +++ b/packages/core/execution/CHANGELOG.md @@ -1,5 +1,13 @@ # @executor-js/execution +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/codemode-core@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/core/execution/package.json b/packages/core/execution/package.json index 36c257e80..fb26dba5a 100644 --- a/packages/core/execution/package.json +++ b/packages/core/execution/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/execution", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/execution", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/core/sdk/CHANGELOG.md b/packages/core/sdk/CHANGELOG.md index 333c8a4b7..e70f05fb7 100644 --- a/packages/core/sdk/CHANGELOG.md +++ b/packages/core/sdk/CHANGELOG.md @@ -1,5 +1,53 @@ # @executor-js/sdk +## 1.6.4 + +### Patch Changes + +- [#1858](https://github.com/UsefulSoftwareCo/executor/pull/1858) [`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Add locally installed OpenAI Codex plugins as one-click integrations: Messages + (iMessage/SMS), Chrome, Computer Use, Computer History, and OpenAI Developer + Docs. They appear in the connect dialog with their own icons, and a card that + cannot run yet says what to install and links to it. + + Tool calls reach the plugins through `codex app-server` rather than a plugin's + own MCP server, because their services only honour calls from a Codex host + session. Computer Use and Chrome ship no MCP server at all, so their APIs are + projected as typed tools — `list_apps`, `click`, `read_page`, `navigate` — that + compile to a single call each. No model turn is involved; nothing is bundled or + downloaded, and a machine without Codex simply sees the setup steps. + + A plugin's own approval prompt now reaches the caller, and states the terms it + carries: a browser prompt that persists for a site says so. Approvals are asked + once per session rather than per call. + + Elicitation requests can carry implementation-defined metadata through + `FormElicitation` / `UrlElicitation`, and a paused execution reports it. Both + fields are optional and additive. + +- [#1346](https://github.com/UsefulSoftwareCo/executor/pull/1346) [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - **Creating a connection over an existing one is rejected instead of silently overwriting it** + + `connections.create` used to upsert: a create with the same (owner, integration, name) replaced the saved connection and, for a pasted value, overwrote the stored secret itself. It now fails with the new `ConnectionAlreadyExistsError` and leaves the existing connection untouched. Remove the connection first, or pick a different name. + + This adds one error to the wire contract: the `POST /connections` endpoint can answer **HTTP 409** with tag `ConnectionAlreadyExistsError`, and the `connections.create` core tool resolves the same case as `{ ok: false, error: { code: "connection_already_exists" } }`. The core tool now also resolves the other expected input failures the same way instead of as opaque internal errors: `integration_not_found` for an unknown integration and `invalid_connection_input` for an invalid input. The change is additive — no existing status, field, or success shape moves. + + OAuth is unaffected. Fresh OAuth connects already resolve a taken name to the next free suffix through `newConnection`, and reconnect still re-mints the same connection on purpose. + +- [#1708](https://github.com/UsefulSoftwareCo/executor/pull/1708) [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - **Stale "unhealthy" verdicts no longer wait for a manual "Check now"** + + A connection's persisted health verdict was only ever re-checked from the web UI, so after one bad probe (a transient upstream error, a refresh that failed once) agents reading `connections.list` kept reporting "unhealthy, reconnect" for a connection that worked fine — invocation auto-refreshes OAuth tokens — until a human opened the page and clicked "Check now". + + Two repair paths make the verdict track reality on its own. The agent-facing `connections.list` now re-runs the same probe as "Check now" before reporting a non-healthy verdict older than a minute, so recovery shows on the next read while repeated lists collapse to one probe per window. And a successful tool invocation through a connection wearing a non-healthy verdict flips it back to healthy — real traffic is stronger evidence than any probe. Tool-sync failure verdicts and grants the authorization server has rejected as `invalid_grant` are deliberately left alone: the first is cleared only by a successful sync, and the second genuinely requires a reconnect. A call whose credential no longer resolves is left alone too — a rendered request omits the missing placement, so an upstream that answers unauthenticated proves nothing about a credential that is gone. + + `PluginCtx.connections` gains `checkHealth`, the same probe-with-freshness-window the executor surface already exposed. + +- [#1818](https://github.com/UsefulSoftwareCo/executor/pull/1818) [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84) Thanks [@ramarivera](https://github.com/ramarivera)! - **Rejected MCP OAuth grants now request reconnect without registering a disposable client** + + Remote MCP catalog discovery used the MCP SDK's interactive OAuth fallback when an upstream rejected Executor's stored bearer with `401`. A background refresh cannot finish that browser authorization, but the SDK first fetched OAuth metadata and dynamically registered another client. Executor then preserved the old catalog under a generic degraded health verdict, so clients saw zero or stale tools without a reliable reconnect signal. + + Executor now stops at the authenticated HTTP boundary for OAuth-backed MCP transports. A rejected stored bearer becomes a structured reauthorization result before OAuth discovery or Dynamic Client Registration runs. Catalog refresh still preserves the last authoritative tools, but records the connection as expired with a reconnect-required detail so the UI and API can direct the user through authorization again. + + API-key and unauthenticated MCP transports keep their existing `401` behavior, and ordinary incomplete discovery results remain degraded. + ## 1.6.3 ### Patch Changes diff --git a/packages/core/sdk/package.json b/packages/core/sdk/package.json index 076438201..d8a3f6d1b 100644 --- a/packages/core/sdk/package.json +++ b/packages/core/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/sdk", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/sdk", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/core/vite-plugin/CHANGELOG.md b/packages/core/vite-plugin/CHANGELOG.md index 69ef9e7bd..00e918b79 100644 --- a/packages/core/vite-plugin/CHANGELOG.md +++ b/packages/core/vite-plugin/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/vite-plugin +## 0.0.64 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 0.0.63 ### Patch Changes diff --git a/packages/core/vite-plugin/package.json b/packages/core/vite-plugin/package.json index 227eebf29..6f5ebf5c2 100644 --- a/packages/core/vite-plugin/package.json +++ b/packages/core/vite-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/vite-plugin", - "version": "0.0.63", + "version": "0.0.64", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/core/vite-plugin", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/hosts/cloudflare/CHANGELOG.md b/packages/hosts/cloudflare/CHANGELOG.md index 5b837687e..0db2cb165 100644 --- a/packages/hosts/cloudflare/CHANGELOG.md +++ b/packages/hosts/cloudflare/CHANGELOG.md @@ -1,5 +1,15 @@ # @executor-js/cloudflare +## 0.0.46 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/api@1.4.67 + - @executor-js/execution@1.6.4 + - @executor-js/host-mcp@1.4.4 + ## 0.0.45 ### Patch Changes diff --git a/packages/hosts/cloudflare/package.json b/packages/hosts/cloudflare/package.json index 3058487e6..853af73d7 100644 --- a/packages/hosts/cloudflare/package.json +++ b/packages/hosts/cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/cloudflare", - "version": "0.0.45", + "version": "0.0.46", "private": true, "type": "module", "exports": { diff --git a/packages/hosts/mcp-apps-shell/CHANGELOG.md b/packages/hosts/mcp-apps-shell/CHANGELOG.md index 64e14802a..8653171b8 100644 --- a/packages/hosts/mcp-apps-shell/CHANGELOG.md +++ b/packages/hosts/mcp-apps-shell/CHANGELOG.md @@ -1,5 +1,13 @@ # @executor-js/mcp-apps-shell +## 1.4.15 + +### Patch Changes + +- Updated dependencies [[`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562)]: + - @executor-js/react@1.4.67 + - @executor-js/runtime-quickjs@1.6.4 + ## 1.4.14 ### Patch Changes diff --git a/packages/hosts/mcp-apps-shell/package.json b/packages/hosts/mcp-apps-shell/package.json index 7ce9f7480..03c6ad786 100644 --- a/packages/hosts/mcp-apps-shell/package.json +++ b/packages/hosts/mcp-apps-shell/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/mcp-apps-shell", - "version": "1.4.14", + "version": "1.4.15", "private": true, "type": "module", "exports": { diff --git a/packages/kernel/core/CHANGELOG.md b/packages/kernel/core/CHANGELOG.md index 8fb29611f..0a769a564 100644 --- a/packages/kernel/core/CHANGELOG.md +++ b/packages/kernel/core/CHANGELOG.md @@ -1,5 +1,7 @@ # @executor-js/codemode-core +## 1.6.4 + ## 1.6.3 ## 1.6.2 diff --git a/packages/kernel/core/package.json b/packages/kernel/core/package.json index 363a03097..a357920ca 100644 --- a/packages/kernel/core/package.json +++ b/packages/kernel/core/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/codemode-core", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/kernel/core", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/kernel/runtime-quickjs/CHANGELOG.md b/packages/kernel/runtime-quickjs/CHANGELOG.md index a352c9c64..ab5cb64a0 100644 --- a/packages/kernel/runtime-quickjs/CHANGELOG.md +++ b/packages/kernel/runtime-quickjs/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/runtime-quickjs +## 1.6.4 + +### Patch Changes + +- Updated dependencies []: + - @executor-js/codemode-core@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/kernel/runtime-quickjs/package.json b/packages/kernel/runtime-quickjs/package.json index 5ea156acc..bcf018da7 100644 --- a/packages/kernel/runtime-quickjs/package.json +++ b/packages/kernel/runtime-quickjs/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/runtime-quickjs", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/kernel/runtime-quickjs", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/kernel/runtime-workerd-subprocess/CHANGELOG.md b/packages/kernel/runtime-workerd-subprocess/CHANGELOG.md index 122ffe2bd..91cbca9d6 100644 --- a/packages/kernel/runtime-workerd-subprocess/CHANGELOG.md +++ b/packages/kernel/runtime-workerd-subprocess/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/runtime-workerd-subprocess +## 0.0.19 + +### Patch Changes + +- Updated dependencies []: + - @executor-js/codemode-core@1.6.4 + ## 0.0.18 ### Patch Changes diff --git a/packages/kernel/runtime-workerd-subprocess/package.json b/packages/kernel/runtime-workerd-subprocess/package.json index 109d1d09e..9d295c5a4 100644 --- a/packages/kernel/runtime-workerd-subprocess/package.json +++ b/packages/kernel/runtime-workerd-subprocess/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/runtime-workerd-subprocess", - "version": "0.0.18", + "version": "0.0.19", "private": true, "type": "module", "exports": { diff --git a/packages/plugins/desktop-settings/CHANGELOG.md b/packages/plugins/desktop-settings/CHANGELOG.md index d9b3eaf69..546ce4894 100644 --- a/packages/plugins/desktop-settings/CHANGELOG.md +++ b/packages/plugins/desktop-settings/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/plugin-desktop-settings +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/desktop-settings/package.json b/packages/plugins/desktop-settings/package.json index cc1cc1079..c7b70e6d0 100644 --- a/packages/plugins/desktop-settings/package.json +++ b/packages/plugins/desktop-settings/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-desktop-settings", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/desktop-settings", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/encrypted-secrets/CHANGELOG.md b/packages/plugins/encrypted-secrets/CHANGELOG.md index aef6bccb9..ce02aa153 100644 --- a/packages/plugins/encrypted-secrets/CHANGELOG.md +++ b/packages/plugins/encrypted-secrets/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/plugin-encrypted-secrets +## 0.0.46 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 0.0.45 ### Patch Changes diff --git a/packages/plugins/encrypted-secrets/package.json b/packages/plugins/encrypted-secrets/package.json index bd9a362fd..f50906ad0 100644 --- a/packages/plugins/encrypted-secrets/package.json +++ b/packages/plugins/encrypted-secrets/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-encrypted-secrets", - "version": "0.0.45", + "version": "0.0.46", "private": true, "type": "module", "exports": { diff --git a/packages/plugins/example/CHANGELOG.md b/packages/plugins/example/CHANGELOG.md index 1bd5ac04e..9170407e4 100644 --- a/packages/plugins/example/CHANGELOG.md +++ b/packages/plugins/example/CHANGELOG.md @@ -1,5 +1,12 @@ # @executor-js/plugin-example +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/example/package.json b/packages/plugins/example/package.json index 54046435c..bf1df5115 100644 --- a/packages/plugins/example/package.json +++ b/packages/plugins/example/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-example", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/example", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/file-secrets/CHANGELOG.md b/packages/plugins/file-secrets/CHANGELOG.md index c594d3a15..06f6e2758 100644 --- a/packages/plugins/file-secrets/CHANGELOG.md +++ b/packages/plugins/file-secrets/CHANGELOG.md @@ -1,5 +1,14 @@ # @executor-js/plugin-file-secrets +## 1.6.4 + +### Patch Changes + +- [#1838](https://github.com/UsefulSoftwareCo/executor/pull/1838) [`939b96f`](https://github.com/UsefulSoftwareCo/executor/commit/939b96f694a420cd6151c4e402cff7f1ab4b327a) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Import plugin-authoring symbols from `@executor-js/sdk/core` instead of the package root. The published root is the Promise surface and does not export `StorageError`, `definePlugin`, `PluginCtx`, or `Plugin`, so both packages failed to load when installed from npm. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/file-secrets/package.json b/packages/plugins/file-secrets/package.json index 718dde3bc..9ab63d5c6 100644 --- a/packages/plugins/file-secrets/package.json +++ b/packages/plugins/file-secrets/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-file-secrets", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/file-secrets", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/graphql/CHANGELOG.md b/packages/plugins/graphql/CHANGELOG.md index 86e17e414..fe0b13e91 100644 --- a/packages/plugins/graphql/CHANGELOG.md +++ b/packages/plugins/graphql/CHANGELOG.md @@ -1,5 +1,15 @@ # @executor-js/plugin-graphql +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + - @executor-js/config@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/graphql/package.json b/packages/plugins/graphql/package.json index 8a7256e1f..b7af2247a 100644 --- a/packages/plugins/graphql/package.json +++ b/packages/plugins/graphql/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-graphql", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/graphql", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/keychain/CHANGELOG.md b/packages/plugins/keychain/CHANGELOG.md index 18e1fb742..0a4e6f70a 100644 --- a/packages/plugins/keychain/CHANGELOG.md +++ b/packages/plugins/keychain/CHANGELOG.md @@ -1,5 +1,14 @@ # @executor-js/plugin-keychain +## 1.6.4 + +### Patch Changes + +- [#1838](https://github.com/UsefulSoftwareCo/executor/pull/1838) [`939b96f`](https://github.com/UsefulSoftwareCo/executor/commit/939b96f694a420cd6151c4e402cff7f1ab4b327a) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Import plugin-authoring symbols from `@executor-js/sdk/core` instead of the package root. The published root is the Promise surface and does not export `StorageError`, `definePlugin`, `PluginCtx`, or `Plugin`, so both packages failed to load when installed from npm. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/keychain/package.json b/packages/plugins/keychain/package.json index 0737331ce..9420ddbb3 100644 --- a/packages/plugins/keychain/package.json +++ b/packages/plugins/keychain/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-keychain", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/keychain", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/mcp/CHANGELOG.md b/packages/plugins/mcp/CHANGELOG.md index 2f7db2d0f..67360f211 100644 --- a/packages/plugins/mcp/CHANGELOG.md +++ b/packages/plugins/mcp/CHANGELOG.md @@ -1,5 +1,43 @@ # @executor-js/plugin-mcp +## 1.6.4 + +### Patch Changes + +- [#1858](https://github.com/UsefulSoftwareCo/executor/pull/1858) [`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - Add locally installed OpenAI Codex plugins as one-click integrations: Messages + (iMessage/SMS), Chrome, Computer Use, Computer History, and OpenAI Developer + Docs. They appear in the connect dialog with their own icons, and a card that + cannot run yet says what to install and links to it. + + Tool calls reach the plugins through `codex app-server` rather than a plugin's + own MCP server, because their services only honour calls from a Codex host + session. Computer Use and Chrome ship no MCP server at all, so their APIs are + projected as typed tools — `list_apps`, `click`, `read_page`, `navigate` — that + compile to a single call each. No model turn is involved; nothing is bundled or + downloaded, and a machine without Codex simply sees the setup steps. + + A plugin's own approval prompt now reaches the caller, and states the terms it + carries: a browser prompt that persists for a site says so. Approvals are asked + once per session rather than per call. + + Elicitation requests can carry implementation-defined metadata through + `FormElicitation` / `UrlElicitation`, and a paused execution reports it. Both + fields are optional and additive. + +- [#1818](https://github.com/UsefulSoftwareCo/executor/pull/1818) [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84) Thanks [@ramarivera](https://github.com/ramarivera)! - **Rejected MCP OAuth grants now request reconnect without registering a disposable client** + + Remote MCP catalog discovery used the MCP SDK's interactive OAuth fallback when an upstream rejected Executor's stored bearer with `401`. A background refresh cannot finish that browser authorization, but the SDK first fetched OAuth metadata and dynamically registered another client. Executor then preserved the old catalog under a generic degraded health verdict, so clients saw zero or stale tools without a reliable reconnect signal. + + Executor now stops at the authenticated HTTP boundary for OAuth-backed MCP transports. A rejected stored bearer becomes a structured reauthorization result before OAuth discovery or Dynamic Client Registration runs. Catalog refresh still preserves the last authoritative tools, but records the connection as expired with a reconnect-required detail so the UI and API can direct the user through authorization again. + + API-key and unauthenticated MCP transports keep their existing `401` behavior, and ordinary incomplete discovery results remain degraded. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + - @executor-js/config@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/mcp/package.json b/packages/plugins/mcp/package.json index b8fb88a72..799dd4039 100644 --- a/packages/plugins/mcp/package.json +++ b/packages/plugins/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-mcp", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/mcp", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/onepassword/CHANGELOG.md b/packages/plugins/onepassword/CHANGELOG.md index 7b087884d..a35c3875e 100644 --- a/packages/plugins/onepassword/CHANGELOG.md +++ b/packages/plugins/onepassword/CHANGELOG.md @@ -1,5 +1,23 @@ # @executor-js/plugin-onepassword +## 1.6.4 + +### Patch Changes + +- [#1860](https://github.com/UsefulSoftwareCo/executor/pull/1860) [`2cad774`](https://github.com/UsefulSoftwareCo/executor/commit/2cad7745dea1afb9282c3888f4e9c59ce6fe4332) Thanks [@RhysSullivan](https://github.com/RhysSullivan)! - **1Password-backed connections no longer pay a 1Password read on every tool call** + + Each tool call resolves its connection's credential, and for 1Password-backed connections every resolution shelled out to the `op` CLI — roughly a second per call under desktop-app auth, multiplying the latency of every call several times over. The spawn was also synchronous, so one slow resolution (for example `op` waiting on a 1Password approval prompt) blocked the whole local server for every other request, with no timeout on that path. + + Three changes: + - Successful resolutions are now served from memory for a short TTL (default 60s, `secretCacheTtlMs`). The cache keys by a fingerprint of the provider config, so editing or removing an account drops all cached secrets at once; not-found, ambiguity, and failure outcomes are never retained. Concurrent resolutions of the same ref share one backend read even with the TTL set to `0`. + - The `op` CLI now runs as an asynchronous spawn with a hard deadline (the plugin's existing `timeoutMs`), so a stuck `op` fails with the troubleshooting message instead of freezing the server. Auth reaches the child per spawn (service-account token via the environment, desktop account via `--account`) instead of through the previous backend's process-global token state. + - Services are memoized per auth identity, so the SDK fallback reuses one authenticated client instead of re-authenticating per resolution. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/onepassword/package.json b/packages/plugins/onepassword/package.json index 5af0fba19..1c8a9afce 100644 --- a/packages/plugins/onepassword/package.json +++ b/packages/plugins/onepassword/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-onepassword", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/onepassword", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/openapi/CHANGELOG.md b/packages/plugins/openapi/CHANGELOG.md index 53d9a4e24..85a4ed48d 100644 --- a/packages/plugins/openapi/CHANGELOG.md +++ b/packages/plugins/openapi/CHANGELOG.md @@ -1,5 +1,15 @@ # @executor-js/plugin-openapi +## 1.6.4 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + - @executor-js/config@1.6.4 + ## 1.6.3 ### Patch Changes diff --git a/packages/plugins/openapi/package.json b/packages/plugins/openapi/package.json index 53244307b..77f8538e3 100644 --- a/packages/plugins/openapi/package.json +++ b/packages/plugins/openapi/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-openapi", - "version": "1.6.3", + "version": "1.6.4", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/openapi", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/plugins/provider-service-split/CHANGELOG.md b/packages/plugins/provider-service-split/CHANGELOG.md index d3f60e7fc..6d8f91984 100644 --- a/packages/plugins/provider-service-split/CHANGELOG.md +++ b/packages/plugins/provider-service-split/CHANGELOG.md @@ -1,5 +1,13 @@ # @executor-js/plugin-provider-service-split +## 0.0.18 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/plugin-openapi@1.6.4 + ## 0.0.17 ### Patch Changes diff --git a/packages/plugins/provider-service-split/package.json b/packages/plugins/provider-service-split/package.json index e141fe09e..8fb6a950e 100644 --- a/packages/plugins/provider-service-split/package.json +++ b/packages/plugins/provider-service-split/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-provider-service-split", - "version": "0.0.17", + "version": "0.0.18", "private": true, "type": "module", "exports": { diff --git a/packages/plugins/toolkits/CHANGELOG.md b/packages/plugins/toolkits/CHANGELOG.md index 1de752eb5..830d1db62 100644 --- a/packages/plugins/toolkits/CHANGELOG.md +++ b/packages/plugins/toolkits/CHANGELOG.md @@ -1,5 +1,14 @@ # @executor-js/plugin-toolkits +## 1.5.39 + +### Patch Changes + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/react@1.4.67 + - @executor-js/api@1.4.67 + ## 1.5.38 ### Patch Changes diff --git a/packages/plugins/toolkits/package.json b/packages/plugins/toolkits/package.json index f16cdbad5..44f08dca8 100644 --- a/packages/plugins/toolkits/package.json +++ b/packages/plugins/toolkits/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/plugin-toolkits", - "version": "1.5.38", + "version": "1.5.39", "homepage": "https://github.com/UsefulSoftwareCo/executor/tree/main/packages/plugins/toolkits", "bugs": { "url": "https://github.com/UsefulSoftwareCo/executor/issues" diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 550ac5ce5..d6087cc8c 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,19 @@ # @executor-js/react +## 1.4.67 + +### Patch Changes + +- [#1559](https://github.com/UsefulSoftwareCo/executor/pull/1559) [`9dcfaa5`](https://github.com/UsefulSoftwareCo/executor/commit/9dcfaa5ee8ad2ebc17407caf94d8d4dcf55e3562) Thanks [@Adityakk9031](https://github.com/Adityakk9031)! - **Reconnecting a DCR connection now re-registers instead of reusing a stranded client** + + A dynamically registered OAuth client is bound to the redirect URI it registered with. Once the app's callback origin changed (127.0.0.1 to localhost), Reconnect still started the flow against the stored client, and the authorization server rejected it — leaving no way to repair the connection. + + Reconnect now takes the same probe → CIMD-or-register → start route as the initial connect, so the registration gateway replaces the stranded client against the current redirect URI. Methods with a fixed, hand-registered app are unaffected and keep using their stored client. + +- Updated dependencies [[`ffcfbc0`](https://github.com/UsefulSoftwareCo/executor/commit/ffcfbc0de27d0ae55215839fb70395b0b7d9a65c), [`10e16a5`](https://github.com/UsefulSoftwareCo/executor/commit/10e16a5baa2648657b70038e7d11429c58e4d242), [`515d6aa`](https://github.com/UsefulSoftwareCo/executor/commit/515d6aa391a04a3579a7b10f974ec316a563cf7a), [`06bf742`](https://github.com/UsefulSoftwareCo/executor/commit/06bf74254f3432e8d75fd8b493ef7a435ea4bc84)]: + - @executor-js/sdk@1.6.4 + - @executor-js/api@1.4.67 + ## 1.4.66 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 367899988..9b1c77081 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,6 +1,6 @@ { "name": "@executor-js/react", - "version": "1.4.66", + "version": "1.4.67", "private": true, "type": "module", "exports": {