@locusai/sdk 0.13.2 → 0.13.3
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/agent/worker.js +33 -3
- package/dist/ai/__tests__/factory.test.d.ts +2 -0
- package/dist/ai/__tests__/factory.test.d.ts.map +1 -0
- package/dist/ai/factory.d.ts.map +1 -1
- package/dist/core/config.d.ts +23 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/index-node.js +38 -3
- package/package.json +3 -2
package/dist/agent/worker.js
CHANGED
|
@@ -558,6 +558,12 @@ var init_src = __esm(() => {
|
|
|
558
558
|
});
|
|
559
559
|
|
|
560
560
|
// src/core/config.ts
|
|
561
|
+
function isValidModelForProvider(provider, model) {
|
|
562
|
+
return PROVIDER_MODELS[provider].includes(model);
|
|
563
|
+
}
|
|
564
|
+
function getModelsForProvider(provider) {
|
|
565
|
+
return PROVIDER_MODELS[provider];
|
|
566
|
+
}
|
|
561
567
|
function getLocusPath(projectPath, fileName) {
|
|
562
568
|
return import_node_path.join(projectPath, LOCUS_CONFIG.dir, LOCUS_CONFIG[fileName]);
|
|
563
569
|
}
|
|
@@ -565,16 +571,36 @@ function getAgentArtifactsPath(projectPath, agentId) {
|
|
|
565
571
|
const shortId = agentId.slice(-8);
|
|
566
572
|
return import_node_path.join(projectPath, LOCUS_CONFIG.dir, LOCUS_CONFIG.artifactsDir, shortId);
|
|
567
573
|
}
|
|
568
|
-
var import_node_path, PROVIDER, DEFAULT_MODEL, LOCUS_SCHEMA_BASE_URL = "https://locusai.dev/schemas", LOCUS_SCHEMAS, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS;
|
|
574
|
+
var import_node_path, PROVIDER, CLAUDE_MODELS, CODEX_MODELS, PROVIDER_MODELS, DEFAULT_MODEL, LOCUS_SCHEMA_BASE_URL = "https://locusai.dev/schemas", LOCUS_SCHEMAS, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS;
|
|
569
575
|
var init_config = __esm(() => {
|
|
570
576
|
import_node_path = require("node:path");
|
|
571
577
|
PROVIDER = {
|
|
572
578
|
CLAUDE: "claude",
|
|
573
579
|
CODEX: "codex"
|
|
574
580
|
};
|
|
581
|
+
CLAUDE_MODELS = {
|
|
582
|
+
OPUS: "opus",
|
|
583
|
+
SONNET: "sonnet",
|
|
584
|
+
HAIKU: "haiku",
|
|
585
|
+
OPUS_PLAN: "opusplan",
|
|
586
|
+
CLAUDE_OPUS_4_6: "claude-opus-4-6",
|
|
587
|
+
CLAUDE_SONNET_4_5: "claude-sonnet-4-5-20250929",
|
|
588
|
+
CLAUDE_SONNET_4_6: "claude-sonnet-4-6",
|
|
589
|
+
CLAUDE_HAIKU_4_5: "claude-haiku-4-5-20251001"
|
|
590
|
+
};
|
|
591
|
+
CODEX_MODELS = {
|
|
592
|
+
GPT_5_3_CODEX: "gpt-5.3-codex",
|
|
593
|
+
GPT_5_3_CODEX_SPARK: "gpt-5.3-codex-spark",
|
|
594
|
+
GPT_5_CODEX_MINI: "gpt-5-codex-mini",
|
|
595
|
+
GPT_5_2_CODEX: "gpt-5.2-codex"
|
|
596
|
+
};
|
|
597
|
+
PROVIDER_MODELS = {
|
|
598
|
+
[PROVIDER.CLAUDE]: Object.values(CLAUDE_MODELS),
|
|
599
|
+
[PROVIDER.CODEX]: Object.values(CODEX_MODELS)
|
|
600
|
+
};
|
|
575
601
|
DEFAULT_MODEL = {
|
|
576
|
-
[PROVIDER.CLAUDE]:
|
|
577
|
-
[PROVIDER.CODEX]:
|
|
602
|
+
[PROVIDER.CLAUDE]: CLAUDE_MODELS.OPUS,
|
|
603
|
+
[PROVIDER.CODEX]: CODEX_MODELS.GPT_5_3_CODEX
|
|
578
604
|
};
|
|
579
605
|
LOCUS_SCHEMAS = {
|
|
580
606
|
config: `${LOCUS_SCHEMA_BASE_URL}/config.schema.json`,
|
|
@@ -1558,6 +1584,10 @@ var init_codex_runner = __esm(() => {
|
|
|
1558
1584
|
function createAiRunner(provider, config) {
|
|
1559
1585
|
const resolvedProvider = provider ?? PROVIDER.CLAUDE;
|
|
1560
1586
|
const model = config.model ?? DEFAULT_MODEL[resolvedProvider];
|
|
1587
|
+
if (!isValidModelForProvider(resolvedProvider, model)) {
|
|
1588
|
+
const validModels = getModelsForProvider(resolvedProvider);
|
|
1589
|
+
throw new Error(`Model "${model}" is not valid for provider "${resolvedProvider}". ` + `Valid models: ${validModels.join(", ")}`);
|
|
1590
|
+
}
|
|
1561
1591
|
switch (resolvedProvider) {
|
|
1562
1592
|
case PROVIDER.CODEX:
|
|
1563
1593
|
return new CodexRunner(config.projectPath, model, config.log, config.reasoningEffort ?? "high", config.timeoutMs);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.test.d.ts","sourceRoot":"","sources":["../../../src/ai/__tests__/factory.test.ts"],"names":[],"mappings":""}
|
package/dist/ai/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/ai/factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/ai/factory.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,MAAM,KAAK,GAAG,CAClB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,KAC1C,IAAI,CAAC;AAEV,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,MAAM,EAAE,cAAc,GACrB,QAAQ,CA8BV"}
|
package/dist/core/config.d.ts
CHANGED
|
@@ -3,7 +3,29 @@ export declare const PROVIDER: {
|
|
|
3
3
|
readonly CODEX: "codex";
|
|
4
4
|
};
|
|
5
5
|
export type Provider = (typeof PROVIDER)[keyof typeof PROVIDER];
|
|
6
|
-
export declare const
|
|
6
|
+
export declare const CLAUDE_MODELS: {
|
|
7
|
+
readonly OPUS: "opus";
|
|
8
|
+
readonly SONNET: "sonnet";
|
|
9
|
+
readonly HAIKU: "haiku";
|
|
10
|
+
readonly OPUS_PLAN: "opusplan";
|
|
11
|
+
readonly CLAUDE_OPUS_4_6: "claude-opus-4-6";
|
|
12
|
+
readonly CLAUDE_SONNET_4_5: "claude-sonnet-4-5-20250929";
|
|
13
|
+
readonly CLAUDE_SONNET_4_6: "claude-sonnet-4-6";
|
|
14
|
+
readonly CLAUDE_HAIKU_4_5: "claude-haiku-4-5-20251001";
|
|
15
|
+
};
|
|
16
|
+
export type ClaudeModel = (typeof CLAUDE_MODELS)[keyof typeof CLAUDE_MODELS];
|
|
17
|
+
export declare const CODEX_MODELS: {
|
|
18
|
+
readonly GPT_5_3_CODEX: "gpt-5.3-codex";
|
|
19
|
+
readonly GPT_5_3_CODEX_SPARK: "gpt-5.3-codex-spark";
|
|
20
|
+
readonly GPT_5_CODEX_MINI: "gpt-5-codex-mini";
|
|
21
|
+
readonly GPT_5_2_CODEX: "gpt-5.2-codex";
|
|
22
|
+
};
|
|
23
|
+
export type CodexModel = (typeof CODEX_MODELS)[keyof typeof CODEX_MODELS];
|
|
24
|
+
export type ModelId = ClaudeModel | CodexModel;
|
|
25
|
+
export declare const PROVIDER_MODELS: Record<Provider, readonly ModelId[]>;
|
|
26
|
+
export declare const DEFAULT_MODEL: Record<Provider, ModelId>;
|
|
27
|
+
export declare function isValidModelForProvider(provider: Provider, model: string): boolean;
|
|
28
|
+
export declare function getModelsForProvider(provider: Provider): readonly ModelId[];
|
|
7
29
|
export declare const LOCUS_SCHEMA_BASE_URL = "https://locusai.dev/schemas";
|
|
8
30
|
export declare const LOCUS_SCHEMAS: {
|
|
9
31
|
readonly config: "https://locusai.dev/schemas/config.schema.json";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEhE,eAAO,MAAM,aAAa;;;;;;;;;CAShB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E,eAAO,MAAM,YAAY;;;;;CAKf,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE1E,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;AAE/C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAGvD,CAAC;AAEX,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAGnD,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CAET;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,OAAO,EAAE,CAE3E;AAED,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AAEnE,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;CAaxB,CAAC;AAIF,eAAO,MAAM,wBAAwB,gkBAqB3B,CAAC;AAEX,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,OAAO,YAAY,GAClC,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,CASR"}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { DEFAULT_MODEL, getAgentArtifactsPath, getLocusPath, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS, LOCUS_SCHEMA_BASE_URL, LOCUS_SCHEMAS, PROVIDER, type Provider, } from "./config.js";
|
|
1
|
+
export { CLAUDE_MODELS, type ClaudeModel, CODEX_MODELS, type CodexModel, DEFAULT_MODEL, getAgentArtifactsPath, getLocusPath, getModelsForProvider, isValidModelForProvider, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS, LOCUS_SCHEMA_BASE_URL, LOCUS_SCHEMAS, type ModelId, PROVIDER, PROVIDER_MODELS, type Provider, } from "./config.js";
|
|
2
2
|
export { type CodebaseIndex, CodebaseIndexer } from "./indexer.js";
|
|
3
3
|
export { PromptBuilder } from "./prompt-builder.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,QAAQ,EACR,KAAK,QAAQ,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,KAAK,WAAW,EAChB,YAAY,EACZ,KAAK,UAAU,EACf,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,KAAK,OAAO,EACZ,QAAQ,EACR,eAAe,EACf,KAAK,QAAQ,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/index-node.js
CHANGED
|
@@ -558,6 +558,12 @@ var init_src = __esm(() => {
|
|
|
558
558
|
});
|
|
559
559
|
|
|
560
560
|
// src/core/config.ts
|
|
561
|
+
function isValidModelForProvider(provider, model) {
|
|
562
|
+
return PROVIDER_MODELS[provider].includes(model);
|
|
563
|
+
}
|
|
564
|
+
function getModelsForProvider(provider) {
|
|
565
|
+
return PROVIDER_MODELS[provider];
|
|
566
|
+
}
|
|
561
567
|
function getLocusPath(projectPath, fileName) {
|
|
562
568
|
return import_node_path.join(projectPath, LOCUS_CONFIG.dir, LOCUS_CONFIG[fileName]);
|
|
563
569
|
}
|
|
@@ -565,16 +571,36 @@ function getAgentArtifactsPath(projectPath, agentId) {
|
|
|
565
571
|
const shortId = agentId.slice(-8);
|
|
566
572
|
return import_node_path.join(projectPath, LOCUS_CONFIG.dir, LOCUS_CONFIG.artifactsDir, shortId);
|
|
567
573
|
}
|
|
568
|
-
var import_node_path, PROVIDER, DEFAULT_MODEL, LOCUS_SCHEMA_BASE_URL = "https://locusai.dev/schemas", LOCUS_SCHEMAS, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS;
|
|
574
|
+
var import_node_path, PROVIDER, CLAUDE_MODELS, CODEX_MODELS, PROVIDER_MODELS, DEFAULT_MODEL, LOCUS_SCHEMA_BASE_URL = "https://locusai.dev/schemas", LOCUS_SCHEMAS, LOCUS_CONFIG, LOCUS_GITIGNORE_PATTERNS;
|
|
569
575
|
var init_config = __esm(() => {
|
|
570
576
|
import_node_path = require("node:path");
|
|
571
577
|
PROVIDER = {
|
|
572
578
|
CLAUDE: "claude",
|
|
573
579
|
CODEX: "codex"
|
|
574
580
|
};
|
|
581
|
+
CLAUDE_MODELS = {
|
|
582
|
+
OPUS: "opus",
|
|
583
|
+
SONNET: "sonnet",
|
|
584
|
+
HAIKU: "haiku",
|
|
585
|
+
OPUS_PLAN: "opusplan",
|
|
586
|
+
CLAUDE_OPUS_4_6: "claude-opus-4-6",
|
|
587
|
+
CLAUDE_SONNET_4_5: "claude-sonnet-4-5-20250929",
|
|
588
|
+
CLAUDE_SONNET_4_6: "claude-sonnet-4-6",
|
|
589
|
+
CLAUDE_HAIKU_4_5: "claude-haiku-4-5-20251001"
|
|
590
|
+
};
|
|
591
|
+
CODEX_MODELS = {
|
|
592
|
+
GPT_5_3_CODEX: "gpt-5.3-codex",
|
|
593
|
+
GPT_5_3_CODEX_SPARK: "gpt-5.3-codex-spark",
|
|
594
|
+
GPT_5_CODEX_MINI: "gpt-5-codex-mini",
|
|
595
|
+
GPT_5_2_CODEX: "gpt-5.2-codex"
|
|
596
|
+
};
|
|
597
|
+
PROVIDER_MODELS = {
|
|
598
|
+
[PROVIDER.CLAUDE]: Object.values(CLAUDE_MODELS),
|
|
599
|
+
[PROVIDER.CODEX]: Object.values(CODEX_MODELS)
|
|
600
|
+
};
|
|
575
601
|
DEFAULT_MODEL = {
|
|
576
|
-
[PROVIDER.CLAUDE]:
|
|
577
|
-
[PROVIDER.CODEX]:
|
|
602
|
+
[PROVIDER.CLAUDE]: CLAUDE_MODELS.OPUS,
|
|
603
|
+
[PROVIDER.CODEX]: CODEX_MODELS.GPT_5_3_CODEX
|
|
578
604
|
};
|
|
579
605
|
LOCUS_SCHEMAS = {
|
|
580
606
|
config: `${LOCUS_SCHEMA_BASE_URL}/config.schema.json`,
|
|
@@ -1558,6 +1584,10 @@ var init_codex_runner = __esm(() => {
|
|
|
1558
1584
|
function createAiRunner(provider, config) {
|
|
1559
1585
|
const resolvedProvider = provider ?? PROVIDER.CLAUDE;
|
|
1560
1586
|
const model = config.model ?? DEFAULT_MODEL[resolvedProvider];
|
|
1587
|
+
if (!isValidModelForProvider(resolvedProvider, model)) {
|
|
1588
|
+
const validModels = getModelsForProvider(resolvedProvider);
|
|
1589
|
+
throw new Error(`Model "${model}" is not valid for provider "${resolvedProvider}". ` + `Valid models: ${validModels.join(", ")}`);
|
|
1590
|
+
}
|
|
1561
1591
|
switch (resolvedProvider) {
|
|
1562
1592
|
case PROVIDER.CODEX:
|
|
1563
1593
|
return new CodexRunner(config.projectPath, model, config.log, config.reasoningEffort ?? "high", config.timeoutMs);
|
|
@@ -2746,7 +2776,9 @@ __export(exports_index_node, {
|
|
|
2746
2776
|
plannedTasksToCreatePayloads: () => plannedTasksToCreatePayloads,
|
|
2747
2777
|
parseSprintPlanFromAI: () => parseSprintPlanFromAI,
|
|
2748
2778
|
parseJsonWithSchema: () => parseJsonWithSchema,
|
|
2779
|
+
isValidModelForProvider: () => isValidModelForProvider,
|
|
2749
2780
|
getRemoteUrl: () => getRemoteUrl,
|
|
2781
|
+
getModelsForProvider: () => getModelsForProvider,
|
|
2750
2782
|
getLocusPath: () => getLocusPath,
|
|
2751
2783
|
getDefaultBranch: () => getDefaultBranch,
|
|
2752
2784
|
getCurrentBranch: () => getCurrentBranch,
|
|
@@ -2767,6 +2799,7 @@ __export(exports_index_node, {
|
|
|
2767
2799
|
PrService: () => PrService,
|
|
2768
2800
|
PlanningMeeting: () => PlanningMeeting,
|
|
2769
2801
|
PlanManager: () => PlanManager,
|
|
2802
|
+
PROVIDER_MODELS: () => PROVIDER_MODELS,
|
|
2770
2803
|
PROVIDER: () => PROVIDER,
|
|
2771
2804
|
OrganizationsModule: () => OrganizationsModule,
|
|
2772
2805
|
LocusEvent: () => LocusEvent,
|
|
@@ -2796,6 +2829,8 @@ __export(exports_index_node, {
|
|
|
2796
2829
|
CodebaseIndexer: () => CodebaseIndexer,
|
|
2797
2830
|
ClaudeRunner: () => ClaudeRunner,
|
|
2798
2831
|
CiModule: () => CiModule,
|
|
2832
|
+
CODEX_MODELS: () => CODEX_MODELS,
|
|
2833
|
+
CLAUDE_MODELS: () => CLAUDE_MODELS,
|
|
2799
2834
|
AuthModule: () => AuthModule,
|
|
2800
2835
|
AgentWorker: () => AgentWorker,
|
|
2801
2836
|
AgentOrchestrator: () => AgentOrchestrator
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@locusai/sdk",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./src/index.ts",
|
|
6
6
|
"types": "./src/index.ts",
|
|
@@ -26,11 +26,12 @@
|
|
|
26
26
|
"build": "bun build ./src/index.ts ./src/index-node.ts ./src/agent/worker.ts --outdir ./dist --target node --format cjs --external axios --external events --external globby --external @locusai/shared --external zod && tsc -p tsconfig.build.json --emitDeclarationOnly",
|
|
27
27
|
"dev": "tsc --watch",
|
|
28
28
|
"lint": "biome lint .",
|
|
29
|
+
"test": "bun test",
|
|
29
30
|
"typecheck": "tsc --noEmit",
|
|
30
31
|
"clean": "rm -rf node_modules"
|
|
31
32
|
},
|
|
32
33
|
"dependencies": {
|
|
33
|
-
"@locusai/shared": "^0.13.
|
|
34
|
+
"@locusai/shared": "^0.13.3",
|
|
34
35
|
"axios": "^1.13.2",
|
|
35
36
|
"events": "^3.3.0",
|
|
36
37
|
"globby": "^14.0.2",
|