agent-Specialization/static/icons
JOJO e2bbd767f7 feat(host-security+ui): unify host execution/approval behavior, runtime notices, and approval overlay UX
This commit consolidates a large set of host-mode security and UX fixes across backend and frontend.

Security / execution model:
- Make permission/execution mode switches apply immediately (no deferred pending-only behavior).
- Keep runtime mode change notices durable and visible via user-message guidance path.
- Add explicit runtime message source taxonomy support and persistence:
  user / presend / guidance / notify / sub_agent / background_command.
- Ensure guidance/notify insertion is batched per tool-cycle so mid-run inserts are committed together.
- Separate notify from guidance semantics for mode-change notices.
- Add direct-mode auto-fallback handling visibility on frontend.

Approval and command gating:
- Align run_command approval pre-check logic with docker behavior for approval/auto_approval modes in host execution paths.
- Keep approval retry flow and final-result semantics intact when permission errors trigger approval.
- Externalize forbidden command keyword list into JSON config:
  config/forbidden_commands.json.
- Update forbidden command rejection message to user-facing wording:
  用户不允许执行包含“... ”的指令.

Prompt/runtime guidance:
- Refine execution-mode runtime rule text to avoid endless workaround loops:
  one safe alternative first, then request switching to direct mode when truly required.

Chat rendering / message UX:
- Prevent injected guidance/notify user-messages from incorrectly triggering assistant work header/timer chain.
- Restore correct visibility after history reload while preserving runtime-source behavior.
- Update user-header icon/label rendering by message source:
  - guidance -> 引导 + navigation icon
  - notify/sub_agent/background_command -> 通知 + bell icon
  - user/presend -> keep normal user header.
- Add new icons: static/icons/navigation.svg, static/icons/bell.svg.

Approval panel UX:
- Convert desktop approval panel from layout-compress sidebar to overlay + blur sheet.
- Fix panel transition behavior (remove unintended vertical motion; use dedicated desktop overlay transition).
- Improve approval result display:
  - decision and reason split lines,
  - green/red status styling,
  - multiline reason rendering,
  - auto-collapse delay adjusted to 3s.

Execution mode TTL feedback:
- When direct mode auto-expires to sandbox, frontend menu state is updated from status snapshot.
- Show non-auto-dismiss warning toast to explicitly notify auto-fallback.

Misc consistency updates:
- Execution mode label text cleanup in composer.
- Runtime notice wording normalization (权限模式修改为..., 执行环境修改为...).

Build/test notes:
- Frontend rebuilt after UI changes.
- Smoke tests passed for server refactor path.
2026-05-12 19:16:38 +08:00
..
align-left.svg feat: improve mobile overlays and focus panel 2025-11-26 23:50:57 +08:00
bell.svg feat(host-security+ui): unify host execution/approval behavior, runtime notices, and approval overlay UX 2026-05-12 19:16:38 +08:00
book.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
bot.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
brain-cog.svg feat: restore run mode personalization 2025-12-02 19:03:33 +08:00
brain.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
camera.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
chat-bubble.svg feat: improve mobile overlays and focus panel 2025-11-26 23:50:57 +08:00
check.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
checkbox.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
circle-alert.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
clipboard.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
clock.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
copy.svg feat: improve mobile overlays and focus panel 2025-11-26 23:50:57 +08:00
eye.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
file.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
flag.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
flask-conical.svg feat: improve onboarding and copy ux 2026-01-19 21:02:24 +08:00
folder-open.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
folder.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
globe.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
graduation-cap.svg feat: improve onboarding and copy ux 2026-01-19 21:02:24 +08:00
hammer.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
info.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
keyboard.svg feat: expand model support and qwen-vl ux 2026-01-03 07:01:24 +08:00
laptop.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
layers.svg feat: enhance workspace toggle and mobile topbar 2025-11-27 18:42:08 +08:00
mcp-logo.svg feat: add MCP management and host-only runtime policy 2026-04-26 23:49:04 +08:00
menu.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
monitor.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
mouse-pointer-2.svg feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
mouse-pointer-click.svg feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
navigation.svg feat(host-security+ui): unify host execution/approval behavior, runtime notices, and approval overlay UX 2026-05-12 19:16:38 +08:00
octagon.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
pencil.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
python.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
recycle.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
refresh-cw.svg feat: update app refresh entry and release metadata 2026-04-06 19:51:56 +08:00
save.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
search.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
settings.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
sparkles.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
sticky-note.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
terminal.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
trash.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
triangle-alert.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
user-pen.svg feat: 添加智能体交流风格选项 2026-04-14 01:47:06 +08:00
user.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
wrench.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
x.svg feat: replace ui emoji with svg icons 2025-11-21 23:33:35 +08:00
zap.svg feat: polish logo card with svg transitions 2025-11-22 00:14:40 +08:00
演示文稿1 [自动保存].pptx feat: gracefully stop tool execution on user request 2026-03-08 03:50:34 +08:00