llm_meta_widget 0.8.3 → 0.8.5
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.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 00faf07976c3996c8dde526d85ae14baaa012290453a15e0e16ec64862ad5c00
|
|
4
|
+
data.tar.gz: f645a3cfe67ca0d163b4a2d44059148950c573f125ad7f51638683acf9726276
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b6604c83be08505904da3397520fe67744b05f99bd07ccf146a9bdb6e86f8272bf0cd00cf290c2311e8c814ee5a078ad8730f05373c9325d20c28b7993d532d9
|
|
7
|
+
data.tar.gz: b9357df041a048abb2f1c72b069b9433f1da3d8c967a4bac1adc6f12ab7cffea88551800578dbabaf9ad81b5af21b0b2645c846bc622000f978eba3b1d993aa9
|
|
@@ -44,7 +44,7 @@ const MARKUP = `
|
|
|
44
44
|
<div class="lmw-header">
|
|
45
45
|
<span class="lmw-title-group">
|
|
46
46
|
<span class="lmw-title">AI assistant</span>
|
|
47
|
-
<
|
|
47
|
+
<span class="lmw-powered">(powered by <a href="https://chat.aibranch.org/" target="_blank" rel="noopener noreferrer">AIbranch</a>)</span>
|
|
48
48
|
</span>
|
|
49
49
|
<div class="lmw-header-right">
|
|
50
50
|
<button type="button" class="lmw-clear" title="Clear conversation">clear</button>
|
|
@@ -408,6 +408,13 @@ function boot(cfg) {
|
|
|
408
408
|
(payload.llms || []).forEach(function(llm) {
|
|
409
409
|
if (llm.family !== "ollama") return;
|
|
410
410
|
(llm.available_models || []).forEach(function(m) {
|
|
411
|
+
// This widget exists to call tools — page actions and MCP. A model
|
|
412
|
+
// that declares no tool support fails hard the moment any tool is
|
|
413
|
+
// declared ("<model> does not support tools"), so offering it in the
|
|
414
|
+
// picker is a trap: the visitor picks it and the next turn errors.
|
|
415
|
+
// `=== false` on purpose — a hub that omits the field is older, not
|
|
416
|
+
// a claim of no support, and must keep working.
|
|
417
|
+
if (m.supports_tools === false) return;
|
|
411
418
|
if (anyAllowedByAllowlist(m.value, MODEL_ALLOWLIST)) {
|
|
412
419
|
flat.push({ value: m.value, label: m.label });
|
|
413
420
|
}
|
|
@@ -3279,10 +3279,13 @@ var panel_default = `/* The chat panel's own styles. Extracted from _chat_panel.
|
|
|
3279
3279
|
#llm-meta-widget-chat .lmw-title-group {
|
|
3280
3280
|
display: flex; align-items: baseline; gap: 6px; min-width: 0;
|
|
3281
3281
|
}
|
|
3282
|
+
/* The wrapper is plain text; only the service NAME is clickable, so the
|
|
3283
|
+
* link target is the word a reader would aim at. */
|
|
3282
3284
|
#llm-meta-widget-chat .lmw-powered {
|
|
3283
|
-
font-size: 11px; color: #6b7280;
|
|
3285
|
+
font-size: 11px; color: #6b7280; white-space: nowrap;
|
|
3284
3286
|
}
|
|
3285
|
-
#llm-meta-widget-chat .lmw-powered
|
|
3287
|
+
#llm-meta-widget-chat .lmw-powered a { color: inherit; text-decoration: underline; }
|
|
3288
|
+
#llm-meta-widget-chat .lmw-powered a:hover { color: #2563eb; }
|
|
3286
3289
|
|
|
3287
3290
|
/* Level-1 model picker \u2014 compact <select> next to the title.
|
|
3288
3291
|
* Populated by JS on widget open from GET /api/llms (anon path
|
|
@@ -3571,7 +3574,7 @@ var MARKUP = `
|
|
|
3571
3574
|
<div class="lmw-header">
|
|
3572
3575
|
<span class="lmw-title-group">
|
|
3573
3576
|
<span class="lmw-title">AI assistant</span>
|
|
3574
|
-
<
|
|
3577
|
+
<span class="lmw-powered">(powered by <a href="https://chat.aibranch.org/" target="_blank" rel="noopener noreferrer">AIbranch</a>)</span>
|
|
3575
3578
|
</span>
|
|
3576
3579
|
<div class="lmw-header-right">
|
|
3577
3580
|
<button type="button" class="lmw-clear" title="Clear conversation">clear</button>
|
|
@@ -3865,6 +3868,7 @@ function boot(cfg) {
|
|
|
3865
3868
|
(payload.llms || []).forEach(function(llm) {
|
|
3866
3869
|
if (llm.family !== "ollama") return;
|
|
3867
3870
|
(llm.available_models || []).forEach(function(m) {
|
|
3871
|
+
if (m.supports_tools === false) return;
|
|
3868
3872
|
if (anyAllowedByAllowlist(m.value, MODEL_ALLOWLIST)) {
|
|
3869
3873
|
flat.push({ value: m.value, label: m.label });
|
|
3870
3874
|
}
|
|
@@ -96,10 +96,13 @@
|
|
|
96
96
|
#llm-meta-widget-chat .lmw-title-group {
|
|
97
97
|
display: flex; align-items: baseline; gap: 6px; min-width: 0;
|
|
98
98
|
}
|
|
99
|
+
/* The wrapper is plain text; only the service NAME is clickable, so the
|
|
100
|
+
* link target is the word a reader would aim at. */
|
|
99
101
|
#llm-meta-widget-chat .lmw-powered {
|
|
100
|
-
font-size: 11px; color: #6b7280;
|
|
102
|
+
font-size: 11px; color: #6b7280; white-space: nowrap;
|
|
101
103
|
}
|
|
102
|
-
#llm-meta-widget-chat .lmw-powered
|
|
104
|
+
#llm-meta-widget-chat .lmw-powered a { color: inherit; text-decoration: underline; }
|
|
105
|
+
#llm-meta-widget-chat .lmw-powered a:hover { color: #2563eb; }
|
|
103
106
|
|
|
104
107
|
/* Level-1 model picker — compact <select> next to the title.
|
|
105
108
|
* Populated by JS on widget open from GET /api/llms (anon path
|