DeepSeek Harness plugin

dsh-o11y-plugin

Unified observability (trace/log/metric) for deepseek-harness plugins: hooks dsh session telemetry where available, maintains OTel signals where not, and exports via standard OTLP.

Jump to install

Source facts

Repository
fly3366/dsh-o11y-plugin
Latest update
Aug 20, 2026
Category
Development & Runtime
GitHub stars
2
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/fly3366/dsh-o11y-plugin
Plugin: dsh-o11y-plugin
Author: fly3366

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.mdSource · read only
README language

<p align="center"> <img src="assets/banner.jpeg" alt="dsh-o11y-plugin banner" width="800"> </p>

dsh-o11y-plugin

Unified plugin-dimension observability (trace / log / metric) for deepseek-harness (dsh).

中文文档

Overview

dsh ships session-level OTel telemetry but exposes no metric or plugin-scoped observability to plugins. dsh-o11y-plugin converges that gap: it registers global OpenTelemetry providers so any plugin using the standard @opentelemetry/api exports traces, metrics, and logs through a single, consistently configured pipeline, and it bridges dsh session telemetry into OTel logs. It is intended for plugin authors who want standard, community-compatible observability without implementing OTel per plugin.

Compatibility

| Item | Value | |---|---| | DSH compatibility | @deepseek-ai/dsh 0.1.0-rc.6rc.8 (optional bridge hook unchanged; no dsh service deps) | | Runtime dependency | @deepseek-ai/cordis 4.0.1 only | | Last verified | 2026-08-20 (unit tests against @deepseek-ai/cordis 4.0.1) | | Node | ^22.19 \|\| >=24 | | Profiles | headless, web |

Built on the official OpenTelemetry Node.js SDK, the same dependency family as dsh's session-telemetry-otel.

Install / Uninstall

# install
dsh plugin --profile web add github:fly3366/dsh-o11y-plugin

# disable for one profile
dsh plugin --profile web remove dsh-o11y-plugin

# or disable at runtime via config: enabled=false

The plugin is stateless; removal requires no data cleanup.

Quick start

dsh plugin --profile headless add github:fly3366/dsh-o11y-plugin
# point exports at a collector (optional; silent without one)
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 dsh --profile headless "say hi"

Any plugin that calls trace.getTracer(...) / metrics.getMeter(...) / logs.getLogger(...) from @opentelemetry/api is then exported automatically. deepjit is the reference consumer, emitting pipeline counters and GenAI (gen_ai.*) LLM spans.

Configuration

KeyDefaultDescription
enabledtruemaster switch
serviceName'' (→ OTEL_SERVICE_NAMEdsh-plugin)OTel resource service.name
endpoint'' (→ OTEL_EXPORTER_OTLP_ENDPOINThttp://localhost:4318)OTLP/HTTP endpoint
enableTraces / enableMetrics / enableLogstrueper-signal toggles
metricExportIntervalMs60000periodic metric export interval
bridgeSessionTelemetrytruebridge dsh session telemetry into OTel logs

Sensitive: no credentials are read or stored; only the optional OTLP endpoint is network-facing.

Permissions & data

  • Files: none written; all telemetry is in-memory until exported.
  • Network: OTLP/HTTP to the configured endpoint only; silent drop when no

collector is reachable.

  • Credentials: none.
  • User data: session-telemetry records are observed in-memory (when

bridging) and forwarded as OTel logs; nothing is persisted by this plugin.

Troubleshooting

  • No collector at the endpoint → batches are dropped silently (expected).
  • Export errors → surface via OTel diag; verify endpoint and collector

availability.

  • Roll back with dsh plugin --profile <p> remove dsh-o11y-plugin or set

enabled=false.

Development

npm install
npm run typecheck
npm test
npm run build

Contributions welcome; keep the OTel SDK dependency family aligned with dsh's session-telemetry-otel for community compatibility.

License & security

[MIT](LICENSE). Report vulnerabilities privately per [SECURITY.md](SECURITY.md).