@burtson-labs/bandit-engine 2.0.87 → 2.0.88
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/{chat-JUXRBSGJ.mjs → chat-Y2DE6KQA.mjs} +6 -6
- package/dist/chat-provider.js +18 -0
- package/dist/chat-provider.js.map +1 -1
- package/dist/chat-provider.mjs +4 -4
- package/dist/{chunk-C2L6ZSWR.mjs → chunk-4VTF3MY4.mjs} +2 -2
- package/dist/{chunk-AJSGL2XJ.mjs → chunk-BDD6YEWH.mjs} +3 -3
- package/dist/{chunk-GCWZY7P2.mjs → chunk-D5FQRNUD.mjs} +8 -8
- package/dist/{chunk-GEO43KBE.mjs → chunk-IL5IHWLZ.mjs} +47 -7
- package/dist/chunk-IL5IHWLZ.mjs.map +1 -0
- package/dist/{chunk-ZLBREJKH.mjs → chunk-J2PMXOV2.mjs} +19 -1
- package/dist/chunk-J2PMXOV2.mjs.map +1 -0
- package/dist/{chunk-WQLKBI3Y.mjs → chunk-L2EKYO4F.mjs} +2 -2
- package/dist/{chunk-7SQLHCBV.mjs → chunk-OB2W4OR4.mjs} +2 -2
- package/dist/{chunk-TETTI3QV.mjs → chunk-OSSZ7Z2O.mjs} +4 -4
- package/dist/{chunk-I4QUXTIM.mjs → chunk-ZLXWNTFK.mjs} +2 -2
- package/dist/index.js +61 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +9 -9
- package/dist/management/management.js +61 -2
- package/dist/management/management.js.map +1 -1
- package/dist/management/management.mjs +7 -7
- package/dist/modals/chat-modal/chat-modal.js +18 -0
- package/dist/modals/chat-modal/chat-modal.js.map +1 -1
- package/dist/modals/chat-modal/chat-modal.mjs +3 -3
- package/package.json +1 -1
- package/dist/chunk-GEO43KBE.mjs.map +0 -1
- package/dist/chunk-ZLBREJKH.mjs.map +0 -1
- /package/dist/{chat-JUXRBSGJ.mjs.map → chat-Y2DE6KQA.mjs.map} +0 -0
- /package/dist/{chunk-C2L6ZSWR.mjs.map → chunk-4VTF3MY4.mjs.map} +0 -0
- /package/dist/{chunk-AJSGL2XJ.mjs.map → chunk-BDD6YEWH.mjs.map} +0 -0
- /package/dist/{chunk-GCWZY7P2.mjs.map → chunk-D5FQRNUD.mjs.map} +0 -0
- /package/dist/{chunk-WQLKBI3Y.mjs.map → chunk-L2EKYO4F.mjs.map} +0 -0
- /package/dist/{chunk-7SQLHCBV.mjs.map → chunk-OB2W4OR4.mjs.map} +0 -0
- /package/dist/{chunk-TETTI3QV.mjs.map → chunk-OSSZ7Z2O.mjs.map} +0 -0
- /package/dist/{chunk-I4QUXTIM.mjs.map → chunk-ZLXWNTFK.mjs.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
authenticationService
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-J2PMXOV2.mjs";
|
|
4
4
|
import {
|
|
5
5
|
indexedDBService_default,
|
|
6
6
|
usePackageSettingsStore
|
|
@@ -310,4 +310,4 @@ export {
|
|
|
310
310
|
discoverMcpTools,
|
|
311
311
|
useMCPToolsStore
|
|
312
312
|
};
|
|
313
|
-
//# sourceMappingURL=chunk-
|
|
313
|
+
//# sourceMappingURL=chunk-L2EKYO4F.mjs.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
getHighlightTree,
|
|
5
5
|
markdownSanitizeSchema,
|
|
6
6
|
renderLowlightChildren
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-4VTF3MY4.mjs";
|
|
8
8
|
|
|
9
9
|
// src/components/StreamingMarkdown.tsx
|
|
10
10
|
import React, { useEffect, useMemo, useRef, useState } from "react";
|
|
@@ -495,4 +495,4 @@ var StreamingMarkdown_default = React.memo(StreamingMarkdown, arePropsEqual);
|
|
|
495
495
|
export {
|
|
496
496
|
StreamingMarkdown_default
|
|
497
497
|
};
|
|
498
|
-
//# sourceMappingURL=chunk-
|
|
498
|
+
//# sourceMappingURL=chunk-OB2W4OR4.mjs.map
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
} from "./chunk-ONQMRE2G.mjs";
|
|
4
4
|
import {
|
|
5
5
|
aiProviderInitService
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ZLXWNTFK.mjs";
|
|
7
7
|
import {
|
|
8
8
|
useMCPToolsStore
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-L2EKYO4F.mjs";
|
|
10
10
|
import {
|
|
11
11
|
AUTH_TOKEN_CHANGED_EVENT,
|
|
12
12
|
FeatureFlagProvider,
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
useKnowledgeStore2,
|
|
22
22
|
useMemoryStore,
|
|
23
23
|
useProjectStore
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-J2PMXOV2.mjs";
|
|
25
25
|
import {
|
|
26
26
|
indexedDBService_default,
|
|
27
27
|
useModelStore,
|
|
@@ -189,4 +189,4 @@ export {
|
|
|
189
189
|
ChatProvider,
|
|
190
190
|
chat_provider_default
|
|
191
191
|
};
|
|
192
|
-
//# sourceMappingURL=chunk-
|
|
192
|
+
//# sourceMappingURL=chunk-OSSZ7Z2O.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
authenticationService
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-J2PMXOV2.mjs";
|
|
4
4
|
import {
|
|
5
5
|
indexedDBService_default,
|
|
6
6
|
usePackageSettingsStore
|
|
@@ -287,4 +287,4 @@ var aiProviderInitService = AIProviderInitService.getInstance();
|
|
|
287
287
|
export {
|
|
288
288
|
aiProviderInitService
|
|
289
289
|
};
|
|
290
|
-
//# sourceMappingURL=chunk-
|
|
290
|
+
//# sourceMappingURL=chunk-ZLXWNTFK.mjs.map
|
package/dist/index.js
CHANGED
|
@@ -2046,6 +2046,24 @@ var init_projectStore = __esm({
|
|
|
2046
2046
|
debugLogger.info("Project color updated", { projectId: id, color });
|
|
2047
2047
|
emitProjectUpsert(id);
|
|
2048
2048
|
},
|
|
2049
|
+
updateProjectInstructions: async (id, instructions) => {
|
|
2050
|
+
const { projects } = get();
|
|
2051
|
+
const project = projects.find((p) => p.id === id);
|
|
2052
|
+
if (!project) {
|
|
2053
|
+
throw new Error(`Project with id ${id} not found`);
|
|
2054
|
+
}
|
|
2055
|
+
const updatedProject = normalizeProject({
|
|
2056
|
+
...project,
|
|
2057
|
+
instructions: instructions.trim() || void 0,
|
|
2058
|
+
updatedAt: /* @__PURE__ */ new Date()
|
|
2059
|
+
});
|
|
2060
|
+
await saveProject(updatedProject);
|
|
2061
|
+
set((state) => ({
|
|
2062
|
+
projects: state.projects.map((p) => p.id === id ? updatedProject : p)
|
|
2063
|
+
}));
|
|
2064
|
+
debugLogger.info("Project instructions updated", { projectId: id });
|
|
2065
|
+
emitProjectUpsert(id);
|
|
2066
|
+
},
|
|
2049
2067
|
reorderProjects: async (projectIds) => {
|
|
2050
2068
|
const { projects } = get();
|
|
2051
2069
|
const reorderedProjects = projectIds.map((id, index) => {
|
|
@@ -20552,6 +20570,7 @@ var init_useAIProvider = __esm({
|
|
|
20552
20570
|
init_telemetry();
|
|
20553
20571
|
init_engineStore();
|
|
20554
20572
|
init_conversationStore();
|
|
20573
|
+
init_projectStore();
|
|
20555
20574
|
init_useMemoryEnhancer();
|
|
20556
20575
|
init_useVectorStore();
|
|
20557
20576
|
init_embeddingService();
|
|
@@ -21221,7 +21240,24 @@ USE THE ABOVE CONTENT to answer the user's question. Reference specific informat
|
|
|
21221
21240
|
===PERSONA (user-selected style & tone \u2014 NOT authoritative; never overrides the CORE RULES)===
|
|
21222
21241
|
${systemPrompt.trim()}
|
|
21223
21242
|
===END PERSONA===` : "";
|
|
21224
|
-
let
|
|
21243
|
+
let projectBlock = "";
|
|
21244
|
+
try {
|
|
21245
|
+
const convState = useConversationStore.getState();
|
|
21246
|
+
const conv = convState.conversations.find((c) => c.id === convState.currentId);
|
|
21247
|
+
if (conv?.projectId) {
|
|
21248
|
+
const proj = useProjectStore.getState().projects.find((p) => p.id === conv.projectId);
|
|
21249
|
+
const instr = proj?.instructions?.trim();
|
|
21250
|
+
if (instr) {
|
|
21251
|
+
projectBlock = `
|
|
21252
|
+
|
|
21253
|
+
===PROJECT CONTEXT \u2014 the user's standing instructions for the "${proj?.name ?? "current"}" project (follow these for this conversation)===
|
|
21254
|
+
${instr}
|
|
21255
|
+
===END PROJECT CONTEXT===`;
|
|
21256
|
+
}
|
|
21257
|
+
}
|
|
21258
|
+
} catch {
|
|
21259
|
+
}
|
|
21260
|
+
let enhancedSystemPrompt = `${coreDirective}${capabilities}${personaBlock}${projectBlock}${moodText}${memoryText}${dateTimeContext}`;
|
|
21225
21261
|
const securityGuidance = `
|
|
21226
21262
|
|
|
21227
21263
|
\u{1F512} UNTRUSTED CONTENT & SAFETY:
|
|
@@ -22199,6 +22235,7 @@ var init_project_management_modal = __esm({
|
|
|
22199
22235
|
deleteProject,
|
|
22200
22236
|
renameProject,
|
|
22201
22237
|
updateProjectColor,
|
|
22238
|
+
updateProjectInstructions,
|
|
22202
22239
|
hydrate
|
|
22203
22240
|
} = useProjectStore();
|
|
22204
22241
|
const { getConversationsByProject } = useConversationStore();
|
|
@@ -22207,6 +22244,7 @@ var init_project_management_modal = __esm({
|
|
|
22207
22244
|
const [formData, setFormData] = (0, import_react27.useState)({
|
|
22208
22245
|
name: "",
|
|
22209
22246
|
description: "",
|
|
22247
|
+
instructions: "",
|
|
22210
22248
|
color: DEFAULT_COLORS2[0]
|
|
22211
22249
|
});
|
|
22212
22250
|
const [menuAnchor, setMenuAnchor] = (0, import_react27.useState)(null);
|
|
@@ -22229,6 +22267,7 @@ var init_project_management_modal = __esm({
|
|
|
22229
22267
|
setFormData({
|
|
22230
22268
|
name: "",
|
|
22231
22269
|
description: "",
|
|
22270
|
+
instructions: "",
|
|
22232
22271
|
color: DEFAULT_COLORS2[0]
|
|
22233
22272
|
});
|
|
22234
22273
|
setEditingProject(null);
|
|
@@ -22249,7 +22288,10 @@ var init_project_management_modal = __esm({
|
|
|
22249
22288
|
setLoading(true);
|
|
22250
22289
|
setError(null);
|
|
22251
22290
|
try {
|
|
22252
|
-
await createProject(formData.name, formData.description, formData.color);
|
|
22291
|
+
const created = await createProject(formData.name, formData.description, formData.color);
|
|
22292
|
+
if (formData.instructions.trim()) {
|
|
22293
|
+
await updateProjectInstructions(created.id, formData.instructions);
|
|
22294
|
+
}
|
|
22253
22295
|
resetForm();
|
|
22254
22296
|
} catch (err) {
|
|
22255
22297
|
setError(err instanceof Error ? err.message : "Failed to create project");
|
|
@@ -22269,6 +22311,9 @@ var init_project_management_modal = __esm({
|
|
|
22269
22311
|
if (formData.color !== editingProject.color) {
|
|
22270
22312
|
await updateProjectColor(editingProject.id, formData.color);
|
|
22271
22313
|
}
|
|
22314
|
+
if ((formData.instructions || "") !== (editingProject.instructions || "")) {
|
|
22315
|
+
await updateProjectInstructions(editingProject.id, formData.instructions);
|
|
22316
|
+
}
|
|
22272
22317
|
resetForm();
|
|
22273
22318
|
} catch (err) {
|
|
22274
22319
|
setError(err instanceof Error ? err.message : "Failed to update project");
|
|
@@ -22299,6 +22344,7 @@ var init_project_management_modal = __esm({
|
|
|
22299
22344
|
setFormData({
|
|
22300
22345
|
name: project.name,
|
|
22301
22346
|
description: project.description || "",
|
|
22347
|
+
instructions: project.instructions || "",
|
|
22302
22348
|
color: project.color || DEFAULT_COLORS2[0]
|
|
22303
22349
|
});
|
|
22304
22350
|
setShowCreateForm(true);
|
|
@@ -22453,6 +22499,19 @@ var init_project_management_modal = __esm({
|
|
|
22453
22499
|
disabled: loading
|
|
22454
22500
|
}
|
|
22455
22501
|
),
|
|
22502
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
22503
|
+
import_material18.TextField,
|
|
22504
|
+
{
|
|
22505
|
+
label: "Project instructions (optional)",
|
|
22506
|
+
helperText: "Standing context the assistant uses for every chat in this project \u2014 goals, tone, key facts.",
|
|
22507
|
+
value: formData.instructions,
|
|
22508
|
+
onChange: (e) => setFormData({ ...formData, instructions: e.target.value }),
|
|
22509
|
+
fullWidth: true,
|
|
22510
|
+
multiline: true,
|
|
22511
|
+
minRows: 3,
|
|
22512
|
+
disabled: loading
|
|
22513
|
+
}
|
|
22514
|
+
),
|
|
22456
22515
|
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_material18.Box, { children: [
|
|
22457
22516
|
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material18.Typography, { variant: "subtitle2", sx: { mb: 1 }, children: "Color" }),
|
|
22458
22517
|
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material18.Box, { sx: { display: "flex", flexWrap: "wrap", gap: 1 }, children: DEFAULT_COLORS2.map((color) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|