wangcong1137-hash/dsh-geoserver
dsh-geoserver
dsh-geoserver is a community DeepSeek Harness plugin. Read the repository README before installing.
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-geoserverRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-geoserver)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from wangcong1137-hash/dsh-geoserver, cleaned of badges and images.
dsh-geoserver
Read GeoServer WMS services and render map images inside the dsh web GUI.
- 4 tools for the agent: list workspaces/layers/styles, publish GeoTIFF/SHP ZIP data, fetch map images, and diagnose connectivity.
- A settings card in the GUI (Settings → Plugins → Plugin configuration) to configure the connection, publication limits, and business webhook without editing files.
- Credentials never reach the browser: the plugin holds Basic auth on the host, fetches images itself, and serves them from the same origin as the GUI through
ctx.webServer.
Tools
| Tool | Purpose |
|---|---|
geoserver_list | Enumerate workspaces, layers (title/bbox/SRS/styles) and image formats via the GeoServer REST API, falling back to the WMS GetCapabilities document. |
geoserver_publish | Upload one local GeoTIFF or one ZIP containing a single SHP dataset. Optionally notify a configured business-system webhook after GeoServer verifies the layer. |
geoserver_map | Fetch one WMS GetMap image server-side and return an in-origin display URL (/geoserver-image/<token>). The agent replies with the rendered markdown image. |
geoserver_probe | Connectivity/authentication diagnostics: reachability, auth state, WMS title, and a small render test. |
Installation
Install the package into the Web profile; the command appends dsh-geoserver to that profile's dsh.profile.bundles list automatically:
dsh plugin --profile web add dsh-geoserver
For a local checkout, pass its path instead of the package name. The bundle's cordis.patch.yml inserts the geoserver plugin row:
# profile cordis.yml patch layer — e.g. ~/.dsh/profiles/web/cordis.patch.yml
- insert:
- id: geoserver
name: dsh-geoserver
Restart dsh web. A missing server URL does not prevent Harness from starting, so a first-time user can open the settings card. GeoServer tools report a configuration error until a URL is saved. The plugin is configurable in two ways:
- Settings UI — Settings → Plugins → Plugin configuration → GeoServer: configure the server URL, credentials, publication directories/size limit, and optional webhook, then Save. Changes take effect immediately, without a restart. Publication directories are entered one per line. The webhook token field stores only an environment-variable name, never the token itself.
- Environment credentials — configure
env(see below) to readGEOSERVER_USER/GEOSERVER_PASSfrom the process environment.
Configuration
…

