Skip to content

[Feature] 提升易用性:系统设置页-配置项 增加说明对话框与配置样例 #1199

Description

@Activer007

功能描述 / Feature Description

希望提升设置页面的易用性:在设置页各模块、各配置项旁增加说明 icon。用户点击后打开帮助窗口,查看该配置项的用途、取值说明、配置样例、影响范围、注意事项和相关文档链接。

这不是简单增加 hover tooltip,而是建设一套可维护的设置页配置帮助系统:短说明常驻展示,详细说明通过 help icon 按需打开,并为后续多语言支持预留结构。

使用场景 / Use Case

  • 新用户不清楚某个配置项影响分析流程、数据源、通知、WebUI、Agent 还是部署行为。
  • 用户配置 API Key、股票列表、通知渠道、模型参数时,希望直接在页面内看到示例和常见误区。
  • 部署用户需要理解 .env、Docker environment、GitHub Actions 和 Web 设置页写回之间的关系。
  • 维护者希望新增配置项时可以同步补齐帮助内容,减少文档和 UI 说明漂移。

期望实现 / Proposed Solution

  • 设置项标题旁增加统一 help icon,icon 是可点击按钮,支持 Esc 关闭。
  • 点击后打开统一帮助窗口,内容包括:用途、取值说明、配置样例、影响范围、注意事项、相关文档。
  • 帮助内容采用“后端配置事实 + 前端多语言文案”结构:
    • 后端 schema 提供 help_key、安全样例、文档链接、warning code 等稳定元数据。
    • 前端 locale 文件提供长文案;当前默认中文,后续可扩展英文/繁中。
  • 敏感字段示例只能使用占位符,例如 sk-xxxxyour_token,不能展示真实配置值。

建议 PR 划分 / Suggested PR Plan

PR1:基础设施与首批样例

  • 扩展配置 schema 和前端类型。
  • 新增帮助按钮、帮助窗口和 locale 结构。
  • 接入 SettingsField,移除短描述重复 tooltip。
  • 首批覆盖代表字段:STOCK_LISTLITELLM_MODELLLM_CHANNELSFEISHU_WEBHOOK_URLWEBUI_HOST

PR2:核心配置覆盖

  • 覆盖高频易错配置:AI 模型、LLM Channels、数据源、搜索、通知、WebUI、认证、调度等。
  • LLMChannelEditor 内部字段也接入同一帮助风格。

PR3:Web 设置页 Help 阶段性补齐

  • 聚焦 Web 设置页中实际展示/可配置字段的 Help 阶段性补齐,包括通用配置卡片当前可见字段和 AI legacy 条件可见字段。
  • 补齐这些字段的后端 help metadata、安全配置样例、文档链接和前端中英文帮助文案,继续保持“后端配置事实 + 前端多语言文案”的结构。
  • 不覆盖当前 Web 设置页未展示的 .env 变量,也不在本 PR3 中处理移动端/视觉体验收口或其他 UI 重构。

内容参考 / References

帮助内容应优先参考现有事实源,避免另写一套口径:

  • .env.example:配置键名、默认值、示例格式。
  • docs/full-guide.md:主要配置说明来源。
  • docs/LLM_CONFIG_GUIDE.mddocs/llm-providers.md 等文档
  • docs/FAQ.md:常见误区和排障。
  • docs/deploy-webui-cloud.mddocs/desktop-package.md:WebUI 部署和桌面端说明。

验收标准 / Acceptance Criteria

  • 设置项标题旁有统一 help icon 可以点击操作。
  • 帮助窗口默认显示中文,结构清晰,包含样例和文档链接。
  • 短说明常驻展示,但 hover 不再重复弹出同样内容。
  • 配置帮助内容可追溯到 .env.exampledocs/full-guide.md 或相关专题文档。
  • 不改变配置保存、校验、运行时优先级、.env 写回或环境变量覆盖语义。
  • 用户可见变更同步记录到 docs/CHANGELOG.md

相关信息 / Additional Context

  • 是否愿意贡献代码实现 / Willing to implement: Yes
  • 参考链接 / Reference links:
  • 其他说明 / Other notes:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions