Introduction

The DeepSeek Harness (DSH) plugin ecosystem allows developers to extend functionality. dsh-qweather is a web-connected tool designed to seamlessly integrate real-time weather data into workflows. It is maintained by youngforblbl and uses the QWeather API to provide services.

Installation and Enablement

First, install the plugin via the command line.

dsh plugin --profile web add github:youngforblbl/dsh-qweather

After installation, restart dsh web or refresh the page.

Configuration

After installation, QWeather credentials need to be configured in DSH.

  1. Log in to the QWeather console to obtain the API KEY, project ID, and API Host.
  2. Open the DSH settings page and go to Plugins → QWeather.
  3. Enter the above information and enable the master switch.
  4. Set the location. Automatic location (city/district level) or manual entry of city name / LocationID / latitude and longitude is supported.

Credentials and settings are saved in the local DSH settings file ~/.dsh/settings.yaml.

Core Features

The plugin mainly includes the following features:

  • Settings card: Supports configuring API Host, API KEY, project ID, master switch, automatic location, or manual location.
  • Sidebar weather widget: Displays current weather, hourly forecast for the next 5 hours, warnings, air quality, and more. It supports expanding/collapsing and adapts to DSH light and dark themes.
  • LLM weather interface: Provides the tool qweather_weather(location?, range?, hours?, days?, fields?) to fetch data by location, time range, and fields of interest.
  • In-chat weather card: Provides the tool qweather_card(location?) to render an interactive HTML card in the conversation flow.
  • Error code system: Built-in QW_* error codes are used to uniformly handle configuration errors, network errors, and upstream errors.

Typical Usage

Call the tools in a conversation to query the weather.

  • Query live weather:
    “What’s the weather in Beijing right now?”
  • Query the next few hours:
    “Will it rain in Shanghai in the next 5 hours?”
  • Get structured data:
    “Is tomorrow in Guangzhou suitable for running?”
  • Get a visual card:
    “Show me the weather in Hangzhou as a card”

Security and Privacy

  • Data storage: Credentials and settings are saved locally in ~/.dsh/settings.yaml, and logs automatically mask keys.
  • Network requests: The plugin does not report data to any third party; it only sends requests to the configured API Host.
  • Card security: In-chat cards run in a sandbox iframe and have no network access.

Conclusion

dsh-qweather provides a complete weather solution for the DSH plugin ecosystem, ranging from sidebar widget to LLM tools to visual cards, meeting developers’ diverse needs for weather data.

  • GitHub: https://github.com/youngforblbl/dsh-qweather