@burtson-labs/bandit-engine 2.0.52 → 2.0.54
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/README.md +23 -12
- package/dist/{aiProviderStore-3N3VE6D4.mjs → aiProviderStore-337QNQB3.mjs} +2 -2
- package/dist/{chat-YWYLVKXX.mjs → chat-IDE6Z4Q4.mjs} +6 -6
- package/dist/chat-provider.js +17 -9
- package/dist/chat-provider.js.map +1 -1
- package/dist/chat-provider.mjs +4 -4
- package/dist/{chunk-QX6CO7TJ.mjs → chunk-557E5VZ2.mjs} +3 -3
- package/dist/{chunk-MH7WFWCP.mjs → chunk-AVV7HDGR.mjs} +3 -3
- package/dist/{chunk-BENL3EF2.mjs → chunk-H3BYFEIE.mjs} +18 -10
- package/dist/chunk-H3BYFEIE.mjs.map +1 -0
- package/dist/{chunk-YZ2HJFPQ.mjs → chunk-KM7FUWCM.mjs} +4 -4
- package/dist/chunk-KM7FUWCM.mjs.map +1 -0
- package/dist/{chunk-M3BEAMCC.mjs → chunk-KNBWR4DS.mjs} +775 -488
- package/dist/chunk-KNBWR4DS.mjs.map +1 -0
- package/dist/{chunk-Y5N3NSTU.mjs → chunk-NP2OHTTX.mjs} +116 -152
- package/dist/chunk-NP2OHTTX.mjs.map +1 -0
- package/dist/{chunk-TSQCNHOX.mjs → chunk-TLY6A6XL.mjs} +123 -147
- package/dist/chunk-TLY6A6XL.mjs.map +1 -0
- package/dist/{chunk-37PEP5JK.mjs → chunk-UFSEYVRS.mjs} +3 -3
- package/dist/{chunk-RSSJADDD.mjs → chunk-WL7NV4WJ.mjs} +28 -32
- package/dist/chunk-WL7NV4WJ.mjs.map +1 -0
- package/dist/index.d.mts +5 -3
- package/dist/index.d.ts +5 -3
- package/dist/index.js +4097 -4045
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +11 -15
- package/dist/index.mjs.map +1 -1
- package/dist/management/management.js +4068 -4016
- package/dist/management/management.js.map +1 -1
- package/dist/management/management.mjs +7 -7
- package/dist/modals/chat-modal/chat-modal.js +1401 -1279
- package/dist/modals/chat-modal/chat-modal.js.map +1 -1
- package/dist/modals/chat-modal/chat-modal.mjs +4 -4
- package/dist/{gateway-oScD5tvE.d.mts → public-BzsEWB08.d.mts} +11 -122
- package/dist/{gateway-oScD5tvE.d.ts → public-BzsEWB08.d.ts} +11 -122
- package/dist/public-types.d.mts +2 -32
- package/dist/public-types.d.ts +2 -32
- package/package.json +3 -11
- package/dist/chunk-BENL3EF2.mjs.map +0 -1
- package/dist/chunk-M3BEAMCC.mjs.map +0 -1
- package/dist/chunk-RSSJADDD.mjs.map +0 -1
- package/dist/chunk-TSQCNHOX.mjs.map +0 -1
- package/dist/chunk-Y5N3NSTU.mjs.map +0 -1
- package/dist/chunk-YZ2HJFPQ.mjs.map +0 -1
- package/dist/cli.js +0 -4084
- package/dist/cli.js.map +0 -1
- /package/dist/{aiProviderStore-3N3VE6D4.mjs.map → aiProviderStore-337QNQB3.mjs.map} +0 -0
- /package/dist/{chat-YWYLVKXX.mjs.map → chat-IDE6Z4Q4.mjs.map} +0 -0
- /package/dist/{chunk-QX6CO7TJ.mjs.map → chunk-557E5VZ2.mjs.map} +0 -0
- /package/dist/{chunk-MH7WFWCP.mjs.map → chunk-AVV7HDGR.mjs.map} +0 -0
- /package/dist/{chunk-37PEP5JK.mjs.map → chunk-UFSEYVRS.mjs.map} +0 -0
package/README.md
CHANGED
|
@@ -17,19 +17,30 @@ An AI chat toolkit built for speed, design, and control. Power branded AI assist
|
|
|
17
17
|
[](./LICENSE)
|
|
18
18
|
|
|
19
19
|
## Features
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
20
|
+
- Plug-and-play React chat, modal, and management surfaces
|
|
21
|
+
- Memory, searchable knowledge, and provider switching behind a secure gateway
|
|
22
|
+
- Full MUI theming, dark mode, and branding controls out of the box
|
|
23
|
+
- Multimodal support (voice, images, documents) with Bandit AI, Ollama, OpenAI, Azure OpenAI, Anthropic, and xAI today — tell us which providers you need next so we can prioritize them
|
|
24
|
+
- CLI scaffolding, sample gateway, and docs to launch in minutes
|
|
25
25
|
|
|
26
26
|
Bandit keeps confidentiality, integrity, and availability front and center: data stays within your routes, answers stay auditable, and the UI falls back gracefully when a provider is unavailable.
|
|
27
27
|
|
|
28
|
+
## Bandit package ecosystem
|
|
29
|
+
|
|
30
|
+
This package is the core React engine. Related packages:
|
|
31
|
+
|
|
32
|
+
| Package | Purpose | Install weight |
|
|
33
|
+
|---------|---------|----------------|
|
|
34
|
+
| `@burtson-labs/bandit-engine` | React chat, modal, and management UI — this package | Full |
|
|
35
|
+
| [`@burtson-labs/bandit-cli`](https://banditailabs.com/npm-package) | Quickstart scaffolding CLI — `npx @burtson-labs/bandit-cli create` | Minimal (Node.js only) |
|
|
36
|
+
| [`@burtson-labs/bandit-themes`](https://banditailabs.com/npm-package) | MUI theme pack — use Bandit design tokens without the engine | MUI only |
|
|
37
|
+
| [`@burtson-labs/bandit-types`](https://banditailabs.com/npm-package) | Gateway contract type definitions — type your own gateway or server | Zero runtime deps |
|
|
38
|
+
|
|
28
39
|
## Quick Links
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
40
|
+
- Full docs: [banditailabs.com/npm-package](https://banditailabs.com/npm-package) (mirrors `/docs` in this repo)
|
|
41
|
+
- Live demo with OAuth sign-in: [banditailabs.com](https://banditailabs.com/)
|
|
42
|
+
- Playground (no auth required): [banditailabs.com/playground](https://banditailabs.com/playground)
|
|
43
|
+
- Sample gateway: [`examples/gateway-node`](./examples/gateway-node/README.md)
|
|
33
44
|
|
|
34
45
|
## Quick Start
|
|
35
46
|
|
|
@@ -38,7 +49,7 @@ Bandit keeps confidentiality, integrity, and availability front and center: data
|
|
|
38
49
|
Want a working playground instantly? Scaffold a Bandit app and gateway in one command:
|
|
39
50
|
|
|
40
51
|
```bash
|
|
41
|
-
npx @burtson-labs/bandit-
|
|
52
|
+
npx @burtson-labs/bandit-cli create my-bandit-app
|
|
42
53
|
```
|
|
43
54
|
|
|
44
55
|

|
|
@@ -58,9 +69,9 @@ Customize the output with options such as:
|
|
|
58
69
|
- `--yes` / `--skip-prompts` to accept defaults non-interactively
|
|
59
70
|
- `--force` to overwrite a non-empty directory
|
|
60
71
|
|
|
61
|
-
>
|
|
72
|
+
> The generated project installs directly from `https://registry.npmjs.org/` — no GitHub npm token is required once the package is public.
|
|
62
73
|
|
|
63
|
-
>
|
|
74
|
+
> The scaffolded gateway focuses on Bandit AI/OpenAI/xAI/Ollama chat and model discovery. All advanced routes (file storage uploads, vector embedding, voice, MCP, etc.) are generated as `501` placeholders so you can wire them to your own infrastructure. Implement the contracts below before turning on those features in production.
|
|
64
75
|
|
|
65
76
|
Check out the [CLI quick start guide](./docs/05_cli_quickstart.md) for the full walkthrough, option matrix, and project anatomy.
|
|
66
77
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
useAIProviderStore
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-H3BYFEIE.mjs";
|
|
4
4
|
import "./chunk-KCI46M23.mjs";
|
|
5
5
|
import "./chunk-BJTO5JO5.mjs";
|
|
6
6
|
export {
|
|
7
7
|
useAIProviderStore
|
|
8
8
|
};
|
|
9
|
-
//# sourceMappingURL=aiProviderStore-
|
|
9
|
+
//# sourceMappingURL=aiProviderStore-337QNQB3.mjs.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
chat_default
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TLY6A6XL.mjs";
|
|
4
4
|
import "./chunk-ONQMRE2G.mjs";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-KM7FUWCM.mjs";
|
|
6
6
|
import "./chunk-EHNWQ4T3.mjs";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-KNBWR4DS.mjs";
|
|
8
|
+
import "./chunk-557E5VZ2.mjs";
|
|
9
9
|
import "./chunk-7ZDS33S2.mjs";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-H3BYFEIE.mjs";
|
|
11
11
|
import "./chunk-KCI46M23.mjs";
|
|
12
12
|
import "./chunk-BJTO5JO5.mjs";
|
|
13
13
|
export {
|
|
14
14
|
chat_default as default
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=chat-
|
|
16
|
+
//# sourceMappingURL=chat-IDE6Z4Q4.mjs.map
|
package/dist/chat-provider.js
CHANGED
|
@@ -2303,7 +2303,8 @@ var init_gateway_service = __esm({
|
|
|
2303
2303
|
index: 0,
|
|
2304
2304
|
delta: {
|
|
2305
2305
|
role: parsed.message.role,
|
|
2306
|
-
content: parsed.message.content
|
|
2306
|
+
content: parsed.message.content,
|
|
2307
|
+
tool_calls: parsed.message.tool_calls
|
|
2307
2308
|
},
|
|
2308
2309
|
finish_reason: parsed.done ? parsed.done_reason || "stop" : null
|
|
2309
2310
|
}]
|
|
@@ -3283,6 +3284,7 @@ var init_gateway_provider = __esm({
|
|
|
3283
3284
|
}
|
|
3284
3285
|
}
|
|
3285
3286
|
}
|
|
3287
|
+
const toolAwareRequest = request;
|
|
3286
3288
|
const gatewayRequest = {
|
|
3287
3289
|
model: request.model,
|
|
3288
3290
|
messages,
|
|
@@ -3291,7 +3293,8 @@ var init_gateway_provider = __esm({
|
|
|
3291
3293
|
max_tokens: request.maxTokens,
|
|
3292
3294
|
provider: this.config.provider,
|
|
3293
3295
|
// Only include top-level images for Ollama (fallback)
|
|
3294
|
-
images: this.config.provider === "ollama" ? request.images : void 0
|
|
3296
|
+
images: this.config.provider === "ollama" ? request.images : void 0,
|
|
3297
|
+
tools: toolAwareRequest.tools?.length ? toolAwareRequest.tools : void 0
|
|
3295
3298
|
};
|
|
3296
3299
|
debugLogger.debug("Gateway provider chat request", {
|
|
3297
3300
|
model: request.model,
|
|
@@ -3308,13 +3311,18 @@ var init_gateway_provider = __esm({
|
|
|
3308
3311
|
}))
|
|
3309
3312
|
});
|
|
3310
3313
|
return this.gatewayService.chat(gatewayRequest).pipe(
|
|
3311
|
-
(0, import_rxjs7.map)((response) =>
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3314
|
+
(0, import_rxjs7.map)((response) => {
|
|
3315
|
+
const choice = response.choices?.[0];
|
|
3316
|
+
const toolCalls = choice?.message?.tool_calls ?? choice?.delta?.tool_calls;
|
|
3317
|
+
return {
|
|
3318
|
+
message: {
|
|
3319
|
+
content: choice?.message?.content ?? choice?.delta?.content ?? "",
|
|
3320
|
+
role: "assistant",
|
|
3321
|
+
tool_calls: toolCalls
|
|
3322
|
+
},
|
|
3323
|
+
done: choice?.finish_reason === "stop" || choice?.finish_reason === "length" || choice?.finish_reason === "tool_calls"
|
|
3324
|
+
};
|
|
3325
|
+
})
|
|
3318
3326
|
);
|
|
3319
3327
|
}
|
|
3320
3328
|
generate(request) {
|