DSH ⇄ ChatGPT Fusion Gateway
DSH ⇄ ChatGPT Fusion Gateway
DeepSeek Harness(DSH)을 단일 에이전트/런타임으로 유지하고, ChatGPT Web을 오직 무상태(stateless)·단일 턴의 추론 공급자로만 사용하는 최소한의 MCP 브리지입니다.
DSH가 에이전트, 도구, 권한, 세션, 컴팩션(compaction), 하위 에이전트, 워크플로, 목표, 그리고 실제 파일/셸 실행을 담당합니다. 게이트웨이는 단순히 불변(immutable) DSH 컨텍스트 스냅샷 하나를 ChatGPT "Brain" 대화로 전달하고, 정확히 하나의 결정 — 최종 답변 하나, 작업 제안 하나, 또는 제한된 읽기 전용 배치(read-only batch) — 를 돌려받을 뿐입니다. 게이트웨이는 제안된 작업을 스스로 실행하지 않습니다.
User
↓
DSH UI
↓
DSH Native Agent Loop → Context / Compaction
↓
ChatGPT Fusion LLM Adapter
↓
Fusion Reasoning Gateway ← this repository
↓
ChatGPT Brain Worker (a dedicated ChatGPT Web conversation + optional wake extension)
↓
final | action_proposal | readonly_batch
↓
Gateway validation
↓
DSH Permissions / ToolRuntime → DSH Native Tool → Next DSH Tick기능
엄격한 단일 결과 추론 계약 — 모든 요청은 완전하고 불변한 스냅샷 하나를 전달하며, Brain은 정확히 하나의 최종 결과(
final,action_proposal, 또는 read/glob/grep으로 한정된readonly_batch)만 반환합니다.복구 가능한 전달 — 요청은 디스크에 저널링되며, 게이트웨이에 장애가 생겨도 진행 중인 클레임(claim)을 잃지 않고 복원합니다. 스냅샷과 nonce로 재시도는 멱등성을 보장합니다.
멀티 워커 장애 조치(failover) — 여러 Brain 대화가 동일한 모델 라우트를 대체할 수 있으며, 중단된 클레임은 해제되어 교체된 nonce와 함께 대기 중인 정상 워커로 재전달됩니다.
OAuth 2.0(루프백) — 공용 ChatGPT 커넥터(
/brain-mcp)에 대한 선택적 인증을 지원하며, 액세스/리프레시 토큰이 순환됩니다.크로스 플랫폼 — 게이트웨이와 Node 데몬은 Linux, macOS, Windows에서 모두 동작합니다.
선택적 브라우저 웨이크 — Chrome 확장 프로그램(
browser-autowake/)이 루프백 큐 메타데이터를 폴링하고, 대기 중인 작업이 있을 때 특정 라우트에 바인딩된 Brain 탭을 활성화합니다.
Related MCP server: antigravity-with-chatgpt
요구사항
Node.js 18 이상 (전역
fetch사용).워크스페이스 도구에 필요한
git(그리고 Linux에서는 설정된 command user).
DSH 자체는 DSH 전용 에이전트 루프와 도구 런타임에 반드시 있어야 합니다. 게이트웨이는 DSH에 번들된 node_modules를 자동으로 감지하거나, DSH_NODE_MODULES 환경 변수로 해당 위치를 지정할 수 있습니다.
빠른 시작
git clone <your-repo-url>
cd dsh-chatgpt-mcp
npm install실제 자격증명 정보를 config.json과 model-bindings.json에 입력하고(모든 값은 REDACTED_* 플레이스홀더로 출하됨) 아래처럼 시작합니다.
npm run daemon:start # background, supervised with auto-restart
npm run daemon:status…또는 포그라운드에서 실행:
npm start # node server.strict.cjs게이트웨이는 http://127.0.0.1:7688을 바인딩합니다. 자세한 아키텍처와 불변 조건은 ARCHITECTURE.md 문서에 있습니다.
구성
config.json
키 | 의미 |
| 루프백 바인딩 주소 (기본값 |
| 도구가 접근할 수 있는 프로젝트 워크스페이스. |
| OAuth 인증을 위한 소유자 암호 (16자 이상). |
| 루프백 CSV에서 Brain MCP용 정적 베어러 토큰 (32자 이상). |
| 워크스페이스 |
| Linux 전용: |
ownerPassword, staticToken, 그리고 바인딩 키는 필수이며 사용 전에 반드시 채워야 합니다. macOS/Windows에는 이식 가능한 setuid 헬퍼가 없으므로 샌드박스 명령은 현재 사용자로 실행되고 commandUser는 무시됩니다.
model-bindings.json
각 modelId + reasoningEffort 라우트를 매핑할 때 bindingKey에 연결합니다. bindingKey는 일치하는 brain-worker-*.txt와 공유되는 시크릿이므로, 두 파일은 반드시 동기화된 상태를 유지해야 합니다.
서비스 제어
Linux, macOS, Windows에서 동일하게 동작합니다.
node scripts/daemon.mjs start # start detached supervisor + server
node scripts/daemon.mjs stop
node scripts/daemon.mjs restart
node scripts/daemon.mjs status다음과 같은 npm run daemon:start|stop|restart|status 명령으로도 노출됩니다. Linux 전용 screen 기반 스크립트(control.sh, public_quick.sh, …)는 Cloudflare quick-tunnel 및 헤드리스 Chrome 워커 풀을 위해 scripts/에 남아 있습니다.
추론 프로토콜 (v4)
게이트웨이는 ChatGPT "Brain"과 엄격한 프로토콜로 통신합니다:
fusion_wait_for_reasoning_request → one immutable snapshot + data-only action catalog
fusion_submit_reasoning_result → exactly one {final} | {action_proposal} | {readonly_batch}
fusion_fail_reasoning_request → terminal failure for the assigned snapshotactionCatalog는 오직 데이터일 뿐이며(데이터만으로 존재), ChatGPT/MCP 도구로 설치되지 않습니다. action_proposal은 DSH가 나중에 자체 권한/샌드박스 정책에 따라 실행하는 후보 제안이며, 게이트웨이는 이를 실행하지 않습니다.
공개 엔드포인트는 GET|POST /brain-mcp입니다. 이전의 /mcp 경로는과 /fusion/tasks… 경로는 사용 중지 상태(HTTP 410)를 반환합니다.
권한
네이티브 3단계 DSH 모델 — read-only, workspace-write, danger-full-access — 를 사용하며 기본값은 workspace-write입니다.
저장소 구조
server.strict.cjs active gateway (strict v4; no legacy /mcp)
server.cjs full gateway incl. workspace file/shell tools
config.json runtime configuration (secrets are placeholders)
model-bindings.json modelId → bindingKey map
scripts/daemon.mjs cross-platform daemon (start/stop/restart/status)
scripts/*.sh Linux deployment helpers (screen, cloudflared, Chrome workers)
brain-worker-*.txt per-route prompts for dedicated Brain conversations
browser-autowake/ optional Chrome extension that wakes Brain tabs
tests/ selftests and headless integration workers
state/ logs/ runtime artifacts (gitignored)테스트
npm install
node tests/reasoning-contract-v4-selftest.mjs # primary protocol test
# …plus oauth, worker-recovery, failover, context-overflow, payload-limit selftests구현 노트의 ## Verification 섹션에서 전체 테스트 매트릭스를 확인하세요.
보안 참고 사항
기본적으로
127.0.0.1에 바인딩되며, quick-tunnel 스크립트만 공개 URL을 노출합니다.실제 시크릿이 포함된
config.json또는model-bindings.json을 커밋하지 마세요. 이 저장소는 그러한 이유로 플레이스홀더를 제공합니다.Linux에서는
/bin/setpriv를 사용하여 샌드박스 실행 명령을commandUser로 전환합니다. 그 외 플랫폼에서는 명령이 현재 사용자로 실행됩니다.
DSH ⇄ ChatGPT Fusion은 커뮤니티 브리지이며 OpenAI나 DeepSeek와 제휴하거나 보증을 받지 않습니다. ChatGPT 사용에는 OpenAI의 서비스 약관이 적용됩니다.
This server cannot be deployed
Maintenance
Related MCP Connectors
Agent-to-agent reasoning-as-a-service: chain-of-thought, analysis, and decision support.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Durable memory, headless browser and research for agents. Pay per call: x402 USDC on Base or credits
Let your AI agent operate any website through a real, logged-in browser session.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceBridges Cursor IDE Agent with ChatGPT Web for external reasoning, research, and review.18 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables local coding agents to delegate reasoning, planning, review, derivation, and diagnosis tasks to ChatGPT Web through Chrome DevTools Protocol, with security guards and evidence-based verification.1MIT
- AlicenseNot gradedqualityAmaintenanceEnables hosts like Claude Code, Codex, Antigravity, and Grok to dispatch work to full DeepSeek Harness agent sessions that appear as native subagents with live progress, tier/effort presets, failure escalation, and workspace-cycle guardrails. Also lends a text-only harness multimodal abilities by describing pasted images and generating images through DeepSeek's vision model, existing CLIs, or a custom endpoint.354 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables hosts like Claude Code, Codex, Antigravity and Grok to dispatch tasks to DeepSeek Harness agents while still showing them as native subagents with live progress, tier/effort presets, escalation, dispatch guardrails and a jobs board. Also lends text-only harnesses vision and image generation through DeepSeek's VL model or existing CLIs and custom OpenAI-compatible endpoints.354 npmMIT