Files
deepseek-harness/apps/web/tests/snapshots/models-settings/empty.expected.md
Yichen Jiang dae6cad065 fix(web): show the plugin settings a user actually gets
Three things the page got wrong.

The web-search provider's defaults lived only at their use site, so the
served section carried no value for them and the card fell back to a zero it
invented — a number the schema itself rejects. Declaring them on the schema
makes the settings service the one authority: `maxUses` now reads 5 because
that is what the Host resolves, not because the page guessed. `baseURL` keeps
its code-side default, which exists so `$DEEPSEEK_SEARCH_BASE_URL` can win.

A field the Host serves no value for now renders empty rather than as zero.

The cards were rows in a settings page of cards: name and description ran
together on one line because the shared disclosure row lays them side by side.
Each card now draws its own header, stacking the two, and the section follows
the idiom the Agent Preset page established.
2026-08-10 21:29:45 +08:00

1.7 KiB

  • dialog "设置":
    • navigation:
      • text: 设置
      • button "通用设置":
        • img
        • text: 通用设置
      • button "模型":
        • img
        • text: 模型
      • button "Agent 预设":
        • img
        • text: Agent 预设
      • button "插件配置":
        • img
        • text: 插件配置
    • button "打开配置文件"
    • button "关闭":
      • img
      • text: 关闭
    • heading "模型" [level=2]
    • paragraph: 填入各提供方的 API 密钥即可使用其模型。
    • list
    • text: 提供方
    • combobox "提供方":
      • option "amazon-bedrock"
      • option "ant-ling"
      • option "anthropic"
      • option "azure-openai-responses"
      • option "cerebras"
      • option "cloudflare-ai-gateway"
      • option "cloudflare-workers-ai"
      • option "deepseek"
      • option "fireworks"
      • option "github-copilot"
      • option "google"
      • option "google-vertex"
      • option "groq"
      • option "huggingface"
      • option "kimi-coding"
      • option "minimax"
      • option "minimax-cn" [selected]
      • option "mistral"
      • option "moonshotai"
      • option "moonshotai-cn"
      • option "nvidia"
      • option "openai"
      • option "openai-codex"
      • option "opencode"
      • option "opencode-go"
      • option "openrouter"
      • option "qwen-token-plan"
      • option "qwen-token-plan-cn"
      • option "together"
      • option "vercel-ai-gateway"
      • option "xai"
      • option "xiaomi"
      • option "xiaomi-token-plan-ams"
      • option "xiaomi-token-plan-cn"
      • option "xiaomi-token-plan-sgp"
      • option "zai"
      • option "zai-coding-cn"
    • text: API 密钥
    • textbox "API 密钥":
      • /placeholder: 输入 API 密钥,或留空使用环境认证
    • group: 自定义设置
    • button "取消"
    • button "保存"