linyp/dsh-plugin-langfuse
Langfuse observability for DeepSeek Harness (dsh): exports agent sessions as OpenTelemetry trace trees (GenAI
dsh-plugin-langfuse adds Langfuse observability to DeepSeek Harness: it exports each turn as an OpenTelemetry trace (model step → generation, tool call → tool span), groups turns by session, records canonical feedback as Langfuse Scores, and preserves fork/subagent lineage. It implements the harness's public telemetry seam as an alternative backend to the official OTLP-logs exporter. Configuration supports mode, exporter URL, public/secret keys, feedbackScores (enabled, url, maxQueueSize 256, requestTimeoutMillis 3000), privacy/content controls (turnInputMode none|user|user-and-context, cwdMode omit|basename|full, toolMetaAllowlist), static metadata (environment, tags), health warnings (60000ms interval), and processor/shutdownTimeoutMillis. It also ships an explicit cordis.yml row form with the same options.
Install
dsh plugin --profile web add dsh-plugin-langfuseInstall as a profile bundle with dsh plugin --profile web add dsh-plugin-langfuse, export LANGFUSE_PUBLIC_KEY and LANGFUSE_SECRET_KEY (optional LANGFUSE_HOST, defaults to https://cloud.langfuse.com EU region; the plugin reads LANGFUSE_HOST, not the SDK's LANGFUSE_BASE_URL), then dsh web. The bundled patch disables the base profile's session-telemetry-otel row (the telemetry seam accepts exactly one backend per context) and mounts this backend in FULL mode when a Langfuse key is present, DISABLED otherwise. Both the bundle layer and env vars are read at boot — restart after installing. Remove with dsh plugin --profile web remove dsh-plugin-langfuse.
Compatibility
DeepSeek Harness (dsh) web profile with the public telemetry seam @deepseek-ai/dsh-session-telemetry; mode FULL | FEEDBACK_ONLY | DISABLED; OTLP/HTTP trace export to Langfuse (cloud.langfuse.com or self-host); LANGFUSE_TELEMETRY_MODE=FEEDBACK_ONLY narrows sharing to feedback-gated release.
Details
- Repo: linyp/dsh-plugin-langfuse
- Category: Agent Capabilities
- Stars: 10
- Version: npm package dsh-plugin-langfuse 0.5.1 (registry-verified 2026-08-23); community plugin, not part of the official repository
- Last push: 2026-09-10
- First seen: 2026-08-14
Recent updates
The current README documents the install paths (profile bundle and explicit cordis.yml row), env vars, mode semantics, the full config table, feedback scores, privacy/content controls, health settings, and removal.
FAQ
- Is this an official DeepSeek product?
- No — the README states it is a community plugin (dsh-plugin topic), not part of the official repository.
- Why do I see nothing in my Langfuse project?
- Keys are region-scoped — traces appear in the region LANGFUSE_HOST points at, so a US project shows nothing on the EU console (and vice versa).
- Do I need to restart after installing?
- Yes — both the bundle layer and the env vars are read at boot; restart from a shell that has the variables set. dsh --profile web --dump-config shows the composed result without booting.
Alternatives
hyqhyq3/dsh-mcp-manager · bowenliang123/dsh-context · omdsh-dev/dsh_workflow