@bike4mind/cli 0.10.0 → 0.10.2
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/dist/{ConfigStore-DPWN3-0c.mjs → ConfigStore-BX6XcTa1.mjs} +76 -54
- package/dist/commands/apiCommand.mjs +1 -1
- package/dist/commands/doctorCommand.mjs +1 -1
- package/dist/commands/headlessCommand.mjs +2 -2
- package/dist/commands/mcpCommand.mjs +1 -1
- package/dist/commands/updateCommand.mjs +1 -1
- package/dist/index.mjs +243 -24
- package/dist/{tools-_X4rUM4L.mjs → tools-t-9dtjjl.mjs} +408 -8979
- package/dist/{updateChecker-C3DYG0Gn.mjs → updateChecker-DdgysXM8.mjs} +1 -1
- package/package.json +10 -7
|
@@ -12,7 +12,7 @@ import timezone from "dayjs/plugin/timezone.js";
|
|
|
12
12
|
import utc from "dayjs/plugin/utc.js";
|
|
13
13
|
import relativeTime from "dayjs/plugin/relativeTime.js";
|
|
14
14
|
import localizedFormat from "dayjs/plugin/localizedFormat.js";
|
|
15
|
-
import fs
|
|
15
|
+
import fs from "fs/promises";
|
|
16
16
|
//#region ../../b4m-core/common/dist/types/entities/UserTypes.mjs
|
|
17
17
|
let CollectionType = /* @__PURE__ */ function(CollectionType) {
|
|
18
18
|
CollectionType["NOTEBOOK"] = "notebook";
|
|
@@ -299,6 +299,8 @@ let ImageModels = /* @__PURE__ */ function(ImageModels) {
|
|
|
299
299
|
ImageModels["GROK_IMAGINE_IMAGE_QUALITY"] = "grok-imagine-image-quality";
|
|
300
300
|
ImageModels["GEMINI_2_5_FLASH_IMAGE"] = "gemini-2.5-flash-image";
|
|
301
301
|
ImageModels["GEMINI_3_PRO_IMAGE_PREVIEW"] = "gemini-3-pro-image-preview";
|
|
302
|
+
ImageModels["GEMINI_3_1_FLASH_IMAGE"] = "gemini-3.1-flash-image";
|
|
303
|
+
ImageModels["GEMINI_3_PRO_IMAGE"] = "gemini-3-pro-image";
|
|
302
304
|
return ImageModels;
|
|
303
305
|
}({});
|
|
304
306
|
Object.values(ImageModels);
|
|
@@ -377,9 +379,11 @@ let ChatModels = /* @__PURE__ */ function(ChatModels) {
|
|
|
377
379
|
ChatModels["CLAUDE_4_8_OPUS"] = "claude-opus-4-8";
|
|
378
380
|
ChatModels["JURASSIC2_ULTRA"] = "ai21.j2-ultra-v1";
|
|
379
381
|
ChatModels["JURASSIC2_MID"] = "ai21.j2-mid-v1";
|
|
382
|
+
ChatModels["GEMINI_3_5_FLASH"] = "gemini-3.5-flash";
|
|
380
383
|
ChatModels["GEMINI_3_1_PRO_PREVIEW"] = "gemini-3.1-pro-preview";
|
|
381
|
-
ChatModels["
|
|
384
|
+
ChatModels["GEMINI_3_1_FLASH_LITE"] = "gemini-3.1-flash-lite";
|
|
382
385
|
ChatModels["GEMINI_3_FLASH_PREVIEW"] = "gemini-3-flash-preview";
|
|
386
|
+
ChatModels["GEMINI_3_PRO_PREVIEW"] = "gemini-3-pro-preview";
|
|
383
387
|
ChatModels["GEMINI_2_5_PRO"] = "gemini-2.5-pro";
|
|
384
388
|
ChatModels["GEMINI_2_5_FLASH"] = "gemini-2.5-flash";
|
|
385
389
|
ChatModels["GEMINI_2_5_FLASH_LITE"] = "gemini-2.5-flash-lite";
|
|
@@ -418,44 +422,13 @@ const REASONING_SUPPORTED_MODELS = new Set([
|
|
|
418
422
|
"gpt-5.1",
|
|
419
423
|
"gpt-5.2"
|
|
420
424
|
]);
|
|
421
|
-
|
|
422
|
-
* Models that only support temperature=1 (no custom temperature).
|
|
423
|
-
* Includes:
|
|
424
|
-
* - All reasoning models (OpenAI requires temp=1 when reasoning is active)
|
|
425
|
-
* - chat-latest variants that enforce this constraint
|
|
426
|
-
* - GPT-5.5, which rejects custom temperature even though it does not expose
|
|
427
|
-
* reasoning controls
|
|
428
|
-
*/
|
|
429
|
-
const FIXED_TEMPERATURE_MODELS = new Set([
|
|
425
|
+
new Set([
|
|
430
426
|
...Array.from(REASONING_SUPPORTED_MODELS),
|
|
431
427
|
"gpt-5.1-chat-latest",
|
|
432
428
|
"gpt-5.2-chat-latest",
|
|
433
429
|
"gpt-5.5"
|
|
434
430
|
]);
|
|
435
431
|
/**
|
|
436
|
-
* Models that do not accept the temperature parameter at all.
|
|
437
|
-
* The API will reject requests that include temperature for these models.
|
|
438
|
-
*/
|
|
439
|
-
const NO_TEMPERATURE_MODELS = new Set([
|
|
440
|
-
"claude-opus-4-7",
|
|
441
|
-
"global.anthropic.claude-opus-4-7",
|
|
442
|
-
"claude-opus-4-8",
|
|
443
|
-
"global.anthropic.claude-opus-4-8"
|
|
444
|
-
]);
|
|
445
|
-
/**
|
|
446
|
-
* Bedrock-hosted Claude models that do NOT support prompt caching (`cache_control`).
|
|
447
|
-
* Sending `cache_control` to these models triggers a Bedrock deserialization error:
|
|
448
|
-
* `tools.N.cache_control: Extra inputs are not permitted`
|
|
449
|
-
*
|
|
450
|
-
* AWS Bedrock added prompt caching for Claude 3.5 Haiku and Claude 3.7 Sonnet (and later);
|
|
451
|
-
* the OG Claude 3 Haiku and the v1 Claude 3.5 Sonnet were not retrofitted.
|
|
452
|
-
*
|
|
453
|
-
* Keep this set narrow — default behavior is to apply caching when `cacheStrategy.enableCaching`
|
|
454
|
-
* is true. Add a model here only when we have concrete evidence (a Bedrock validation error)
|
|
455
|
-
* that it rejects `cache_control`.
|
|
456
|
-
*/
|
|
457
|
-
const BEDROCK_NO_PROMPT_CACHING_MODELS = new Set(["anthropic.claude-3-haiku-20240307-v1:0", "anthropic.claude-3-5-sonnet-20240620-v1:0"]);
|
|
458
|
-
/**
|
|
459
432
|
* Speech to Text Models
|
|
460
433
|
*
|
|
461
434
|
*/
|
|
@@ -500,13 +473,6 @@ z.enum({
|
|
|
500
473
|
...SpeechToTextModels,
|
|
501
474
|
...VideoModels
|
|
502
475
|
});
|
|
503
|
-
/** Returns true if the model is deprecated on or before the provided date (default: now). */
|
|
504
|
-
const isModelDeprecated = (model, now = /* @__PURE__ */ new Date()) => {
|
|
505
|
-
if (!model.deprecationDate) return false;
|
|
506
|
-
const todayYMD = new Date(now.toISOString().slice(0, 10));
|
|
507
|
-
const cutoff = /* @__PURE__ */ new Date(model.deprecationDate + "T00:00:00Z");
|
|
508
|
-
return todayYMD.getTime() >= cutoff.getTime();
|
|
509
|
-
};
|
|
510
476
|
z$1.enum([
|
|
511
477
|
"openai",
|
|
512
478
|
"test",
|
|
@@ -1002,6 +968,10 @@ let ApiKeyScope = /* @__PURE__ */ function(ApiKeyScope) {
|
|
|
1002
968
|
* radius of a sprite-spawning credential, not a billable AI key. */
|
|
1003
969
|
ApiKeyScope["CC_BRIDGE"] = "cc-bridge:connect";
|
|
1004
970
|
ApiKeyScope["ADMIN"] = "admin:*";
|
|
971
|
+
ApiKeyScope["MARKETING_REPORTS_READ"] = "marketing-reports:read";
|
|
972
|
+
ApiKeyScope["MARKETING_REPORTS_WRITE"] = "marketing-reports:write";
|
|
973
|
+
/** Server-to-server ingest scope for Overwatch analytics. Admin-provisioned only — never shown in user-facing key creation UI. */
|
|
974
|
+
ApiKeyScope["OVERWATCH_INGEST_WRITE"] = "overwatch-ingest:write";
|
|
1005
975
|
return ApiKeyScope;
|
|
1006
976
|
}({});
|
|
1007
977
|
/** Valid document types that can be favorited */
|
|
@@ -3440,7 +3410,12 @@ const XAI_IMAGE_MODELS = ["grok-imagine-image-quality"];
|
|
|
3440
3410
|
* Gemini Image Models (Nano Banana)
|
|
3441
3411
|
* Based on https://ai.google.dev/gemini-api/docs/image-generation
|
|
3442
3412
|
*/
|
|
3443
|
-
const GEMINI_IMAGE_MODELS = [
|
|
3413
|
+
const GEMINI_IMAGE_MODELS = [
|
|
3414
|
+
"gemini-2.5-flash-image",
|
|
3415
|
+
"gemini-3-pro-image-preview",
|
|
3416
|
+
"gemini-3-pro-image",
|
|
3417
|
+
"gemini-3.1-flash-image"
|
|
3418
|
+
];
|
|
3444
3419
|
z.object({
|
|
3445
3420
|
prompt: z.string().min(1),
|
|
3446
3421
|
n: z.number().min(1).max(8).prefault(1).optional(),
|
|
@@ -3667,6 +3642,8 @@ z.enum([
|
|
|
3667
3642
|
"EnableRapidReplyDefault",
|
|
3668
3643
|
"EnableLattice",
|
|
3669
3644
|
"EnableLatticeDefault",
|
|
3645
|
+
"EnableDataLakes",
|
|
3646
|
+
"EnableDataLakesDefault",
|
|
3670
3647
|
"RapidReplySettings",
|
|
3671
3648
|
"EnableResearchEngine",
|
|
3672
3649
|
"EnableResearchEngineDefault",
|
|
@@ -5039,6 +5016,25 @@ const settingsMap = {
|
|
|
5039
5016
|
group: API_SERVICE_GROUPS.NOTEBOOK.id,
|
|
5040
5017
|
order: 1
|
|
5041
5018
|
}),
|
|
5019
|
+
EnableDataLakes: makeBooleanSetting({
|
|
5020
|
+
key: "EnableDataLakes",
|
|
5021
|
+
name: "Enable Data Lakes",
|
|
5022
|
+
defaultValue: false,
|
|
5023
|
+
description: "Server-side gate for the Data Lake capability (bulk folder ingestion). Off by default — turn on to expose the data-lake APIs and wizard.",
|
|
5024
|
+
category: "Experimental",
|
|
5025
|
+
group: API_SERVICE_GROUPS.EXPERIMENTAL.id,
|
|
5026
|
+
order: 88
|
|
5027
|
+
}),
|
|
5028
|
+
EnableDataLakesDefault: makeBooleanSetting({
|
|
5029
|
+
key: "EnableDataLakesDefault",
|
|
5030
|
+
name: "Data Lakes: On by default for users",
|
|
5031
|
+
defaultValue: false,
|
|
5032
|
+
description: "When enabled, Data Lakes is active for users who have never explicitly toggled it.",
|
|
5033
|
+
category: "Experimental",
|
|
5034
|
+
group: API_SERVICE_GROUPS.EXPERIMENTAL.id,
|
|
5035
|
+
order: 89,
|
|
5036
|
+
dependsOn: "EnableDataLakes"
|
|
5037
|
+
}),
|
|
5042
5038
|
EnableQuestMaster: makeBooleanSetting({
|
|
5043
5039
|
key: "EnableQuestMaster",
|
|
5044
5040
|
name: "Enable Quest Master",
|
|
@@ -7661,18 +7657,36 @@ z$1.object({
|
|
|
7661
7657
|
slug: z$1.string().min(2).max(60).regex(slugRegex, "Slug must be lowercase alphanumeric with hyphens (e.g. \"my-data-lake\")"),
|
|
7662
7658
|
description: z$1.string().max(2e3).optional(),
|
|
7663
7659
|
fileTagPrefix: z$1.string().min(2).max(30).refine((s) => s.endsWith(":"), "Tag prefix must end with \":\" (e.g. \"acme:\")"),
|
|
7664
|
-
requiredUserTag: z$1.string().min(1).max(100).optional()
|
|
7665
|
-
organizationId: z$1.string().optional()
|
|
7660
|
+
requiredUserTag: z$1.string().min(1).max(100).optional()
|
|
7666
7661
|
});
|
|
7667
7662
|
z$1.object({
|
|
7668
7663
|
name: z$1.string().min(1).max(200).optional(),
|
|
7669
7664
|
description: z$1.string().max(2e3).optional(),
|
|
7670
|
-
requiredUserTag: z$1.string().min(1).max(100).optional()
|
|
7671
|
-
status: z$1.enum(["active", "archived"]).optional()
|
|
7665
|
+
requiredUserTag: z$1.string().min(1).max(100).optional()
|
|
7672
7666
|
});
|
|
7673
7667
|
z$1.object({
|
|
7674
7668
|
organizationId: z$1.string().optional(),
|
|
7675
|
-
status: z$1.enum([
|
|
7669
|
+
status: z$1.enum([
|
|
7670
|
+
"draft",
|
|
7671
|
+
"active",
|
|
7672
|
+
"archived",
|
|
7673
|
+
"deleted"
|
|
7674
|
+
]).optional()
|
|
7675
|
+
});
|
|
7676
|
+
const ConflictResolutionSchema = z$1.enum([
|
|
7677
|
+
"skip",
|
|
7678
|
+
"update",
|
|
7679
|
+
"duplicate"
|
|
7680
|
+
]);
|
|
7681
|
+
z$1.object({
|
|
7682
|
+
dataLakeId: z$1.string(),
|
|
7683
|
+
totalFiles: z$1.number().positive(),
|
|
7684
|
+
totalSizeBytes: z$1.number().nonnegative(),
|
|
7685
|
+
conflictResolution: ConflictResolutionSchema.optional(),
|
|
7686
|
+
appliedTags: z$1.array(z$1.object({
|
|
7687
|
+
name: z$1.string(),
|
|
7688
|
+
strength: z$1.number()
|
|
7689
|
+
})).optional()
|
|
7676
7690
|
});
|
|
7677
7691
|
const BatchPresignedUrlFileItem = z$1.object({
|
|
7678
7692
|
fileName: z$1.string().min(1),
|
|
@@ -7687,7 +7701,13 @@ const BatchPresignedUrlFileItem = z$1.object({
|
|
|
7687
7701
|
});
|
|
7688
7702
|
z$1.object({
|
|
7689
7703
|
files: z$1.array(BatchPresignedUrlFileItem).min(1).max(100),
|
|
7690
|
-
dataLakeSlug: z$1.string().optional()
|
|
7704
|
+
dataLakeSlug: z$1.string().optional(),
|
|
7705
|
+
/**
|
|
7706
|
+
* When uploading into a data lake batch, the batch id so each created FabFile is
|
|
7707
|
+
* correlated to the batch (stamped with batchId) AND appended to the batch
|
|
7708
|
+
* manifest. Without it the pipeline can't track batch progress.
|
|
7709
|
+
*/
|
|
7710
|
+
batchId: z$1.string().optional()
|
|
7691
7711
|
});
|
|
7692
7712
|
const InferTaxonomyFolderEntry = z$1.object({
|
|
7693
7713
|
relativePath: z$1.string(),
|
|
@@ -7713,7 +7733,9 @@ const SyncDeltaFileEntry = z$1.object({
|
|
|
7713
7733
|
});
|
|
7714
7734
|
z$1.object({
|
|
7715
7735
|
dataLakeSlug: z$1.string(),
|
|
7716
|
-
currentFiles: z$1.array(SyncDeltaFileEntry).min(1).max(1e4)
|
|
7736
|
+
currentFiles: z$1.array(SyncDeltaFileEntry).min(1).max(1e4),
|
|
7737
|
+
/** Per-request dedup policy for files whose content hash already exists. Defaults to 'skip'. */
|
|
7738
|
+
conflictResolution: ConflictResolutionSchema.optional()
|
|
7717
7739
|
});
|
|
7718
7740
|
z$1.object({
|
|
7719
7741
|
dataLakeSlug: z$1.string(),
|
|
@@ -9346,7 +9368,7 @@ const logger = class Logger {
|
|
|
9346
9368
|
async initialize(sessionId) {
|
|
9347
9369
|
this.sessionId = sessionId;
|
|
9348
9370
|
const debugDir = path.join(os.homedir(), ".bike4mind", "debug");
|
|
9349
|
-
await fs
|
|
9371
|
+
await fs.mkdir(debugDir, { recursive: true });
|
|
9350
9372
|
this.logFilePath = path.join(debugDir, `${sessionId}.txt`);
|
|
9351
9373
|
await this.writeToFile("INFO", "=== CLI SESSION START ===");
|
|
9352
9374
|
}
|
|
@@ -9398,7 +9420,7 @@ const logger = class Logger {
|
|
|
9398
9420
|
if (!this.fileLoggingEnabled || !this.logFilePath) return;
|
|
9399
9421
|
try {
|
|
9400
9422
|
const logEntry = `[${(/* @__PURE__ */ new Date()).toISOString().replace("T", " ").substring(0, 19)}] [${level}] ${message}\n`;
|
|
9401
|
-
await fs
|
|
9423
|
+
await fs.appendFile(this.logFilePath, logEntry, "utf-8");
|
|
9402
9424
|
} catch (error) {
|
|
9403
9425
|
console.error("File logging failed:", error);
|
|
9404
9426
|
}
|
|
@@ -9515,11 +9537,11 @@ const logger = class Logger {
|
|
|
9515
9537
|
if (!this.fileLoggingEnabled) return;
|
|
9516
9538
|
try {
|
|
9517
9539
|
const debugDir = path.join(os.homedir(), ".bike4mind", "debug");
|
|
9518
|
-
const files = await fs
|
|
9540
|
+
const files = await fs.readdir(debugDir);
|
|
9519
9541
|
const thirtyDaysAgo = Date.now() - 720 * 60 * 60 * 1e3;
|
|
9520
9542
|
for (const file of files) {
|
|
9521
9543
|
const filePath = path.join(debugDir, file);
|
|
9522
|
-
if ((await fs
|
|
9544
|
+
if ((await fs.stat(filePath)).mtime.getTime() < thirtyDaysAgo) await fs.unlink(filePath);
|
|
9523
9545
|
}
|
|
9524
9546
|
} catch (error) {
|
|
9525
9547
|
console.error("Failed to cleanup old logs:", error);
|
|
@@ -10339,4 +10361,4 @@ var ConfigStore = class {
|
|
|
10339
10361
|
}
|
|
10340
10362
|
};
|
|
10341
10363
|
//#endregion
|
|
10342
|
-
export {
|
|
10364
|
+
export { PromptMetaZodSchema as $, GenericCreditDeductTransaction as A, getDataLakeTags as At, KnowledgeType as B, settingsMap as Bt, FeedbackEvents as C, VIDEO_SIZE_CONSTRAINTS as Ct, GEMINI_IMAGE_MODELS as D, b4mLLMTools as Dt, FriendshipEvents as E, XAI_IMAGE_MODELS as Et, ImageModels as F, isZodError as Ft, NotFoundError as G, isNearLimit as Gt, MiscEvents as H, validateNotebookPath as Ht, InboxEvents as I, obfuscateApiKey as It, Permission as J, OpenAIEmbeddingModel as K, parseRateLimitHeaders as Kt, InternalServerError as L, resolveNavigationIntents as Lt, HttpStatus as M, getViewById as Mt, ImageEditUsageTransaction as N, isGPTImage2Model as Nt, GenerateImageToolCallSchema as O, dayjsConfig_default as Ot, ImageGenerationUsageTransaction as P, isGPTImageModel as Pt, PromptIntentSchema as Q, InviteEvents as R, sanitizeTelemetryError as Rt, FavoriteDocumentType as S, UnprocessableEntityError as St, ForbiddenError as T, VideoModels as Tt, ModalEvents as U, buildRateLimitLogEntry as Ut, LLMEvents as V, validateJupyterKernelName as Vt, ModelBackend as W, extractSnippetMeta as Wt, ProfileEvents as X, PermissionDeniedError as Y, ProjectEvents as Z, ClaudeArtifactMimeTypes as _, TooManyRequestsError as _t, ApiKeyEvents as a, RegInviteEvents as at, DashboardParamsSchema as b, UiNavigationEvents as bt, AppFileEvents as c, ResearchTaskPeriodicFrequencyType as ct, BFL_IMAGE_MODELS as d, SpeechToTextUsageTransaction as dt, PurchaseTransaction as et, BFL_SAFETY_TOLERANCE as f, SubscriptionCreditTransaction as ft, ChatModels as g, TextGenerationUsageTransaction as gt, ChatCompletionCreateInputSchema as h, TaskScheduleHandler as ht, AiEvents as i, RechartsChartTypeList as it, HTTPError as j, getMcpProviderMetadata as jt, GenericCreditAddTransaction as k, getAccessibleDataLakes as kt, ArtifactTypeSchema as l, ResearchTaskType as lt, CREDIT_DEDUCT_TRANSACTION_TYPES as m, TagType as mt, logger as n, RealtimeVoiceUsageTransaction as nt, ApiKeyScope as o, ResearchModeParamsSchema as ot, BadRequestError as p, SupportedFabFileMimeTypes as pt, OpenAIImageGenerationInput as q, CollectionType as qt, ALERT_THRESHOLDS as r, ReceivedCreditTransaction as rt, ApiKeyType as s, ResearchTaskExecutionType as st, ConfigStore as t, QuestMasterParamsSchema as tt, AuthEvents as u, SessionEvents as ut, CompletionApiUsageTransaction as v, ToolUsageTransaction as vt, FileEvents as w, VideoGenerationUsageTransaction as wt, ElabsEvents as x, UnauthorizedError as xt, CorruptedFileError as y, TransferCreditTransaction as yt, InviteType as z, secureParameters as zt };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as version, n as compareSemver, r as fetchLatestVersion } from "../updateChecker-
|
|
2
|
+
import { a as version, n as compareSemver, r as fetchLatestVersion } from "../updateChecker-DdgysXM8.mjs";
|
|
3
3
|
import { t as checkRipgrep } from "../ripgrepCheck-BmkyTK2i.mjs";
|
|
4
4
|
import { execSync } from "child_process";
|
|
5
5
|
import { constants, existsSync, promises } from "fs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { C as WebSocketToolExecutor, D as ServerLlmBackend, E as WebSocketLlmBackend, F as PermissionManager, I as generateCliTools, M as loadContextFiles, N as getApiUrl, O as McpManager,
|
|
3
|
-
import { n as logger, t as ConfigStore } from "../ConfigStore-
|
|
2
|
+
import { $ as SessionStore, C as WebSocketToolExecutor, D as ServerLlmBackend, E as WebSocketLlmBackend, F as PermissionManager, I as generateCliTools, J as isReadOnlyTool, K as buildSystemPrompt, M as loadContextFiles, N as getApiUrl, O as McpManager, S as ApiClient, T as FallbackLlmBackend, W as setWebSocketToolExecutor, X as CustomCommandStore, Y as ReActAgent, Z as CheckpointStore, _ as createAgentDelegateTool, b as createSkillTool, d as createFindDefinitionTool, f as createTodoStore, g as BackgroundAgentManager, h as createBackgroundAgentTools, m as createCoordinateTaskTool, p as createWriteTodosTool, u as createGetFileStructureTool, v as AgentStore, w as WebSocketConnectionManager, y as SubagentOrchestrator } from "../tools-t-9dtjjl.mjs";
|
|
3
|
+
import { n as logger, t as ConfigStore } from "../ConfigStore-BX6XcTa1.mjs";
|
|
4
4
|
import { t as DEFAULT_SANDBOX_CONFIG } from "../types-LyRNHOiS.mjs";
|
|
5
5
|
import { t as createSandboxRuntime } from "../SandboxRuntimeAdapter-ChGlxSGQ.mjs";
|
|
6
6
|
import { t as SandboxOrchestrator } from "../SandboxOrchestrator-BoINxbX4.mjs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as version, i as forceCheckForUpdate } from "../updateChecker-
|
|
2
|
+
import { a as version, i as forceCheckForUpdate } from "../updateChecker-DdgysXM8.mjs";
|
|
3
3
|
import { t as checkRipgrep } from "../ripgrepCheck-BmkyTK2i.mjs";
|
|
4
4
|
import { execSync } from "child_process";
|
|
5
5
|
//#region src/commands/updateCommand.ts
|