sl82976818
dsh-gpt-bridge
Read-only engineering evidence bridge between DeepSeek Harness (DSH) and Custom GPTs.
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-gpt-bridge
English | 简体中文
A read-only engineering evidence bridge between DeepSeek Harness and Custom GPTs.
DSH Agents do the work. DSH provides provenance. Your GPT reviews the evidence.
dsh-gpt-bridge lets a configured Custom GPT:
- discover recent DSH Agent sessions
- inspect runtime and formal Run association
- read manifest-authorized engineering artifacts
Human does not need to manually copy REPORT / FACTS / evidence into the GPT conversation. The bridge reads the real DSH runtime and the formal artifacts produced by a DSH Run.
The Bridge is deliberately read-only.
Through this bridge a GPT cannot:
- start or stop an Agent
- execute shell commands
- edit files
- arbitrarily browse the filesystem
- bypass the manifest allowlist
- modify DSH configuration
Project / package naming. The repository (this project) is
dsh-gpt-bridge. The DSH bundle/package that manages the bridge lifecycle inside DSH isdsh-gpt-bridge-manager(seedsh-gpt-bridge-manager/).
Architecture
DSH Agent
|
v
Formal Run
RUN / REPORT / FACTS / manifest / evidence
|
v
dsh-gpt-bridge-manager
|
v
Authenticated read-only GPT Bridge
|
v
Cloudflare Quick Tunnel
|
v
GPT Actions
|
v
Custom GPT
The bridge exposes exactly three read-only Actions over an authenticated HTTP endpoint. A Cloudflare Quick Tunnel carries HTTPS traffic to the loopback-only bridge; a static Bearer credential authenticates the GPT.
The Three Actions
recentAgents
Discover real, recent DSH Agent Sessions (id, updated time, running state, preset, cwd). Cheap discovery — no per-session model queries.
getAgentBundle
For one real session_id: the DSH runtime facts, the formal Run association (RUN.json), REPORT/FACTS summaries, and the manifest-authorized artifact index.
readArtifact
Read a single artifact file that is inside the manifest allowlist for the associated Run. Absolute paths, .. traversal, symlink escapes, and arbitrary file reads are rejected. Large text is returned as a bounded excerpt; binaries as metadata only.
There are no write Actions.
Trust Model
Agent claim ≠ system provenance ≠ reviewer verdict
- The Agent writes claims (e.g.
STATUS_BY_AUTHOR: CONFIRMED) inFACTS.md. - The DSH runtime and Run association provide provenance: which session, which Run, which artifact root.
- The evidence provides checkable material.
- The reviewer GPT independently decides what to trust.
An Agent writing CONFIRMED does not automatically make a claim trusted. The bridge surfaces the evidence; judgment stays with the reviewer.
Installation
Requirements: a working DeepSeek Harness (DSH) installation and the dsh CLI.
The manager is published to the npm registry as dsh-gpt-bridge-manager (current version 0.1.0). Install it into a DSH profile:
dsh plugin --profile web add dsh-gpt-bridge-manager
dsh plugin initializes the profile on first use, installs the package from the npm registry, and automatically adds the bundle to the profile's dsh.profile.bundles because the package declares dsh.bundle.
For local development, you can also install a tarball built from this repository:
cd dsh-gpt-bridge-manager
npm pack
dsh plugin --profile web add ./dsh-gpt-bridge-manager-0.1.0.tgz
Configuration
Configure the manager in the profile's cordis.patch.yml (e.g. $DSH_HOME/profiles/web/cordis.patch.yml):
- id: gpt-bridge-manager
config:
bridgeRoot: /path/to/this/repository
cloudflaredPath: /path/to/cloudflared # optional; PATH lookup when omitted
credentialRef: dsh_gpt_bridge_actions_token
- DSH credential seam: the Bearer value is read from
$DSH_HOME/.credentials.yamlunder the referencedsh_gpt_bridge_actions_token(source layer must befile). The plugin never generates, writes, rotates, or displays the token. - cloudflared: the manager starts
cloudflared tunnel --url http://127.0.0.1:8933.cloudflaredPathmay be omitted to use PATH. - Bridge lifecycle: on port 8933 the manager starts
node <bridgeRoot>/src/server.mjs; a compatible already-running bridge is adopted (never killed); an unknown occupant becomesBLOCKED_PORT_CONFLICT. - Current URL: the manager shows the ephemeral tunnel URL in the DSH home / Settings UI and exposes it via
restartTunnel(plugin-owned tunnels only).
The active tunnel URL is ephemeral — it changes on every tunnel restart and is never part of the repository.
GPT Setup
- Create or edit a Custom GPT.
- Import the provided Actions OpenAPI schema:
custom-gpt/ACTION_OPENAPI.yaml. - Configure Bearer / API Key authentication.
- Use the secret corresponding to the DSH credential (
dsh_gpt_bridge_actions_tokenvalue). - Set the OpenAPI
servers.urlto the Current URL the manager displays. - Save / Update.
- Verify with
recentAgents(e.g. "看看最近的 DSH Agent。").
See custom-gpt/SETUP.md for the full deployment walkthrough and examples/GPT_INSTRUCTIONS.md for a minimal reviewer-GPT instruction set.
Cold Boot
Start DSH
→ Bridge READY
→ Tunnel ONLINE
→ copy new Current URL
→ update only GPT Actions servers.url
→ keep the same Bearer
→ recentAgents
Full details: coldBoot.md.
Normal Workflow
- Create a new DSH Session.
- Run an engineering task.
- Let the Agent finish.
- Ask the reviewer GPT to inspect the completed Agent.
- GPT discovers the real Session and reads formal evidence.
- GPT returns its verdict and next step.
Human does not need to paste REPORT.md or evidence into the GPT conversation.
The reviewer-GPT pattern in
examples/GPT_INSTRUCTIONS.mdis an optional / example workflow for this project's environment — it is not a required DSH preset.
Security
- read-only bridge (three Actions, no write/control surface)
- Bearer authenticated (static credential, injected via environment, never in the repository)
- manifest allowlist for artifacts; no arbitrary filesystem reads
- no shell, no Agent control, no DSH mutation
- bridge binds loopback; the Cloudflare Quick Tunnel is the only ingress
- Quick Tunnel URL is ephemeral
Warning: anyone possessing both the active tunnel URL and a valid Bearer credential may access the exposed read-only engineering data. Do not commit
.credentials.yaml, Bearer/API keys, private artifacts, or generated runtime state.
Limitations
- The Quick Tunnel URL changes on restart; a Human currently updates
servers.urlin the GPT Actions schema. - The bridge does not execute or control Agents.
- Artifact quality depends on formal DSH Run / manifest production.
- Compatibility is validated against the specific DSH version used by the author (see
coldBoot.md); DSH/plugin APIs may evolve.
License
MIT — see LICENSE.
dsh-gpt-bridge is an independent community project for DeepSeek Harness (DSH). It is not affiliated with, endorsed by, or an official project of DeepSeek or OpenAI.
DeepSeek, OpenAI, ChatGPT and related product names/trademarks belong to their respective owners.