dodo-mcp 1.0.6 → 1.1.0
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 +19 -6
- package/dist/cli/main.js +60 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/config/globalConfig.js +1 -1
- package/dist/server/bootstrap.js +4 -0
- package/dist/server/bootstrap.js.map +1 -1
- package/dist/server/configUi/app.js +49 -0
- package/dist/server/configUi/index.html +28 -0
- package/dist/server/ipcDispatch.js +3 -0
- package/dist/server/ipcDispatch.js.map +1 -1
- package/dist/server/localConfig.js +25 -0
- package/dist/server/localConfig.js.map +1 -1
- package/dist/services/android/adbBackend.js +106 -0
- package/dist/services/android/adbBackend.js.map +1 -0
- package/dist/services/android/androidPolicy.js +61 -0
- package/dist/services/android/androidPolicy.js.map +1 -0
- package/dist/services/android/androidService.js +444 -0
- package/dist/services/android/androidService.js.map +1 -0
- package/dist/services/android/protocol.js +39 -0
- package/dist/services/android/protocol.js.map +1 -0
- package/dist/setup/componentProbes.js +7 -1
- package/dist/setup/componentProbes.js.map +1 -1
- package/dist/setup/setup.js +11 -1
- package/dist/setup/setup.js.map +1 -1
- package/dist/tools/androidTools.js +113 -0
- package/dist/tools/androidTools.js.map +1 -0
- package/dist/tools/catalog.js +3 -0
- package/dist/tools/catalog.js.map +1 -1
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/projectTools.js +1 -1
- package/dist/tools/projectTools.js.map +1 -1
- package/dist/tools/surface.js +16 -5
- package/dist/tools/surface.js.map +1 -1
- package/docs/ANDROID.md +105 -28
- package/docs/ARCHITECTURE.md +4 -3
- package/docs/COMPATIBILITY.md +11 -5
- package/docs/MANUAL_ACCEPTANCE.md +18 -0
- package/docs/RELEASE_1.1.0.md +69 -0
- package/docs/RELEASE_NOTES.md +15 -0
- package/docs/SECURITY.md +18 -0
- package/docs/TEST_REPORT.md +22 -0
- package/docs/adr/049-android-adb-control.md +52 -0
- package/docs/adr/README.md +1 -0
- package/package.json +5 -2
- package/schemas/tools.compact.json +192 -9
- package/schemas/tools.hybrid.json +191 -152
- package/schemas/tools.json +2250 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/tools/surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/tools/surface.ts"],"names":[],"mappings":"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"}
|
package/docs/ANDROID.md
CHANGED
|
@@ -1,49 +1,125 @@
|
|
|
1
|
-
# DODO
|
|
1
|
+
# DODO กับ Android และ ADB
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
DODO รองรับ Android สองรูปแบบซึ่งมีขอบเขตต่างกัน:
|
|
4
4
|
|
|
5
|
-
DODO
|
|
6
|
-
|
|
7
|
-
ADB
|
|
8
|
-
|
|
5
|
+
1. **รัน DODO บน Android/Termux** — core CLI และ MCP สำหรับ text/code อยู่ในสถานะ
|
|
6
|
+
experimental เพราะ dependency บางตัวไม่มี Android build
|
|
7
|
+
2. **ให้ DODO ควบคุมมือถือผ่าน ADB** — ใช้ DODO บน macOS, Linux, Windows หรือ
|
|
8
|
+
Termux ที่มี `adb` แล้วให้ AI ตรวจและควบคุมเฉพาะอุปกรณ์ที่เจ้าของอนุญาต
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## ใช้ DODO ควบคุมมือถือผ่าน ADB
|
|
11
|
+
|
|
12
|
+
ติดตั้ง Android SDK Platform-Tools จากแหล่งทางการ แล้วตรวจว่า `adb` พร้อมโดยไม่
|
|
13
|
+
เชื่อมต่อหรือสั่งงานมือถือ:
|
|
11
14
|
|
|
12
15
|
```bash
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
dodo --version
|
|
16
|
+
dodo setup --check --components adb
|
|
17
|
+
adb devices -l
|
|
18
|
+
dodo android devices
|
|
17
19
|
```
|
|
18
20
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
บน macOS ติดตั้งได้ด้วย `dodo setup --yes --components adb` ซึ่งใช้ Homebrew
|
|
22
|
+
บน Linux ใช้ package manager ของระบบ ส่วน Windows ให้ติดตั้ง signed Platform-Tools
|
|
23
|
+
จาก Android Developers และเพิ่ม directory ของ `adb.exe` ลง PATH ที่เชื่อถือได้
|
|
22
24
|
|
|
23
|
-
|
|
25
|
+
มือถือยังต้องเปิด Developer options และ USB debugging หรือ Wireless debugging
|
|
26
|
+
จากนั้นยืนยัน RSA prompt บนมือถือด้วยตัวเอง DODO จะไม่ pair, connect, root, start/stop
|
|
27
|
+
ADB server หรืออ่าน pairing code แทนเจ้าของ
|
|
28
|
+
|
|
29
|
+
อนุญาตแบบดูอย่างเดียวชั่วคราว 60 นาที:
|
|
24
30
|
|
|
25
31
|
```bash
|
|
32
|
+
dodo android allow --device SERIAL --mode view --minutes 60 --yes
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
อนุญาตแบบควบคุมและจำไว้ครั้งเดียวสำหรับ DODO installation นี้:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
dodo android allow --device SERIAL --mode control --persist --yes
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
ใช้ serial ตรงกับผลของ `dodo android devices` เท่านั้น เพิ่มได้หลายเครื่องด้วย
|
|
42
|
+
`--device SERIAL_1 SERIAL_2` หน้า Local Config มีปุ่มค้นหาอุปกรณ์และตั้งค่าเดียวกัน
|
|
43
|
+
เมื่อไม่ใช้แล้วให้ถอนสิทธิ์ทันที:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
dodo android disable
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
สิทธิ์ ADB นี้ไม่แทน OAuth หรือ project permission ทุก MCP operation ยังต้องมี
|
|
50
|
+
`dodo:exec`, project/workspace context ที่ถูกต้อง และผ่าน trust/approval,
|
|
51
|
+
idempotency, audit และ policy เดิม โหมด `--bypass` ไม่เปิด ADB ให้เอง
|
|
52
|
+
|
|
53
|
+
### เครื่องมือที่ AI ใช้ได้
|
|
54
|
+
|
|
55
|
+
| Tool | ความสามารถ |
|
|
56
|
+
|---|---|
|
|
57
|
+
| `android_status` | ตรวจ ADB backend และสิทธิ์ที่เจ้าของตั้ง โดยไม่แตะอุปกรณ์ |
|
|
58
|
+
| `android_devices` | แสดงเฉพาะ serial ที่เจ้าของอนุญาต |
|
|
59
|
+
| `android_device_info` | รุ่น, Android version, display และ battery แบบ bounded |
|
|
60
|
+
| `android_capture` | จับหน้าจอ PNG จริงและคืน MCP image block พร้อม snapshot อายุ 30 วินาที |
|
|
61
|
+
| `android_ui` | อ่าน UI hierarchy จาก snapshot เดียวกันและปิดบัง password field |
|
|
62
|
+
| `android_logcat` | อ่าน logcat แบบจำกัดจำนวนบรรทัดและขนาด |
|
|
63
|
+
| `android_packages` | แสดง package names โดยค่าเริ่มต้นเป็น third-party apps |
|
|
64
|
+
| `android_file_read` | อ่านไฟล์ absolute path บนอุปกรณ์แบบ bounded เป็น UTF-8 หรือ base64 |
|
|
65
|
+
| `android_action` | tap, long press, swipe, text และ key event โดยต้องใช้ snapshot ใหม่ |
|
|
66
|
+
| `android_app` | launch/start activity/force-stop/clear app data |
|
|
67
|
+
| `android_install` | ติดตั้ง APK จาก workspace หลังตรวจ expected SHA-256 |
|
|
68
|
+
| `android_push` | ส่งไฟล์ workspace ไป absolute device path หลังตรวจ expected SHA-256 |
|
|
69
|
+
| `android_adb` | device-side `shell`, `exec-out`, `logcat`, `get-state`, `get-serialno`, `features` แบบจำกัดเวลา/ขนาด |
|
|
70
|
+
|
|
71
|
+
HTTP Compact surface รวมทั้งหมดไว้ใต้ `dodo_mobile`; ใช้ `dodo_discover` หา schema
|
|
72
|
+
ของ operation ก่อนเรียก Full surface แสดงชื่อ tool รายตัว
|
|
73
|
+
|
|
74
|
+
`android_install` และ `android_push` ไม่ส่ง path workspace ตรงให้ ADB ระบบอ่านไฟล์ผ่าน
|
|
75
|
+
shared path/secret/symlink/hardlink policy ตรวจ `expectedHash` แล้วสร้าง private staging
|
|
76
|
+
copy ที่ลบทันทีหลังจบ หากไฟล์เปลี่ยนระหว่างทางจะตอบ `FILE_CHANGED` และไม่สั่ง ADB
|
|
77
|
+
|
|
78
|
+
`android_adb` เปิด device-side shell ตามที่เจ้าของร้องขอ จึงแก้หรือลบข้อมูลบนมือถือได้
|
|
79
|
+
แต่ไม่รับคำสั่ง host-side เช่น `pair`, `connect`, `root`, `install`, `push`, `pull`,
|
|
80
|
+
`forward` หรือ ADB server management กลุ่มเหล่านี้ต้องใช้ owner action หรือ tool เฉพาะ
|
|
81
|
+
ที่มี validation ของตัวเอง
|
|
82
|
+
|
|
83
|
+
DODO serialize คำสั่งต่อ serial เดียวกันข้ามทุก project runtime ใน process เดียว
|
|
84
|
+
ดังนั้น AI หลายตัวทำคนละโปรเจกต์พร้อมกันได้ แต่จะไม่สลับคำสั่งบนมือถือเครื่องเดียวกัน
|
|
85
|
+
|
|
86
|
+
ภาพ, UI text, logcat และไฟล์จากอุปกรณ์เป็นข้อมูลส่วนตัวและ untrusted content
|
|
87
|
+
DODO ไม่บันทึกเนื้อหาเหล่านี้ใน audit log และไม่ถือว่า ADB เป็น sandbox ของอุปกรณ์
|
|
88
|
+
|
|
89
|
+
## รัน DODO บน Android / Termux
|
|
90
|
+
|
|
91
|
+
สถานะ: **ทดลองใช้ (experimental)**
|
|
92
|
+
|
|
93
|
+
DODO โหลด raster backend เมื่อจำเป็น จึงเริ่ม core CLI และ MCP สำหรับ text/code ได้
|
|
94
|
+
โดยไม่บังคับให้ Android มี native Sharp runtime ตั้งแต่ startup การมี Git, ADB และ
|
|
95
|
+
`cloudflared` ใน Termux ช่วยเปิด workflow บางส่วนได้ แต่ยังไม่เท่ากับการผ่าน Android
|
|
96
|
+
platform acceptance ทั้งระบบ
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
pkg update
|
|
100
|
+
pkg install nodejs-lts git ripgrep android-tools
|
|
101
|
+
npm install -g dodo-mcp@latest @img/sharp-wasm32@0.35.4
|
|
26
102
|
dodo --version
|
|
27
103
|
dodo doctor
|
|
28
104
|
dodo setup --check
|
|
29
105
|
```
|
|
30
106
|
|
|
31
|
-
|
|
107
|
+
`@img/sharp-wasm32` เป็น optional image backend หากโหลดไม่ได้ เครื่องมือภาพจะตอบ
|
|
108
|
+
`NOT_SUPPORTED` ส่วน transport และเครื่องมือ coding ต้องไม่ crash การเข้าถึงไฟล์
|
|
109
|
+
จำกัดตาม Android storage permission ของ Termux
|
|
32
110
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
- Cloudflare Tunnel เมื่อ `cloudflared` binary สำหรับเครื่องนั้นผ่าน capability probe
|
|
37
|
-
- เครื่องมือภาพเมื่อ WebAssembly/libvips backend โหลดและ probe ได้จริง
|
|
111
|
+
Termux สามารถเป็น ADB host ผ่าน Wireless debugging ได้เมื่อเจ้าของ pair/connect ด้วย
|
|
112
|
+
ตนเองแล้ว หลังจาก `adb devices -l` เห็น serial การอนุญาตให้ AI ใช้ serial นั้นทำด้วย
|
|
113
|
+
`dodo android allow` เหมือน platform อื่น
|
|
38
114
|
|
|
39
|
-
|
|
115
|
+
### สิ่งที่ยังไม่ประกาศรองรับบน Android host
|
|
40
116
|
|
|
41
|
-
- `dodo setup --yes` แบบติดตั้ง dependencies
|
|
117
|
+
- `dodo setup --yes` แบบติดตั้ง dependencies ทั้งหมดอัตโนมัติ
|
|
42
118
|
- macOS Keychain, Windows Credential Manager หรือ Linux Secret Service integration
|
|
43
119
|
- OS command sandbox สำหรับ Android
|
|
44
120
|
- native desktop capture/control, microphone หรือ system audio
|
|
45
121
|
- Playwright Chromium/browser automation บน Android
|
|
46
|
-
- background survival หลัง
|
|
122
|
+
- background survival หลัง Android หยุด process ของ Termux
|
|
47
123
|
|
|
48
124
|
ฟังก์ชันที่ไม่มี backend ต้องตอบ `NOT_SUPPORTED` ตามจริง DODO จะไม่ลด OAuth,
|
|
49
125
|
project/workspace context, path/secret guard, expected hash, approval หรือ command
|
|
@@ -57,9 +133,10 @@ sandbox policy เพื่อทำให้ probe ผ่าน
|
|
|
57
133
|
node --version
|
|
58
134
|
npm --version
|
|
59
135
|
dodo --version
|
|
60
|
-
|
|
136
|
+
adb version
|
|
137
|
+
adb devices -l
|
|
61
138
|
```
|
|
62
139
|
|
|
63
|
-
ห้ามแนบ Tunnel token, OAuth client secret,
|
|
64
|
-
|
|
65
|
-
|
|
140
|
+
ลบ serial ที่ไม่ต้องการเปิดเผยก่อนแนบ ห้ามแนบ Tunnel token, OAuth client secret,
|
|
141
|
+
API key, Local Config URL ที่มี fragment, state database, screenshot/logcat หรือเนื้อหา
|
|
142
|
+
ไฟล์ส่วนตัว
|
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -33,6 +33,7 @@ HTTP MCP 127.0.0.1:21730 ──► surface registry ──► policy/invocation
|
|
|
33
33
|
├─ changes and jobs
|
|
34
34
|
├─ Git/intelligence/LSP
|
|
35
35
|
├─ assistance/multimodal/workflow
|
|
36
|
+
├─ Android ADB ──► exact-device view/control policy
|
|
36
37
|
├─ Context Engine ──► evidence + L0–L6 cache
|
|
37
38
|
├─ Memory ──► reviewed evidence + stale lifecycle
|
|
38
39
|
├─ Runtime Intelligence ──► durable tasks + bounded evidence
|
|
@@ -260,9 +261,9 @@ gateways Report ผูก revision, dataset, dependency lock, config และ h
|
|
|
260
261
|
|
|
261
262
|
## Tool surfaces
|
|
262
263
|
|
|
263
|
-
- Complete capability catalog
|
|
264
|
-
- Full live catalog ค่าเริ่มต้น
|
|
265
|
-
- Compact catalog
|
|
264
|
+
- Complete capability catalog 138 individual definitions (Core 104 + Advanced Agent Runtime 17 + Sub-agents 4 + Android ADB 13)
|
|
265
|
+
- Full live catalog ค่าเริ่มต้น 134 definitions; owner เปิด Sub-agent MCP exposure แล้วเป็น 138
|
|
266
|
+
- Compact catalog 20 definitions: overview, discover และ gateways รวม `dodo_mobile`
|
|
266
267
|
- Hybrid catalog 49 definitions: compact core ตามด้วย direct tools
|
|
267
268
|
|
|
268
269
|
`schemas/tools.json` เป็น complete full schema ส่วน compact และ hybrid เป็น schema แยก
|
package/docs/COMPATIBILITY.md
CHANGED
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
| macOS | รองรับ coding, HTTP, STDIO, Local Config และ optional native integrations ตาม permission |
|
|
9
9
|
| Linux | รองรับ coding, HTTP, STDIO, Local Config และ optional integrations ตาม desktop/runtime environment |
|
|
10
10
|
| Windows | Deferred — มี candidate code/tests แต่ยังไม่ประกาศ native support จนกว่าจะผ่าน Windows 11 จริง |
|
|
11
|
-
| Android /
|
|
11
|
+
| Android / ADB | ควบคุม physical device/emulator จาก macOS/Linux/Windows/Termux ได้เมื่อ Platform-Tools พร้อมและเจ้าของอนุญาต exact serial |
|
|
12
|
+
| Android / Termux host | Experimental — core CLI และ text/code MCP เริ่มได้โดยไม่บังคับ Sharp; optional integrations ต้องตรวจแยก |
|
|
12
13
|
| MCP HTTP | OAuth protected MCP endpoint ที่ `/mcp` |
|
|
13
14
|
| MCP STDIO | Full surface เป็นค่าเริ่มต้น |
|
|
14
15
|
| Local Config | loopback owner control ที่ 21731; เปิด bounded Remote Config `/config` ผ่าน 21730 ได้ครั้งละไม่เกิน 1 ชั่วโมง |
|
|
@@ -27,13 +28,13 @@ Effectful tools และ jobs ยังทำงานใน active workspace
|
|
|
27
28
|
|
|
28
29
|
## Tool surfaces
|
|
29
30
|
|
|
30
|
-
- HTTP default: Compact
|
|
31
|
-
- STDIO default: Full
|
|
31
|
+
- HTTP default: Compact 20 tools
|
|
32
|
+
- STDIO default: Full 134 tools; เปิด Sub-agent MCP exposure แล้วเป็น 138
|
|
32
33
|
- explicit Hybrid: 49 tools
|
|
33
34
|
|
|
34
|
-
Complete capability schema มี
|
|
35
|
+
Complete capability schema มี 138 operations ค่าเริ่มต้น `exposeSubagentsToMcp=false`
|
|
35
36
|
ซ่อน `subagent_spawn/status/result/control` จาก MCP เท่านั้น หน้าเว็บ Chat & Tasks ยัง
|
|
36
|
-
ใช้ได้ Compact/Hybrid คงจำนวน
|
|
37
|
+
ใช้ได้ Compact/Hybrid คงจำนวน 20/49 tool names แต่กรอง operation enum, instructions
|
|
37
38
|
และ discover index ให้ตรงกับ live runtime หลังเปลี่ยนค่าต้อง restart และให้ client
|
|
38
39
|
โหลด catalog ใหม่
|
|
39
40
|
- explicit override: `--tools compact|full|hybrid`
|
|
@@ -55,6 +56,11 @@ Advanced Agent Runtime ใช้ SQLite และ invocation pipeline เดิ
|
|
|
55
56
|
exec ต้องใช้ explicit argv และ executable ที่ JobManager รองรับ ส่วน browser/desktop/
|
|
56
57
|
media/workflow ขึ้นกับ optional capability ของ platform เช่นเดิม
|
|
57
58
|
|
|
59
|
+
Android ADB family มี 13 operations ใน Full และรวมอยู่ใน `dodo_mobile` ของ Compact
|
|
60
|
+
owner ต้องอนุญาต exact serial แบบ view/control ผ่าน Local Config หรือ `dodo android`
|
|
61
|
+
ก่อน Pair/connect/root และ ADB server management ไม่อยู่ใน MCP catalog ส่วน install/push
|
|
62
|
+
ใช้ expected SHA-256 และ private staging ตาม shared workspace guards
|
|
63
|
+
|
|
58
64
|
## Optional capabilities
|
|
59
65
|
|
|
60
66
|
Desktop, browser, media, speech, LSP และ OS sandbox ต้องตรวจ dependency และ OS permission ด้วย `dodo setup --check` หรือ `dodo doctor` ระบบจะรายงาน `NOT_SUPPORTED` เมื่อ environment ยังไม่พร้อม และจะไม่เปิด permission หรือดาวน์โหลด model โดยอัตโนมัติ
|
|
@@ -301,6 +301,24 @@ Automated catalog/API/Chromium/fresh-package fixtures: **AUTOMATED_PASS**
|
|
|
301
301
|
|
|
302
302
|
เพิ่ม MCP connection ใน client ที่ต้องการ ใช้ OAuth, scan tools และบันทึกจำนวน tools ที่ client แสดงจริง หาก catalog ถูก cache ให้ recreate connection ตาม client instructions
|
|
303
303
|
|
|
304
|
+
## Android / ADB
|
|
305
|
+
|
|
306
|
+
ใช้ fixture device/emulator ที่ไม่มีข้อมูลเจ้าของ แล้วบันทึก serial แบบ redact เมื่อเผยแพร่:
|
|
307
|
+
|
|
308
|
+
1. ตรวจ `dodo setup --check --components adb` และ `dodo android devices`
|
|
309
|
+
2. เปิด view ชั่วคราวให้ exact serial แล้วทดสอบ info, capture, UI, logcat, packages และ bounded file read
|
|
310
|
+
3. ยืนยันว่า serial อื่นและ read-only OAuth token เข้าไม่ได้
|
|
311
|
+
4. เปิด control แล้วทดสอบ tap/key/app launch บน fixture app โดย capture ใหม่หลังทุก action
|
|
312
|
+
5. สร้าง APK/file fixture ใน workspace อ่าน SHA-256 แล้วทดสอบ install/push
|
|
313
|
+
6. เปลี่ยน source หลังอ่าน hash และตรวจว่า `FILE_CHANGED` เกิดก่อน ADB effect
|
|
314
|
+
7. ทดสอบ advanced device-side shell กับ harmless `echo` และยืนยันว่า pair/connect/root ถูกปฏิเสธ
|
|
315
|
+
8. ถอนสิทธิ์ระหว่าง session แล้วตรวจ action ถัดไปถูกปฏิเสธ
|
|
316
|
+
9. ตรวจ Local Config ที่ desktop และ 390px รวม keyboard/focus/error state
|
|
317
|
+
10. ลบ fixture app/file และรัน `dodo android disable`
|
|
318
|
+
|
|
319
|
+
Physical Android device/emulator: **MANUAL_NOT_RUN** จนกว่าจะทำรายการนี้บน hardware
|
|
320
|
+
หรือ emulator จริง Automated FakeAdb ไม่เปลี่ยนสถานะ manual gate
|
|
321
|
+
|
|
304
322
|
## DodoBench และ release gate
|
|
305
323
|
|
|
306
324
|
Automated fixtures: รัน `npm run bench`, `npm run release:gate` บน macOS และ
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# DODO MCP 1.1.0
|
|
2
|
+
|
|
3
|
+
รุ่น 1.1.0 เพิ่ม Android ADB tool family ให้ AI ตรวจและควบคุม physical device หรือ
|
|
4
|
+
emulator ที่เจ้าของอนุญาต พร้อม Local Config และ CLI สำหรับ exact-device permission
|
|
5
|
+
|
|
6
|
+
## ความสามารถใหม่
|
|
7
|
+
|
|
8
|
+
- Full surface เพิ่ม 13 operations: status, device list/info, screenshot, UI hierarchy,
|
|
9
|
+
logcat, packages, bounded file read, input action, app action, APK install, file push
|
|
10
|
+
และ advanced device-side ADB
|
|
11
|
+
- HTTP Compact เพิ่ม `dodo_mobile` gateway ทำให้ Compact มี 20 tools และยังเข้าถึง
|
|
12
|
+
capability definitions ครบ 138 รายการ; Hybrid คง 49 tools
|
|
13
|
+
- `android_capture` คืน MCP PNG image block จริง และสร้าง snapshot อายุ 30 วินาทีที่
|
|
14
|
+
ผูก client/device/policy สำหรับ tap/swipe/text/key
|
|
15
|
+
- หน้า Local Config ค้นหาอุปกรณ์ เลือก exact serial และตั้ง `view`/`control` ได้
|
|
16
|
+
- CLI เพิ่ม `dodo android devices|status|allow|disable`
|
|
17
|
+
- setup เพิ่ม component `adb` และ deep capability probe ที่เรียกเฉพาะ `adb version`
|
|
18
|
+
|
|
19
|
+
## Security
|
|
20
|
+
|
|
21
|
+
- ADB ปิดโดยค่าเริ่มต้น และ trusted/bypass ไม่เปิดสิทธิ์นี้
|
|
22
|
+
- view/control grant ทำได้เฉพาะ local owner; persistent grant จำระดับ installation
|
|
23
|
+
ส่วน temporary grant ผูก workspace/epoch
|
|
24
|
+
- ทุก MCP call ยังผ่าน OAuth, `dodo:exec`, project/workspace context, trust/approval,
|
|
25
|
+
idempotency, audit และ exact serial allowlist
|
|
26
|
+
- input action ใช้ fresh client-bound screenshot; password UI values ถูก redact
|
|
27
|
+
- APK/push source ผ่าน workspace path/secret/symlink/hardlink guards, expected SHA-256
|
|
28
|
+
และ private staging copy ที่ลบหลังจบ
|
|
29
|
+
- ไม่ expose pair/connect/root, ADB server management หรือ port forwarding ให้ MCP
|
|
30
|
+
- device-side shell มีผลด้วยสิทธิ์ Android shell user และไม่ใช่ sandbox
|
|
31
|
+
|
|
32
|
+
## Tool surfaces
|
|
33
|
+
|
|
34
|
+
| Surface | จำนวน |
|
|
35
|
+
|---|---:|
|
|
36
|
+
| Complete Full schema | 138 |
|
|
37
|
+
| Full live default (ซ่อน Sub-agent 4 operations) | 134 |
|
|
38
|
+
| Compact HTTP | 20 |
|
|
39
|
+
| Hybrid | 49 |
|
|
40
|
+
|
|
41
|
+
Generated tools/list-equivalent schema sizes:
|
|
42
|
+
|
|
43
|
+
- Full: 475,008 bytes
|
|
44
|
+
- Compact: 55,373 bytes
|
|
45
|
+
- Hybrid: 125,901 bytes
|
|
46
|
+
|
|
47
|
+
## อัปเดตและเริ่มใช้
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npm install -g dodo-mcp@1.1.0
|
|
51
|
+
dodo setup --check --components adb
|
|
52
|
+
dodo android devices
|
|
53
|
+
dodo android allow --device SERIAL --mode control --persist --yes
|
|
54
|
+
dodo start
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
หลัง restart ให้ remote MCP client refresh/recreate connection ตามพฤติกรรมของ client
|
|
58
|
+
เพื่อรับ `dodo_mobile` และ schema ใหม่ ดูขั้นตอนทั้งหมดใน [ANDROID.md](ANDROID.md)
|
|
59
|
+
|
|
60
|
+
## ผลตรวจรับ
|
|
61
|
+
|
|
62
|
+
- build/typecheck/lint: `AUTOMATED_PASS`
|
|
63
|
+
- core/integration/security/compatibility: `AUTOMATED_PASS` — 698 passed,
|
|
64
|
+
35 skipped, 0 failed
|
|
65
|
+
- packaging: `AUTOMATED_PASS` — 16/16
|
|
66
|
+
- Android focused unit/security/HTTP+OAuth/UI: `AUTOMATED_PASS`
|
|
67
|
+
- production dependency audit: `AUTOMATED_PASS` — 0 vulnerabilities
|
|
68
|
+
- physical Android device/emulator with owner hardware: `MANUAL_NOT_RUN`
|
|
69
|
+
- Android/Termux host platform acceptance: `MANUAL_NOT_RUN`
|
package/docs/RELEASE_NOTES.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# DODO MCP — Release Notes
|
|
2
2
|
|
|
3
|
+
## 1.1.0 — Android device tools through owner-approved ADB
|
|
4
|
+
|
|
5
|
+
- เพิ่ม Full 13 `android_*` operations และ Compact `dodo_mobile` gateway สำหรับ
|
|
6
|
+
device info, screenshot/UI, logcat/packages/files, input/app actions, APK install,
|
|
7
|
+
file push และ bounded device-side ADB
|
|
8
|
+
- เพิ่ม exact-serial `off|view|control` policy ผ่าน CLI และ Local Config โดย persistent
|
|
9
|
+
permission เป็นระดับ installation และ temporary permission ผูก workspace/epoch
|
|
10
|
+
- screenshot คืน MCP image block พร้อม caller-bound snapshot; UI password ถูก redact
|
|
11
|
+
- APK/push บังคับ expected SHA-256 และ private staging copy ภายใต้ shared file guards
|
|
12
|
+
- เพิ่ม `adb` setup component, docs, unit/security/HTTP+OAuth/Chromium/packaging tests
|
|
13
|
+
- Complete Full 138, live Full default 134, Compact 20 และ Hybrid คง 49 tools
|
|
14
|
+
|
|
15
|
+
ติดตั้งด้วย `npm install -g dodo-mcp@1.1.0` แล้ว restart DODO และ refresh/recreate MCP
|
|
16
|
+
connection เพื่อโหลด catalog ใหม่ การ pair/connect และยืนยัน RSA ยังเป็น owner action
|
|
17
|
+
|
|
3
18
|
## 1.0.6 — Android-safe CLI startup
|
|
4
19
|
|
|
5
20
|
- เปลี่ยน raster image backend เป็น lazy load เพื่อให้ core CLI, transport และ
|
package/docs/SECURITY.md
CHANGED
|
@@ -220,6 +220,24 @@ Full จะไม่ register สี่ Sub-agent definitions และ Compact/
|
|
|
220
220
|
ไม่เปลี่ยน trust/profile policy และไม่ข้าม approvals, sandbox, path/secret guards หรือ
|
|
221
221
|
workspace context ทุก call ที่เปิดให้เห็นยังผ่าน invocation pipeline เดิมทั้งหมด
|
|
222
222
|
|
|
223
|
+
## Android / ADB access
|
|
224
|
+
|
|
225
|
+
ADB ปิดโดยค่าเริ่มต้น การมี `adb` หรืออุปกรณ์ที่เชื่อมอยู่ไม่ใช่ permission เจ้าของต้อง
|
|
226
|
+
เลือก `view` หรือ `control` พร้อม exact serial ผ่าน private Local Config/CLI ก่อน
|
|
227
|
+
temporary policy ผูก workspace/epoch ส่วน persistent policy ผูก installation และถอนได้
|
|
228
|
+
ด้วย `dodo android disable` ทุก MCP operation ยังตรวจ live OAuth grant, `dodo:exec`,
|
|
229
|
+
target project/workspace context, trust/approval, idempotency และ audit ตามปกติ
|
|
230
|
+
|
|
231
|
+
การจับภาพสร้าง snapshot อายุสั้นที่ผูก caller, serial และ policy; input action ใช้และ
|
|
232
|
+
invalidate snapshot ก่อน dispatch UI hierarchy ปิดบัง password field แต่ข้อมูลจาก
|
|
233
|
+
อุปกรณ์ทั้งหมดถือเป็น private untrusted content และไม่ถูกเขียนลง audit log
|
|
234
|
+
|
|
235
|
+
`android_install`/`android_push` ตรวจ source ผ่าน shared workspace/secret/link policy,
|
|
236
|
+
บังคับ expected SHA-256 และส่ง private staging copy ให้ ADB Pair/connect/root, server
|
|
237
|
+
management และ port forwarding เป็น owner action นอก MCP `android_adb` รับเฉพาะ
|
|
238
|
+
device-side command families แบบ bounded และใช้ `shell:false` ที่ฝั่ง host อย่างไรก็ตาม
|
|
239
|
+
device-side shell สามารถเปลี่ยนข้อมูลด้วยสิทธิ์ Android shell user ได้และไม่ใช่ sandbox
|
|
240
|
+
|
|
223
241
|
## Cloudflare Tunnel
|
|
224
242
|
|
|
225
243
|
เจ้าของเป็นผู้สร้าง remotely-managed Tunnel, hostname และ DNS DODO ไม่ใช้ Cloudflare
|
package/docs/TEST_REPORT.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# DODO MCP — Test Report
|
|
2
2
|
|
|
3
|
+
## Release 1.1.0 — Android ADB tool family
|
|
4
|
+
|
|
5
|
+
ผล candidate บน macOS วันที่ 2026-09-16:
|
|
6
|
+
|
|
7
|
+
- build: **AUTOMATED_PASS** — Complete Full 138, live Full default 134, Compact 20,
|
|
8
|
+
Hybrid 49 และ config schemas 2 ชุด
|
|
9
|
+
- typecheck/lint: **AUTOMATED_PASS**
|
|
10
|
+
- core/integration/security/compatibility: **AUTOMATED_PASS** — 698 passed /
|
|
11
|
+
35 skipped / 0 failed ใน 103 ไฟล์ที่ผ่านและ 3 ไฟล์ที่ skip
|
|
12
|
+
- packaging: **AUTOMATED_PASS** — 16/16
|
|
13
|
+
- Android focused: **AUTOMATED_PASS** — parser/PNG/UI redaction, exact serial,
|
|
14
|
+
OAuth scope, compact image passthrough, approval binding, idempotency, secret/path
|
|
15
|
+
guards, expected-hash conflict, private staging cleanup, Local Config owner auth,
|
|
16
|
+
real HTTP+OAuth dispatch ของทั้ง 13 operation families และ Chromium UI
|
|
17
|
+
- production dependency audit: **AUTOMATED_PASS** — 0 vulnerabilities
|
|
18
|
+
- physical Android hardware/emulator: **MANUAL_NOT_RUN**
|
|
19
|
+
- Android/Termux host acceptance: **MANUAL_NOT_RUN**
|
|
20
|
+
|
|
21
|
+
Automated ADB ใช้ backend fixture ที่บันทึก argv/ผลลัพธ์จริงของ invocation pipeline
|
|
22
|
+
โดยไม่แตะอุปกรณ์เจ้าของ จึงพิสูจน์ routing/security/content-block contract แต่ไม่แทน
|
|
23
|
+
USB/Wireless debugging, RSA prompt, OEM Android behavior หรือ real device permission
|
|
24
|
+
|
|
3
25
|
## Release 1.0.6 — Android-safe Sharp loading
|
|
4
26
|
|
|
5
27
|
ผล macOS วันที่ 2026-09-16:
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# ADR-049 — Owner-approved Android control through ADB
|
|
2
|
+
|
|
3
|
+
## Decision
|
|
4
|
+
|
|
5
|
+
DODO exposes a bounded Android capability family through an `AndroidService`. The
|
|
6
|
+
native backend invokes a reviewed `adb` executable with `shell:false` and an exact
|
|
7
|
+
owner-approved device serial. Full surface has individual `android_*` operations;
|
|
8
|
+
Compact uses one `dodo_mobile` gateway so the Compact catalog remains at 20 tools.
|
|
9
|
+
|
|
10
|
+
The local owner chooses `off`, `view`, or `control` and an exact serial allowlist.
|
|
11
|
+
A temporary grant is bound to one workspace identity and epoch. A persistent grant
|
|
12
|
+
belongs to the installation and survives project switches until the owner disables it.
|
|
13
|
+
Neither kind grants OAuth scopes, project access, trust, an action approval, or a
|
|
14
|
+
sandbox exception.
|
|
15
|
+
|
|
16
|
+
Pairing, connecting, root mode, ADB server management and port forwarding remain
|
|
17
|
+
owner actions outside the MCP catalog. The advanced operation accepts only
|
|
18
|
+
device-side shell/exec-out/logcat/state/features command families. Dedicated install
|
|
19
|
+
and push operations require a workspace source, shared path/secret/link checks and an
|
|
20
|
+
expected SHA-256. They pass an immutable private staging copy to ADB and remove it
|
|
21
|
+
after the command.
|
|
22
|
+
|
|
23
|
+
Every effectful operation uses the shared invocation and idempotency pipeline. Screen
|
|
24
|
+
input consumes a fresh principal-bound snapshot. Output, time and concurrency are
|
|
25
|
+
bounded; one serial is process-wide serialized across project runtimes so concurrent
|
|
26
|
+
agents cannot interleave device commands. Device output is untrusted content. Audit stores operation metadata and
|
|
27
|
+
digests, never screenshots, UI text, logs or file bytes.
|
|
28
|
+
|
|
29
|
+
## Why
|
|
30
|
+
|
|
31
|
+
ADB offers one portable control plane for physical devices and emulators on macOS,
|
|
32
|
+
Linux, Windows and Termux. Exact device consent prevents a connected phone from
|
|
33
|
+
becoming available merely because the executable exists. Reusing the normal DODO
|
|
34
|
+
scope, workspace and approval checks keeps mobile automation from becoming a second
|
|
35
|
+
authorization system.
|
|
36
|
+
|
|
37
|
+
## Consequences
|
|
38
|
+
|
|
39
|
+
- `dodo:exec` is required even for device observation because connected-device state
|
|
40
|
+
is private host information.
|
|
41
|
+
- ADB runs with the Android shell user's effective permissions and is not a device
|
|
42
|
+
sandbox. Owners must review `control` grants accordingly.
|
|
43
|
+
- Operations whose outcome becomes uncertain are not silently retried.
|
|
44
|
+
- Android/Termux as the DODO host remains experimental independently of the ADB tool
|
|
45
|
+
family.
|
|
46
|
+
|
|
47
|
+
## Evidence
|
|
48
|
+
|
|
49
|
+
- `tests/unit/androidAdb.test.ts`
|
|
50
|
+
- `tests/security/androidAdb.test.ts`
|
|
51
|
+
- `tests/integration/androidAdb.test.ts`
|
|
52
|
+
- generated Full/Compact/Hybrid schema consistency and packaging gates
|
package/docs/adr/README.md
CHANGED
|
@@ -64,3 +64,4 @@ decisions; ADR-011+ resolve implementation ambiguities without reducing security
|
|
|
64
64
|
- [046 — Personal add-and-use mode](046-personal-access-mode.md)
|
|
65
65
|
- [047 — Temporary Remote Config on the tunneled listener](047-temporary-remote-config.md)
|
|
66
66
|
- [048 — Persistent exclusive Local/Tunnel connection mode](048-persistent-connection-mode.md)
|
|
67
|
+
- [049 — Owner-approved Android control through ADB](049-android-adb-control.md)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dodo-mcp",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"author": "Arthittakun",
|
|
5
5
|
"description": "DODO — local-first MCP server with multi-project coding, AI providers, sub-agents, context, memory, media and workflow tools; embedded OAuth and workspace permissions.",
|
|
6
6
|
"type": "module",
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
"docs/RELEASE_1.0.4.md",
|
|
47
47
|
"docs/RELEASE_1.0.5.md",
|
|
48
48
|
"docs/RELEASE_1.0.6.md",
|
|
49
|
+
"docs/RELEASE_1.1.0.md",
|
|
49
50
|
"docs/RELEASE_NOTES.md",
|
|
50
51
|
"docs/SCHEDULES.md",
|
|
51
52
|
"docs/SECURITY.md",
|
|
@@ -140,7 +141,9 @@
|
|
|
140
141
|
"browser-automation",
|
|
141
142
|
"video",
|
|
142
143
|
"speech-to-text",
|
|
143
|
-
"workflow"
|
|
144
|
+
"workflow",
|
|
145
|
+
"android",
|
|
146
|
+
"adb"
|
|
144
147
|
],
|
|
145
148
|
"repository": {
|
|
146
149
|
"type": "git",
|