Commit Graph
99 Commits
Author SHA1 Message Date
ethan su 38e16700be refactor: relocate status indicator to sidebar footer
- Move .run-state button from page header to sidebar .foot-status
- Add .foot-status layout (flex, gap, version label inline)
- Remove old .foot-ver block (merged into .foot-status)
- Remove .page > .page-top .run-state positioning rule
- Extend .run-state animations to cover .foot-status context
2026-06-18 00:21:34 +08:00
ethan su 5057d1114d style: unify default font size to 13px
- --chat-font: 14px → 13px (bubble text baseline)
- --shell-head-h: 36px → 28px (tighter header)
- composer .input: 15px → 13px
- composer placeholder: 15px → 13px
- bubble h1: add font-weight:600, adjust padding
2026-06-18 00:19:44 +08:00
yanghang badfbb9e2b fix(desktop): UI polish, custom-task edit, input-limit fixes
- 自定义任务卡: 主图标改用户图标, 新增'编辑任务'(铅笔->预填弹窗->更新),
  标题/描述截断(…)+tooltip
- 字数上限告警重构: 每字段独立提示(消除串扰), 文案只提醒不提截断,
  2.5s自动消失, 超限尝试才触发, JS管控长度修复中文IME下不触发的问题
- Token统计: 重置按钮与日期框高度统一(30px)
- 会话项'更多'按钮: 放大并调深颜色, 解决几乎看不到
- 侧边栏选中态: 深色文字提对比 + text-shadow假加粗(不改字宽,避免抖动)
- 全局弱文字对比度: --muted/--muted2 浅色调深、深色调亮
2026-06-17 22:58:44 +08:00
dd3xp 58ebf8e052 style(desktop): collab retry button uses .preset-restore look (white card bg)
Drop the var(--line-soft) gray background — too dim against the topbar.
Match .preset-restore button styling:
- background: var(--card) (clean white panel)
- border: var(--line)
- hover: bg var(--hover-2), color + border become var(--accent)

styles.css?v=152→153.
2026-06-17 21:29:41 +08:00
dd3xp 9fdae2342d feat(desktop): collab offline UI — replace banner with topbar status + refresh icon
The previous collab page showed a wide banner with the long offline message
plus a "重试" chip button across the top, which looked clunky. Move both
into the existing page-top status bar:

- Drop .collab-offline and .collab-reconnect <div> banners entirely
  (HTML, CSS rules, and JS show/hide logic).
- Wrap .run-state and a new .collab-retry-btn in a .page-top-center flex
  container (grid-column:2 of the page-top grid).
- Topbar text replaces "未连接" with the new collab.offlineShort string
  ("无法连接 Conductor(8900)" / "Cannot reach Conductor (8900)") via
  collabStatus.set(longer, 'offline').
- The retry button is a 24×24 button styled like .new-conv (var(--line-soft)
  bg + 1px border + 4px radius, hover var(--hover-2)), holding a 14×14
  inline SVG refresh-cw icon. Hidden by default, shown only when offline
  AND no auto-reconnect is in progress.
- setConnUi simplified to just toggle the retry icon's [hidden] attribute.
- Existing click handler on #collab-retry preserved (id unchanged).
2026-06-17 21:13:26 +08:00
ethan su 28a90b8405 feat: typography alignment with system font baseline
- Consolidate font stack: remove GA Lexend/Noto Sans, use system sans (SF Pro/Segoe UI)
- Reduce CSS font variables from 6 to 3 (--font-sans, --font-mono, --font-brand)
- Converge font-weights to match reference spec (700→600 headings, 600→500 labels)
- Add explicit font-family to pre/code blocks
- Compact nav-item: 28px height, 8px padding, 16px icons
- Remove 'token' from all UI copy, simplify to 'Usage'/'用量'
- Add cache-buster to fonts.css link
2026-06-17 18:31:16 +08:00
dd3xp 85de745027 feat(desktop): sidebar + token page UI polish
Sidebar:
- 快速接入官方模型 header restyled to match 配置 button (foot-row style:
  transparent bg, padding, hover state, lightning icon on left,
  caretRight chevron on right that rotates 90deg when expanded).
- Drop the "填好 API Key 即可使用" subtitle for single-line consistency.
- Drop the "展开/折叠" tooltip on the head.
- Bump both .pq-head and .foot-row padding to 14px so the buttons look
  substantial.
- Set .sidebar-foot margin-top:6px to match .provider-quickstart's internal
  gap:6px — uniform 6px rhythm between pq-head→DeepSeek→Qwen→配置.

Services page:
- Remove the "IM 消息通道与后台进程,集中查看、启停与日志" subtitle.
- Align .svc-tabs margin with .tok-tabs (margin:10px 0 0) so the title
  position and tab bar position match the Token usage page.

Token page (i18n):
- zh: "Conductor" → "指挥家" on tab label, total/current row labels,
  tooltip, and the new tok.condOffline string (replaces hard-coded text).
- en remains "Conductor" (English UI keeps the English name).

Token table column widths:
- Switch to table-layout:fixed. Number columns 80px each, cache-rate 85px.
- First column (session name) gets the rest of the width; overflow truncates
  with ellipsis. JS adds title="<full name>" so hover shows the complete
  session title as a tooltip. No more column-width jitter when switching
  Chat/指挥家 tabs.

Color tweaks (no hardcoded values):
- .pq-btn background var(--bg-base) → var(--field-bg) (lighter).
- .model-guide border var(--accent) → var(--line-base); background
  var(--accent-bg) → var(--field-bg) (lighter, neutral).
2026-06-17 08:19:59 +08:00
dd3xp cf51b718e6 feat(desktop): fix trend chart text squish + remove color theme picker
Trend chart fix:
- SVG had preserveAspectRatio="none" which stretched the viewBox 600x260
  non-uniformly to the container (max-width 760 x height 280), making text
  ~15% wider than tall ("扁").
- Switch to preserveAspectRatio="xMidYMid meet" so text renders at correct
  aspect, and replace fixed container height with aspect-ratio:600/260 +
  min-height:280px so chart fills naturally without distortion.

Color theme cleanup (user-requested):
- Drop 8-color mac-style palette, keep only a single gray light theme.
- --accent now hard-coded gray (#8e8e93); removed --swatch-2..8 and all
  html[data-theme="N"] / .swatch[data-theme="N"] CSS rules.
- Remove the entire "颜色" (set.theme) block from settings page.
- applyTheme() stubbed: still callable for backward compat with stored
  ga_theme values, but always normalizes to theme '1'.
- Drop set.theme i18n entries (zh + en).

Cache busters: styles.css 136→137, app.js 181→182.
2026-06-17 07:30:33 +08:00
weaselkkkandClaude Opus 4.8 d00d456ab3 style(desktop): 快速接入卡片改用中性白/浅灰配色,去除主题色调
- 外层卡片改为白色(--card)+ 中性描边(--line-base)
- 内层按钮改为浅灰(--bg-base),去除原 --line-soft 的主题绿色调

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 23:27:22 +08:00
weaselkkkandClaude Opus 4.8 598fa949b3 feat(desktop): 快速接入卡片支持折叠,并改用 DeepSeek/Qwen 官方 logo
- 卡片头部新增向下箭头,可折叠/展开,状态记忆到 localStorage
- DeepSeek / 通义千问 图标替换为官方 logo(品牌色 + 浅色徽底)
- 添加模型弹窗指引横幅同步使用官方 logo

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 23:20:07 +08:00
weaselkkkandClaude Opus 4.8 110a968571 feat(desktop): 侧边栏新增 DeepSeek/Qwen 官方 API 快速接入入口与指引
- 侧边栏空白区新增「快速接入」卡片,DeepSeek / 通义千问 一键按钮
- 点击后打开预填好 API 地址/协议/模型的添加模型表单,仅需粘贴 Key
- 表单顶部接入指引横幅:分步说明 + 获取 Key 链接 + 复制按钮
- 中英文双语文案,语言切换实时生效

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 23:04:16 +08:00
lyx 5864d47c06 适配流式渲染 2026-06-08 22:51:47 +08:00
lyx fc21f1f291 style(desktop): Conductor 分工进度抽屉更紧凑
去掉标题/统计区分割线,缩小计数徽标与任务卡片,统一圆角与上下留白。
2026-06-06 23:54:19 +08:00
lyx 7ea3b7f0ba fix(desktop): 轮次标题单行显示,避免窄栏折行
fold-turn summary 与 turn-summary 加 nowrap,副标题过长 ellipsis。
2026-06-06 22:18:46 +08:00
lyx 7803cdf5be Merge branch 'main' into feat/desktop-ui
保留桌面 UI 分支的静态资源版本号(styles v127 / app v162)。
2026-06-06 19:18:44 +08:00
yiqi-017 518872010c [FIX]:估算价格改成缓存率 2026-06-06 12:00:41 +08:00
lyx 10d97cb1e0 feat(desktop): 统一聊天与 Conductor 对话布局并复用 composer
引入 page--chat-ui 共用壳层与 bindComposerInRoot;Conductor 提示词气泡独立于输入框;修正侧栏拖拽热区对齐缝隙。
2026-06-05 02:37:22 +08:00
lyx f9cd2887d0 feat(desktop): 三栏布局对齐与会话加载态
统一顶栏/侧栏/右栏行高与间距,聊天区与输入框分框留白并同宽;切换会话 hydrate 时显示加载提示;历史列表隐藏滚动条且与「新对话」间距一致。
2026-06-05 02:21:12 +08:00
lyx c00899c46f 优化plan card视觉 2026-06-05 01:46:27 +08:00
lyx 3c871ca60e 1. 聊天框和Conductor对齐
2. 尝试修复聊天渲染卡顿问题
2026-06-05 00:01:31 +08:00
lyx 7d63de0376 feat(desktop): Conductor 呼吸灯与进度 rail/drawer 状态优化
顶栏/Conductor 运行态改为绿色呼吸灯(含 connecting/offline 分态);
进度侧栏 rail 增加失败计数徽章,卡片与统计区统一使用呼吸标记。
2026-06-04 19:58:09 +08:00
lyx 3b923ff23c feat(desktop): Plan 模式 todo 卡片初版
poll 响应附带 plan 事实数据(plan_state + bridge 两行接入),composer 上方渲染进度与任务行;完成/读空 grace 在前端处理。plan_state 原 API 与 TUI 完全兼容,Desktop 仅新增 *_for_desktop 辅助函数。
2026-06-04 15:14:00 +08:00
lyx 17d98159fe 流式未收口的工具块先折进「输出中」折叠不再乱闪,并修稳工具假围栏误截、工具结果误拆成多个空折叠、刷新重播打字机、滚代码块弹回和难点展开。 2026-06-04 14:29:49 +08:00
lyx 213aa0e870 style(desktop): lighten dark appearance one step on GitHub Primer scale
Shift existing dark palette tokens up one tier for less harsh contrast while keeping the same color system; sync settings preview swatches and accent-on colors.
2026-06-04 13:00:22 +08:00
dd3xpandClaude Opus 4.7 04c68558d7 feat(desktop): per-page top bar with caret toggles + drop annotation scaffold
1. Removed the two floating arrow buttons (.sb-toggle / .rp-toggle) that

   used to sit at the side seams between sidebar/main/rightpanel.

2. Each page section now owns its own .page-top bar with:

   - left: .pt-sb-toggle (caretLeft, borderless icon button) — collapses

     left sidebar; svg rotates 180° when sidebar is collapsed.

   - right: .pt-rp-toggle (caretRight) — same logic for right panel.

   - chat/collab keep run-state centered between the two icons.

   - services/token use a .pt-spacer to fill the middle gap.

3. .pt-icon style is borderless / transparent / opacity-0.7 (no boxy

   bordered button look); page-top padding tightened to 4px so the

   carets hug the screen edges. Bump styles.css?v=95→97.

4. Wiring: app.js queries .pt-sb-toggle/.pt-rp-toggle by class (4 of

   each, one per page) and binds them to the existing

   .body.classList.toggle('sb-collapsed') / .toggle('rp-collapsed')

   handlers. Behavior identical to the old single buttons.

5. Dropped the DEV annotation scaffold: removed annot.css link in head,

   annot.js script at end of body, and deleted both files.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 07:52:36 +08:00
dd3xpandClaude Opus 4.7 9a9624e261 feat(desktop): nav reorder + taller trend chart + token tabs use svc style
1. Sidebar nav: move 后台服务 (services) to AFTER 指挥家 (collab).

   New order: 聊天 → 指挥家 → 后台服务 → Token 统计.

2. Token trend chart: was flat (container 160px tall, viewBox 600×140).

   Now container 280px + max-width 760px to stop it stretching on wide

   screens; viewBox bumped to 600×260 with a bit more padding so text

   does not get distorted under preserveAspectRatio="none".

3. Token stats tabs (聊天 / Conductor) reuse the .svc-tabs underline

   look from the services page — same visual language. CSS-only;

   .tok-tabs/.tok-tab classes and the JS click handler are unchanged.

4. Bump app.js?v=81→82 (app.js really changed this time, and the bump

   also flushes stale i18n cache for previously-untranslated keys).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 07:25:25 +08:00
dd3xpandClaude Opus 4.7 1fbf994de7 Merge PR #7: feat: merge channels and status into one services page
Resolved one conflict in app.js: kept the new token trend chart code from

main and adopted PR's services-tab nav handler (replaces the old

channels/status separate handlers, which the PR consolidates anyway).

index.html and styles.css auto-merged cleanly.

Closes dd3xp/GenericAgent_Desktop#7

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 06:50:01 +08:00
yiqi-017andClaude Opus 4.6 540376dce9 feat(desktop): add collapsible daily cost trend chart to token stats
Pure SVG line chart showing daily spending (¥) over time. Respects
date filter, fills zero-cost gaps, uses local timezone for grouping.
Hidden on Conductor tab.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-02 04:23:00 +08:00
weaselkkk 61421df0a1 feat: merge channels and status into one services page 2026-06-01 22:06:14 +08:00
yiqi-017andClaude Opus 4.6 63fdd2b6da feat(desktop): token stats tab bar separating chat and conductor
- Two tabs: 聊天 (chat sessions) and Conductor (cumulative/current)
- Conductor tab hides date filter and stat-row summary
- Remove green background and expand triangle from conductor rows
- Bump app.js and styles.css cache versions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-01 19:31:41 +08:00
lyx 22fa6012bb Conductor美化
Conductor 页 UI 重构:对齐主聊天布局,复用消息/composer 样式,独立 cdb-composer 与 progress rail/drawer。
2026-05-30 19:09:37 +08:00
yiqi-017andClaude Opus 4.6 213873c565 feat(desktop): conductor token stats summary row in token page
- conductor.py: install cost_tracker + expose /token-stats endpoint (5 lines)
- app.js: fetch conductor token totals and display as a single summary row at top of token table (not expandable, with tooltip noting it's excluded from cumulative totals)
- styles.css: conductor row styling

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-29 23:03:53 +08:00
yiqi-017andClaude Opus 4.6 c164a57eec fix(desktop): token stats title fallback when sess.title is empty
两个修复:

1. tokRenderTable 里 title 显示修复 — 新的 session naming 把 sess.title 默认设为空字符串,导致 token 统计 fallback 到原始 session ID(sess-xxx)。改为用 displayTitle(sess) 实时推导标题,和侧边栏一致。
2. tokPollBridge 里写入 history 时的 title 修复 — 同样的问题,写入时 sess?.title || sid 对空标题 fallback 到 ID。改为 sess ? displayTitle(sess) : sid。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-29 18:36:08 +08:00
dd3xpandClaude Opus 4.7 73fbb2ab3b feat(desktop): preset/composer/topbar restructure + conductor persistence + TUI-style session naming
UI restructure (frontend static):
- PLAN moved from sticky toggle chip to a preset card (BUILTIN_PRESETS) that
  one-shot-sends `presetPrompt.plan`, now pointing at the real
  memory/plan_sop.md (Auto was considered too but dropped — it semantically
  overlaps with the existing "自主探索" preset). All plan/auto toggle
  plumbing removed: state, chip listeners, applyToggleClass, ga_plan/ga_auto
  localStorage, planPrefix/autoPrefix injection.
- Chat composer: model chip moved out of the joined .cb-left pill group to
  sit next to the send button (composer-bot is now right-aligned model+send).
- Conductor composer: gained its own #collab-model-chip + #collab-model-menu;
  openModelMenu/renderModelMenu/updateModelChip refactored to be ctx-aware
  (both chips share the model list; each pops its menu into its own
  composer; updateModelChip syncs both names).
- Topbar dissolved into per-page headers: the global .topbar was removed
  from <main>; the run-state moved into a .page-top inside the chat page,
  so the "topbar" now switches with the page instead of persisting.
- Removed the conductor "{n} 个任务进行中" sticky banner (#collab-sticky);
  the same info is already in the progress panel and the sidebar badge.

Conductor persistence (conductor.py + frontend wiring):
- conductor.py: add_chat() carries files/images on each chat item; WS
  receive passes data.files/data.images through; hello includes a
  running flag (any subagent with status="running"). 5 net edits.
- app.js: ws.send now posts {msg, files, images} (was msg only); onWsData
  hello/chat branches map files/images and set S.conductorTyping from
  data.running so attachments + run animation survive a page refresh.

Session naming (mirror TUI continue_cmd._preview_text):
- New helper displayTitle(sess): if user manually renamed, use sess.title;
  otherwise scan messages — prefer the last <summary>…</summary> in any
  assistant reply, fall back to the first user message text (≤40 chars,
  attachment placeholders stripped), final fallback t('conv.defaultTitle').
- newSession() now defaults sess.title to '' instead of '新对话'; the
  earlier "first message → title" auto-rename block in submitInput is
  gone — titles only get written when the user renames explicitly.
- isAutoTitle() recognises '新对话'/'New chat'/'agent-N' as placeholder so
  legacy sessions and the brief agent-N experiment get re-derived live
  in the sidebar without losing user renames.
- Sidebar render + search filter now go through displayTitle.

Note: requires a one-time restart of conductor.py for its part to take
effect; the static frontend changes are just a refresh.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 02:22:16 +08:00
wjl2023 c57539b230 feat: ask_user通知框去圆角,改为方形
- .ask-user-notice border-radius: var(--radius) → 0
- 匹配项目整体方形设计风格
2026-05-28 03:41:43 +08:00
wjl2023 33463dec51 feat: ask_user通知加粗banner和问题文本
- .ask-user-banner-text font-weight: 600→700
- .ask-user-body 新增 font-weight:600
- 提升ask_user卡片视觉层级,问题更醒目
2026-05-28 03:40:13 +08:00
wjl2023 43bace370d feat: 自定义滚动条样式,完全方形窄滚动条
- 全局 webkit scrollbar: 6px宽,border-radius:0(完全方形)
- 滑块颜色 var(--line),hover 加深为 var(--line-strong)
- 轨道透明,不占视觉空间
- 去掉 scrollbar-width:thin(会覆盖webkit伪元素导致overlay模式)
- 匹配项目整体方形设计风格
2026-05-28 03:36:38 +08:00
wjl2023 eadc6bb476 feat: 精简分割线,聊天主体用单一矩形框包裹
- msg-area 四边 border:1px solid var(--line) 形成完整矩形框
- 去掉 topbar border-bottom(改由 msg-area border-top 承担)
- 去掉 composer border-top(改由 msg-area border-bottom 承担)
- 去掉 main.main 的 border
- 去掉 .sidebar-foot 的 border-top
- 去掉 aside.sidebar 的 border-right
- 去掉 #rightpanel 的 border-left
- 去掉 .chat-tools 的 border-bottom
- 矩形完全自包含于 msg-area,不受 rightPanel 遮挡影响
2026-05-28 03:28:48 +08:00
wjl2023 9b10f88fdc style: align LaTeX copy button with code block copy button
- Replace SVG icon with ⧉ character (same as code block)
- Match font-size, padding, border-radius, background
- Remove border and flex layout, use simple text button
- Both buttons now visually identical (~16.5x14.7px)
2026-05-28 03:17:55 +08:00
wjl2023 41ec2a92a2 feat: TUI风格代码块渲染 - 语言标签头+复制按钮+终端面板样式 2026-05-28 03:06:15 +08:00
wjl2023 07eec30403 feat: 折叠框箭头旋转动画(▶→▼, 0.2s ease transition) 2026-05-28 03:01:20 +08:00
wjl2023 6eeb1f2d11 fix: 去掉工具调用/结果折叠框的蓝绿色边框和背景(fold-tool/fold-result→transparent) 2026-05-28 02:58:08 +08:00
wjl2023 aa1bc4f35e fix: 去掉模型回复的灰色气泡背景(bubble.md background→transparent) 2026-05-28 02:54:39 +08:00
dd3xpandClaude Opus 4.7 e66b6b3aaa feat(desktop): adopt PR#3 rectilinear design + clearer PLAN/AUTO + session restore
Re-skin the desktop frontend in ethan su's "rectilinear workspace" visual
language (PR#3) without dropping any feature, plus two UX fixes. Done as a
content-overlay, NOT a git merge of PR#3 — PR#3's app.js reverts ask_user /
conductor / composer / timing, so only its visual layer is adopted.

Design (PR#3):
- Bundle brand fonts (Azonix wordmark / Lexend / Noto Sans / JetBrains Mono)
  + phosphor-icons.js (auto-hydrates [data-ga-icon]).
- styles.css: adopt ethan's full design-token system (accent #1f6f53,
  --radius 4px/2px squared corners, brand fonts) via 3-way merge; keep all
  feature CSS (composer chips, ask_user notice, conductor, flatpickr, timing
  badge); normalize leftover --blue -> --accent.
- index.html: ethan's phosphor chrome; keep contenteditable composers, the
  real conductor UI, flatpickr links, and collab-badge.
- app.js: add GA_ICON() helper; swap dynamic chrome icons (pin, more, model
  edit/delete, add-preset, channel, ctx-delete, drawer-close) to Phosphor.
  Flags, copy/check, file-chip and preset-card icons left inline by design.

Fixes:
- PLAN/AUTO toggles now show an unmistakable on-state (solid accent fill);
  the .cb-left .chip.sm rule was overriding .chip.on by specificity, so the
  on/off difference was nearly invisible.
- On refresh, restore the session you were actually viewing (persist
  ga_active) instead of the bridge's roaming most-recently-updated session;
  show the empty new-session state when none is selected.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 01:22:07 +08:00
dd3xpandClaude Opus 4.7 21fb0ae491 refactor(ask_user): treat single-question as a special case of multi-question
Unify the single-question and multi-question ask_user rendering instead of
having two divergent paths:

- Single-question options (from `candidates`) are now folded into the question
  body as inline A./B./C. lines via foldAskCandidates(), rendered exactly like
  multi-question inline options (.ask-option-line). The separate numbered <ul>
  candidate list is gone, which also removes the "1. A." double-numbering.
- Fold with a single newline so question + options render as one <p>; every
  option (including the first) follows a <br>, so all get consistent indent.
- Placeholder is unified to the free-form ask.placeholderOpen for both; the
  per-single-question "type 1/2/3 to pick" placeholder is removed.
- Drop now-dead code: ask.placeholderOpts i18n (zh+en) and the
  .ask-candidates / .ask-candidate-key / .ask-candidate-label CSS.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 23:04:32 +08:00
dd3xpandClaude Opus 4.7 d6ed088f60 merge: fold latest main (ask_user + session-rename) into contenteditable composer
- Resolve styles.css: keep session-rename's .ci-rename-input + my .ci-pin, both on --accent.
- Adapt ask_user dynamic placeholder: inputEl.setAttribute('placeholder',...) ->
  'data-ph' so it shows on the contenteditable composer (no placeholder attr on a div).
- session-rename uses its own rename <input> (.value) — untouched, no composer conflict.
- Bump asset cache-bust (styles.css v74 / app.js v45).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 21:55:51 +08:00
dd3xpandClaude Opus 4.7 a490eb8502 merge: reconcile desktop/main (conductor + ask_user base via bbfa91c) with contenteditable composer
WIP checkpoint: both composers (chat + collab) to contenteditable+atomic chips on top
of lyx/017's ctx multi-composer; conductor send uses gaComposerText('collab'); --blue
-> --accent; flatpickr (PR#2). Re-merging latest main next.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 21:50:26 +08:00
yiqi-017 242a6cc684 [feat]:增加rename会话的功能 2026-05-27 21:36:07 +08:00
weaselkkkandCursor 909dd7d7b9 Merge branch 'feature/ask_user' into main
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 18:59:43 +08:00
dd3xpandClaude Opus 4.7 e3b77447de refactor(desktop): rename theme var --blue -> --accent; plain-icon sidebar toggles
- Rename the misleadingly-named --blue theme accent var to --accent (incl.
  --blue-bg/-soft -> --accent-bg/-soft) across styles.css + the applyTheme
  setter in app.js. Keep --blue* as back-compat aliases of --accent* so
  unmerged branches (e.g. PR#1) still render until they migrate.
- Sidebar / right-panel toggles: plain icon button when expanded (no bg/border);
  restore the edge-tab look (bg + border) only when collapsed.
- Bump asset cache-bust (styles.css v23 / app.js v30).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 18:46:35 +08:00