@skaile/workspaces 0.35.0 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/asset-manager/index.js +1 -1
- package/dist/bridge/drivers/claude-sdk.js +9 -5
- package/dist/bridge/drivers/claude-sdk.js.map +1 -1
- package/dist/bridge/drivers/codex.js +2 -2
- package/dist/bridge/drivers/continue.js +3 -3
- package/dist/bridge/drivers/echo.js +1 -1
- package/dist/bridge/drivers/gemini.js +4 -4
- package/dist/bridge/drivers/goose.js +3 -3
- package/dist/bridge/drivers/omp.js +2 -2
- package/dist/bridge/drivers/opencode.js +3 -3
- package/dist/bridge/drivers/qwen.js +4 -4
- package/dist/bridge/index.js +3 -3
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
- package/dist/bridge/src/error-classifier.d.ts +22 -0
- package/dist/bridge/src/error-classifier.d.ts.map +1 -1
- package/dist/bridge/src/index.d.ts +1 -1
- package/dist/bridge/src/index.d.ts.map +1 -1
- package/dist/bridge/src/types.d.ts +1 -1
- package/dist/bridge/src/types.d.ts.map +1 -1
- package/dist/{chunk-TV2OU2EZ.js → chunk-4ZACMAT3.js} +4 -4
- package/dist/{chunk-TV2OU2EZ.js.map → chunk-4ZACMAT3.js.map} +1 -1
- package/dist/{chunk-NSVAJWWQ.js → chunk-5IXCNMMU.js} +4 -4
- package/dist/{chunk-NSVAJWWQ.js.map → chunk-5IXCNMMU.js.map} +1 -1
- package/dist/{chunk-SKVUDDHE.js → chunk-FDLVPYSN.js} +253 -103
- package/dist/chunk-FDLVPYSN.js.map +1 -0
- package/dist/{chunk-NGJ6E344.js → chunk-GAH4YRCI.js} +20 -3
- package/dist/chunk-GAH4YRCI.js.map +1 -0
- package/dist/{chunk-NAMD4AIK.js → chunk-JNH6TTIO.js} +3 -3
- package/dist/{chunk-NAMD4AIK.js.map → chunk-JNH6TTIO.js.map} +1 -1
- package/dist/{chunk-CIFTUSBV.js → chunk-KM6DCR7A.js} +2 -2
- package/dist/{chunk-CIFTUSBV.js.map → chunk-KM6DCR7A.js.map} +1 -1
- package/dist/{chunk-6422UOMQ.js → chunk-LY5O73Q2.js} +3 -3
- package/dist/{chunk-6422UOMQ.js.map → chunk-LY5O73Q2.js.map} +1 -1
- package/dist/{chunk-52HINMW4.js → chunk-MCQ4TJ3P.js} +21 -9
- package/dist/chunk-MCQ4TJ3P.js.map +1 -0
- package/dist/{chunk-67AXL4OK.js → chunk-U3TV7SRR.js} +4 -4
- package/dist/{chunk-67AXL4OK.js.map → chunk-U3TV7SRR.js.map} +1 -1
- package/dist/{chunk-ZGJE4ZDP.js → chunk-YPRW2ROJ.js} +2 -2
- package/dist/{chunk-ZGJE4ZDP.js.map → chunk-YPRW2ROJ.js.map} +1 -1
- package/dist/{chunk-7B3CL5JT.js → chunk-ZE5WYJVU.js} +2 -2
- package/dist/{chunk-7B3CL5JT.js.map → chunk-ZE5WYJVU.js.map} +1 -1
- package/dist/cli/index.js +10 -10
- package/dist/connectors/config.js +1 -1
- package/dist/connectors/index.js +2 -2
- package/dist/connectors/src/secrets.d.ts +14 -14
- package/dist/connectors/src/secrets.d.ts.map +1 -1
- package/dist/factory-assets/connectors/deploy.js +2 -2
- package/dist/factory-assets/connectors/devserver.js +2 -2
- package/dist/factory-assets/connectors/flow/adapter.js +2 -2
- package/dist/factory-assets/connectors/flow/run-flow.js +3 -3
- package/dist/factory-assets/connectors/flow.js +2 -2
- package/dist/factory-assets/connectors/git.js +2 -2
- package/dist/factory-assets/connectors/gmail.js +2 -2
- package/dist/factory-assets/connectors/googledrive.js +2 -2
- package/dist/factory-assets/connectors/local.js +2 -2
- package/dist/factory-assets/connectors/mattermost.js +2 -2
- package/dist/factory-assets/connectors/memory.js +2 -2
- package/dist/factory-assets/connectors/minio.js +2 -2
- package/dist/factory-assets/connectors/postgres.js +2 -2
- package/dist/factory-assets/connectors/s3.js +2 -2
- package/dist/factory-assets/connectors/sharepoint.js +2 -2
- package/dist/factory-assets/connectors/sqlite.js +2 -2
- package/dist/factory-assets/connectors/static-server.js +2 -2
- package/dist/factory-assets/connectors/tunnel.js +2 -2
- package/dist/factory-assets/connectors/webdav.js +2 -2
- package/dist/factory-assets/connectors/xstate-store.js +2 -2
- package/dist/factory-assets/connectors/xstate.js +2 -2
- package/dist/runner/index.js +7 -7
- package/dist/runner/src/external-mcp.d.ts +24 -1
- package/dist/runner/src/external-mcp.d.ts.map +1 -1
- package/dist/runner/src/mcp-runtime-handlers.d.ts +42 -0
- package/dist/runner/src/mcp-runtime-handlers.d.ts.map +1 -0
- package/dist/runner/src/resources.d.ts +12 -0
- package/dist/runner/src/resources.d.ts.map +1 -1
- package/dist/runner/src/runner-capabilities.d.ts +33 -0
- package/dist/runner/src/runner-capabilities.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts +18 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts +8 -0
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/runner/src/session-resource-handlers.d.ts +5 -1
- package/dist/runner/src/session-resource-handlers.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +1 -1
- package/dist/sdk/bridge.js +3 -3
- package/dist/sdk/index.js +7 -7
- package/dist/sdk/runner.js +7 -7
- package/dist/{setup-BSDHVMR6.js → setup-QQ3SNNWP.js} +5 -5
- package/dist/{setup-BSDHVMR6.js.map → setup-QQ3SNNWP.js.map} +1 -1
- package/dist/tui/index.js +7 -7
- package/dist/types/src/events.d.ts +22 -4
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-52HINMW4.js.map +0 -1
- package/dist/chunk-NGJ6E344.js.map +0 -1
- package/dist/chunk-SKVUDDHE.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.36.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#143](https://github.com/skaile-ai/workspaces/pull/143) [`987613d`](https://github.com/skaile-ai/workspaces/commit/987613da9a77b3a4d8ceb3e47a0763cf2806af36) Thanks [@peteralbert](https://github.com/peteralbert)! - feat: live MCP hot-plug-on-assign — new `runner.add_mcp_server` capability (connect a remote/stdio MCP server to a running session and register its `mcp__<id>__*` tools with no restart) and MCP servers are now reported in the `resources_available` event (`mcp_servers: McpServerInfo[]`) so the platform can show a truthful Live/Restart badge.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- [#141](https://github.com/skaile-ai/workspaces/pull/141) [`ffc110e`](https://github.com/skaile-ai/workspaces/commit/ffc110eabb97e19d8f2f76f0354fdd5108da7083) Thanks [@Frozen666](https://github.com/Frozen666)! - fix(bridge): classify a 401 that recurs after a successful credential refresh as an `account` failure, not `auth`
|
|
12
|
+
|
|
13
|
+
When Anthropic returns 401 for a non-auth reason (hidden-tier rate limit, billing block, anti-abuse throttle on OAuth tokens), the bridge refreshed the credential, retried, hit the same 401, and surfaced "Invalid authentication credentials" — a wrong, non-actionable message. The driver now downgrades a post-refresh 401 (`this.authSelfHealUsed === true`) from `auth` to a new `account` category and surfaces `AccountUnavailableError` (not an `AuthError`, so the self-heal does not loop). Applied on both the thrown-exception (`handleConsumerError`) and `is_error`-result (`handleResultErrorPayload`) paths. Adds `"account"` to `ErrorCategory` in `@skaile/workspaces/types`.
|
|
14
|
+
|
|
3
15
|
## 0.35.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { AssetManager, parseCanonicalLockKey } from '../chunk-
|
|
1
|
+
export { AssetManager, parseCanonicalLockKey } from '../chunk-ZE5WYJVU.js';
|
|
2
2
|
export { createScaffold, deployAll, installAgent, removeAsset } from '../chunk-WEQN6EWW.js';
|
|
3
3
|
import '../chunk-2Q6OY3SU.js';
|
|
4
4
|
import '../chunk-5DPQ766L.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { dispatchCapability } from '../../chunk-RRVQAE5D.js';
|
|
2
2
|
import { fetchProviderModels } from '../../chunk-BMQKMOQY.js';
|
|
3
|
-
import { AuthError, classifyClaudeSdkError } from '../../chunk-
|
|
4
|
-
import { BUILTIN_DRIVER_CATALOG, AgentDriver, getBridgeLogger } from '../../chunk-
|
|
3
|
+
import { AuthError, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable, AccountUnavailableError } from '../../chunk-GAH4YRCI.js';
|
|
4
|
+
import { BUILTIN_DRIVER_CATALOG, AgentDriver, getBridgeLogger } from '../../chunk-KM6DCR7A.js';
|
|
5
5
|
import '../../chunk-6E6PKKAD.js';
|
|
6
6
|
import '../../chunk-JB35MVBN.js';
|
|
7
7
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -796,16 +796,17 @@ var ClaudeSdkDriver = class extends AgentDriver {
|
|
|
796
796
|
this.log.info("aborted");
|
|
797
797
|
return;
|
|
798
798
|
}
|
|
799
|
-
const
|
|
799
|
+
const rawDetail = classifyClaudeSdkError({
|
|
800
800
|
errors: [error.message],
|
|
801
801
|
oauthCredential: this.usingOauthCredential
|
|
802
802
|
});
|
|
803
|
+
const detail = rawDetail.category === "auth" && this.authSelfHealUsed ? reclassifyAuthAsAccountUnavailable(rawDetail) : rawDetail;
|
|
803
804
|
this.log.error("consumer error", {
|
|
804
805
|
message: error.message,
|
|
805
806
|
category: detail.category,
|
|
806
807
|
retryable: detail.retryable
|
|
807
808
|
});
|
|
808
|
-
const surfaced = detail.category === "auth" ? new AuthError(detail) : error;
|
|
809
|
+
const surfaced = detail.category === "auth" ? new AuthError(detail) : detail.category === "account" ? new AccountUnavailableError(detail) : error;
|
|
809
810
|
this.failTurn(surfaced, detail);
|
|
810
811
|
}
|
|
811
812
|
/**
|
|
@@ -1067,12 +1068,13 @@ var ClaudeSdkDriver = class extends AgentDriver {
|
|
|
1067
1068
|
* empty errors defer to the consumer-error catch.
|
|
1068
1069
|
*/
|
|
1069
1070
|
handleResultErrorPayload(msg, errors) {
|
|
1070
|
-
const
|
|
1071
|
+
const rawDetail = classifyClaudeSdkError({
|
|
1071
1072
|
errors,
|
|
1072
1073
|
terminalReason: msg.terminal_reason,
|
|
1073
1074
|
subtype: msg.subtype,
|
|
1074
1075
|
oauthCredential: this.usingOauthCredential
|
|
1075
1076
|
});
|
|
1077
|
+
const detail = rawDetail.category === "auth" && this.authSelfHealUsed ? reclassifyAuthAsAccountUnavailable(rawDetail) : rawDetail;
|
|
1076
1078
|
this.log.error("turn ended with error", {
|
|
1077
1079
|
subtype: msg.subtype,
|
|
1078
1080
|
terminalReason: msg.terminal_reason,
|
|
@@ -1083,6 +1085,8 @@ var ClaudeSdkDriver = class extends AgentDriver {
|
|
|
1083
1085
|
const errorText = errors.join("; ") || `Agent stopped: ${msg.subtype}`;
|
|
1084
1086
|
if (detail.category === "auth") {
|
|
1085
1087
|
this.failTurn(new AuthError({ ...detail, message: errorText }), detail);
|
|
1088
|
+
} else if (detail.category === "account") {
|
|
1089
|
+
this.failTurn(new AccountUnavailableError({ ...detail, message: errorText }), detail);
|
|
1086
1090
|
} else if (errors.length > 0) {
|
|
1087
1091
|
this.emit("agent-event", {
|
|
1088
1092
|
type: "error",
|