Agent Skills
› deepseek-ai/deepseek-harness
› dsh-responsive-ui
dsh-responsive-ui
GitHub用于DeepSeek Harness客户端响应式UI设计与审查,涵盖390px最小视口、文本截断、标题换行、图标控件、移动端悬停及键盘交互等规范。
Trigger Scenarios
设计或审查响应式客户端布局
处理文本截断与标题换行
调整图标控件与移动端交互
Install
npx skills add deepseek-ai/deepseek-harness --skill dsh-responsive-ui -g -y
SKILL.md
Frontmatter
{
"name": "dsh-responsive-ui",
"description": "Use when designing, implementing, or reviewing responsive client layouts, text truncation, title wrapping, icon-only controls, mobile hover, tooltips and keyboard behavior, and focus during width changes in DeepSeek Harness."
}
Responsive client UI
1. Minimum viewport
Use a viewport width of 390 CSS px as the primary acceptance minimum. There must be no unintended overlap, clipping, page-wide horizontal scrolling, or inaccessible primary actions. Below 390px, layout requirements may be relaxed.
2. Decision order
- First adjust space allocation or wrap elements onto another line; then consider text truncation, icon-only controls, or moving icons into the More menu.
- Primary actions and primary states must not be omitted.
- Do not hide conflicts through global clipping, reducing all font sizes, or shrinking click targets.
- Reduce font sizes only when specifically required by product design.
3. Text truncation
- Truncated content must be fully available on a secondary page or by opening a menu. Example: Session statistics below the input box.
- Truncation must not lose errors or other key information.
- Prefer single-line truncation for tab navigation, visible selectors, buttons, tags, and similar components.
- Important information that is not available on another page must be displayed in full without truncation.
4. Titles
- Prefer displaying page titles in full. Move the action area onto another line when necessary. Example: the Plugins page's title wrapping behavior.
- Prefer natural wrapping for card titles. If the number of lines is limited, the full title must remain available to view.
5. Icon-only controls
- Reducing a control to an icon requires both:
- The icon clearly conveys its meaning, or the operation is familiar to users.
- A tooltip appears on hover; add one if needed.
- Do not reduce “More account information” to an icon, because it navigates to a separate page.
- The model selector in the input box can be reduced to an icon because users see it frequently and can open its menu to switch models.
- Another example is the linked conversation in an automation task.
6. Mobile hover behavior
- Enable mouse-hover effects only on devices that support hovering. Use
@media (hover: hover), not viewport width, to determine this. - Tapping on a phone must not leave behind backgrounds, highlights, or action-button visibility intended only for hover.
- Preserve normal selected, enabled, and pressed states, as well as focus indicators for keyboard interaction.
- Try to preserve focus when the width changes, unless the focused element disappears from the page as a result.
7. Mobile tooltips
- Do not show tooltips that only provide auxiliary information such as action names or keyboard shortcuts on mobile. For example, omit the “Copy” tooltip on a copy button; tapping still performs the original action directly.
- Tooltips that provide supplementary explanations must support tap-to-show on mobile. For example, the information tooltip beside the Plugins page description.
8. Mobile keyboard
On mobile, do not raise the input keyboard automatically unless it is explicitly intended.
Version History
- 687f282 Current 2026-10-18 17:46


