@mindexec/cli 0.2.466 → 0.2.467

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.
Files changed (22) hide show
  1. package/README.md +2 -0
  2. package/codex-runtime.js +35 -34
  3. package/package.json +6 -4
  4. package/remote-fast/osx-arm64/mindexec-remote-fast.dll +0 -0
  5. package/remote-fast/osx-x64/mindexec-remote-fast.dll +0 -0
  6. package/remote-fast/win-x64/mindexec-remote-fast.dll +0 -0
  7. package/scripts/codex-runtime-home-smoke.mjs +58 -0
  8. package/scripts/codex-sdk-image-live-smoke.mjs +43 -0
  9. package/scripts/codex-sdk-image-runtime-smoke.mjs +1 -0
  10. package/wwwroot/_framework/{MindExecution.Core.psrddqi3mi.dll → MindExecution.Core.7oa1zr128r.dll} +0 -0
  11. package/wwwroot/_framework/{MindExecution.Kernel.emus4f6jja.dll → MindExecution.Kernel.dqr12udjsr.dll} +0 -0
  12. package/wwwroot/_framework/{MindExecution.Plugins.Admin.q3gz9b4wp8.dll → MindExecution.Plugins.Admin.6bt51zpdq7.dll} +0 -0
  13. package/wwwroot/_framework/{MindExecution.Plugins.Business.dr4m9mbnc5.dll → MindExecution.Plugins.Business.e92nh6aw24.dll} +0 -0
  14. package/wwwroot/_framework/{MindExecution.Plugins.Concept.xzrzi61p7e.dll → MindExecution.Plugins.Concept.z5rfp7c5gn.dll} +0 -0
  15. package/wwwroot/_framework/{MindExecution.Plugins.Directory.hcbtf3n8w7.dll → MindExecution.Plugins.Directory.6qmfycdkxt.dll} +0 -0
  16. package/wwwroot/_framework/{MindExecution.Plugins.PlanMaster.1w09epz56f.dll → MindExecution.Plugins.PlanMaster.lbbov61zg3.dll} +0 -0
  17. package/wwwroot/_framework/{MindExecution.Plugins.YouTube.7vjbulgfo8.dll → MindExecution.Plugins.YouTube.7vjisvqu3j.dll} +0 -0
  18. package/wwwroot/_framework/{MindExecution.Shared.zj2n1axexl.dll → MindExecution.Shared.ydgyfah35e.dll} +0 -0
  19. package/wwwroot/_framework/{MindExecution.Web.z1np8j1qu6.dll → MindExecution.Web.b68gpm21e3.dll} +0 -0
  20. package/wwwroot/_framework/blazor.boot.json +21 -21
  21. package/wwwroot/service-worker-assets.js +22 -22
  22. package/wwwroot/service-worker.js +1 -1
package/README.md CHANGED
@@ -274,6 +274,8 @@ Shell/Codex job ?대깽??
274
274
 
275
275
  The TypeScript SDK runs only inside LocalBridge. Browser/WASM clients should call these bridge endpoints and must not import or execute Codex SDK packages directly.
276
276
 
277
+ By default, LocalBridge reuses the active `CODEX_HOME` (or the standard `~/.codex` home) so SDK calls share the existing Codex login. Set `MINDEXEC_CODEX_HOME` only when a deliberately separate MindExec login is required.
278
+
277
279
  ### Port ownership
278
280
 
279
281
  On startup, LocalBridge checks `BRIDGE_PORT` and stops an existing MindExec/LocalBridge listener on that same port before binding. If the port is owned by an unrelated process, startup fails with a clear message instead of silently killing it. Set `BRIDGE_FORCE_KILL_PORT_OWNER=1` only when the launcher owns that port policy and should terminate any listener.
package/codex-runtime.js CHANGED
@@ -41,11 +41,8 @@ const MAX_IMAGE_REFERENCE_COUNT = 8;
41
41
  const MAX_IMAGE_REFERENCE_BYTES = 40 * 1024 * 1024;
42
42
  const MAX_GENERATED_IMAGE_BYTES = 50 * 1024 * 1024;
43
43
  const TEMP_DIR = '.ai/codex';
44
- const CODEX_SOURCE_HOME = path.join(os.homedir(), '.codex');
45
44
  const CODEX_RUNTIME_HOME_ENV = 'MINDEXEC_CODEX_HOME';
46
- const DEFAULT_CODEX_RUNTIME_HOME = path.join(os.homedir(), '.mindexec', 'codex-runtime');
47
45
  const CODEX_RUNTIME_CONFIG_MARKER = '# Generated by MindExec LocalBridge for isolated AI node runs.';
48
- const CODEX_RUNTIME_AUTH_FILES = ['auth.json'];
49
46
  const CODEX_TARGET_BY_PLATFORM = Object.freeze({
50
47
  'win32:x64': {
51
48
  packageName: '@openai/codex-win32-x64',
@@ -130,40 +127,35 @@ function normalizeProviderKind(value) {
130
127
  return '';
131
128
  }
132
129
 
133
- function resolveCodexRuntimeHome() {
134
- const configured = String(process.env[CODEX_RUNTIME_HOME_ENV] || '').trim();
135
- return path.resolve(configured || DEFAULT_CODEX_RUNTIME_HOME);
130
+ function resolveUserCodexHome() {
131
+ const configured = String(process.env.CODEX_HOME || '').trim();
132
+ return path.resolve(configured || path.join(os.homedir(), '.codex'));
136
133
  }
137
134
 
138
- async function copyCodexRuntimeFileIfPresent(fileName, runtimeHome) {
139
- const source = path.join(CODEX_SOURCE_HOME, fileName);
140
- const target = path.join(runtimeHome, fileName);
141
- try {
142
- const targetStat = await fs.stat(target).catch(() => null);
143
- if (targetStat?.isFile()) {
144
- return false;
145
- }
135
+ export function resolveCodexRuntimeHome() {
136
+ const configured = String(process.env[CODEX_RUNTIME_HOME_ENV] || '').trim();
137
+ return path.resolve(configured || resolveUserCodexHome());
138
+ }
146
139
 
147
- const sourceStat = await fs.stat(source);
148
- if (!sourceStat.isFile()) {
149
- return false;
150
- }
140
+ function usesExplicitIsolatedCodexHome() {
141
+ return String(process.env[CODEX_RUNTIME_HOME_ENV] || '').trim().length > 0;
142
+ }
151
143
 
152
- await fs.copyFile(source, target);
153
- return true;
154
- } catch {
155
- return false;
156
- }
144
+ function buildCodexSdkConfigOverrides(additional = {}) {
145
+ return {
146
+ mcp_servers: {},
147
+ ...additional
148
+ };
157
149
  }
158
150
 
159
- async function ensureCodexRuntimeHome() {
151
+ export async function ensureCodexRuntimeHome() {
160
152
  const runtimeHome = resolveCodexRuntimeHome();
161
153
  await fs.mkdir(runtimeHome, { recursive: true });
162
154
  await fs.mkdir(path.join(runtimeHome, 'sessions'), { recursive: true });
163
155
  await fs.mkdir(path.join(runtimeHome, 'generated_images'), { recursive: true });
164
156
 
165
- for (const fileName of CODEX_RUNTIME_AUTH_FILES) {
166
- await copyCodexRuntimeFileIfPresent(fileName, runtimeHome);
157
+ if (!usesExplicitIsolatedCodexHome()) {
158
+ return runtimeHome;
167
159
  }
168
160
 
169
161
  const configPath = path.join(runtimeHome, 'config.toml');
@@ -186,7 +178,7 @@ async function ensureCodexRuntimeHome() {
186
178
  return runtimeHome;
187
179
  }
188
180
 
189
- function buildCodexChildEnv() {
181
+ export function buildCodexChildEnv() {
190
182
  const env = {};
191
183
  for (const [key, value] of Object.entries(process.env)) {
192
184
  if (value !== undefined) {
@@ -195,7 +187,11 @@ function buildCodexChildEnv() {
195
187
  }
196
188
 
197
189
  env.CODEX_HOME = resolveCodexRuntimeHome();
198
- env.MINDEXEC_CODEX_ISOLATED_HOME = '1';
190
+ if (usesExplicitIsolatedCodexHome()) {
191
+ env.MINDEXEC_CODEX_ISOLATED_HOME = '1';
192
+ } else {
193
+ delete env.MINDEXEC_CODEX_ISOLATED_HOME;
194
+ }
199
195
  return env;
200
196
  }
201
197
 
@@ -1011,7 +1007,8 @@ export function createCodexRuntime(options) {
1011
1007
  const sdk = await sdkLoader();
1012
1008
  await prepareRuntimeHome();
1013
1009
  const codex = new sdk.Codex({
1014
- env: childEnvFactory()
1010
+ env: childEnvFactory(),
1011
+ config: buildCodexSdkConfigOverrides()
1015
1012
  });
1016
1013
  const thread = codex.startThread(threadOptions);
1017
1014
  const localThreadId = `local_${crypto.randomUUID()}`;
@@ -1076,7 +1073,8 @@ export function createCodexRuntime(options) {
1076
1073
  const sdk = await sdkLoader();
1077
1074
  await prepareRuntimeHome();
1078
1075
  const codex = new sdk.Codex({
1079
- env: childEnvFactory()
1076
+ env: childEnvFactory(),
1077
+ config: buildCodexSdkConfigOverrides()
1080
1078
  });
1081
1079
  const officialId = requestedThreadId && !requestedThreadId.startsWith('local_')
1082
1080
  ? requestedThreadId
@@ -1231,7 +1229,9 @@ export function createCodexRuntime(options) {
1231
1229
  '-s',
1232
1230
  threadOptions.sandboxMode,
1233
1231
  '--config',
1234
- `model_reasoning_effort=${threadOptions.modelReasoningEffort}`
1232
+ `model_reasoning_effort=${threadOptions.modelReasoningEffort}`,
1233
+ '--config',
1234
+ 'mcp_servers={}'
1235
1235
  ];
1236
1236
  if (threadOptions.model) {
1237
1237
  args.push('-m', threadOptions.model);
@@ -1397,9 +1397,9 @@ export function createCodexRuntime(options) {
1397
1397
  try {
1398
1398
  const codex = new sdk.Codex({
1399
1399
  env: childEnvFactory(),
1400
- config: {
1400
+ config: buildCodexSdkConfigOverrides({
1401
1401
  features: { image_generation: true }
1402
- }
1402
+ })
1403
1403
  });
1404
1404
  const thread = codex.startThread(threadOptions);
1405
1405
  const input = [
@@ -1508,7 +1508,8 @@ export function createCodexRuntime(options) {
1508
1508
  const sdk = await sdkLoader();
1509
1509
  await prepareRuntimeHome();
1510
1510
  const codex = new sdk.Codex({
1511
- env: childEnvFactory()
1511
+ env: childEnvFactory(),
1512
+ config: buildCodexSdkConfigOverrides()
1512
1513
  });
1513
1514
  const thread = codex.resumeThread(threadId, threadOptions);
1514
1515
  threads.set(threadId, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindexec/cli",
3
- "version": "0.2.466",
3
+ "version": "0.2.467",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
@@ -36,10 +36,12 @@
36
36
  "test:desktop:update": "node --test electron/update-manager-smoke.mjs electron/recurring-update-owner-smoke.mjs scripts/desktop-update-worker-smoke.mjs scripts/desktop-update-publisher-smoke.mjs",
37
37
  "test:desktop": "node electron/source-smoke.mjs && node scripts/desktop-workspace-state-smoke.mjs && npm run test:desktop:update",
38
38
  "test:desktop:win": "node electron/windows-package-smoke.mjs",
39
- "test:syntax": "node --check server.js && node --check remote-hub.js && node --check lzo1x.js && node --check mode4-atlas.js && node --check mode4-atlas-worker.js && node --check codex-runtime.js && node --check codex-model-catalog.js && node --check launch-bridge.cjs && node --check port-guard.cjs && node --check desktop-workspace-state.cjs && node --check electron/main.cjs && node --check electron/preload.cjs && node --check electron/update-manager.cjs && node --check electron/update-feed-resolver.cjs && node --check electron/recurring-update-owner.cjs && node --check electron/source-smoke.mjs && node --check electron/windows-package-smoke.mjs && node --check electron/update-manager-smoke.mjs && node --check electron/recurring-update-owner-smoke.mjs && node --check scripts/desktop-workspace-state-smoke.mjs && node --check scripts/desktop-update-worker-smoke.mjs && node --check scripts/desktop-update-publisher-smoke.mjs && node --check scripts/board-render-ownership-smoke.mjs && node --check ../workers/mindexec-desktop-updates/src/index.mjs && node --check scripts/setup-tree-sitter-grammars.mjs && node --check scripts/npm-fresh-install-smoke.mjs && node --check scripts/auth-session-smoke.mjs && node --check scripts/codex-model-catalog-smoke.mjs && node --check scripts/codex-sdk-runtime-smoke.mjs && node --check scripts/codex-sdk-image-runtime-smoke.mjs && node --check scripts/remote-hub-smoke.mjs && node --check scripts/remote-hub-scale-smoke.mjs && node --check scripts/remote-fleet-render-smoke.mjs && node --check scripts/remote-http-smoke.mjs && node --check scripts/remote-frame-ws-smoke.mjs && node --check scripts/remote-input-ws-smoke.mjs && node --check scripts/remote-agent-ws-smoke.mjs && node --check scripts/remote-agent-managed-smoke.mjs && node --check scripts/remote-registry-follower-smoke.mjs && node --check scripts/remote-agent-package-smoke.mjs && node --check scripts/remote-fast-live-rate-smoke.mjs && node --check scripts/remote-fast-mdm-browser-smoke.mjs",
39
+ "test:syntax": "node --check server.js && node --check remote-hub.js && node --check lzo1x.js && node --check mode4-atlas.js && node --check mode4-atlas-worker.js && node --check codex-runtime.js && node --check codex-model-catalog.js && node --check launch-bridge.cjs && node --check port-guard.cjs && node --check desktop-workspace-state.cjs && node --check electron/main.cjs && node --check electron/preload.cjs && node --check electron/update-manager.cjs && node --check electron/update-feed-resolver.cjs && node --check electron/recurring-update-owner.cjs && node --check electron/source-smoke.mjs && node --check electron/windows-package-smoke.mjs && node --check electron/update-manager-smoke.mjs && node --check electron/recurring-update-owner-smoke.mjs && node --check scripts/desktop-workspace-state-smoke.mjs && node --check scripts/desktop-update-worker-smoke.mjs && node --check scripts/desktop-update-publisher-smoke.mjs && node --check scripts/board-render-ownership-smoke.mjs && node --check ../workers/mindexec-desktop-updates/src/index.mjs && node --check scripts/setup-tree-sitter-grammars.mjs && node --check scripts/npm-fresh-install-smoke.mjs && node --check scripts/auth-session-smoke.mjs && node --check scripts/codex-model-catalog-smoke.mjs && node --check scripts/codex-sdk-runtime-smoke.mjs && node --check scripts/codex-sdk-image-runtime-smoke.mjs && node --check scripts/codex-sdk-image-live-smoke.mjs && node --check scripts/codex-runtime-home-smoke.mjs && node --check scripts/remote-hub-smoke.mjs && node --check scripts/remote-hub-scale-smoke.mjs && node --check scripts/remote-fleet-render-smoke.mjs && node --check scripts/remote-http-smoke.mjs && node --check scripts/remote-frame-ws-smoke.mjs && node --check scripts/remote-input-ws-smoke.mjs && node --check scripts/remote-agent-ws-smoke.mjs && node --check scripts/remote-agent-managed-smoke.mjs && node --check scripts/remote-registry-follower-smoke.mjs && node --check scripts/remote-agent-package-smoke.mjs && node --check scripts/remote-fast-live-rate-smoke.mjs && node --check scripts/remote-fast-mdm-browser-smoke.mjs",
40
40
  "test:canvas:board-owner": "node scripts/board-render-ownership-smoke.mjs",
41
- "test:codex-sdk": "node scripts/codex-sdk-runtime-smoke.mjs",
42
- "test:codex-sdk:image": "node scripts/codex-sdk-image-runtime-smoke.mjs",
41
+ "test:codex-sdk": "node scripts/codex-sdk-runtime-smoke.mjs",
42
+ "test:codex-sdk:image": "node scripts/codex-sdk-image-runtime-smoke.mjs",
43
+ "test:codex-sdk:image:live": "node scripts/codex-sdk-image-live-smoke.mjs --live",
44
+ "test:codex-sdk:home": "node scripts/codex-runtime-home-smoke.mjs",
43
45
  "test:codex-sdk:live": "node scripts/codex-sdk-runtime-smoke.mjs --live",
44
46
  "test:codex-sdk:live-tools": "node scripts/codex-sdk-runtime-smoke.mjs --live-tools",
45
47
  "test:codex-model-catalog": "node scripts/codex-model-catalog-smoke.mjs",
@@ -0,0 +1,58 @@
1
+ import assert from 'node:assert/strict';
2
+ import { promises as fs } from 'node:fs';
3
+ import os from 'node:os';
4
+ import path from 'node:path';
5
+ import {
6
+ buildCodexChildEnv,
7
+ ensureCodexRuntimeHome,
8
+ resolveCodexRuntimeHome
9
+ } from '../codex-runtime.js';
10
+
11
+ const previousCodexHome = process.env.CODEX_HOME;
12
+ const previousMindExecCodexHome = process.env.MINDEXEC_CODEX_HOME;
13
+ const sharedHome = await fs.mkdtemp(path.join(os.tmpdir(), 'mindexec-codex-shared-home-'));
14
+ const isolatedHome = await fs.mkdtemp(path.join(os.tmpdir(), 'mindexec-codex-isolated-home-'));
15
+
16
+ try {
17
+ process.env.CODEX_HOME = sharedHome;
18
+ delete process.env.MINDEXEC_CODEX_HOME;
19
+
20
+ assert.equal(resolveCodexRuntimeHome(), path.resolve(sharedHome));
21
+ assert.equal(await ensureCodexRuntimeHome(), path.resolve(sharedHome));
22
+ assert.equal(await fs.stat(path.join(sharedHome, 'sessions')).then(() => true), true);
23
+ assert.equal(await fs.stat(path.join(sharedHome, 'generated_images')).then(() => true), true);
24
+ assert.equal(await fs.stat(path.join(sharedHome, 'config.toml')).then(() => true).catch(() => false), false);
25
+
26
+ const sharedEnv = buildCodexChildEnv();
27
+ assert.equal(sharedEnv.CODEX_HOME, path.resolve(sharedHome));
28
+ assert.equal(sharedEnv.MINDEXEC_CODEX_ISOLATED_HOME, undefined);
29
+
30
+ process.env.MINDEXEC_CODEX_HOME = isolatedHome;
31
+ assert.equal(resolveCodexRuntimeHome(), path.resolve(isolatedHome));
32
+ assert.equal(await ensureCodexRuntimeHome(), path.resolve(isolatedHome));
33
+ const isolatedConfig = await fs.readFile(path.join(isolatedHome, 'config.toml'), 'utf8');
34
+ assert.match(isolatedConfig, /Generated by MindExec LocalBridge for isolated AI node runs/);
35
+
36
+ const isolatedEnv = buildCodexChildEnv();
37
+ assert.equal(isolatedEnv.CODEX_HOME, path.resolve(isolatedHome));
38
+ assert.equal(isolatedEnv.MINDEXEC_CODEX_ISOLATED_HOME, '1');
39
+
40
+ console.log(JSON.stringify({
41
+ ok: true,
42
+ sharedCodexLoginHome: true,
43
+ explicitIsolationOnly: true
44
+ }));
45
+ } finally {
46
+ if (previousCodexHome === undefined) {
47
+ delete process.env.CODEX_HOME;
48
+ } else {
49
+ process.env.CODEX_HOME = previousCodexHome;
50
+ }
51
+ if (previousMindExecCodexHome === undefined) {
52
+ delete process.env.MINDEXEC_CODEX_HOME;
53
+ } else {
54
+ process.env.MINDEXEC_CODEX_HOME = previousMindExecCodexHome;
55
+ }
56
+ await fs.rm(sharedHome, { recursive: true, force: true });
57
+ await fs.rm(isolatedHome, { recursive: true, force: true });
58
+ }
@@ -0,0 +1,43 @@
1
+ import assert from 'node:assert/strict';
2
+ import path from 'node:path';
3
+ import { fileURLToPath } from 'node:url';
4
+ import { createCodexRuntime, resolveCodexRuntimeHome } from '../codex-runtime.js';
5
+
6
+ if (!process.argv.includes('--live')) {
7
+ console.log(JSON.stringify({ ok: true, liveImage: false }));
8
+ process.exit(0);
9
+ }
10
+
11
+ const scriptDir = path.dirname(fileURLToPath(import.meta.url));
12
+ const packageRoot = path.resolve(scriptDir, '..');
13
+ const workspaceRoot = path.resolve(packageRoot, '..');
14
+ const runtime = createCodexRuntime({
15
+ packageRoot,
16
+ resolveWorkingDirectory: async () => workspaceRoot,
17
+ getCurrentRuntime: () => ({}),
18
+ getModelCatalog: async () => ({ models: [], source: 'live-smoke', updatedAt: new Date().toISOString() }),
19
+ log: () => {}
20
+ });
21
+
22
+ const result = await runtime.runImage({
23
+ prompt: 'Create a clean square test image with one solid blue circle centered on a white background. No text.',
24
+ size: '1024x1024',
25
+ quality: 'low'
26
+ });
27
+
28
+ assert.equal(result.success, true, result.error);
29
+ assert.equal(result.providerKind, 'TypeScriptSdk');
30
+ assert.equal(result.authenticationRequired, false);
31
+ assert.equal(result.loginOpened, false, 'The existing Codex login should be reused without opening sign-in.');
32
+ assert.ok(result.imageBase64.length > 1000, 'The live SDK image result was unexpectedly small.');
33
+ assert.match(result.mimeType, /^image\//);
34
+
35
+ console.log(JSON.stringify({
36
+ ok: true,
37
+ liveImage: true,
38
+ providerKind: result.providerKind,
39
+ sharedCodexHome: resolveCodexRuntimeHome(),
40
+ loginOpened: result.loginOpened,
41
+ mimeType: result.mimeType,
42
+ imageBytesApprox: Math.floor(result.imageBase64.length * 0.75)
43
+ }));
@@ -80,6 +80,7 @@ try {
80
80
  assert.equal(generated.imageBase64, tinyPngBase64);
81
81
  assert.equal(generated.mimeType, 'image/png');
82
82
  assert.equal(captures.codexOptions[0].config.features.image_generation, true);
83
+ assert.deepEqual(captures.codexOptions[0].config.mcp_servers, {});
83
84
  assert.equal(captures.threadOptions[0].sandboxMode, 'read-only');
84
85
  assert.equal(captures.inputs[0][0].type, 'text');
85
86
  assert.equal(captures.inputs[0][1].type, 'local_image');
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "MindExecution.Web",
3
3
  "resources": {
4
- "hash": "sha256-ZCsr6yMshf12g8H1C7Es4Bcxp7qN8HF/8VqttnLuOao=",
4
+ "hash": "sha256-pm9gUyCN7xLw9EaSc1lL5kN8jJ23nv5LAeniQeW0HHY=",
5
5
  "fingerprinting": {
6
6
  "Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
7
7
  "Markdig.d1j7v41cl1.dll": "Markdig.dll",
@@ -122,16 +122,16 @@
122
122
  "System.brmz7yk5qh.dll": "System.dll",
123
123
  "netstandard.b50t77veor.dll": "netstandard.dll",
124
124
  "System.Private.CoreLib.g6ztz7cmo2.dll": "System.Private.CoreLib.dll",
125
- "MindExecution.Core.psrddqi3mi.dll": "MindExecution.Core.dll",
126
- "MindExecution.Kernel.emus4f6jja.dll": "MindExecution.Kernel.dll",
127
- "MindExecution.Plugins.Admin.q3gz9b4wp8.dll": "MindExecution.Plugins.Admin.dll",
128
- "MindExecution.Plugins.Business.dr4m9mbnc5.dll": "MindExecution.Plugins.Business.dll",
129
- "MindExecution.Plugins.Concept.xzrzi61p7e.dll": "MindExecution.Plugins.Concept.dll",
130
- "MindExecution.Plugins.Directory.hcbtf3n8w7.dll": "MindExecution.Plugins.Directory.dll",
131
- "MindExecution.Plugins.PlanMaster.1w09epz56f.dll": "MindExecution.Plugins.PlanMaster.dll",
132
- "MindExecution.Plugins.YouTube.7vjbulgfo8.dll": "MindExecution.Plugins.YouTube.dll",
133
- "MindExecution.Shared.zj2n1axexl.dll": "MindExecution.Shared.dll",
134
- "MindExecution.Web.z1np8j1qu6.dll": "MindExecution.Web.dll",
125
+ "MindExecution.Core.7oa1zr128r.dll": "MindExecution.Core.dll",
126
+ "MindExecution.Kernel.dqr12udjsr.dll": "MindExecution.Kernel.dll",
127
+ "MindExecution.Plugins.Admin.6bt51zpdq7.dll": "MindExecution.Plugins.Admin.dll",
128
+ "MindExecution.Plugins.Business.e92nh6aw24.dll": "MindExecution.Plugins.Business.dll",
129
+ "MindExecution.Plugins.Concept.z5rfp7c5gn.dll": "MindExecution.Plugins.Concept.dll",
130
+ "MindExecution.Plugins.Directory.6qmfycdkxt.dll": "MindExecution.Plugins.Directory.dll",
131
+ "MindExecution.Plugins.PlanMaster.lbbov61zg3.dll": "MindExecution.Plugins.PlanMaster.dll",
132
+ "MindExecution.Plugins.YouTube.7vjisvqu3j.dll": "MindExecution.Plugins.YouTube.dll",
133
+ "MindExecution.Shared.ydgyfah35e.dll": "MindExecution.Shared.dll",
134
+ "MindExecution.Web.b68gpm21e3.dll": "MindExecution.Web.dll",
135
135
  "dotnet.native.566r55w3xu.js": "dotnet.native.js",
136
136
  "dotnet.native.x6q5aixc38.wasm": "dotnet.native.wasm",
137
137
  "dotnet.js": "dotnet.js",
@@ -276,18 +276,18 @@
276
276
  "System.Xml.XDocument.sn51jas17n.dll": "sha256-GNI2kFgFmPTwzuzwUn8gxK+AzGLUWRJFdg9JzIbrybQ=",
277
277
  "System.brmz7yk5qh.dll": "sha256-CfM2miyj1KHApFmqMdLYWio3S/jrdON2pW9Xr2nTwlo=",
278
278
  "netstandard.b50t77veor.dll": "sha256-//jQGOXjb8ET8WtXgOJrAxLx6E7zDJ5RjRRutwkvmxo=",
279
- "MindExecution.Core.psrddqi3mi.dll": "sha256-B33cTW2KC7j+nxxSkwA1KD3qCGmLk7qH0DvEMA+qPCk=",
280
- "MindExecution.Kernel.emus4f6jja.dll": "sha256-+jWRYJUSZg/+/yuEpHFeoW05bwhQq+1uJ519QRLal6o=",
281
- "MindExecution.Plugins.Business.dr4m9mbnc5.dll": "sha256-mfINIgO0Jb1B9JNJVuBjGebWdT05+X1WusarZ0UhC2E=",
282
- "MindExecution.Plugins.Concept.xzrzi61p7e.dll": "sha256-gw0HIuC4xerbOv3GbS/66kRPU98Hzo5oWVC7BCFig3A=",
283
- "MindExecution.Plugins.PlanMaster.1w09epz56f.dll": "sha256-wa5PyOU/QkpFcW0/wiNbtYjtEIOtkqfuqaQsVeAMXBk=",
284
- "MindExecution.Shared.zj2n1axexl.dll": "sha256-UfqtUG6XriHJTwSc8E0LUD65HYeTJxSedYz4UZl8dg8=",
285
- "MindExecution.Web.z1np8j1qu6.dll": "sha256-9wQB1wuAG+0sMQV1UZOybyqGSWmQyBMyMxJrHwpQFp4="
279
+ "MindExecution.Core.7oa1zr128r.dll": "sha256-uTTfp+Iu3C7jgsyLauWGcGYcFQsEcPHA1FGCKQXrTGk=",
280
+ "MindExecution.Kernel.dqr12udjsr.dll": "sha256-pUxuISA8V4Ro0H+636QoXiU5+VF3BW7L27zas6ovW0U=",
281
+ "MindExecution.Plugins.Business.e92nh6aw24.dll": "sha256-MpREZ+eukJRDg6mQ7ZOEAe6yHl9UtocC07LTTmFxI5E=",
282
+ "MindExecution.Plugins.Concept.z5rfp7c5gn.dll": "sha256-R2ye/oFIO0haYP3I01gV/4gpQBd1scfEusjPznFWbvg=",
283
+ "MindExecution.Plugins.PlanMaster.lbbov61zg3.dll": "sha256-UXaJeM7BqhQCv3DY1zkiXGJRNxquudkBYgmchgxnx00=",
284
+ "MindExecution.Shared.ydgyfah35e.dll": "sha256-di5LlqqDZKM+3+CBUxQUQ/rFwOF5laSkr1PCjz2pgdk=",
285
+ "MindExecution.Web.b68gpm21e3.dll": "sha256-nUEDIUiOGqD37D3xgqqysvvUQneVI5rxGZ6aBRZUI8U="
286
286
  },
287
287
  "lazyAssembly": {
288
- "MindExecution.Plugins.Admin.q3gz9b4wp8.dll": "sha256-us79gHGdEtfuUIlKqMmJZFbHE9sB+OBzsGgiaOIJCGk=",
289
- "MindExecution.Plugins.Directory.hcbtf3n8w7.dll": "sha256-T1ay20LkWJDPggiQ1ws5h0f6e34xLCmQV3qXVsMZIHc=",
290
- "MindExecution.Plugins.YouTube.7vjbulgfo8.dll": "sha256-rbRIYqL6wVvLLLHmkDp3ct+dVjUGw7mW8bn3c30SvuA="
288
+ "MindExecution.Plugins.Admin.6bt51zpdq7.dll": "sha256-ogBaZoZztkITRjNx0LAIr0vZH2phNsJlQE5iRw6Ws+c=",
289
+ "MindExecution.Plugins.Directory.6qmfycdkxt.dll": "sha256-Mv2nGkAFk5n8CH/OVWfSL4vrEwNXBmZ8ULHFjeluERs=",
290
+ "MindExecution.Plugins.YouTube.7vjisvqu3j.dll": "sha256-7TKJ3SFwKH+iO+CRm3QxBuRIyNZGOcBp822L3KrEE1k="
291
291
  }
292
292
  },
293
293
  "cacheBootResources": true,
@@ -1,5 +1,5 @@
1
1
  self.assetsManifest = {
2
- "version": "plldCWxD",
2
+ "version": "c6MTEECG",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -438,44 +438,44 @@ self.assetsManifest = {
438
438
  "url": "_framework/MimeMapping.og9ys58ylm.dll"
439
439
  },
440
440
  {
441
- "hash": "sha256-B33cTW2KC7j+nxxSkwA1KD3qCGmLk7qH0DvEMA+qPCk=",
442
- "url": "_framework/MindExecution.Core.psrddqi3mi.dll"
441
+ "hash": "sha256-uTTfp+Iu3C7jgsyLauWGcGYcFQsEcPHA1FGCKQXrTGk=",
442
+ "url": "_framework/MindExecution.Core.7oa1zr128r.dll"
443
443
  },
444
444
  {
445
- "hash": "sha256-+jWRYJUSZg/+/yuEpHFeoW05bwhQq+1uJ519QRLal6o=",
446
- "url": "_framework/MindExecution.Kernel.emus4f6jja.dll"
445
+ "hash": "sha256-pUxuISA8V4Ro0H+636QoXiU5+VF3BW7L27zas6ovW0U=",
446
+ "url": "_framework/MindExecution.Kernel.dqr12udjsr.dll"
447
447
  },
448
448
  {
449
- "hash": "sha256-us79gHGdEtfuUIlKqMmJZFbHE9sB+OBzsGgiaOIJCGk=",
450
- "url": "_framework/MindExecution.Plugins.Admin.q3gz9b4wp8.dll"
449
+ "hash": "sha256-ogBaZoZztkITRjNx0LAIr0vZH2phNsJlQE5iRw6Ws+c=",
450
+ "url": "_framework/MindExecution.Plugins.Admin.6bt51zpdq7.dll"
451
451
  },
452
452
  {
453
- "hash": "sha256-mfINIgO0Jb1B9JNJVuBjGebWdT05+X1WusarZ0UhC2E=",
454
- "url": "_framework/MindExecution.Plugins.Business.dr4m9mbnc5.dll"
453
+ "hash": "sha256-MpREZ+eukJRDg6mQ7ZOEAe6yHl9UtocC07LTTmFxI5E=",
454
+ "url": "_framework/MindExecution.Plugins.Business.e92nh6aw24.dll"
455
455
  },
456
456
  {
457
- "hash": "sha256-gw0HIuC4xerbOv3GbS/66kRPU98Hzo5oWVC7BCFig3A=",
458
- "url": "_framework/MindExecution.Plugins.Concept.xzrzi61p7e.dll"
457
+ "hash": "sha256-R2ye/oFIO0haYP3I01gV/4gpQBd1scfEusjPznFWbvg=",
458
+ "url": "_framework/MindExecution.Plugins.Concept.z5rfp7c5gn.dll"
459
459
  },
460
460
  {
461
- "hash": "sha256-T1ay20LkWJDPggiQ1ws5h0f6e34xLCmQV3qXVsMZIHc=",
462
- "url": "_framework/MindExecution.Plugins.Directory.hcbtf3n8w7.dll"
461
+ "hash": "sha256-Mv2nGkAFk5n8CH/OVWfSL4vrEwNXBmZ8ULHFjeluERs=",
462
+ "url": "_framework/MindExecution.Plugins.Directory.6qmfycdkxt.dll"
463
463
  },
464
464
  {
465
- "hash": "sha256-wa5PyOU/QkpFcW0/wiNbtYjtEIOtkqfuqaQsVeAMXBk=",
466
- "url": "_framework/MindExecution.Plugins.PlanMaster.1w09epz56f.dll"
465
+ "hash": "sha256-UXaJeM7BqhQCv3DY1zkiXGJRNxquudkBYgmchgxnx00=",
466
+ "url": "_framework/MindExecution.Plugins.PlanMaster.lbbov61zg3.dll"
467
467
  },
468
468
  {
469
- "hash": "sha256-rbRIYqL6wVvLLLHmkDp3ct+dVjUGw7mW8bn3c30SvuA=",
470
- "url": "_framework/MindExecution.Plugins.YouTube.7vjbulgfo8.dll"
469
+ "hash": "sha256-7TKJ3SFwKH+iO+CRm3QxBuRIyNZGOcBp822L3KrEE1k=",
470
+ "url": "_framework/MindExecution.Plugins.YouTube.7vjisvqu3j.dll"
471
471
  },
472
472
  {
473
- "hash": "sha256-UfqtUG6XriHJTwSc8E0LUD65HYeTJxSedYz4UZl8dg8=",
474
- "url": "_framework/MindExecution.Shared.zj2n1axexl.dll"
473
+ "hash": "sha256-di5LlqqDZKM+3+CBUxQUQ/rFwOF5laSkr1PCjz2pgdk=",
474
+ "url": "_framework/MindExecution.Shared.ydgyfah35e.dll"
475
475
  },
476
476
  {
477
- "hash": "sha256-9wQB1wuAG+0sMQV1UZOybyqGSWmQyBMyMxJrHwpQFp4=",
478
- "url": "_framework/MindExecution.Web.z1np8j1qu6.dll"
477
+ "hash": "sha256-nUEDIUiOGqD37D3xgqqysvvUQneVI5rxGZ6aBRZUI8U=",
478
+ "url": "_framework/MindExecution.Web.b68gpm21e3.dll"
479
479
  },
480
480
  {
481
481
  "hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
@@ -794,7 +794,7 @@ self.assetsManifest = {
794
794
  "url": "_framework/Websocket.Client.vapounvmnl.dll"
795
795
  },
796
796
  {
797
- "hash": "sha256-yveVWUW29Nw/d1qRdB9Q6r3BjTMpqnEkjEhqwMxzaI4=",
797
+ "hash": "sha256-8w2+rpH82kqP3ROeFCRsVPI79rYq7JtRXjv5ZoRYfjk=",
798
798
  "url": "_framework/blazor.boot.json"
799
799
  },
800
800
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: plldCWxD */
1
+ /* Manifest version: c6MTEECG */
2
2
  // Hosted deployments should prefer the network over stale offline caches.
3
3
  // This service worker immediately clears old Blazor offline caches and unregisters itself.
4
4