droidsuite 0.0.0-stage → 1.0.0-beta.8

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/COMMANDS.md ADDED
@@ -0,0 +1,386 @@
1
+ # droidsuite commands
2
+
3
+ <!-- Generated by `node bin/droidsuite.mjs help --markdown`. Edit src/commands.mjs, not this file. -->
4
+
5
+ Run `droidsuite` with nothing after it for an interactive menu. Every command also takes `--help`.
6
+
7
+ | Command | What it does |
8
+ |---|---|
9
+ | [`setup`](#setup) | First-run setup: get adb ready for Wi-Fi debugging, add it to PATH, show next steps |
10
+ | [`serve`](#serve) | Share APKs with your paired phones, push every new build to them, and swap files |
11
+ | [`open`](#open) | Open the DroidSuite page, starting the server if it isn't running (what the desktop icon does) |
12
+ | [`push`](#push) | Send any files to your paired phones (needs droidsuite serve running) |
13
+ | [`send`](#send) | Upload APKs or any files to a phone that has Receive mode open |
14
+ | [`get`](#get) | Download the files a phone offers in Receive mode |
15
+ | [`devices`](#devices) | List phones that have Receive mode open on this network |
16
+ | [`debug`](#debug) | Connect adb to phones with Wireless debugging on (Android Studio, logcat, breakpoints) |
17
+ | [`debug setup`](#debug-setup) | Set up Debug over Wi-Fi step by step: turn on, pair, connect (Android 11+) |
18
+ | [`debug connect`](#debug-connect) | Connect adb to the IP address & Port shown on the phone |
19
+ | [`debug usb`](#debug-usb) | Android 8–10: turn on adb over Wi-Fi through a USB cable, then connect |
20
+ | [`debug doctor`](#debug-doctor) | Explain why Debug over Wi-Fi doesn't connect, and what to do |
21
+ | [`debug install`](#debug-install) | Install adb (Google's Android SDK Platform-Tools) for droidsuite |
22
+ | [`debug path`](#debug-path) | Add adb to your PATH so typing "adb" works in new terminals |
23
+ | [`adb`](#adb) | Run adb, even when it isn't on PATH |
24
+ | [`shortcut`](#shortcut) | Add a "DroidSuite" icon that starts the server and opens its page |
25
+ | [`skill`](#skill) | Teach AI coding agents (Claude Code and others) to use droidsuite, in every project |
26
+ | [`help`](#help) | Show all commands, or the details of one |
27
+
28
+ ## setup
29
+
30
+ First-run setup: get adb ready for Wi-Fi debugging, add it to PATH, show next steps.
31
+
32
+ ```
33
+ droidsuite setup [--yes] [--skip-adb]
34
+ ```
35
+
36
+ | Option | Meaning |
37
+ |---|---|
38
+ | `-y, --yes` | Answer yes to every question (accepts the Platform-Tools license). |
39
+ | `--skip-adb` | Don't check or install adb (only needed for Debug over Wi-Fi). |
40
+
41
+ Examples:
42
+
43
+ ```bash
44
+ droidsuite setup
45
+ ```
46
+
47
+ The install scripts run this for you. Asks before installing anything or changing PATH; with no terminal to answer in, it skips.
48
+
49
+ ## serve
50
+
51
+ Share APKs with your paired phones, push every new build to them, and swap files.
52
+
53
+ ```
54
+ droidsuite serve [folders or APK files...] [options]
55
+ ```
56
+
57
+ | Option | Meaning |
58
+ |---|---|
59
+ | `--inbox <folder>` | Where files sent from phones are saved (default: Downloads/DroidSuite in your home folder). |
60
+ | `--install-via <mode>` | auto (default): when the phone has Wireless debugging connected, builds install through adb, which also works where Android blocks apps from unregistered developers; otherwise through the app. app: always through the app. |
61
+ | `--port <n>` | Port to listen on (default 8765; the next free one if it's busy). |
62
+ | `--host <ip>` | Address to put in the pairing QR code. Repeat for several. Default: this computer's Wi-Fi/LAN addresses. |
63
+ | `--no-mdns` | Don't announce this computer on the network (phones then only use the QR addresses). |
64
+ | `--reset` | Make a new pairing token. Every phone has to scan the QR code again. |
65
+ | `--open` | Open the page in your browser once the server is running. |
66
+ | `--background` | How the DroidSuite icon runs it: no default folder (only the one you chose before), output for a log file. Stop it from the page. Use droidsuite open to start it like the icon does. |
67
+
68
+ Examples:
69
+
70
+ ```bash
71
+ droidsuite serve # inside an Android project: watches app/build/outputs/apk
72
+ droidsuite serve D:\builds\myapp # any folder of APKs
73
+ droidsuite serve app-release.apk --port 9000
74
+ ```
75
+
76
+ Prints a pairing QR code. http://localhost:8765 shows a bigger one, connected phones, builds, a drop zone for sending files, files received from phones, the phone app download, the Debug over Wi-Fi panel, and Phone screen: the phone's screen live, with control (tap, swipe, keys, typing). Phone screen needs a phone connected through adb (Debug over Wi-Fi or USB); it uses Android's own screen recorder and pauses when the tab is hidden. Stop with Ctrl+C.
77
+
78
+ ## open
79
+
80
+ Open the DroidSuite page, starting the server if it isn't running (what the desktop icon does).
81
+
82
+ ```
83
+ droidsuite open
84
+ ```
85
+
86
+ Examples:
87
+
88
+ ```bash
89
+ droidsuite open
90
+ ```
91
+
92
+ Already running on this computer: just opens the page. Otherwise it starts droidsuite serve with the builds folder you chose last (in the menu or on the page), or with none, in the background (no window; its output goes to serve.log in the droidsuite folder), and opens the page. Stop it with Stop on the page.
93
+
94
+ ## push
95
+
96
+ Send any files to your paired phones (needs droidsuite serve running).
97
+
98
+ ```
99
+ droidsuite push <files...> [--port <n>]
100
+ ```
101
+
102
+ | Option | Meaning |
103
+ |---|---|
104
+ | `--port <n>` | Port of the running serve, if you started it with --port (it's found by itself otherwise). |
105
+
106
+ Examples:
107
+
108
+ ```bash
109
+ droidsuite push design.png notes.txt
110
+ ```
111
+
112
+ Every phone with Live on gets the files in Downloads/DroidSuite, with a notification to open them. Phones send files back with Share → DroidSuite.
113
+
114
+ ## send
115
+
116
+ Upload APKs or any files to a phone that has Receive mode open.
117
+
118
+ ```
119
+ droidsuite send <files...> [--to <ip[:port]>] [--pin <123456>] [--save]
120
+ ```
121
+
122
+ | Option | Meaning |
123
+ |---|---|
124
+ | `--to <ip[:port]>` | The address shown on the phone (port 8686 if left out). Default: find the phone automatically. |
125
+ | `--pin <123456>` | The PIN shown on the phone. Not needed when this computer is paired with the phone; asked for otherwise. |
126
+ | `--save` | Save APKs as files instead of installing them. |
127
+
128
+ Examples:
129
+
130
+ ```bash
131
+ droidsuite send app-release.apk
132
+ droidsuite send report.pdf app.apk --to 192.168.1.23 --pin 481027
133
+ droidsuite send app.apk --save
134
+ ```
135
+
136
+ Open Receive on the phone first. Pairing is optional, but a paired computer skips the PIN. .apk, .apks and .zip (split bundles) are installed; other files are saved to Downloads/DroidSuite on the phone.
137
+
138
+ ## get
139
+
140
+ Download the files a phone offers in Receive mode.
141
+
142
+ ```
143
+ droidsuite get [file names...] [--to <ip[:port]>] [--pin <123456>] [--out <folder>]
144
+ ```
145
+
146
+ | Option | Meaning |
147
+ |---|---|
148
+ | `--to <ip[:port]>` | The address shown on the phone (port 8686 if left out). Default: find the phone automatically. |
149
+ | `--pin <123456>` | The PIN shown on the phone. Not needed when this computer is paired with the phone; asked for otherwise. |
150
+ | `--out <folder>` | Where to save the files (default: the current folder). Existing files are never overwritten. |
151
+
152
+ Examples:
153
+
154
+ ```bash
155
+ droidsuite get
156
+ droidsuite get report.pdf --out D:\in
157
+ ```
158
+
159
+ On the phone: Receive → Offer files, or Share → DroidSuite → A browser. With no names, every offered file is downloaded.
160
+
161
+ ## devices
162
+
163
+ List phones that have Receive mode open on this network.
164
+
165
+ ```
166
+ droidsuite devices
167
+ ```
168
+
169
+ Examples:
170
+
171
+ ```bash
172
+ droidsuite devices
173
+ ```
174
+
175
+ ## debug
176
+
177
+ Connect adb to phones with Wireless debugging on (Android Studio, logcat, breakpoints).
178
+
179
+ ```
180
+ droidsuite debug [--ip <x.x.x.x>]
181
+ ```
182
+
183
+ | Option | Meaning |
184
+ |---|---|
185
+ | `--ip <x.x.x.x>` | Only connect to this phone. |
186
+
187
+ Examples:
188
+
189
+ ```bash
190
+ droidsuite debug
191
+ droidsuite debug --ip 192.168.1.23
192
+ ```
193
+
194
+ Finds the phone by itself, whatever port Wireless debugging picked today (also when the network blocks discovery, using the port the DroidSuite app reports). First time? Run "droidsuite debug setup".
195
+
196
+ ## debug setup
197
+
198
+ Set up Debug over Wi-Fi step by step: turn on, pair, connect (Android 11+).
199
+
200
+ ```
201
+ droidsuite debug setup [--code <123456> [<ip:port>]] [--timeout <seconds>]
202
+ ```
203
+
204
+ | Option | Meaning |
205
+ |---|---|
206
+ | `--code <123456>` | Pair with the 6-digit code from "Pair device with pairing code" instead of the QR code. |
207
+ | `<ip:port>` | The IP address & Port shown under that code. Only needed when the network blocks discovery. |
208
+ | `--timeout <seconds>` | How long to wait (default 300). |
209
+
210
+ Examples:
211
+
212
+ ```bash
213
+ droidsuite debug setup
214
+ droidsuite debug setup --code 123456 192.168.1.23:37123
215
+ ```
216
+
217
+ Shows a QR code for "Pair device with QR code". Camera won't scan? Type the 6-digit code while it waits. "droidsuite debug pair" does the same.
218
+
219
+ ## debug connect
220
+
221
+ Connect adb to the IP address & Port shown on the phone.
222
+
223
+ ```
224
+ droidsuite debug connect <ip:port>
225
+ ```
226
+
227
+ Examples:
228
+
229
+ ```bash
230
+ droidsuite debug connect 192.168.1.23:41235
231
+ ```
232
+
233
+ For networks that block discovery. The address is at the top of the phone's Wireless debugging screen, and in DroidSuite → Settings → Debug over Wi-Fi.
234
+
235
+ ## debug usb
236
+
237
+ Android 8–10: turn on adb over Wi-Fi through a USB cable, then connect.
238
+
239
+ ```
240
+ droidsuite debug usb
241
+ ```
242
+
243
+ Examples:
244
+
245
+ ```bash
246
+ droidsuite debug usb
247
+ ```
248
+
249
+ Plug the phone in with USB debugging on, run this, then unplug. Needed again after each phone restart.
250
+
251
+ ## debug doctor
252
+
253
+ Explain why Debug over Wi-Fi doesn't connect, and what to do.
254
+
255
+ ```
256
+ droidsuite debug doctor
257
+ ```
258
+
259
+ Examples:
260
+
261
+ ```bash
262
+ droidsuite debug doctor
263
+ ```
264
+
265
+ Checks adb, what the network shows, and what Live phones report (Android version, Wireless debugging port). Paste its output when reporting a problem.
266
+
267
+ ## debug install
268
+
269
+ Install adb (Google's Android SDK Platform-Tools) for droidsuite.
270
+
271
+ ```
272
+ droidsuite debug install [--yes]
273
+ ```
274
+
275
+ | Option | Meaning |
276
+ |---|---|
277
+ | `-y, --yes` | Accept the Platform-Tools license without asking. |
278
+
279
+ Examples:
280
+
281
+ ```bash
282
+ droidsuite debug install
283
+ ```
284
+
285
+ Installs into %LOCALAPPDATA%\droidsuite (Windows) or ~/.droidsuite. Set DROIDSUITE_HOME to use another folder.
286
+
287
+ ## debug path
288
+
289
+ Add adb to your PATH so typing "adb" works in new terminals.
290
+
291
+ ```
292
+ droidsuite debug path
293
+ ```
294
+
295
+ Examples:
296
+
297
+ ```bash
298
+ droidsuite debug path
299
+ ```
300
+
301
+ Windows: your user PATH only, no admin rights. macOS/Linux: one line in your shell profile. Safe to run twice.
302
+
303
+ ## adb
304
+
305
+ Run adb, even when it isn't on PATH.
306
+
307
+ ```
308
+ droidsuite adb <adb arguments...>
309
+ ```
310
+
311
+ Examples:
312
+
313
+ ```bash
314
+ droidsuite adb devices
315
+ droidsuite adb logcat -s MyApp
316
+ ```
317
+
318
+ ## shortcut
319
+
320
+ Add a "DroidSuite" icon that starts the server and opens its page.
321
+
322
+ ```
323
+ droidsuite shortcut [--desktop]
324
+ ```
325
+
326
+ | Option | Meaning |
327
+ |---|---|
328
+ | `--desktop` | Also put the icon on the desktop. |
329
+
330
+ Examples:
331
+
332
+ ```bash
333
+ droidsuite shortcut --desktop
334
+ ```
335
+
336
+ No terminal window: the icon opens the page in your browser, and the page does everything (Stop is on it too). Windows: "DroidSuite" in the Start menu (and on the desktop), plus "DroidSuite menu" for the text menu. macOS: a "DroidSuite" app on the desktop. Linux: "DroidSuite" in the applications menu. The installers do this for you.
337
+
338
+ ## skill
339
+
340
+ Teach AI coding agents (Claude Code and others) to use droidsuite, in every project.
341
+
342
+ ```
343
+ droidsuite skill [--project | --dir <folder>] [--print]
344
+ ```
345
+
346
+ | Option | Meaning |
347
+ |---|---|
348
+ | `--project` | Install only into the current project (.claude/skills) instead of for every project on this computer. |
349
+ | `--global` | Every project on this computer (~/.claude/skills). This is the default. |
350
+ | `--dir <folder>` | Install into another skills folder, for agents that read skills from elsewhere. |
351
+ | `--print` | Only print where the bundled skill is. |
352
+
353
+ Examples:
354
+
355
+ ```bash
356
+ droidsuite skill # every project on this computer: ~/.claude/skills/droidsuite
357
+ droidsuite skill --project # only this project: .claude/skills/droidsuite (commit it to share)
358
+ ```
359
+
360
+ The skill shows an agent how to install builds on your phone, read logcat and screenshots over Wi-Fi, and move files, and which steps need you (pairing, Allow, PIN). Run it again after updating droidsuite.
361
+
362
+ ## help
363
+
364
+ Show all commands, or the details of one.
365
+
366
+ ```
367
+ droidsuite help [command]
368
+ ```
369
+
370
+ Examples:
371
+
372
+ ```bash
373
+ droidsuite help
374
+ droidsuite help serve
375
+ droidsuite serve --help
376
+ ```
377
+
378
+ ## Environment variables
379
+
380
+ | Variable | Meaning |
381
+ |---|---|
382
+ | `DROIDSUITE_HOME` | Folder for droidsuite's own adb copy (default %LOCALAPPDATA%\droidsuite or ~/.droidsuite). |
383
+ | `DROIDSUITE_CONFIG` | Pairing identity file (default ~/.droidsuite.json). |
384
+ | `ANDROID_HOME` | Android SDK folder; its adb is used first when present. |
385
+ | `NO_COLOR` | Turn off colours in the output. |
386
+
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Mahmoud Helmy
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,38 @@
1
- # Temporary Holding Version
1
+ # droidsuite
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Command-line companion for the **DroidSuite** Android app. Install APKs on your phone over Wi-Fi (pair once with a QR code), swap any files with it, and debug it from Android Studio without a cable.
4
+
5
+ Install (also offers to set up adb for Wi-Fi debugging):
6
+
7
+ ```bash
8
+ # Windows: Win+R (or Command Prompt / PowerShell), paste, Enter
9
+ powershell -NoExit -ExecutionPolicy Bypass -Command "irm https://cdn.jsdelivr.net/npm/droidsuite/install.ps1 | iex"
10
+ # macOS / Linux
11
+ curl -fsSL https://cdn.jsdelivr.net/npm/droidsuite/install.sh | sh
12
+ # or, with Node.js 20+ already installed
13
+ npm install -g droidsuite && droidsuite setup
14
+ ```
15
+
16
+ ```bash
17
+ droidsuite serve # inside an Android project: shows a QR code and pushes every new build
18
+ droidsuite push design.png # any file to your paired phone (while serve runs); Share → DroidSuite sends back
19
+ droidsuite send app.apk # upload to a phone that has Receive mode open (other files are saved)
20
+ droidsuite get # download the files a phone in Receive mode offers
21
+ droidsuite devices # list phones in Receive mode
22
+ droidsuite debug setup # once: turn on, pair (QR or 6-digit code), connect (Android 11+)
23
+ droidsuite debug # connect adb over Wi-Fi, for Android Studio and logcat
24
+ droidsuite debug connect <ip:port> # when the network blocks discovery
25
+ droidsuite debug usb # Android 8–10: USB once, then Wi-Fi
26
+ droidsuite debug doctor # why it doesn't connect, and what to do
27
+ droidsuite debug install # install adb (Google platform-tools) if you don't have it
28
+ droidsuite debug path # add adb to your PATH so typing adb works in new terminals
29
+ droidsuite adb devices # run adb even when it isn't on PATH
30
+ # http://localhost:8765 (while serve runs): see and use the phone's screen live
31
+ droidsuite skill # teach AI coding agents (Claude Code…) to use all of the above, in every project
32
+ ```
33
+
34
+ Type `droidsuite` on its own for a menu. All commands and options: [COMMANDS.md](https://cdn.jsdelivr.net/npm/droidsuite/COMMANDS.md) or `droidsuite help <command>`.
35
+
36
+ The phone app comes with it: run `droidsuite serve` and scan **Get the phone app** at http://localhost:8765 with your phone's camera.
37
+
38
+ <sub>Made by Mahmoud Helmy · MIT</sub>
Binary file
Binary file
Binary file
Binary file