dodo-mcp 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -19
- package/dist/cli/main.js +108 -43
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/menu.js +5 -6
- package/dist/cli/menu.js.map +1 -1
- package/dist/config/globalConfig.js +23 -1
- package/dist/config/globalConfig.js.map +1 -1
- package/dist/config/stateImport.js +2 -2
- package/dist/config/stateImport.js.map +1 -1
- package/dist/config/tunnelConfig.js +2 -3
- package/dist/config/tunnelConfig.js.map +1 -1
- package/dist/server/appServer.js +89 -9
- package/dist/server/appServer.js.map +1 -1
- package/dist/server/configUi/app.js +54 -65
- package/dist/server/configUi/index.html +21 -22
- package/dist/server/configUi/workbench.js +7 -4
- package/dist/server/ipcDispatch.js +25 -0
- package/dist/server/ipcDispatch.js.map +1 -1
- package/dist/server/localConfig.js +50 -63
- package/dist/server/localConfig.js.map +1 -1
- package/dist/server/remoteConfig.js +317 -0
- package/dist/server/remoteConfig.js.map +1 -0
- package/dist/tunnel/control.js +4 -6
- package/dist/tunnel/control.js.map +1 -1
- package/dist/tunnel/credentials.js +5 -19
- package/dist/tunnel/credentials.js.map +1 -1
- package/dist/tunnel/runtime.js +3 -4
- package/dist/tunnel/runtime.js.map +1 -1
- package/dist/tunnel/supervisor.js +8 -10
- package/dist/tunnel/supervisor.js.map +1 -1
- package/docs/AI_PROVIDERS.md +1 -1
- package/docs/ARCHITECTURE.md +29 -14
- package/docs/COMPATIBILITY.md +7 -3
- package/docs/MANUAL_ACCEPTANCE.md +39 -10
- package/docs/RELEASE_1.0.0.md +3 -0
- package/docs/RELEASE_1.0.2.md +46 -0
- package/docs/RELEASE_1.0.3.md +57 -0
- package/docs/RELEASE_NOTES.md +37 -0
- package/docs/SECURITY.md +39 -13
- package/docs/TEST_REPORT.md +61 -2
- package/docs/TUNNEL.md +114 -53
- package/docs/WINDOWS.md +1 -1
- package/docs/adr/031-owner-selected-tunnel-supervision.md +8 -2
- package/docs/adr/044-global-launcher-and-cli-menu.md +3 -3
- package/docs/adr/047-temporary-remote-config.md +47 -0
- package/docs/adr/048-persistent-connection-mode.md +58 -0
- package/docs/adr/README.md +2 -0
- package/package.json +3 -1
- package/schemas/global-config.schema.json +6 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../src/tunnel/supervisor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../src/tunnel/supervisor.ts"],"names":[],"mappings":"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"}
|
package/docs/AI_PROVIDERS.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# AI Providers, Sub-agents และหลายโปรเจกต์
|
|
2
2
|
|
|
3
|
-
DODO MCP 1.0.
|
|
3
|
+
DODO MCP 1.0.3 สามารถเปิด runtime ของหลายโปรเจกต์ใน process เดียว และเรียกโมเดลจาก backend ผ่าน connection/profile ที่เจ้าของเลือกได้ ค่าเริ่มต้นเป็นโหมดส่วนตัว: เพิ่มโปรเจกต์, connection และ profile แล้วใช้งานได้ทันทีโดยไม่ต้องทำ allowlist ซ้ำ
|
|
4
4
|
|
|
5
5
|
## เริ่มใช้งานผ่านเว็บ
|
|
6
6
|
|
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -18,7 +18,10 @@ Whisper/interactive desktop remain explicitly separate gates.
|
|
|
18
18
|
|
|
19
19
|
## Overview
|
|
20
20
|
|
|
21
|
-
DODO แบ่งเป็น data plane สำหรับ MCP tools และ owner control plane สำหรับ Local
|
|
21
|
+
DODO แบ่งเป็น data plane สำหรับ MCP tools และ owner control plane สำหรับ Local
|
|
22
|
+
Config/CLI ทั้งสอง plane ใช้ state และ workspace lifecycle เดียวกัน Public listener
|
|
23
|
+
ไม่มี owner route ที่ active ตามค่าเริ่มต้น; ADR-047 เพิ่ม bounded `/config` bridge ที่
|
|
24
|
+
เจ้าของเปิดชั่วคราวและปิดเป็น 404 เมื่อ lease หมด
|
|
22
25
|
|
|
23
26
|
```text
|
|
24
27
|
AI client
|
|
@@ -42,6 +45,10 @@ Owner browser/CLI
|
|
|
42
45
|
▼
|
|
43
46
|
Local Config 127.0.0.1:21731 ──► WorkspaceHost ──► active workspace lifecycle
|
|
44
47
|
|
|
48
|
+
Tunnel ──► 127.0.0.1:21730/config ──► one-time pairing/session gate
|
|
49
|
+
└──────────► Local Config 127.0.0.1:21731
|
|
50
|
+
(lease ไม่เกิน 1 ชั่วโมง)
|
|
51
|
+
|
|
45
52
|
Local owner CLI ──► authenticated tunnel IPC ──► bounded cloudflared supervisor
|
|
46
53
|
|
|
47
54
|
Local owner CLI/Config ──► project registry ──► projectId + workspace reference
|
|
@@ -293,19 +300,27 @@ Repo config เป็น hints-only และไม่สามารถ widen p
|
|
|
293
300
|
|
|
294
301
|
## Tunnel lifecycle
|
|
295
302
|
|
|
296
|
-
Tunnel config อยู่ใน global owner config
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
303
|
+
Tunnel config อยู่ใน global owner config และมี `connectionMode` เป็นแหล่งความจริงเดียว:
|
|
304
|
+
`local` หรือ `tunnel` พร้อม opaque credential reference, canonical executable selection,
|
|
305
|
+
loopback metrics port และ bounded restart count Token ถูก resolve จาก reviewed OS
|
|
306
|
+
store หรือ owner-controlled env/private-file reference เมื่อเริ่ม process และส่งผ่าน
|
|
307
|
+
child environment โดยไม่เข้า argv
|
|
308
|
+
|
|
309
|
+
managed supervisor เป็น foreground process มี state machine `starting → connecting → connected/backoff → stopped/failed`, private bounded/redacted log และ authenticated singleton IPC `status/logs/stop` การ stop อ้างอิง live `ChildProcess` ที่ supervisor ถืออยู่เท่านั้น Local mode ไม่ spawn process และ `doctor` ตรวจ local/public health โดยไม่จัดการ Cloudflare account หรือ DNS
|
|
310
|
+
|
|
311
|
+
`TunnelRuntime` ผูก supervisor หนึ่งตัวกับ DODO HTTP process และยอมเริ่มเฉพาะเมื่อ
|
|
312
|
+
saved mode เป็น Tunnel พร้อม credential reference Runtime ส่งค่าผ่าน `TUNNEL_TOKEN`
|
|
313
|
+
ให้ child โดยตรง เก็บเพียงสถานะที่ไม่มี secret และปิด child ก่อน DODO process จบ
|
|
314
|
+
การเปลี่ยน workspace ไม่ย้ายหรือเพิ่มสิทธิ์ใด ๆ และ Local Config port 21731 ยังคง
|
|
315
|
+
ไม่รับ traffic จาก Tunnel
|
|
316
|
+
|
|
317
|
+
Remote Config ไม่เปลี่ยน bind ของ Local Config และไม่ copy admin handlers มาที่ public
|
|
318
|
+
app `RemoteConfigGateway` ถือ pairing/session digest กับ expiry ใน memory, proxy เฉพาะ
|
|
319
|
+
`/config`, `/config/assets/*`, `/config/api/*` และส่ง request ไป loopback owner server
|
|
320
|
+
ด้วย internal capability เดิม CLI เปิด/ต่ออายุผ่าน authenticated installation IPC
|
|
321
|
+
เฉพาะเมื่อ persistent Tunnel mode ทำงานอยู่ IPC ไม่รับ credential หรือสลับ connection
|
|
322
|
+
mode การหมดอายุล้าง code/session และทำให้ namespace กลับเป็น 404 โดยไม่หยุด
|
|
323
|
+
MCP/OAuth/Tunnel
|
|
309
324
|
|
|
310
325
|
## Optional services
|
|
311
326
|
|
package/docs/COMPATIBILITY.md
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
| Windows | Deferred — มี candidate code/tests แต่ยังไม่ประกาศ native support จนกว่าจะผ่าน Windows 11 จริง |
|
|
11
11
|
| MCP HTTP | OAuth protected MCP endpoint ที่ `/mcp` |
|
|
12
12
|
| MCP STDIO | Full surface เป็นค่าเริ่มต้น |
|
|
13
|
-
| Local Config | loopback owner control
|
|
14
|
-
| Cloudflare Tunnel |
|
|
13
|
+
| Local Config | loopback owner control ที่ 21731; เปิด bounded Remote Config `/config` ผ่าน 21730 ได้ครั้งละไม่เกิน 1 ชั่วโมง |
|
|
14
|
+
| Cloudflare Tunnel | เลือก persistent `local` หรือ DODO-owned `tunnel`; credential อยู่ใน OS store/reference และ child `cloudflared` หยุดพร้อม DODO |
|
|
15
15
|
| Package | `dodo-mcp` |
|
|
16
16
|
| CLI | `dodo` |
|
|
17
17
|
|
|
@@ -60,7 +60,11 @@ Desktop, browser, media, speech, LSP และ OS sandbox ต้องตรว
|
|
|
60
60
|
|
|
61
61
|
`dodo setup --plan` ใช้ตรวจขั้นตอนติดตั้งแบบ read-only ส่วน installer ต้องมี `--yes` การใช้ `--import-state` รองรับเฉพาะ config ตำแหน่งมาตรฐานและนำเข้า non-authority preferences เท่านั้น custom `DODO_CONFIG_DIR` ไม่ถูกค้นหรือ merge อัตโนมัติ
|
|
62
62
|
|
|
63
|
-
`dodo setup --components cloudflared` ตรวจ executable ได้ทุก OS
|
|
63
|
+
`dodo setup --components cloudflared` ตรวจ executable ได้ทุก OS การติดตั้งอัตโนมัติ
|
|
64
|
+
รองรับ Homebrew บน macOS ส่วน Linux/Windows ใช้ signed official package ที่เจ้าของติดตั้งเอง
|
|
65
|
+
โหมด Tunnel ต้องมี public origin และ credential reference ที่ผ่านการตรวจแล้ว ค่า
|
|
66
|
+
`--os-credential` ใช้ macOS Keychain, Windows Credential Manager หรือ Linux Secret
|
|
67
|
+
Service ส่วน env/file references มีไว้สำหรับ owner-controlled headless environment
|
|
64
68
|
|
|
65
69
|
## Client behavior
|
|
66
70
|
|
|
@@ -4,22 +4,51 @@
|
|
|
4
4
|
|
|
5
5
|
สถานะล่าสุดของ owner-state setup/import gate: `MANUAL_NOT_RUN` (2026-09-14) ชุด automated ใช้ fixture แยกและไม่แตะ config/OAuth/tunnel ของผู้ใช้
|
|
6
6
|
|
|
7
|
-
สถานะ Cloudflare
|
|
7
|
+
สถานะ live Cloudflare connection smoke ของรุ่น 1.0.2: `MANUAL_PASS` (2026-09-15) บน
|
|
8
|
+
macOS arm64, Linux x64 และ Windows x64 โดยใช้ secret fixture แบบชั่วคราว; ทั้งสาม platform รายงาน
|
|
9
|
+
connected, stability 3 วินาที, clean stop และ credentialPersisted=false ใน
|
|
10
|
+
[GitHub run 34908481066](https://github.com/arthittakun/dodo-mcp/actions/runs/34908481066)
|
|
11
|
+
การตรวจ public DNS → MCP/OAuth และ Remote Config ผ่าน hostname จริงยัง
|
|
12
|
+
`MANUAL_NOT_RUN` และ persistent credential flow ของรุ่น 1.0.3 ยังต้องรันใหม่;
|
|
13
|
+
connection smoke เดิมไม่ได้อ้างว่า AI client เชื่อมต่อแล้ว
|
|
8
14
|
|
|
9
15
|
## Cloudflare Tunnel
|
|
10
16
|
|
|
11
17
|
1. สร้าง remotely-managed Tunnel และ public hostname ใน Cloudflare ด้วยบัญชีเจ้าของ
|
|
12
18
|
2. route ทุก path ของ hostname ไป `http://127.0.0.1:21730` และยืนยันว่าไม่มี route ไป `21731`/`21732`
|
|
13
19
|
3. รัน `dodo setup --check --components cloudflared`
|
|
14
|
-
4. รัน `dodo
|
|
15
|
-
5.
|
|
16
|
-
6.
|
|
17
|
-
7.
|
|
18
|
-
8.
|
|
19
|
-
9. ตรวจ
|
|
20
|
-
10.
|
|
21
|
-
11.
|
|
22
|
-
12.
|
|
20
|
+
4. รัน `dodo tunnel configure --tunnel --public-url https://... --os-credential` และกรอก token ใน hidden prompt
|
|
21
|
+
5. ตรวจ config JSON มีเพียง `connectionMode=tunnel` และ opaque credential ref ไม่มี token
|
|
22
|
+
6. รัน `dodo start`; ตรวจว่ารอ readiness สำเร็จและ Active MCP URL เป็น public HTTPS
|
|
23
|
+
7. หยุดแล้วเริ่มใหม่โดยไม่กรอก token ซ้ำ; ตรวจว่าอ่านจาก OS store และ Tunnel เริ่มตาม
|
|
24
|
+
8. ทำ credential ให้ใช้ไม่ได้ใน fixture แล้วเริ่มใหม่; ต้อง fail closed และไม่เปิด Local fallback
|
|
25
|
+
9. ตรวจ `dodo tunnel status` ว่า `credentialSource=configured` และ connected หลัง `/ready` ตอบจริง
|
|
26
|
+
10. ตรวจ `dodo tunnel doctor` แยก local/public health และไม่กล่าวว่า AI client connected
|
|
27
|
+
11. ตรวจ process list ว่า argv ไม่มี token และ `dodo tunnel logs`/audit/config ไม่มี token
|
|
28
|
+
12. ทดสอบ OAuth + MCP ผ่าน public origin แล้วหยุด DODO; ยืนยัน owned child หยุดตาม
|
|
29
|
+
13. เปิด Local Config เลือก Local แล้ว restart; ตรวจว่าไม่เริ่ม cloudflared และ Active MCP URL เป็น loopback
|
|
30
|
+
14. เลือก Tunnel ผ่าน Local Config พร้อม write-only token แล้ว restart; ตรวจว่าช่องไม่ถูกเติมกลับและ endpoint เป็น public
|
|
31
|
+
15. บันทึก macOS และ Linux Docker แยก environment; Windows manual result แยกตามเครื่องจริง
|
|
32
|
+
|
|
33
|
+
## Remote Config ผ่าน Tunnel
|
|
34
|
+
|
|
35
|
+
Automated Chromium fixture ผ่านแล้วทั้ง 1440×900 และ 390×844 โดยใช้ isolated
|
|
36
|
+
loopback public-origin fixture: จับคู่, dashboard/assets/API, workspace-bound mutation,
|
|
37
|
+
หมดอายุและปิดเป็น 404 ทำงานจริง การตรวจผ่าน public Cloudflare hostname จริงยัง
|
|
38
|
+
`MANUAL_NOT_RUN`
|
|
39
|
+
|
|
40
|
+
1. เลือก Tunnel แบบ persistent และรัน DODO จน `dodo tunnel status` รายงาน connected
|
|
41
|
+
2. จาก terminal อื่นรัน `dodo --web`; คำสั่งต้องไม่ถามหรือส่ง Tunnel token ผ่าน IPC
|
|
42
|
+
3. ตรวจว่า process ไม่ restart และ MCP/OAuth/workspace epoch เดิมไม่เปลี่ยน
|
|
43
|
+
4. เปิด URL `/config` จากอีกอุปกรณ์ ตรวจว่า URL ไม่มี query/fragment secret
|
|
44
|
+
5. กรอก pairing code ครั้งเดียว; ใช้ซ้ำต้องถูกปฏิเสธ
|
|
45
|
+
6. ตรวจ browser cookie เป็น Secure/HttpOnly/SameSite=Strict และ Path `/config`
|
|
46
|
+
7. เปลี่ยนค่าที่ไม่กระทบข้อมูลจริงใน fixture แล้วตรวจ workspace ID/epoch binding
|
|
47
|
+
8. รัน `dodo --web` อีกครั้ง ตรวจ session เดิมถูกยกเลิกและได้ code ใหม่
|
|
48
|
+
9. รัน `dodo web --close` ตรวจ `/config`, assets และ API เป็น 404 แต่ `/healthz`, OAuth และ `/mcp` ยังอยู่
|
|
49
|
+
10. เปิดใหม่แล้วรอ 1 ชั่วโมง ตรวจ namespace ปิดเองโดยไม่หยุด MCP/Tunnel
|
|
50
|
+
11. เปลี่ยน persistent mode เป็น Local แล้ว restart; `dodo --web` ต้องถูกปฏิเสธและไม่เริ่ม Tunnel เอง
|
|
51
|
+
12. ตรวจ config, audit, tunnel log, browser local/session storage และ process argv ว่าไม่มี Tunnel token, pairing code หรือ session token
|
|
23
52
|
|
|
24
53
|
## Setup foundation
|
|
25
54
|
|
package/docs/RELEASE_1.0.0.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# DODO MCP 1.0.0
|
|
2
2
|
|
|
3
|
+
> เอกสารนี้บันทึกพฤติกรรม release 1.0.0 เท่านั้น สำหรับคำสั่ง Tunnel ของ source
|
|
4
|
+
> ปัจจุบันใช้ [TUNNEL.md](TUNNEL.md); `--no-tunnel` และ token ชั่วคราวถูกแทนที่แล้ว
|
|
5
|
+
|
|
3
6
|
นี่คือ release แรกของ DODO MCP ในชื่อ package `dodo-mcp` และ CLI `dodo`
|
|
4
7
|
|
|
5
8
|
## การติดตั้ง
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# DODO MCP 1.0.2
|
|
2
|
+
|
|
3
|
+
Patch release นี้เพิ่ม Temporary Remote Config สำหรับเจ้าของที่ต้องการเปิดหน้า Config
|
|
4
|
+
ผ่าน Cloudflare Tunnel ชั่วคราว โดยคง Local Config ที่พอร์ต 21731 ไว้บน loopback และ
|
|
5
|
+
คง MCP/OAuth ที่พอร์ต 21730 ตามเดิม
|
|
6
|
+
|
|
7
|
+
## สิ่งที่เปลี่ยน
|
|
8
|
+
|
|
9
|
+
- เพิ่ม `dodo --web`, `dodo web --status` และ `dodo web --close`
|
|
10
|
+
- เปิด `/config` บน public listener ครั้งละไม่เกินหนึ่งชั่วโมงและปิดเป็น 404 เมื่อไม่มี
|
|
11
|
+
lease, หลังปิด หรือเมื่อหมดอายุ
|
|
12
|
+
- ใช้ pairing code แบบครั้งเดียวกับ session cookie ที่เป็น Secure, HttpOnly,
|
|
13
|
+
SameSite=Strict และจำกัด path ที่ `/config`
|
|
14
|
+
- ต่ออายุ Remote Config ผ่าน authenticated owner IPC ได้โดยไม่ restart MCP
|
|
15
|
+
- รองรับการส่ง temporary Cloudflare Tunnel token ไปยัง process ที่รันอยู่ผ่าน private
|
|
16
|
+
IPC โดยไม่เก็บ token ลง config, audit, URL หรือ command arguments
|
|
17
|
+
- เพิ่มเมนู Temporary Remote Config ใน `dodo --cli` พร้อม security, integration,
|
|
18
|
+
browser และ packaging coverage
|
|
19
|
+
|
|
20
|
+
## ขอบเขตความปลอดภัย
|
|
21
|
+
|
|
22
|
+
Remote Config ไม่เพิ่ม OAuth scope, project ACL, trust หรือ approval และไม่เพิ่ม MCP
|
|
23
|
+
tool สำหรับเปิดหน้า owner เส้นทาง public จะ proxy ไปยัง Local Config ด้วย capability
|
|
24
|
+
ภายใน process หลังผ่าน pairing/session เท่านั้น พร้อมคง Host/Origin, workspace/epoch,
|
|
25
|
+
validation, policy และ audit ของ Local Config
|
|
26
|
+
|
|
27
|
+
## ติดตั้งและอัปเดต
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install -g dodo-mcp@1.0.2
|
|
31
|
+
dodo --version
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
หลังอัปเดตให้ restart DODO process ที่กำลังรันอยู่ จากนั้นใช้ `dodo --web` เมื่อ public
|
|
35
|
+
origin และ tunnel route พร้อมใช้งาน
|
|
36
|
+
|
|
37
|
+
## ผลตรวจ
|
|
38
|
+
|
|
39
|
+
- `npm run test:all`: **AUTOMATED_PASS** — 677 passed, 34 skipped, 0 failed;
|
|
40
|
+
packaging 16/16
|
|
41
|
+
- Chromium desktop 1440×900 และ mobile 390×844: **AUTOMATED_PASS** ใน fixture
|
|
42
|
+
- `npm audit --omit=dev`: **AUTOMATED_PASS** — 0 vulnerabilities
|
|
43
|
+
- public Cloudflare hostname → Remote Config จากอุปกรณ์ภายนอก: **MANUAL_NOT_RUN**
|
|
44
|
+
|
|
45
|
+
ผลจาก automated fixture ไม่ยืนยันสถานะ DNS, Tunnel หรือการเชื่อมต่อจาก AI client
|
|
46
|
+
ของเจ้าของ
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# DODO MCP 1.0.3
|
|
2
|
+
|
|
3
|
+
รุ่น 1.0.3 เปลี่ยนการเลือก MCP endpoint ให้เป็นค่า installation แบบถาวรและเลือกได้
|
|
4
|
+
เพียงหนึ่งโหมด: `local` หรือ `tunnel`
|
|
5
|
+
|
|
6
|
+
## พฤติกรรมใหม่
|
|
7
|
+
|
|
8
|
+
- Local ใช้ `http://127.0.0.1:21730/mcp` เป็น MCP/OAuth endpoint และไม่เริ่ม
|
|
9
|
+
`cloudflared`
|
|
10
|
+
- Tunnel ใช้ public HTTPS origin เป็น MCP/OAuth endpoint หลัก และ DODO เริ่ม/หยุด
|
|
11
|
+
process-owned `cloudflared` พร้อม `dodo start`
|
|
12
|
+
- Tunnel fail closed เมื่อ public origin, credential, executable หรือ readiness ไม่พร้อม
|
|
13
|
+
โดยไม่ย้อนกลับไปใช้ Local
|
|
14
|
+
- Local Config แสดง Active MCP URL จาก runtime จริงและเปลี่ยนโหมดสำหรับการ restart
|
|
15
|
+
ครั้งถัดไปได้
|
|
16
|
+
- Cloudflare Tunnel token เป็น write-only และอยู่ใน reviewed OS credential store หรือ
|
|
17
|
+
owner-controlled environment/private-file reference; token ไม่อยู่ใน config, URL,
|
|
18
|
+
process arguments, log หรือ browser storage
|
|
19
|
+
- Remote Config ผ่าน `/config` เปิดได้ครั้งละไม่เกินหนึ่งชั่วโมง เฉพาะตอน persistent
|
|
20
|
+
Tunnel ทำงานอยู่
|
|
21
|
+
|
|
22
|
+
## อัปเดต
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm install -g dodo-mcp@1.0.3
|
|
26
|
+
dodo --version
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
เลือก Local:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
dodo tunnel configure --local
|
|
33
|
+
dodo start
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
เลือก Tunnel:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
dodo tunnel configure \
|
|
40
|
+
--tunnel \
|
|
41
|
+
--public-url https://YOUR-DODO-HOST \
|
|
42
|
+
--os-credential
|
|
43
|
+
dodo start
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
การอัปเดตไม่เปิด Tunnel เอง Config เดิมที่ใช้ managed credential จะ migrate เป็น Tunnel
|
|
47
|
+
ส่วน config เดิมรูปแบบอื่น migrate เป็น Local เพื่อไม่เพิ่มการเปิดเผยเครื่องโดยไม่ตั้งใจ
|
|
48
|
+
|
|
49
|
+
## การตรวจรับ
|
|
50
|
+
|
|
51
|
+
- Automated core/security/compatibility: 679 passed, 34 skipped, 0 failed
|
|
52
|
+
- Packaging: 16/16 passed
|
|
53
|
+
- Chromium Local Config UI: 5/5 passed
|
|
54
|
+
- Production dependency audit: 0 vulnerabilities
|
|
55
|
+
- Live Cloudflare hostname ด้วย credential ของเจ้าของสำหรับ source นี้:
|
|
56
|
+
**MANUAL_NOT_RUN**
|
|
57
|
+
|
package/docs/RELEASE_NOTES.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
# DODO MCP — Release Notes
|
|
2
2
|
|
|
3
|
+
## 1.0.3 — Persistent connection mode
|
|
4
|
+
|
|
5
|
+
- เพิ่ม installation setting `connectionMode=local|tunnel` เป็นแหล่งความจริงเดียว
|
|
6
|
+
- `dodo start` ใช้โหมดที่บันทึกไว้ทุกครั้ง: Local ไม่เริ่ม `cloudflared`; Tunnel เริ่ม
|
|
7
|
+
และหยุด DODO-owned `cloudflared` พร้อม process และ fail closed เมื่อไม่พร้อม
|
|
8
|
+
- Tunnel token บันทึกแบบ write-only ใน reviewed OS credential store หรืออ้างอิง
|
|
9
|
+
owner-controlled env/private file; ไม่รับ token ชั่วคราวผ่าน startup/IPC อีกต่อไป
|
|
10
|
+
- Local Config เลือกโหมดและบันทึก token ได้โดยไม่ส่งค่ากลับ หน้า Connection แสดง
|
|
11
|
+
Active MCP URL จาก runtime จริง ค่าใหม่มีผลหลัง restart
|
|
12
|
+
- Remote Config หนึ่งชั่วโมงใช้ได้เฉพาะเมื่อ persistent Tunnel mode กำลังทำงาน
|
|
13
|
+
- เพิ่ม integration/security regression สำหรับ Local OAuth/MCP, endpoint selection,
|
|
14
|
+
config migration, credential non-disclosure และ no-fallback supervisor behavior
|
|
15
|
+
|
|
16
|
+
ติดตั้งหรืออัปเดตด้วย `npm install -g dodo-mcp@1.0.3` แล้ว restart DODO
|
|
17
|
+
process ที่กำลังรันอยู่
|
|
18
|
+
|
|
19
|
+
## 1.0.2
|
|
20
|
+
|
|
21
|
+
> พฤติกรรม token ชั่วคราวของรุ่นนี้ถูกแทนที่ใน source ปัจจุบันด้วย persistent
|
|
22
|
+
> connection mode ดูหัวข้อ 1.0.3 และ ADR-048
|
|
23
|
+
|
|
24
|
+
### Temporary Remote Config
|
|
25
|
+
|
|
26
|
+
- เพิ่ม `dodo --web`, `dodo web --status` และ `dodo web --close` สำหรับเปิดหน้า Config
|
|
27
|
+
ผ่าน public Tunnel ที่พอร์ต 21730 ครั้งละไม่เกิน 1 ชั่วโมง โดยพอร์ต 21731 ยังคง bind
|
|
28
|
+
loopback เท่านั้น
|
|
29
|
+
- ใช้ pairing code แบบครั้งเดียวและ Secure/HttpOnly/SameSite cookie ที่จำกัด path
|
|
30
|
+
`/config`; route ปิดเป็น 404 ก่อนเปิด หลังปิด และเมื่อหมดอายุ
|
|
31
|
+
- process ที่เริ่ม local-only สามารถรับ run-scoped Tunnel token ผ่าน authenticated
|
|
32
|
+
installation IPC โดยไม่ restart MCP และไม่บันทึก credential
|
|
33
|
+
- เพิ่มเมนู Remote Config ใน `dodo --cli`, security/integration/Chromium tests และ
|
|
34
|
+
ADR-047 โดยไม่เปลี่ยน OAuth, project authority, workspace context หรือ owner policy
|
|
35
|
+
|
|
36
|
+
ติดตั้งหรืออัปเดตด้วย `npm install -g dodo-mcp@1.0.2` จากนั้น restart process ที่กำลัง
|
|
37
|
+
รันอยู่ การเปิด Remote Config ผ่าน public hostname จริงยังต้องตรวจด้วย tunnel/DNS ของ
|
|
38
|
+
เจ้าของและไม่ถือว่าผ่านจาก automated fixture เพียงอย่างเดียว
|
|
39
|
+
|
|
3
40
|
## 1.0.1
|
|
4
41
|
|
|
5
42
|
### Platform และ release hardening
|
package/docs/SECURITY.md
CHANGED
|
@@ -47,7 +47,19 @@ request ที่อ้าง target ไม่มี ACL ถูกปฏิเ
|
|
|
47
47
|
|
|
48
48
|
MCP และ public route ต้องผ่าน OAuth เสมอ ห้ามใช้ localhost เป็น authentication, ห้ามเปิด CORS เป็น `*`, ห้ามส่ง token ใน query string และห้าม trust proxy headers จากภายนอก
|
|
49
49
|
|
|
50
|
-
Local Config bind loopback ใช้ private capability token, expiration, Host/Origin checks,
|
|
50
|
+
Local Config bind loopback ใช้ private capability token, expiration, Host/Origin checks,
|
|
51
|
+
forwarded-header rejection และ rate limit Public listener ไม่มี owner route ที่ active
|
|
52
|
+
ตามค่าเริ่มต้น เมื่อเจ้าของสั่ง `dodo --web` จะเปิดเฉพาะ namespace `/config` แบบ
|
|
53
|
+
process-memory lease ไม่เกิน 1 ชั่วโมง และกลับเป็น 404 เมื่อปิดหรือหมดอายุ
|
|
54
|
+
|
|
55
|
+
Remote Config ใช้ pairing code สุ่มแบบใช้ครั้งเดียว เก็บใน server เฉพาะ SHA-256 digest
|
|
56
|
+
และแลกเป็น session token ที่ server เก็บเฉพาะ digest Cookie เป็น `Secure`, `HttpOnly`,
|
|
57
|
+
`SameSite=Strict`, `Path=/config`; code/session ไม่อยู่ใน URL, config, browser storage,
|
|
58
|
+
log หรือ audit Proxy ส่งต่อไป Local Config ด้วย capability ภายใน และลอก client
|
|
59
|
+
Authorization/Cookie/Origin/Cloudflare/forwarded headers ออกก่อน ทุก mutation จึงยัง
|
|
60
|
+
ต้องผ่าน workspace/epoch binding และ owner API validation เดิม มี rate limit ที่
|
|
61
|
+
pairing endpoint และ CSP/no-store/frame denial บนทุก response ไม่มี MCP operation เปิด
|
|
62
|
+
หรือยืด lease ได้; เฉพาะ authenticated private IPC/CLI ของเจ้าของเท่านั้น
|
|
51
63
|
|
|
52
64
|
UI assets เสิร์ฟจากแพ็กเกจเองทั้งหมดรวมถึง SweetAlert2 ที่ vendor แบบ pin version (ไม่มี CDN; CSP ยังเป็น `script-src 'self'; style-src 'self'` โดยไม่มี `unsafe-inline`/`unsafe-eval`) เส้นทาง `/assets` เป็น fail-closed: path ที่ decode แล้วต้องตรงรูปแบบเข้มงวด (ลึกได้หนึ่งระดับเฉพาะ `ui/`, `vendor/`), นามสกุลอยู่ใน allowlist (`.css/.js/.svg`), ปฏิเสธ `..`, backslash, NUL และไฟล์ที่ resolve ออกนอก UI directory ทั้งหมดตอบ 404 ข้อความจาก server/paths/client/provider ทุกตัว render ผ่าน `textContent` (SweetAlert ใช้ `titleText`/`text` เท่านั้น ไม่ใช้ `html`) กล่องยืนยันของ UI เป็นชั้น UX เพิ่มเติม ไม่แทนที่ approval/validation ฝั่ง server
|
|
53
65
|
|
|
@@ -210,17 +222,30 @@ workspace context ทุก call ที่เปิดให้เห็นย
|
|
|
210
222
|
|
|
211
223
|
## Cloudflare Tunnel
|
|
212
224
|
|
|
213
|
-
เจ้าของเป็นผู้สร้าง remotely-managed Tunnel, hostname และ DNS DODO ไม่ใช้ Cloudflare
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
225
|
+
เจ้าของเป็นผู้สร้าง remotely-managed Tunnel, hostname และ DNS DODO ไม่ใช้ Cloudflare
|
|
226
|
+
API DODO บันทึกการเลือกแบบ exclusive เป็น `local` หรือ `tunnel` ใน private global
|
|
227
|
+
config หากเลือก Tunnel ทุก `dodo start` จะเริ่มเฉพาะ live `cloudflared` child ของ
|
|
228
|
+
process นั้นและหยุด child พร้อม DODO หาก credential/readiness ไม่พร้อม startup จะ
|
|
229
|
+
fail closed และไม่ fallback ไป Local
|
|
230
|
+
|
|
231
|
+
Token ถูกเก็บใน macOS Keychain, Windows Credential Manager หรือ Linux Secret Service
|
|
232
|
+
เมื่อใช้ `--os-credential`; config เก็บ opaque locator เท่านั้น Owner-controlled
|
|
233
|
+
headless deployment อาจเลือก env/private-file reference โดย DODO ไม่คัดลอกค่า Token
|
|
234
|
+
ไม่อยู่ใน CLI argv, child arguments, config JSON, logs, MCP catalog/response, audit,
|
|
235
|
+
browser storage หรือ setup receipt ค่า `TUNNEL_TOKEN` และ `TUNNEL_TOKEN_FILE` ถูก
|
|
236
|
+
ปฏิเสธจาก environment ของ MCP jobs เสมอ
|
|
237
|
+
|
|
238
|
+
Local Config รับ token แบบ write-only เฉพาะ POST ที่ผ่าน private capability,
|
|
239
|
+
Host/Origin/proxy checks, rate limit และ control-context headers จากนั้นส่งตรงไปยัง
|
|
240
|
+
reviewed OS credential provider และล้าง request field Response/config/audit ส่งกลับ
|
|
241
|
+
เฉพาะ credential presence/provider ไม่มี MCP tool สำหรับส่ง token, เปลี่ยน connection
|
|
242
|
+
mode หรือควบคุม owner Tunnel
|
|
243
|
+
|
|
244
|
+
Tunnel route ต้องชี้ทุก public path ไป MCP/OAuth listener `127.0.0.1:21730` เท่านั้น
|
|
245
|
+
Local Config `21731`, metrics `21732` และ private IPC ไม่ถูก expose `/config` ที่
|
|
246
|
+
listener 21730 เป็น bounded bridge ที่ปิดเป็น 404 โดยค่าเริ่มต้นและไม่ทำให้พอร์ต 21731
|
|
247
|
+
รับ network ภายนอก readiness บอกสถานะ Cloudflare connection เท่านั้น ไม่ใช่หลักฐานว่า
|
|
248
|
+
AI client กำลังเชื่อมต่อ
|
|
224
249
|
|
|
225
250
|
## Setup and existing-state import
|
|
226
251
|
|
|
@@ -259,4 +284,5 @@ Unknown outcomes ไม่ auto-retry Queue ไม่แทน expected hash ห
|
|
|
259
284
|
Local Config ยังคง loopback, token expiry, Host/Origin/proxy-header/rate checks และ CSP
|
|
260
285
|
Admin API ไม่อยู่บน public MCP Events ใช้ authenticated fetch/cursor ไม่ใส่ token ใน URL
|
|
261
286
|
ใช้ textContent แสดง path/model/error และไม่ render HTML จากโมเดล Tunnel credential
|
|
262
|
-
|
|
287
|
+
อยู่ใน reviewed OS store/reference และไม่ถูกส่งกลับให้ browser การเริ่ม DODO,
|
|
288
|
+
ปลดล็อก Keychain และให้ macOS permissions ต้องผ่านเจ้าของ
|
package/docs/TEST_REPORT.md
CHANGED
|
@@ -1,8 +1,65 @@
|
|
|
1
1
|
# DODO MCP — Test Report
|
|
2
2
|
|
|
3
|
+
## Release 1.0.3 — Persistent connection mode
|
|
4
|
+
|
|
5
|
+
- `tests/integration/connectionMode.test.ts`: Local ใช้ loopback เป็น OAuth issuer/MCP
|
|
6
|
+
resource และเรียก `project_overview` ผ่าน OAuth จริง; Tunnel advertise public URL
|
|
7
|
+
แต่คง upstream ที่ loopback
|
|
8
|
+
- `tests/security/tunnelCredentials.test.ts`: migration จาก config เดิมและ credential
|
|
9
|
+
locator ที่ไม่มี token
|
|
10
|
+
- `tests/security/localConfig.test.ts`: owner authentication, write-only OS credential
|
|
11
|
+
boundary, exclusive mode และไม่มี endpoint เริ่ม tunnel ด้วย token ชั่วคราว
|
|
12
|
+
- `tests/integration/tunnelSupervisor.test.ts`: configured credential, argv/log/state
|
|
13
|
+
non-disclosure, readiness, bounded restart และ owned stop
|
|
14
|
+
- `tests/security/remoteConfig.test.ts` กับ `tests/integration/remoteConfigUi.test.ts`:
|
|
15
|
+
Remote Config เปิดได้เฉพาะ Tunnel ที่ทำงานและไม่รับ credential ทาง IPC
|
|
16
|
+
- `tests/integration/configUiComponents.test.ts`: Chromium จริงแสดง Active MCP URL
|
|
17
|
+
ตาม runtime, บังคับ Local/Tunnel เป็นตัวเลือกเดียว และไม่บันทึก Tunnel เมื่อ HTTPS
|
|
18
|
+
origin หรือ credential ยังไม่พร้อม
|
|
19
|
+
|
|
20
|
+
Targeted gate ล่าสุด: **AUTOMATED_PASS** — 9 files, 61 tests passed, 1 skipped ตาม
|
|
21
|
+
dependency/platform; Chromium UI 5/5 ผ่าน; typecheck และ lint ผ่าน
|
|
22
|
+
|
|
23
|
+
Full gate ล่าสุด: **AUTOMATED_PASS** — `npm run build` สร้าง Full 125 / Compact 19 /
|
|
24
|
+
Hybrid 49 tools; `npm run test:all` ผ่าน core/security/compatibility 99 files,
|
|
25
|
+
679 tests passed, 34 skipped, 0 failed และ packaging 16/16
|
|
26
|
+
|
|
27
|
+
- `npm audit --omit=dev`: **AUTOMATED_PASS** — production vulnerabilities 0
|
|
28
|
+
- `npm pack --dry-run`: **AUTOMATED_PASS** — มี CLI, Local Config assets และ schema
|
|
29
|
+
ทั้งสาม surfaces; ไม่พบ `.env`, state DB, model/media, release evidence หรือ
|
|
30
|
+
`docs/development` ใน manifest
|
|
31
|
+
|
|
32
|
+
Live Cloudflare hostname และ OS credential store ด้วย credential ของเจ้าของสำหรับ source
|
|
33
|
+
นี้: **MANUAL_NOT_RUN** — ไม่ถือว่า fixture cloudflared เป็นหลักฐานของ public network จริง
|
|
34
|
+
|
|
3
35
|
## Scope
|
|
4
36
|
|
|
5
|
-
รายงานนี้ใช้กับ DODO MCP 1.0.
|
|
37
|
+
รายงานนี้ใช้กับ DODO MCP 1.0.3 source และแยกผล automated กับ manual อย่างชัดเจน
|
|
38
|
+
|
|
39
|
+
## Release 1.0.2 — Temporary Remote Config
|
|
40
|
+
|
|
41
|
+
เพิ่ม owner-paired `/config` bridge บน listener 21730 ที่ปิดเป็น 404 ตามค่าเริ่มต้น
|
|
42
|
+
และเปิดได้ครั้งละไม่เกินหนึ่งชั่วโมงด้วย `dodo --web` โดย Local Config 21731 ยังคง
|
|
43
|
+
bind loopback เท่านั้น `dodo --web` ต่ออายุผ่าน authenticated installation IPC โดย
|
|
44
|
+
ไม่ restart MCP และเริ่ม process-owned Tunnel ด้วย token ชั่วคราวเมื่อ process เดิม
|
|
45
|
+
เริ่มแบบ local-only
|
|
46
|
+
|
|
47
|
+
- typecheck และ targeted lint: **AUTOMATED_PASS**
|
|
48
|
+
- `tests/security/remoteConfig.test.ts`: **AUTOMATED_PASS** — absent-by-default,
|
|
49
|
+
one-time pairing, strict cookie/CSP, unauthorized asset/API, cross-site denial,
|
|
50
|
+
workspace/epoch binding, expiry/close, IPC renewal, token/pairing non-persistence
|
|
51
|
+
และ run-scoped Tunnel handoff
|
|
52
|
+
- `tests/integration/remoteConfigUi.test.ts`: **AUTOMATED_PASS** ใน Chromium จริง —
|
|
53
|
+
pairing และ dashboard จริงที่ 1440×900/390×844, no console errors, no horizontal
|
|
54
|
+
overflow, close → 404; screenshots อยู่ใน ignored local release evidence
|
|
55
|
+
- `tests/integration/cli.test.ts`: bounded `--web`, `web --status`, `web --close`
|
|
56
|
+
contract ผ่าน
|
|
57
|
+
- `npm run test:all`: **AUTOMATED_PASS** — 98 files ผ่าน, 3 files ข้ามตาม platform;
|
|
58
|
+
677 tests ผ่าน, 34 skipped, 0 failed และ packaging 16/16
|
|
59
|
+
- `npm audit --omit=dev`: **AUTOMATED_PASS** — 0 vulnerabilities
|
|
60
|
+
- npm pack manifest: **AUTOMATED_PASS** — รวม `dist/server/remoteConfig.js`, Local
|
|
61
|
+
Config UI, ADR-047 และ release note; release evidence/state/credentials ไม่อยู่ใน manifest
|
|
62
|
+
- public Cloudflare hostname → Remote Config บนอุปกรณ์ภายนอก: **MANUAL_NOT_RUN**
|
|
6
63
|
|
|
7
64
|
## Release 1.0.1 platform gate — 2026-09-15
|
|
8
65
|
|
|
@@ -322,7 +379,9 @@ candidate บน Node 22/24 โดยไม่รับ untrusted pull requests
|
|
|
322
379
|
|
|
323
380
|
สถานะ manual setup/import บน owner state จริง: `MANUAL_NOT_RUN` การตรวจรับใช้ isolated fixtures และ temporary package เท่านั้น ไม่มีการเปลี่ยน owner config, OAuth state, tunnel, DNS หรือ global installation
|
|
324
381
|
|
|
325
|
-
สถานะ
|
|
382
|
+
สถานะ live Cloudflare connection/clean-stop smoke บน macOS/Windows/Linux:
|
|
383
|
+
`MANUAL_PASS` (2026-09-15, run 34908481066); public DNS → MCP/OAuth/Remote Config
|
|
384
|
+
end-to-end บนอุปกรณ์ภายนอก: `MANUAL_NOT_RUN`
|
|
326
385
|
|
|
327
386
|
สถานะ multi-project federation ผ่าน external AI และ owner project จริง: `MANUAL_NOT_RUN`
|
|
328
387
|
|