DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Openai Live — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-openai-live

Openai Live

Full-duplex voice for DeepSeek Harness: a realtime capability seam, a GPT-Live-1 adapter, and a keyless replay backend.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:Travizm/dsh-openai-live#bd2575dc2c7f366254c0cee031fd6f71323be451
READMECompatibilityVersions

Compatibility and provenance

Openai Live is published as dsh-openai-live and currently resolves to version 0.6.11. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
10/16/2026

Versions

0.6.11stable
10/12/2026
0.6.10stable
10/11/2026
0.6.9stable
10/10/2026
Show 21 more versionsCollapse versions
0.6.8stable
10/10/2026
0.6.7stable
10/10/2026
0.6.6stable
10/9/2026
0.6.5stable
10/9/2026
0.6.4stable
10/9/2026
0.6.3stable
10/9/2026
0.6.2stable
10/9/2026
0.6.1stable
10/9/2026
0.6.0stable
10/9/2026
0.5.3stable
10/9/2026
0.5.2stable
10/9/2026
0.5.1stable
10/9/2026
0.5.0stable
10/9/2026
0.4.0stable
10/8/2026
0.3.0stable
10/8/2026
0.2.1stable
10/8/2026
0.2.0stable
10/8/2026
0.1.3stable
10/8/2026

Related plugins

Loading related plugins…

Latest
0.6.11
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
3,882
Last push
10/15/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
0.1.2stable
10/8/2026
0.1.1stable
10/8/2026
0.1.0stable
10/8/2026

Related plugins

More verified plugins in integrations-communication.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseAb Publishdsh-ab-publishBrowser-automation publishing tool that logs into and posts to arbitrary websites, in one publishable plugin packageAb Wechat Scrapedsh-ab-wechat-scrape--- description: "The out-of-tree wechat_scrape tool: retrieves WeChat official-account articles, filters promotional blocks, and saves each as a Markdown file, for maintainers of this machine's dsh profiles." kind: "package-reference" ---Remote Web Ui@linxin666/dsh-remote-web-uiScan-to-pair remote access for the dsh web GUI that shares one official interface: a QR beside the settings button pairs phones and PCs into the same Web GUI (a portrait-touch adaptation layer for phones, full desktop on PCs) through one-time tokens and r

README

dsh-openai-live

GPT-Live-1 full-duplex voice for DeepSeek Harness.

Status: pre-release. Verified against the live API, not against documentation. 168 tests, a per-file 100% coverage gate that is enforced rather than reported, and a built-artifact smoke that runs the published output under plain node. Not yet published to npm.

Why this exists

DeepSeek Harness ships no full-duplex speech subsystem at all, and no plugin in the ecosystem implements gpt-live-1 — the only live, non-sunsetting full-duplex voice model. The nearest existing plugin targets the retiring gpt-realtime family at a different endpoint with a different event vocabulary. This is that port.

The interesting part is not the audio. It is that the model can delegate: mid-conversation it raises a task for the host agent and waits to be answered, without stopping the conversation. Getting that envelope right — and failing closed when it cannot be answered — is the domain of this project.

The seam, not a monolith

Three packages, mirroring how DSH itself models ctx.llm:

PackageRole
dsh-realtimeThe seam. Registers the realtime service; owns providers, routes, and session lifecycle. Deliberately refuses to own turn-taking, endpointing, or any auto-answer path for a delegation.
dsh-realtime-openaiThe GPT-Live-1 adapter. Wire types, transport, translation, and the session — four separable layers, with the translation layer pure and tested against recorded frames.
dsh-realtime-replayThe keyless backend. Plays a recorded session through the real adapter and session, so conformance runs in CI with no credential, no network, and no spend.

A fourth package, dsh-openai-live (this repo's root), is a bundle: it carries the cordis.patch.yml that mounts the two rows above and depends on all three.

Install

dsh plugin --profile <name> add dsh-openai-live      # once published
dsh --profile <name> --dump-config                   # composes?
dsh --profile <name> web

Then supply the credential from the environment — it is a validated config field, never a file this code reads:

export OPENAI_LIVE_API_KEY=…

A profile composes fine without one. The route registers, and opening a session fails with MISSING_CREDENTIAL — an error that names the setting and never the value. That is deliberate: an unconfigured machine should boot and then say precisely what is missing, rather than break the harness at startup.

Properties held to, and tested

  1. Fail-closed delegation. An unresolvable or erroring delegation never auto-approves.
  2. The provider owns the turn boundary. There is no hand-rolled VAD, and the seam refuses end-of-utterance calls outright — session.input_audio.commit does not exist in the API, which the server itself confirmed by enumerating its vocabulary.
  3. Credentials are a tested invariant, not a convention. The credential error names the setting. No value reaches a log, a fixture, a commit, or a published tarball.
  4. Keyless replay. The full conversation path is exercised with no API key present.
  5. Drift canary. A scheduled check fails loudly when the provider changes shape, so the first signal is a red build rather than a user bug report.
  6. Appends resolve on the provider's acknowledgement, correlated on the echoed client_event_id with a FIFO fallback — an undocumented echo must degrade to ordering, never to a hung promise.
  7. Usage is cumulative, so a consumer replaces its figure rather than adding to it. The same value legitimately arrives twice, on session.usage.updated and again on session.closed.
  8. Every registry proves disposal — a contribution is made from a child fiber, that fiber is disposed, and the contribution is observed gone.

Verified against the live API

The docs/ directory is the primary record. Everything in it was measured, and the traps each cost a run:

DocumentWhat it holds
docs/protocol.mdGPT-Live-1 over WebSocket: the full client and server vocabulary, the delegation envelope, audio formats, and the traps
docs/design.mdarchitecture, scope, session lifecycle
docs/decisions.mdADRs — why client delegation, why a seam, why this repo is non-governed
docs/w1-entitlement-probe.mdentitlement, and why a zero balance is not an entitlement failure
docs/w1-delegation-envelope.mdthe two delegation modes, measured

Working on it

pnpm install
pnpm gate      # build → typecheck (src AND tests) → coverage gate → built-artifact smoke
pnpm canary    # live drift check; self-skips without OPENAI_LIVE_API_KEY

The gate enforces per-file 100% statements, branches, functions and lines. That is enforced with perFile: true, and the enforcement was proven to bite: one injected uncovered branch exits 1 naming the file and each axis. Beyond unit tests there are two tiers a change cannot skip — a real composition test that boots a cordis.yml through the actual Loader, and a built-artifact smoke that runs the published lib/ under plain node.

See CONTRIBUTING.md.

Security

No credential is stored in this repository. .gitignore was committed before the first tracked file, and the full history is secret-scanned in CI — a secret removed in a later commit is still published. Report a vulnerability per SECURITY.md.

Licence

MIT — see LICENSE.