Dashboard: Badges für Sessions (Kontext) und Agents (Features, Skills, Model-Name)

- prettyModelName() von chat.js nach ui.js als globale Funktion verschoben
- Session-Cards: Kontext-Badge mit Tooltip wenn context vorhanden
- Agent-Cards: Badges für ToolChoice:any, AutoCommit, Soul, Identity, UserInfo, Memory
- Agent-Cards: Skill-Badges pro aktiviertem Skill (parallel geladen)
- Agent-Cards: Model-Name via prettyModelName() statt roher Model-ID
- Neue CSS-Klassen: badge-feature, badge-forced-feature, badge-skill
- Theme: primary/dangerous Farben angepasst
- Chat: Input overflow hidden→auto
This commit is contained in:
Meleki committed 2026-03-02 08:22:18 +01:00
1 parent 754b2aa3e3
commit 56d4d1be0a
6 files changed
+73 -29

No files matched your search

+1 -18
View File
@@ -1,25 +1,8 @@
// ── Helpers ──
function _prettyModelName(model) {
if (!model) return '?';
// claude-sonnet-4-20250514 → Sonnet 4
// claude-opus-4-6 → Opus 4.6
// claude-haiku-3-5 → Haiku 3.5
const m = model.match(/claude-(\w+)-(\d+)(?:-(\d+))?/);
if (m) {
const family = m[1].charAt(0).toUpperCase() + m[1].slice(1);
const major = m[2];
const minor = m[3];
// minor > 20000000 ist ein Datums-Suffix, kein Minor-Version
if (minor && minor.length <= 2) return family + ' ' + major + '.' + minor;
return family + ' ' + major;
}
return 'Unbekannt';
}
function buildMetaBadges(d) {
const badges = [];
badges.push(_prettyModelName(d.model));
badges.push(prettyModelName(d.model));
badges.push('Tokens: ' + (d.inputTokens || 0) + ' / ' + (d.outputTokens || 0));
if (d.cacheCreationTokens > 0 || d.cacheReadTokens > 0) {
badges.push('Cache: ' + (d.cacheReadTokens || 0) + ' / ' + (d.cacheCreationTokens || 0));