matevip
6e57f78fc2
feat(wiki-ui): library home + workspace split for Wiki page
2026-05-10 19:16:22 +08:00
matevip
f18626304e
feat(agent,ui): recovery affordance card for non-transient LLM errors
2026-05-10 19:15:57 +08:00
matevip
63f14acb72
fix(settings): stop bulk save from clobbering multimodal sidecar config
2026-05-10 19:15:27 +08:00
matevip
2b84d94897
fix(channel): adaptive debounce window for paste-split long messages
2026-05-10 19:15:15 +08:00
matevip
9075abfef2
feat(channel + settings): wecom quote message parsing + sidecar config preservation
...
WeCom quoted-message context:
- Parse the body.quote field that arrives alongside any inbound message
(text / image / voice / file / mixed sub-types). When a user long-
presses a previous bot bubble and types a follow-up like "解释一下",
the agent now sees both the user's new text and the referenced
content as proper context — replies stay on topic instead of
guessing what was being explained.
- Quoted images / files are downloaded through the same pipeline as
inbound new media (magic-byte sniff, ZIP container peek for
DOCX / XLSX / PPTX recovery, chat-uploads layout) so the vision
sidecar and document tools can actually analyse what was quoted.
- Reading order in the assembled prompt: "[引用消息: ...]\n<user text>"
first, then quoted media parts, then the user's own current-message
media. Mixed quotes flatten into a space-joined summary.
Multimodal sidecar settings preservation:
- The bulk settings PUT used to unconditionally overwrite the vision /
video sidecar model ids — null in a partial payload became "" in
the DB, silently wiping the configured sidecar every time a user
saved an unrelated settings page (System / Music / Image / etc.).
Symptom: "I picked a vision model, saved a different settings tab,
now the bot can't see images anymore."
- Bulk save now guards both keys with non-null checks, matching the
pattern used for music / 3D / image / video / tts / stt blocks.
- A dedicated /settings/sidecar endpoint always writes both keys, so
the sidecar UI can still explicitly clear via null without leaking
the write-on-null semantics into every other settings save.
- Frontend sidecar card switches to the dedicated endpoint; other
settings pages keep their existing partial-payload behaviour.
2026-05-10 11:38:35 +08:00
matevip
b54fd7a24a
fix(ui): channel binding agent dropdown — render pi:* icons + 员工 wording
2026-05-10 08:27:55 +08:00
matevip
4567bd6019
fix(security): require tool guard rule id ( #88 )
2026-05-10 08:02:15 +08:00
matevip
932f3de402
feat(chat,settings): multimodal sidecar configuration + routing visibility ( #87 )
2026-05-09 16:41:36 +08:00
matevip
97e2b12f71
feat(chat): show reply model attribution in assistant message bubbles
2026-05-09 16:41:18 +08:00
matevip
d2886bdaa3
fix(llm): let custom OpenAI-compatible providers opt out of API Key requirement ( #89 )
2026-05-09 14:26:35 +08:00
matevip
88fb28a22a
feat(stt): route OpenAI Whisper provider to any OpenAI-compatible endpoint ( #76 )
2026-05-09 13:57:52 +08:00
matevip
77456d26f8
fix(skill): hide toggle and rescan on virtual MCP/ACP skill cards ( #83 )
2026-05-09 11:32:56 +08:00
matevip
d5969bb32c
fix(chat,llm): liveness-aware model popup with row-based configured check ( #81 )
2026-05-09 11:07:08 +08:00
matevip
52e06afec4
feat(llm,tool/image): dashscope-compat provider + media-gen test profile
2026-05-09 06:28:38 +08:00
matevip
0cbe271f6f
fix(ui/chat): mermaid streaming flicker + copy/download buttons
2026-05-08 17:09:22 +08:00
matevip
5909cb601e
fix(ui/workflows): publish dialog auto-closes on compile failure
2026-05-08 15:09:37 +08:00
matevip
2f62794be6
fix(ui/api): axios interceptor preserves response body on rejection
2026-05-08 15:09:23 +08:00
matevip
2804905500
fix(workflow,trigger): template preview-compile + 3 alpha consistency cleanups
2026-05-08 15:09:14 +08:00
matevip
2416d603c4
fix(workflow,trigger): generator triggerDrafts loop closure + 5 paper cuts
2026-05-08 15:09:06 +08:00
matevip
826c20639a
feat(workflow): natural-language → workflow draft generator + agent tool
2026-05-08 15:08:58 +08:00
matevip
de89df6900
feat(ui/workflows): Monaco editor + schema validation + compile-error markers
2026-05-08 15:08:50 +08:00
matevip
48f87066bd
fix(ui/clipboard): surface fallback copy failure + unify PreflightInstallDialog
2026-05-08 15:08:33 +08:00
matevip
57a459602e
fix(ui): clipboard copy fails in non-HTTPS context
2026-05-08 15:08:27 +08:00
matevip
3ed540e6eb
feat(workflow,trigger): async dispatch + GC schedulers + trigger list polish
2026-05-08 15:07:55 +08:00
matevip
533868c41b
feat(ui/workflows): canvas add-node toolbar + workspace agent picker
2026-05-08 15:07:47 +08:00
matevip
160bf28981
chore(ui/workflows): drop schema-constant noise from mode label dropdown
2026-05-08 15:07:40 +08:00
matevip
6bcf6b5ee4
feat(ui/triggers): structured per-pattern form for all 6 pattern types
2026-05-08 15:07:25 +08:00
matevip
dae74cf26c
feat(channel,trigger): wire channel_message + content_match event sources
2026-05-08 15:07:11 +08:00
matevip
69719eb35e
fix(ui/triggers): expose all 6 supported pattern types in the dropdown
2026-05-08 15:07:03 +08:00
matevip
87727414d5
feat(workflow,trigger): wire workflow_completion as a real event source
2026-05-08 15:06:53 +08:00
matevip
247caaac3d
feat(ui/workflows): paused-run resume loop in workflow editor
2026-05-08 15:06:36 +08:00
matevip
dac774f15e
feat(workflow): trigger workspace isolation + step property editor + custom dialogs
2026-05-08 15:06:16 +08:00
matevip
789af09772
fix(ui/workflows): canvas controls dark-theme + reliable node-click
2026-05-08 15:06:09 +08:00
matevip
12bd05382e
fix(ui/workflows): canvas node click + locale-aware node labels
2026-05-08 15:06:02 +08:00
matevip
844a64ad37
fix(workflow): hard-delete + blank-draft compile + canvas blank pane
2026-05-08 15:05:53 +08:00
matevip
f8499eefa7
feat(ui/workflows): vue-flow canvas + component dialogs + dark / mobile polish
2026-05-08 15:05:45 +08:00
matevip
2a25f4fcfb
feat(ui): i18n + step templates for workflow editor; trigger UX polish
2026-05-08 15:05:36 +08:00
matevip
579e26ecc1
feat(ui): add workflow editor + run viewer + trigger manager views
2026-05-08 15:05:04 +08:00
matevip
0357c9891d
feat(wiki): user-initiated cancel for in-progress raw material processing ( #72 )
2026-05-08 15:03:10 +08:00
matevip
96840b0126
chore: bump version to 1.3.0-SNAPSHOT
2026-05-08 15:02:08 +08:00
lambert
a92f76ff87
fix(ui): clipboard copy fails in non-HTTPS context
...
Use textarea + execCommand fallback when navigator.clipboard is unavailable. Consolidates 5 call sites into a single helper.
2026-05-08 10:23:58 +08:00
matevip
76f5b3ca94
feat(wiki): user-initiated cancel for in-progress raw material processing ( #72 )
2026-05-07 16:32:35 +08:00
matevip
bf2ffbd62b
feat(llm,ui): add Xiaomi MiMo provider and wire icons for xiaomi-mimo / hunyuan-3d / opencode
2026-05-07 08:18:07 +08:00
matevip
ad1264ff51
fix(skill): refuse mutating MCP/ACP virtual skills and hide their card-level edit affordance
2026-05-07 08:18:00 +08:00
matevip
2048768baf
feat(ui): grouped agent tool picker with stale, unavailable, and orphan handling
2026-05-07 08:17:46 +08:00
matevip
c1c2525d0e
feat(llm): seed Zhipu and Aliyun coding-plan subscription providers
2026-05-05 13:06:33 +08:00
matevip
32fe582b82
fix: avoid auto-scroll while reading history ( #61 )
2026-05-05 11:12:38 +08:00
matevip
be2235a493
feat(llm): OAuth device authorization grant for ChatGPT remote deploy
2026-05-05 10:39:47 +08:00
matevip
30ec3168d8
fix(i18n): rename backstage 智能体 to 数字员工 for naming consistency
2026-05-04 18:30:31 +08:00
matevip
b15835ec4f
fix(skill-icon): center inner svg so size-override callers stay aligned
2026-05-04 18:30:22 +08:00