DWB MCP Studio Core — Windows multi-worker MCP broker, setup and dashboard
翻譯準備中
開發工具TypeScript · JavaScriptGitHub @sphakanin自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
正在載入完整 README。 以下為已儲存的摘錄。
สำหรับ Ubuntu / remote VPS: เพิ่มตัวติดตั้งผ่าน terminal พร้อม Bash, OpenAI Tunnel และ user systemd service แล้ว ดู คู่มือติดตั้ง Ubuntu ใช้ bash install.sh --workspace /absolute/folder หลังติดตั้ง Node.js 22.16+, curl และ unzip รุ่น Ubuntu นี้ยังเป็น candidate ระหว่างตรวจแพลตฟอร์มก่อนแจก สำหรับ macOS: เพิ่ม แอป Setup/Dashboard, Tunnel, Keychain และ menu bar ใน source แล้ว รุ่นนี้ยังต้องทดสอบบน Mac จริงก่อนแจกทั่วไป ดู ผลการตรวจ Windows และรายการตรวจ Mac檢視完整 README ↗
Windows · macOS · Ubuntu — 0.1.0-beta.16 (Pre-release)
Source และแพ็กดาวน์โหลดปัจจุบันเป็น beta.16
สำหรับ Ubuntu / remote VPS: ใช้ตัวติดตั้งผ่าน terminal พร้อม Bash, OpenAI Tunnel และ user systemd service ดู คู่มือติดตั้ง Ubuntu ใช้ bash install.sh --workspace /absolute/folder หลังติดตั้ง Node.js 22.16+, curl และ unzip
สำหรับ macOS 13 ขึ้นไป: ใช้ไฟล์ macos-arm64.dmg บน Apple Silicon เปิดแล้วลาก DWB MCP Studio ไปที่ Applications ตัวแอปรวม Node และโค้ดที่ build แล้ว ส่วน source ZIP รองรับการ build บน Apple Silicon และ Intel โดยต้องมี Node.js 22.16+ และ Apple Command Line Tools ดู คู่มือติดตั้ง macOS
Windows beta.16 ZIP — แตกทั้งชุดแล้วเปิด DWB MCP Studio.exe
macOS Apple Silicon beta.16 DMG — เปิดแล้วลากแอปเข้า Applications รวม Node มาแล้ว
Ubuntu beta.16 source ZIP — รุ่นทดลองสำหรับ terminal/VPS ยังไม่มี DWB Dashboard
macOS beta.16 source ZIP — สำหรับ build บน Apple Silicon หรือ Intel
ใช้ Git: clone repository นี้ แล้วเปิด DWB MCP Studio.exe ในโฟลเดอร์ที่ clone มา
ดาวน์โหลด source ZIP: แตกไฟล์ แล้วเปิด DWB MCP Studio.exe ได้เหมือนกัน
ใช้แพ็กที่ build แล้ว: ดาวน์โหลด ZIP ของ DWB จากหน้า Releases แล้วเปิด DWB MCP Studio.exe
Setup เตรียมโปรแกรมจาก source ให้เองเมื่อยังไม่มี dist และดาวน์โหลด Desktop Commander กับ tunnel-client ลง external ของโฟลเดอร์นี้ หลังติดตั้ง กรอก Tunnel ID + API key → Start MCP ต้องมี Node.js 22.16 ขึ้นไปพร้อม npm
โค้ด DWB ใช้ MIT License ส่วนโปรแกรมภายนอกมี license ของเจ้าของตาม THIRD-PARTY หากจะเผยแพร่ repository ดู แนวทางเผยแพร่ผ่าน Git
ตัวกลาง MCP สำหรับใช้ Desktop Commander หลาย worker พร้อมระบบกู้การเชื่อมต่อและป้องกันการเขียนไฟล์ทับข้าม session
ใช้ Setup เตรียมเครื่องและการเชื่อมต่อ ตั้งชื่อ workspace เพื่อเรียกใช้ในแชทถัดไป และดูสถานะ worker กับงานที่กำลังทำผ่าน Dashboard
DWB Project Launcher ผ่าน ChatGPT Conversation Panel (MCP Apps + MCP Extensions, thread entrypoint) ให้เลือกและล็อก Workspace ต่อแชท, สร้างโปรเจกต์จาก Starter Templates ภายในโฟลเดอร์ที่อนุญาต, เพิ่ม Existing Project และเลือก Related Workspaces เป็น read-only references พร้อมส่ง Context ให้ ChatGPT โดยไม่ต้องพิมพ์ Path ซ้ำ ดู คู่มือการใช้งาน ฟีเจอร์นี้รวมอยู่ใน release beta.16
Skill สำหรับให้ ChatGPT ใช้ DWB MCP Studio ตรวจ Environment และช่วยผู้ใช้ติดตั้ง ComfyUI ใน Windows/NVIDIA แบบ Windows Portable ที่แยก Embedded Python/PyTorch, Models, Custom Nodes และ Cache ภายในโฟลเดอร์ใหม่ ใช้ Read-only Preflight → Plan → Approval → Apply → Inspect → (Separate Launch Approval) ตามลำดับ และใช้ Port 8189 สำหรับ Instance ใหม่เมื่อ Instance เดิมหยุดทำงานแล้ว ไม่ใช้ Manual Git + uv ไม่เปลี่ยน Python, CUDA, Driver หรือ ComfyUI ที่ใช้งานอยู่ และไม่ดาวน์โหลดโมเดลอัตโนมัติ
ไฟล์และคู่มือ: skills/comfyui-setup/README-TH.md — ผู้ใช้ติดตั้ง Local Skill ด้วยตัวเองผ่านหน้า DWB Agent Skills และเลือก Policy ASK/MANUAL
Source ปัจจุบันเพิ่มหน้า Agent Skills ใน Dashboard สำหรับติดตั้ง Skill ครั้งเดียวจาก Recommended Skills, GitHub หรือ local folder แล้วตั้งพฤติกรรมแยกแต่ละ Workspace เป็น AUTO, ASK หรือ MANUAL ได้
อ่าน คู่มือ Agent Skills สำหรับ flow, storage และขอบเขตความปลอดภัย หน้า Studio มี GoLive (ASK) สำหรับพาแอปจาก local ไปสู่ deployment และ BRAG Slim (MANUAL) สำหรับสร้าง launch video, poster และ share copy จากงานที่ทำเสร็จแล้ว การติดตั้ง GitHub แบบระบุ skill path ดาวน์โหลดเฉพาะ package นั้น และ remote install จากแชทต้องเกิดจากคำสั่งของผู้ใช้โดยตรง
เพิ่มปุ่ม การเปิดและปิดแอป ใน Dashboard และเมนู tray เลือกเปิดพร้อม Windows, Start MCP อัตโนมัติ, ปุ่ม × ซ่อนหรือปิดแอป และปุ่ม − ย่อที่ taskbar หรือ tray ได้ โปรแกรมจำค่าข้ามรุ่น ดู ตัวเลือกการเปิดและปิด
DWB MCP Studio.exe แล้วใช้ Start/Stop และตั้งค่าจากหน้าเดียวexternal ของ DWB นี้ พร้อมตรวจรุ่นและ checksumDWB MCP Studio.exe ครั้งถัดไป เพื่อ Start/Stop และดูสถานะ ไม่ต้องแก้ JSON/YAML หรือเขียน MCP commandworkspace เพื่อ register และ bind ในขั้นตอนเดียว ไม่ต้องให้ผู้ใช้สั่งสร้าง workspace ซ้ำworkingDirectory แยกจาก workspaceKey ซึ่งใช้ระบุโฟลเดอร์เริ่มต้นของ adapter สำหรับ reconnectdwb_session_statusnode scripts/doctor.mjs ดูผลตรวจการตั้งค่า พร้อมสถานะ broker ที่กำลังทำงาน โดยไม่เปิด worker เพิ่มMCP client / external tunnel
├─ stdio adapter A ─┐
├─ stdio adapter B ─┼─ DWB Broker ─┬─ worker A
└─ stdio adapter C ─┘ ├─ worker B
└─ worker C
ต้องมี Windows x64/ARM64 และ Node.js 22.16 ขึ้นไปพร้อม npm จากนั้น:
DWB MCP Studio.exeexternal ของ DWB นี้ ตรวจ checksum ของ tunnel แล้วตั้ง path ให้เอง ไม่มีช่องเลือกโปรแกรมจากแอปอื่นdwb_broker_status และ dwb_session_status เพื่อทดสอบครบเส้นทางDWB-MCP-Studio/
├─ DWB MCP Studio.exe
├─ scripts/
└─ external/
├─ desktop-commander/
└─ tunnel-client/
ครั้งต่อไปเปิด DWB MCP Studio.exe แล้วกด Start ได้เลย หากเลือกจำ key จะเก็บแบบเข้ารหัสด้วยบัญชี Windows นี้ ค่าเริ่มต้นเมื่อปิดหน้าต่างจะซ่อนลง tray โดย tunnel ยังทำงาน เลือกเปิดพร้อม Windows / Start MCP อัตโนมัติ หรือเปลี่ยนให้ปุ่ม × ปิดแอปและหยุด MCP ได้ใน การเปิดและปิดแอป
โปรแกรมที่ติดตั้งไว้ใน PATH หรือโฟลเดอร์อื่นจะไม่ถูกนำมาใช้ใน Setup/Start MCP ของ DWB ไม่ดาวน์โหลดซ้ำเมื่อส่วนประกอบในแอปนี้มีรุ่นที่รองรับอยู่แล้ว การติดตั้งที่ล้มเหลวจะอยู่ใน staging แยก จึงลองใหม่ได้
ZIP ที่แจกยังมีเฉพาะ DWB ไม่มี third-party binary หรือ external ที่ติดตั้งแล้ว การดาวน์โหลดเกิดบนเครื่องผู้ใช้เมื่อกดติดตั้ง ดู แหล่งดาวน์โหลดและการแยกโฟลเดอร์
ข้อมูล workspace, config และ key ยังคงอยู่ใน %LOCALAPPDATA%\DWB-MCP-Studio เมื่อย้ายโฟลเดอร์โปรแกรมให้เปิด Setup ใหม่เพื่อตั้ง path ส่วนตัวโปรแกรมภายนอกอยู่ใน external ของแต่ละ installation
ยังต้องสร้าง tunnel บน OpenAI และเชื่อมกับ ChatGPT ตามระบบของ OpenAI ใช้ Tunnel ID คนละตัวกับระบบเดิมที่กำลังเปิดอยู่ DWB สร้างโปรไฟล์แยกใน data directory และเลือกพอร์ตว่างอัตโนมัติ สถานะพร้อมเป็นผลจาก tunnel-client; ยืนยันการใช้งานครบเส้นทางด้วยการเรียกเครื่องมือจากแชท
สำหรับ local MCP client ใช้ไฟล์ %LOCALAPPDATA%\DWB-MCP-Studio\mcp-client.json ที่ Setup สร้างให้ ดู การเชื่อมต่อ node scripts/start.mjs เป็น stdio server ให้ client เปิด ส่วน DWB MCP Studio.exe เป็นหน้าต่างสำหรับ Start/Stop OpenAI Tunnel
เปิด node scripts/doctor.mjs เพื่อตรวจ config และสถานะ broker โดยไม่เปิด worker เพิ่ม สถานะ stopped เป็นปกติก่อน client เชื่อมต่อ
Workspace คือชื่อที่ผูกกับโฟลเดอร์งาน ช่วยให้แชทเลือกโปรเจกต์และเริ่ม worker ในโฟลเดอร์ที่ถูกต้อง อ่าน คู่มือ Workspace พร้อมตัวอย่าง ได้ออฟไลน์ หรือกด วิธีใช้ Workspace ใต้ช่องโฟลเดอร์งานใน Setup
ทำงานใน D:\Projects\coffee-shop ตั้งชื่อ workspace ว่า “ร้านกาแฟ” และเพิ่ม alias “coffee-shop” ให้ด้วย
เปลี่ยน path เป็นโฟลเดอร์ที่มีอยู่จริงของคุณ AI ควรลงทะเบียนและผูก workspace ให้ด้วยคำสั่งเดียว ไม่ต้องสั่งสร้างแยก หากบอกเฉพาะ path ชื่อเริ่มต้นจะเป็นชื่อโฟลเดอร์ เช่น coffee-shop ส่วน alias คือชื่อเรียกเพิ่มเติมที่ชี้ไปโฟลเดอร์เดียวกัน
ทำงานใน workspace ร้านกาแฟ
หรือ “ทำ coffee-shop ต่อ ช่วยตรวจหน้าเมนูให้หน่อย” AI จะค้นชื่อหรือ alias แล้วผูก workspace ให้แชทใหม่ โดยใช้ข้อมูล workspace ชุดเดิมของ DWB ในเครื่องคุณ
| สถานการณ์ | สิ่งที่ควรทำ |
|---|---|
| พบชื่อ/alias ตรงรายการเดียว | เลือก workspace นั้นได้ ไม่ต้องพิมพ์ path ซ้ำ |
| ชื่อซ้ำหรือพบหลายรายการ | เลือกจากชื่อและโฟลเดอร์ที่แสดง หรือระบุ path/ID ให้ตรงตัว |
| ไม่รู้จักชื่อนั้น | บอกโฟลเดอร์ครั้งแรกและตั้งชื่อไว้ก่อน |
| ไม่บอกชื่อหรือโฟลเดอร์ | แชทใหม่ยังไม่มี binding และ worker ใช้โฟลเดอร์เริ่มต้นจาก Setup ไม่ได้เลือกจากแชทล่าสุด |
ถามว่า “แสดง workspace ที่มี พร้อมโฟลเดอร์” เพื่อดูรายการ หรือ “แชทนี้ใช้ workspace ไหนและ working directory อะไร?” เพื่อตรวจว่าอยู่ถูกโปรเจกต์ ถ้าจะเปลี่ยน ให้บอก “เปลี่ยนแชทนี้ไปใช้ workspace ร้านกาแฟ”; หากยังมีงานรันอยู่ ต้องให้งานจบก่อนเปลี่ยน
แชทสองอันใช้ workspace เดียวกันได้และใช้ไฟล์ชุดเดียวกัน แต่แยก worker เมื่อ client ส่งข้อมูลพอให้แยก session ได้ การเลือก workspace ไม่ได้ส่งประวัติแชทหรือต่อ process เดิมให้เอง และไม่ขยายสิทธิ์ไฟล์ที่ตั้งไว้ใน base-policy.json
ตัว broker รับคำสั่ง MCP จาก AI ไม่ได้อ่านข้อความโดยตรง หาก AI ยังไม่ผูก workspace ให้ บอกว่า “ใช้เครื่องมือ workspace ผูกโฟลเดอร์นี้ก่อนเริ่มงาน” การเลือกโฟลเดอร์ใน Setup เพียงอย่างเดียวยังไม่ได้ลงทะเบียนชื่อ workspace
npm ci
npm run build
npm run configure
npm run doctor
ตั้งค่าแบบไม่ต้องตอบคำถาม:
node scripts/configure.mjs --worker-entry "D:/My Tools/DC/node_modules/@wonderwhy-er/desktop-commander/dist/index.js" --workspace "D:/My Projects" --worker-cap 4
path ในตัวอย่างต้องเปลี่ยนเป็นของคุณ Setup ใช้ตำแหน่งจริงของ Node และ DWB สร้าง config ให้ จึงไม่ผูกกับเครื่องผู้พัฒนา
เครื่องมือ DWB ที่เพิ่มจาก upstream มี 9 ตัว: dwb_bridge_status, dwb_broker_status, dwb_session_status, dwb_restart_worker, dwb_list_sessions, dwb_list_detached_sessions, dwb_resume_session, skills, workspace
เมื่อผู้ใช้ระบุ working directory ให้ AI เรียก workspace(action="bind", path="<absolute path>") ทันที ก่อนทำงานกับไฟล์หรือ shell โดยคำสั่งเดียวจะลงทะเบียนหรือใช้ workspace ที่ตรงกับ path นั้น แล้วผูกกับแชทปัจจุบัน ไม่ต้องให้ผู้ใช้สั่ง register แยก การ bind เปลี่ยนโฟลเดอร์เริ่มต้นของ worker ในแชทนั้น แต่ไม่ขยายสิทธิ์ allowedDirectories ของ Desktop Commander ใช้ absolute path กับ file tools ต่อไป
ตัว broker ไม่ได้อ่านข้อความแชทโดยตรง การแปลงข้อความที่ผู้ใช้บอก path เป็นคำสั่ง bind ขึ้นอยู่กับ AI/client ที่เรียก MCP เราใส่แนวทางนี้ทั้ง server instructions และคำอธิบาย tool ถ้ายังไม่มีการระบุ workspace แชทจะยังไม่มี binding และใช้โฟลเดอร์เริ่มต้นจาก Setup โดยไม่เดาจากแชทอื่น
%LOCALAPPDATA%\DWB-MCP-Studio แยกจากโฟลเดอร์โปรแกรม เพื่อเก็บการตั้งค่าและ workspace ไว้เมื่ออัปเดตbase-policy.json ที่ Setup สร้างอนุญาตโฟลเดอร์งานที่เลือก ปรับเพิ่มโฟลเดอร์ได้เอง แล้วเริ่ม broker ใหม่DWB_PAYLOAD_ARCHIVE_MODE=off หากไม่ต้องการเก็บดู การเชื่อมต่อและ config, การอัปเดต/ถอน และ ขอบเขตการแจก
npm test
# integration ใช้ Desktop Commander ที่ติดตั้งแยกไว้เอง:
$env:DWB_WORKER_ENTRY = 'D:/My Tools/DC/node_modules/@wonderwhy-er/desktop-commander/dist/index.js'
npm run test:integration
npm run test:setup
npm run format:check
npm run release
npm test ใช้ test double ที่ DWB เขียนเอง ไม่ดาวน์โหลด Desktop Commander การทดสอบ integration ใช้ตัวจริงภายนอกและตรวจว่า config.js ไม่ถูกแก้ไข
npm run release สร้าง ZIP และ SHA-256 ใน releases/ จากรายการไฟล์ที่กำหนดเท่านั้น ไม่มี node_modules, ข้อมูล runtime, log, config ผู้ใช้ หรือโปรแกรมภายนอก ตัว ZIP มี source ของ DWB และ JavaScript ที่ build แล้ว ส่วน npm libraries ให้ผู้ใช้ดาวน์โหลดตอน Setup
ตรวจเมื่อ 19 ตุลาคม 2026: npm audit --omit=dev ของ repository นี้รายงาน 0 รายการ โดย source ปัจจุบันใช้ MCP SDK 1.32.1 และ MCP server/client 2.3.1 ผลนี้ครอบคลุม npm runtime dependencies ของ DWB Core เท่านั้น ไม่รวม Desktop Commander 0.2.50 และ tunnel-client 0.0.11 ที่ Setup ดาวน์โหลดแยก ผู้เผยแพร่ต้องตรวจส่วนประกอบภายนอกและรัน audit ซ้ำก่อนออก release
รุ่น beta.16 ยังเป็น release candidate; ผล automated tests บน Windows ไม่แทนการทดสอบบน macOS/Ubuntu จริงหรือ ChatGPT Host ทุกเวอร์ชัน ดู ผลการตรวจและข้อจำกัด, รายการตรวจ Mac และ ขอบเขต third-party
เปิด DWB MCP Studio.exe ในรุ่นใหม่ แล้วกด อัปเดตและใช้การตั้งค่าเดิม ระบบนำส่วนประกอบจาก DWB เดิมมาใช้และรักษา workspace, Tunnel ID และ key ที่บันทึกไว้ ไม่ต้องผูก connector ใหม่บนเครื่องเดิม ดู วิธีอัปเดต รวมขั้นตอนปิด runtime เดิมหลังจบงาน