diff --git a/static/sessions.js b/static/sessions.js index 98c753b..1c96ec3 100644 --- a/static/sessions.js +++ b/static/sessions.js @@ -578,6 +578,10 @@ function renderSessionListFromCache(){ } // ── Render session items (extracted for group body use) ── // Note: declared after the groups loop but available via function hoisting. + function _formatSourceTag(tag){ + const names={telegram:'via Telegram',discord:'via Discord',slack:'via Slack',cli:'CLI',feishu:'via Feishu',weixin:'via WeChat'}; + return names[tag]||tag; + } function _renderOneSession(s){ const el=document.createElement('div'); const isActive=S.session&&s.session_id===S.session.session_id; @@ -598,7 +602,7 @@ function renderSessionListFromCache(){ const tsMs=_sessionTimestampMs(s); titleRow.appendChild(title); const metaBits=[]; - if(s.is_cli_session && s.source_tag) metaBits.push(s.source_tag); + if(s.is_cli_session && s.source_tag) metaBits.push(_formatSourceTag(s.source_tag)); if(s.message_count) metaBits.push(t('n_messages', s.message_count)); if(s.model) metaBits.push(String(s.model).split('/').pop()); sessionText.appendChild(titleRow); diff --git a/static/style.css b/static/style.css index 571e362..ec2a92c 100644 --- a/static/style.css +++ b/static/style.css @@ -1099,8 +1099,8 @@ body.resizing{user-select:none;cursor:col-resize;} display: none; } /* Source-specific colors for gateway sessions */ -.session-item.cli-session[data-source="telegram"] { border-left-color: #0088cc; } -.session-item.cli-session[data-source="telegram"]::after { color: #0088cc; } +.session-item.cli-session[data-source="telegram"] { border-left-color: rgba(0, 136, 204, 0.55); } +.session-item.cli-session[data-source="telegram"]::after { color: rgba(0, 136, 204, 0.55); } .session-item.cli-session[data-source="discord"] { border-left-color: #5865F2; } .session-item.cli-session[data-source="discord"]::after { color: #5865F2; } .session-item.cli-session[data-source="slack"] { border-left-color: #4A154B; }