@skaile/workspaces 3.25.0 → 3.26.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 +6 -0
- package/dist/app-sdk/index.js +1 -1
- package/dist/{asset-feeds-6RKRMM6C.js → asset-feeds-ISSC2HYE.js} +4 -4
- package/dist/{asset-feeds-6RKRMM6C.js.map → asset-feeds-ISSC2HYE.js.map} +1 -1
- package/dist/asset-manager/index.js +1 -1
- package/dist/bridge/drivers/claude-sdk.js +3 -3
- package/dist/bridge/drivers/codex.js +1 -1
- package/dist/bridge/drivers/continue.js +2 -2
- package/dist/bridge/drivers/echo.js +3 -3
- package/dist/bridge/drivers/gemini.js +3 -3
- package/dist/bridge/drivers/goose.js +2 -2
- package/dist/bridge/drivers/omp.js +1 -1
- package/dist/bridge/drivers/opencode.js +2 -2
- package/dist/bridge/drivers/qwen.js +3 -3
- package/dist/bridge/index.js +4 -4
- package/dist/{chunk-LRA7VUT6.js → chunk-3DOLXE4Z.js} +3 -3
- package/dist/{chunk-LRA7VUT6.js.map → chunk-3DOLXE4Z.js.map} +1 -1
- package/dist/{chunk-HTIGD3DR.js → chunk-5SXY4B65.js} +3 -3
- package/dist/{chunk-HTIGD3DR.js.map → chunk-5SXY4B65.js.map} +1 -1
- package/dist/{chunk-YNO3LBRH.js → chunk-A565EFTW.js} +3 -3
- package/dist/{chunk-YNO3LBRH.js.map → chunk-A565EFTW.js.map} +1 -1
- package/dist/{chunk-5PFJVZ7F.js → chunk-ALSDJ6F4.js} +2 -2
- package/dist/{chunk-5PFJVZ7F.js.map → chunk-ALSDJ6F4.js.map} +1 -1
- package/dist/{chunk-ZQZXCVYV.js → chunk-AY4OKT3U.js} +2 -2
- package/dist/{chunk-ZQZXCVYV.js.map → chunk-AY4OKT3U.js.map} +1 -1
- package/dist/{chunk-X3DODPMF.js → chunk-DGPCBJNQ.js} +2 -2
- package/dist/{chunk-X3DODPMF.js.map → chunk-DGPCBJNQ.js.map} +1 -1
- package/dist/{chunk-BKUKF632.js → chunk-GLOHIJ7B.js} +3 -3
- package/dist/{chunk-BKUKF632.js.map → chunk-GLOHIJ7B.js.map} +1 -1
- package/dist/{chunk-J4WDQL42.js → chunk-KFH5GCDB.js} +3 -3
- package/dist/{chunk-J4WDQL42.js.map → chunk-KFH5GCDB.js.map} +1 -1
- package/dist/{chunk-6NTKN6QC.js → chunk-NQG77HXO.js} +3 -3
- package/dist/{chunk-6NTKN6QC.js.map → chunk-NQG77HXO.js.map} +1 -1
- package/dist/{chunk-WMZT7VDS.js → chunk-NRKEZBVP.js} +5 -5
- package/dist/{chunk-WMZT7VDS.js.map → chunk-NRKEZBVP.js.map} +1 -1
- package/dist/{chunk-4YRRPWHY.js → chunk-Q6SWQEF7.js} +156 -28
- package/dist/chunk-Q6SWQEF7.js.map +1 -0
- package/dist/{chunk-NKPDUYRH.js → chunk-RPE5VYB6.js} +4 -4
- package/dist/{chunk-NKPDUYRH.js.map → chunk-RPE5VYB6.js.map} +1 -1
- package/dist/{chunk-UEW6C64M.js → chunk-S3Z5KF6R.js} +3 -3
- package/dist/{chunk-UEW6C64M.js.map → chunk-S3Z5KF6R.js.map} +1 -1
- package/dist/{chunk-V6QKAC3Z.js → chunk-U2QALNKX.js} +8 -5
- package/dist/chunk-U2QALNKX.js.map +1 -0
- package/dist/{chunk-HGDFQDHT.js → chunk-UOERRCR3.js} +6 -6
- package/dist/{chunk-HGDFQDHT.js.map → chunk-UOERRCR3.js.map} +1 -1
- package/dist/{chunk-3CF5HJ6V.js → chunk-UQTPSVJV.js} +6 -6
- package/dist/{chunk-3CF5HJ6V.js.map → chunk-UQTPSVJV.js.map} +1 -1
- package/dist/{chunk-BIPMCNAK.js → chunk-XGO6CP5S.js} +3 -3
- package/dist/{chunk-BIPMCNAK.js.map → chunk-XGO6CP5S.js.map} +1 -1
- package/dist/{chunk-3D3BKCVQ.js → chunk-XHPWI6XF.js} +4 -4
- package/dist/{chunk-3D3BKCVQ.js.map → chunk-XHPWI6XF.js.map} +1 -1
- package/dist/cli/index.js +32 -32
- package/dist/connectors/index.js +5 -5
- package/dist/{ensure-sources-XYDPVBSP.js → ensure-sources-YH6X5XI4.js} +4 -4
- package/dist/{ensure-sources-XYDPVBSP.js.map → ensure-sources-YH6X5XI4.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +5 -5
- package/dist/factory-assets/connectors/deploy.js +5 -5
- package/dist/factory-assets/connectors/devserver.js +5 -5
- package/dist/factory-assets/connectors/flow/adapter.js +5 -5
- package/dist/factory-assets/connectors/flow/run-flow.js +6 -6
- package/dist/factory-assets/connectors/flow.js +5 -5
- package/dist/factory-assets/connectors/git.js +5 -5
- package/dist/factory-assets/connectors/gmail.js +5 -5
- package/dist/factory-assets/connectors/googledrive.js +5 -5
- package/dist/factory-assets/connectors/local.js +5 -5
- package/dist/factory-assets/connectors/mattermost.js +5 -5
- package/dist/factory-assets/connectors/memory.js +5 -5
- package/dist/factory-assets/connectors/minio.js +5 -5
- package/dist/factory-assets/connectors/postgres.js +5 -5
- package/dist/factory-assets/connectors/s3.js +5 -5
- package/dist/factory-assets/connectors/sharepoint.js +5 -5
- package/dist/factory-assets/connectors/sqlite.js +5 -5
- package/dist/factory-assets/connectors/static-server.js +5 -5
- package/dist/factory-assets/connectors/tunnel.js +5 -5
- package/dist/factory-assets/connectors/webdav.js +5 -5
- package/dist/factory-assets/connectors/xstate-store.js +5 -5
- package/dist/factory-assets/connectors/xstate.js +5 -5
- package/dist/{helpers-47SRTVSY.js → helpers-EJEK6NN6.js} +4 -4
- package/dist/{helpers-47SRTVSY.js.map → helpers-EJEK6NN6.js.map} +1 -1
- package/dist/{library-publish-W7CIEIJJ.js → library-publish-66FHWXAA.js} +6 -6
- package/dist/{library-publish-W7CIEIJJ.js.map → library-publish-66FHWXAA.js.map} +1 -1
- package/dist/{open-library-B2PEJ3UT.js → open-library-4W2UGVJN.js} +5 -5
- package/dist/{open-library-B2PEJ3UT.js.map → open-library-4W2UGVJN.js.map} +1 -1
- package/dist/{project-TOICQYNZ.js → project-6OECVELE.js} +5 -5
- package/dist/{project-TOICQYNZ.js.map → project-6OECVELE.js.map} +1 -1
- package/dist/runner/index.js +9 -9
- package/dist/runner/src/resource-handler.d.ts +34 -1
- package/dist/runner/src/resource-handler.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts +3 -0
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +1 -1
- package/dist/sdk/bridge.js +4 -4
- package/dist/sdk/index.js +9 -9
- package/dist/sdk/runner.js +9 -9
- package/dist/sdk/session.js +2 -2
- package/dist/sdk/types.js +1 -1
- package/dist/session/index.js +2 -2
- package/dist/{setup-HLKIP7XW.js → setup-6IEVFDWB.js} +6 -6
- package/dist/{setup-HLKIP7XW.js.map → setup-6IEVFDWB.js.map} +1 -1
- package/dist/{source-HZTCDRGB.js → source-HJQNRGTP.js} +6 -6
- package/dist/{source-HZTCDRGB.js.map → source-HJQNRGTP.js.map} +1 -1
- package/dist/{source-manifest-publish-KEDEMOQO.js → source-manifest-publish-VU4BGFDU.js} +7 -7
- package/dist/{source-manifest-publish-KEDEMOQO.js.map → source-manifest-publish-VU4BGFDU.js.map} +1 -1
- package/dist/tui/index.js +9 -9
- package/dist/types/index.js +1 -1
- package/dist/types/src/events.d.ts +7 -0
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/protocol.d.ts +11 -0
- package/dist/types/src/protocol.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +6 -1
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +2 -2
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-4YRRPWHY.js.map +0 -1
- package/dist/chunk-V6QKAC3Z.js.map +0 -1
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { buildWorkspaceToolDefs } from './chunk-
|
|
1
|
+
import { buildWorkspaceToolDefs } from './chunk-KFH5GCDB.js';
|
|
2
2
|
import { findAiAssetsRoot } from './chunk-7IRJ4K4F.js';
|
|
3
|
-
import { WorkspacePlugin } from './chunk-
|
|
3
|
+
import { WorkspacePlugin } from './chunk-ALSDJ6F4.js';
|
|
4
4
|
import { assembleSystemPrompt, buildCapabilitiesPromptSection } from './chunk-W3UDISS2.js';
|
|
5
5
|
import { WebSocketServerTransport } from './chunk-73ZXUUL6.js';
|
|
6
6
|
import { prepareNativePolicy, codexInstanceEnvironment, parseCodexCredential, parseCodexRefreshInput, parseCodexRefreshResult } from './chunk-T3YLZQS4.js';
|
|
7
|
-
import { resolveFlowPath } from './chunk-
|
|
7
|
+
import { resolveFlowPath } from './chunk-S3Z5KF6R.js';
|
|
8
8
|
import { findAiAssetsRoot as findAiAssetsRoot$1, deployCatalogEntry, undeployCatalogEntry } from './chunk-7BUZQVRR.js';
|
|
9
|
-
import { registerBuiltinConnectors, buildConnectorPromptSection, findMissingPackages, installNpmPackages, ConnectorManager, ConnectorStartupError, buildSdkConnectorTools, buildLazySdkFlowTools, describeFlowOperations, buildConnectorToolDefs, buildFlowToolDefs, driveOrchestratorTurn, SessionNodeExecutor, SessionSubpromptRunner, SessionInlineSubFlowRunner, buildSdkFlowTools } from './chunk-
|
|
9
|
+
import { registerBuiltinConnectors, buildConnectorPromptSection, findMissingPackages, installNpmPackages, ConnectorManager, ConnectorStartupError, buildSdkConnectorTools, buildLazySdkFlowTools, describeFlowOperations, buildConnectorToolDefs, buildFlowToolDefs, driveOrchestratorTurn, SessionNodeExecutor, SessionSubpromptRunner, SessionInlineSubFlowRunner, buildSdkFlowTools } from './chunk-NRKEZBVP.js';
|
|
10
10
|
import { loadConnectorDeclarations, SecretProviderChain, PreMintedSecretProvider, InMemorySecretProvider, resolvedConfigToDeclarations, isKnownSecretRef, deriveSingleMaterializedConnectorDeclaration } from './chunk-SIREWRZE.js';
|
|
11
|
-
import { EventNormalizer } from './chunk-
|
|
11
|
+
import { EventNormalizer } from './chunk-RPE5VYB6.js';
|
|
12
12
|
import { SUPPORTED_CLOUDS, probeResumeTranscript, CLOUD_SECRET_ENV_KEYS } from './chunk-3NCGSSCU.js';
|
|
13
13
|
import { CodexNativeStateUnavailable } from './chunk-LOO5CB5M.js';
|
|
14
|
-
import { dispatchCapability } from './chunk-
|
|
14
|
+
import { dispatchCapability } from './chunk-5SXY4B65.js';
|
|
15
15
|
import { classifyClaudeSdkError } from './chunk-GAH4YRCI.js';
|
|
16
|
-
import { createDriver } from './chunk-
|
|
16
|
+
import { createDriver } from './chunk-DGPCBJNQ.js';
|
|
17
17
|
import { loadFlow } from './chunk-W5LPG3X6.js';
|
|
18
18
|
import { parseFlowDefinition } from './chunk-CP62G5PK.js';
|
|
19
19
|
import { renderStimulusPrompt } from './chunk-2D5BYAL6.js';
|
|
20
|
-
import { withActivityLabelJsonSchema, TOOL_ACTIVITY_PROMPT_SECTION, PROTOCOL_VERSION } from './chunk-
|
|
20
|
+
import { withActivityLabelJsonSchema, TOOL_ACTIVITY_PROMPT_SECTION, SESSION_ROOT_CONNECTOR_ID, PROTOCOL_VERSION } from './chunk-U2QALNKX.js';
|
|
21
21
|
import { resolveSettings, resolveApiKey, providerEnvKey } from './chunk-HSRHO7SK.js';
|
|
22
22
|
import { resolveDriverPaths } from './chunk-K5GBV4SA.js';
|
|
23
23
|
import { resolveRuntimeAssets } from './chunk-IB4XKQMQ.js';
|
|
@@ -30,7 +30,7 @@ import { __require } from './chunk-NSBPE2FW.js';
|
|
|
30
30
|
import pc from 'picocolors';
|
|
31
31
|
import { Marked } from 'marked';
|
|
32
32
|
import { markedTerminal } from 'marked-terminal';
|
|
33
|
-
import fs4, { readFile, stat, rm, unlink, mkdir, writeFile, readdir, rename,
|
|
33
|
+
import fs4, { readFile, stat, rm, unlink, mkdir, writeFile, readdir, realpath, lstat, rename, readlink, mkdtemp } from 'fs/promises';
|
|
34
34
|
import { createHash, randomBytes, timingSafeEqual, randomUUID } from 'crypto';
|
|
35
35
|
import path4, { join, resolve, relative, sep, isAbsolute, dirname, basename } from 'path';
|
|
36
36
|
import { existsSync, lstatSync, realpathSync, readFileSync, mkdirSync, writeFileSync, watch, chmodSync, accessSync, constants, rmSync } from 'fs';
|
|
@@ -3335,6 +3335,144 @@ async function handleMountResourceRequest(command, manager, emit) {
|
|
|
3335
3335
|
});
|
|
3336
3336
|
}
|
|
3337
3337
|
}
|
|
3338
|
+
var SESSION_ROOT_WRITABLE_FILES = ["skaile.yaml"];
|
|
3339
|
+
var SESSION_ROOT_WRITABLE_DIRS = [
|
|
3340
|
+
".skaile/assets",
|
|
3341
|
+
".skaile/chat-files"
|
|
3342
|
+
];
|
|
3343
|
+
function isSessionRootPathAllowed(rel, operation) {
|
|
3344
|
+
if (SESSION_ROOT_WRITABLE_FILES.includes(rel)) return true;
|
|
3345
|
+
return SESSION_ROOT_WRITABLE_DIRS.some(
|
|
3346
|
+
(dir) => rel.startsWith(`${dir}/`) || operation === "delete" && rel === dir
|
|
3347
|
+
);
|
|
3348
|
+
}
|
|
3349
|
+
function isWithin(root, child) {
|
|
3350
|
+
const rel = relative(root, child);
|
|
3351
|
+
return rel === "" || !(rel === ".." || rel.startsWith(`..${sep}`) || isAbsolute(rel));
|
|
3352
|
+
}
|
|
3353
|
+
var SESSION_ROOT_MAX_LINK_HOPS = 32;
|
|
3354
|
+
async function resolveOnDisk(absPath) {
|
|
3355
|
+
let current = absPath;
|
|
3356
|
+
const missing = [];
|
|
3357
|
+
let hops = 0;
|
|
3358
|
+
for (; ; ) {
|
|
3359
|
+
try {
|
|
3360
|
+
const real = await withFsDeadline(`realpath ${current}`, () => realpath(current));
|
|
3361
|
+
return join(real, ...missing.reverse());
|
|
3362
|
+
} catch (err) {
|
|
3363
|
+
const code = err.code;
|
|
3364
|
+
if (code !== "ENOENT" && code !== "ENOTDIR") throw err;
|
|
3365
|
+
const linkTarget = code === "ENOENT" ? await readDanglingLink(current) : null;
|
|
3366
|
+
if (linkTarget !== null) {
|
|
3367
|
+
if (++hops > SESSION_ROOT_MAX_LINK_HOPS) {
|
|
3368
|
+
throw new Error("Too many symlinks in the session-root path");
|
|
3369
|
+
}
|
|
3370
|
+
const linkDir = dirname(current);
|
|
3371
|
+
const realLinkDir = await withFsDeadline(`realpath ${linkDir}`, () => realpath(linkDir));
|
|
3372
|
+
current = resolve(realLinkDir, linkTarget);
|
|
3373
|
+
continue;
|
|
3374
|
+
}
|
|
3375
|
+
const parent = dirname(current);
|
|
3376
|
+
if (parent === current) throw err;
|
|
3377
|
+
missing.push(basename(current));
|
|
3378
|
+
current = parent;
|
|
3379
|
+
}
|
|
3380
|
+
}
|
|
3381
|
+
}
|
|
3382
|
+
async function readDanglingLink(absPath) {
|
|
3383
|
+
try {
|
|
3384
|
+
const st = await withFsDeadline(`lstat ${absPath}`, () => lstat(absPath));
|
|
3385
|
+
if (!st.isSymbolicLink()) return null;
|
|
3386
|
+
} catch (err) {
|
|
3387
|
+
if (err.code === "ENOENT") return null;
|
|
3388
|
+
throw err;
|
|
3389
|
+
}
|
|
3390
|
+
return withFsDeadline(`readlink ${absPath}`, () => readlink(absPath));
|
|
3391
|
+
}
|
|
3392
|
+
async function handleSessionRootResourceRequest(command, rootDir, emit) {
|
|
3393
|
+
const { requestId, connectorId, operation, path: reqPath, content } = command;
|
|
3394
|
+
try {
|
|
3395
|
+
if (operation !== "write" && operation !== "delete") {
|
|
3396
|
+
throw new Error(`Unsupported operation for the session root: ${operation}`);
|
|
3397
|
+
}
|
|
3398
|
+
if (!reqPath) throw new Error("A path is required for the session root");
|
|
3399
|
+
if (isAbsolute(reqPath)) throw new Error("Absolute paths are not allowed for the session root");
|
|
3400
|
+
const root = resolve(rootDir);
|
|
3401
|
+
const targetPath = resolve(root, reqPath);
|
|
3402
|
+
if (!isWithin(root, targetPath)) throw new Error("Path traversal outside the session root");
|
|
3403
|
+
const rel = relative(root, targetPath).split(sep).join("/");
|
|
3404
|
+
if (!isSessionRootPathAllowed(rel, operation)) {
|
|
3405
|
+
throw new Error(
|
|
3406
|
+
`Path "${rel}" is not writable in the session root \u2014 allowed: ${[...SESSION_ROOT_WRITABLE_FILES, ...SESSION_ROOT_WRITABLE_DIRS.map((d) => `${d}/**`)].join(", ")}`
|
|
3407
|
+
);
|
|
3408
|
+
}
|
|
3409
|
+
const realRoot = await withFsDeadline(`realpath ${root}`, () => realpath(root));
|
|
3410
|
+
const onDisk = operation === "write" ? await resolveOnDisk(targetPath) : join(await resolveOnDisk(dirname(targetPath)), basename(targetPath));
|
|
3411
|
+
if (!isWithin(realRoot, operation === "write" ? onDisk : dirname(onDisk))) {
|
|
3412
|
+
throw new Error("Path escapes the session root through a symlink");
|
|
3413
|
+
}
|
|
3414
|
+
let data = true;
|
|
3415
|
+
if (operation === "write") {
|
|
3416
|
+
const parentDir = dirname(onDisk);
|
|
3417
|
+
await withFsDeadline(`mkdir ${parentDir}`, () => mkdir(parentDir, { recursive: true }));
|
|
3418
|
+
const writeContent = typeof content === "string" ? content : content?.data ?? "";
|
|
3419
|
+
const encoding = typeof content === "string" ? void 0 : content?.encoding;
|
|
3420
|
+
await withFsDeadline(
|
|
3421
|
+
`writeFile ${onDisk}`,
|
|
3422
|
+
() => encoding === "binary" ? writeFile(onDisk, Buffer.from(writeContent, "base64")) : writeFile(onDisk, writeContent, "utf-8")
|
|
3423
|
+
);
|
|
3424
|
+
} else {
|
|
3425
|
+
let st = null;
|
|
3426
|
+
try {
|
|
3427
|
+
st = await withFsDeadline(`lstat ${onDisk}`, () => lstat(onDisk));
|
|
3428
|
+
} catch (err) {
|
|
3429
|
+
if (err.code !== "ENOENT") throw err;
|
|
3430
|
+
}
|
|
3431
|
+
if (!st) {
|
|
3432
|
+
data = false;
|
|
3433
|
+
} else if (st.isDirectory()) {
|
|
3434
|
+
await withFsDeadline(
|
|
3435
|
+
`rm -r ${onDisk}`,
|
|
3436
|
+
() => rm(onDisk, { recursive: true, force: true }),
|
|
3437
|
+
fsDeadlineMs() * MOUNT_TREE_OP_DEADLINE_FACTOR
|
|
3438
|
+
);
|
|
3439
|
+
} else {
|
|
3440
|
+
await withFsDeadline(`unlink ${onDisk}`, () => unlink(onDisk));
|
|
3441
|
+
}
|
|
3442
|
+
}
|
|
3443
|
+
emit({ type: "resource_response", requestId, resourceId: connectorId, operation, data });
|
|
3444
|
+
} catch (err) {
|
|
3445
|
+
emit({
|
|
3446
|
+
type: "resource_response",
|
|
3447
|
+
requestId,
|
|
3448
|
+
resourceId: connectorId,
|
|
3449
|
+
operation,
|
|
3450
|
+
error: err instanceof Error ? err.message : String(err)
|
|
3451
|
+
});
|
|
3452
|
+
}
|
|
3453
|
+
}
|
|
3454
|
+
async function dispatchResourceRequest(command, deps) {
|
|
3455
|
+
const { resourceManager, projectDir, emit } = deps;
|
|
3456
|
+
if (command.connectorId === SESSION_ROOT_CONNECTOR_ID) {
|
|
3457
|
+
await handleSessionRootResourceRequest(command, projectDir, emit);
|
|
3458
|
+
return;
|
|
3459
|
+
}
|
|
3460
|
+
if (resourceManager?.has(command.connectorId)) {
|
|
3461
|
+
await handleMountResourceRequest(command, resourceManager, emit);
|
|
3462
|
+
return;
|
|
3463
|
+
}
|
|
3464
|
+
if (!resourceManager) {
|
|
3465
|
+
emit({
|
|
3466
|
+
type: "resource_response",
|
|
3467
|
+
requestId: command.requestId,
|
|
3468
|
+
resourceId: command.connectorId,
|
|
3469
|
+
operation: command.operation,
|
|
3470
|
+
error: "No resources available \u2014 no mounts or connectors configured"
|
|
3471
|
+
});
|
|
3472
|
+
return;
|
|
3473
|
+
}
|
|
3474
|
+
void handleResourceRequest(command, resourceManager, emit);
|
|
3475
|
+
}
|
|
3338
3476
|
|
|
3339
3477
|
// runner/src/codex-init.ts
|
|
3340
3478
|
function validateCodexInit(cmd, supported, previous) {
|
|
@@ -5578,7 +5716,7 @@ function buildResourcesAvailablePayload(manager, mcpManager, driverLive, bakedSe
|
|
|
5578
5716
|
...s,
|
|
5579
5717
|
live: driverLive || (bakedServerIds?.has(s.id) ?? false)
|
|
5580
5718
|
}));
|
|
5581
|
-
return { type: "resources_available", mounts, connectors, mcp_servers };
|
|
5719
|
+
return { type: "resources_available", mounts, connectors, mcp_servers, sessionRoot: true };
|
|
5582
5720
|
}
|
|
5583
5721
|
function isTerminalFlowStatus(status) {
|
|
5584
5722
|
return status === "complete" || status === "cancelled";
|
|
@@ -7943,21 +8081,11 @@ async function startAgentServer(opts) {
|
|
|
7943
8081
|
}
|
|
7944
8082
|
async function handleResourceRequestCommand(cmd) {
|
|
7945
8083
|
if (!await awaitSessionReadyOrFail()) return;
|
|
7946
|
-
|
|
7947
|
-
|
|
7948
|
-
|
|
7949
|
-
|
|
7950
|
-
|
|
7951
|
-
sendEvent({
|
|
7952
|
-
type: "resource_response",
|
|
7953
|
-
requestId: cmd.requestId,
|
|
7954
|
-
resourceId: cmd.connectorId,
|
|
7955
|
-
operation: cmd.operation,
|
|
7956
|
-
error: "No resources available \u2014 no mounts or connectors configured"
|
|
7957
|
-
});
|
|
7958
|
-
return;
|
|
7959
|
-
}
|
|
7960
|
-
void handleResourceRequest(cmd, resourceManager, sendEvent);
|
|
8084
|
+
await dispatchResourceRequest(cmd, {
|
|
8085
|
+
resourceManager,
|
|
8086
|
+
projectDir: opts.projectDir,
|
|
8087
|
+
emit: sendEvent
|
|
8088
|
+
});
|
|
7961
8089
|
}
|
|
7962
8090
|
async function handleConnectorMutate(cmd) {
|
|
7963
8091
|
await executeConnectorMutate(cmd, {
|
|
@@ -8482,6 +8610,6 @@ function touchSession(state) {
|
|
|
8482
8610
|
return { ...state, updatedAt: (/* @__PURE__ */ new Date()).toISOString() };
|
|
8483
8611
|
}
|
|
8484
8612
|
|
|
8485
|
-
export { CLAUDE_CODE_CREDENTIALS_KEY, COMPILE_MANIFEST_FILENAME, CapabilityRegistry, DEFAULT_CAPABILITY_CALL_TIMEOUT_MS, DEFAULT_COALESCE_MS, DEFAULT_FLOW_MUTATE_CONNECTOR_WAIT_MS, MOUNT_LIST_MAX_DEPTH, MOUNT_LIST_MAX_ENTRIES, MOUNT_READ_DEADLINE_FACTOR, MOUNT_TREE_OP_DEADLINE_FACTOR, MarkdownStreamer, PreInitRingSink, agentDefinitionExists, bootstrapCapabilityRegistry, bootstrapRunnerLogStore, buildAgentResources, buildClientCapabilityHandler, buildConnectorTokenMediator, buildContextSection, buildEnvironmentSection, buildResourcesAvailablePayload, buildStoreSnapshotReplay, builtinCapabilities, capabilityLogInstance, clearPreInitRingSink, clearSession, compileComposition, computeCapabilitySignature, connectorRefreshKind, createAgentSession, createFlowConnectorReadiness, createManagedCodexSubpromptDriver, createSessionStimulusBus, defineCapability, deleteSession, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureClaudeSettingsDisablesConnectors, ensureGitConfigInclude, executeConnectorMutate, extractClaudeAiOauthExpiresAt, flowStartNeedsDriverRestart, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, hasNonTerminalFlow, hostOpResumeStimulus, installPreInitRingSink, isTerminalFlowStatus, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadManagedCodexHostConfig, loadSession, loadSessionById, mcpAuthSecretKey, newSession, nulTailPaddingLength, pickFlowToolTarget, pickRepointedManager, planFlowMutate, prepareCodexTools, reconcilePendingDecisions, registerActiveFlow, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveFlowMutateConnectorWaitMs, resolveMixin, runAgentChat, saveSession, setCurrentSession, setUpFlowConnector, startAgentServer, stimulusFromMetas, supportsLiveToolUpdates, touchSession, validateInputResponse, writeClaudeCodeCredentialsFile };
|
|
8486
|
-
//# sourceMappingURL=chunk-
|
|
8487
|
-
//# sourceMappingURL=chunk-
|
|
8613
|
+
export { CLAUDE_CODE_CREDENTIALS_KEY, COMPILE_MANIFEST_FILENAME, CapabilityRegistry, DEFAULT_CAPABILITY_CALL_TIMEOUT_MS, DEFAULT_COALESCE_MS, DEFAULT_FLOW_MUTATE_CONNECTOR_WAIT_MS, MOUNT_LIST_MAX_DEPTH, MOUNT_LIST_MAX_ENTRIES, MOUNT_READ_DEADLINE_FACTOR, MOUNT_TREE_OP_DEADLINE_FACTOR, MarkdownStreamer, PreInitRingSink, SESSION_ROOT_WRITABLE_DIRS, SESSION_ROOT_WRITABLE_FILES, agentDefinitionExists, bootstrapCapabilityRegistry, bootstrapRunnerLogStore, buildAgentResources, buildClientCapabilityHandler, buildConnectorTokenMediator, buildContextSection, buildEnvironmentSection, buildResourcesAvailablePayload, buildStoreSnapshotReplay, builtinCapabilities, capabilityLogInstance, clearPreInitRingSink, clearSession, compileComposition, computeCapabilitySignature, connectorRefreshKind, createAgentSession, createFlowConnectorReadiness, createManagedCodexSubpromptDriver, createSessionStimulusBus, defineCapability, deleteSession, dispatchResourceRequest, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureClaudeSettingsDisablesConnectors, ensureGitConfigInclude, executeConnectorMutate, extractClaudeAiOauthExpiresAt, flowStartNeedsDriverRestart, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, handleSessionRootResourceRequest, hasNonTerminalFlow, hostOpResumeStimulus, installPreInitRingSink, isSessionRootPathAllowed, isTerminalFlowStatus, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadManagedCodexHostConfig, loadSession, loadSessionById, mcpAuthSecretKey, newSession, nulTailPaddingLength, pickFlowToolTarget, pickRepointedManager, planFlowMutate, prepareCodexTools, reconcilePendingDecisions, registerActiveFlow, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveFlowMutateConnectorWaitMs, resolveMixin, runAgentChat, saveSession, setCurrentSession, setUpFlowConnector, startAgentServer, stimulusFromMetas, supportsLiveToolUpdates, touchSession, validateInputResponse, writeClaudeCodeCredentialsFile };
|
|
8614
|
+
//# sourceMappingURL=chunk-Q6SWQEF7.js.map
|
|
8615
|
+
//# sourceMappingURL=chunk-Q6SWQEF7.js.map
|