@devicelink/dlink 0.2.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/.env.production +8 -0
- package/LICENSE +58 -0
- package/README.md +68 -0
- package/index.js +8134 -0
- package/index.js.map +7 -0
- package/package.json +44 -0
package/.env.production
ADDED
package/LICENSE
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
DeviceLink End User License Agreement (EULA)
|
|
2
|
+
Copyright (c) 2026 DeviceLink. All rights reserved.
|
|
3
|
+
|
|
4
|
+
1. GRANT OF LICENSE
|
|
5
|
+
This software ("Software") is licensed, not sold. DeviceLink grants you a
|
|
6
|
+
limited, non-exclusive, non-transferable, revocable license to install and
|
|
7
|
+
use the Software solely for the purpose of connecting your devices to the
|
|
8
|
+
DeviceLink platform in accordance with these terms.
|
|
9
|
+
|
|
10
|
+
2. RESTRICTIONS
|
|
11
|
+
You may NOT:
|
|
12
|
+
(a) Copy, modify, adapt, or create derivative works of the Software;
|
|
13
|
+
(b) Reverse engineer, decompile, disassemble, or otherwise attempt to
|
|
14
|
+
derive the source code of the Software;
|
|
15
|
+
(c) Distribute, sublicense, lease, rent, or lend the Software to any
|
|
16
|
+
third party;
|
|
17
|
+
(d) Remove or alter any proprietary notices, labels, or marks on the
|
|
18
|
+
Software;
|
|
19
|
+
(e) Use the Software for any purpose other than connecting your devices
|
|
20
|
+
to the DeviceLink platform.
|
|
21
|
+
|
|
22
|
+
3. DATA HANDLING
|
|
23
|
+
The Software facilitates real-time access to files you explicitly share.
|
|
24
|
+
File contents are streamed between your device and authorized clients and
|
|
25
|
+
are NOT stored on DeviceLink servers. Device identifiers and usage metadata
|
|
26
|
+
are collected as described in the DeviceLink Privacy Policy at
|
|
27
|
+
https://devicelink.ai/privacy.
|
|
28
|
+
|
|
29
|
+
4. DISCLAIMER OF WARRANTIES
|
|
30
|
+
THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
31
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
32
|
+
FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. DEVICELINK DOES NOT
|
|
33
|
+
WARRANT THAT THE SOFTWARE WILL BE UNINTERRUPTED, ERROR-FREE, OR SECURE.
|
|
34
|
+
|
|
35
|
+
5. LIMITATION OF LIABILITY
|
|
36
|
+
IN NO EVENT SHALL DEVICELINK BE LIABLE FOR ANY INDIRECT, INCIDENTAL,
|
|
37
|
+
SPECIAL, CONSEQUENTIAL, OR PUNITIVE DAMAGES, INCLUDING BUT NOT LIMITED TO
|
|
38
|
+
LOSS OF PROFITS, DATA, OR USE, ARISING OUT OF OR RELATED TO THIS LICENSE
|
|
39
|
+
OR THE SOFTWARE, REGARDLESS OF THE THEORY OF LIABILITY. DEVICELINK'S TOTAL
|
|
40
|
+
LIABILITY SHALL NOT EXCEED THE AMOUNT YOU PAID FOR THE SOFTWARE IN THE
|
|
41
|
+
TWELVE (12) MONTHS PRECEDING THE CLAIM.
|
|
42
|
+
|
|
43
|
+
6. TERMINATION
|
|
44
|
+
This license is effective until terminated. DeviceLink may terminate this
|
|
45
|
+
license at any time if you breach any of its terms. Upon termination, you
|
|
46
|
+
must cease all use of the Software and delete all copies.
|
|
47
|
+
|
|
48
|
+
7. UPDATES
|
|
49
|
+
DeviceLink may update the Software at any time. Continued use after an
|
|
50
|
+
update constitutes acceptance of any revised terms.
|
|
51
|
+
|
|
52
|
+
8. GOVERNING LAW
|
|
53
|
+
This agreement shall be governed by and construed in accordance with
|
|
54
|
+
applicable law, without regard to conflict of law principles.
|
|
55
|
+
|
|
56
|
+
9. CONTACT
|
|
57
|
+
For licensing inquiries: support@devicelink.ai
|
|
58
|
+
For privacy inquiries: privacy@devicelink.ai
|
package/README.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# @devicelink/dlink
|
|
2
|
+
|
|
3
|
+
DeviceLink CLI agent — secure, local-first device access with explicit user consent.
|
|
4
|
+
|
|
5
|
+
Share files from your machine with AI assistants (ChatGPT, Claude, etc.) through the Model Context Protocol (MCP). Your files never leave your device — they're streamed in real-time with your explicit permission.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -g @devicelink/dlink
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Sign in with your DeviceLink account
|
|
17
|
+
dlink signin
|
|
18
|
+
|
|
19
|
+
# Share a directory
|
|
20
|
+
dlink share /path/to/project
|
|
21
|
+
|
|
22
|
+
# That's it — ChatGPT can now access your shared files via MCP
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Commands
|
|
26
|
+
|
|
27
|
+
| Command | Description |
|
|
28
|
+
|---------|-------------|
|
|
29
|
+
| `dlink signin` | Authenticate with DeviceLink |
|
|
30
|
+
| `dlink signout` | Sign out and revoke device access |
|
|
31
|
+
| `dlink share <path>` | Share a directory with MCP clients |
|
|
32
|
+
| `dlink status` | Show connection status |
|
|
33
|
+
| `dlink debug on/off` | Toggle debug logging |
|
|
34
|
+
|
|
35
|
+
## How It Works
|
|
36
|
+
|
|
37
|
+
1. **Sign in** — authenticate via Google OAuth using a device code flow
|
|
38
|
+
2. **Share directories** — choose which folders to make available
|
|
39
|
+
3. **Connect** — the agent maintains a secure WebSocket connection to the DeviceLink bridge
|
|
40
|
+
4. **Use** — AI assistants call tools (list files, read files, search, grep) through MCP
|
|
41
|
+
5. **Control** — you see every tool call in real-time and can disconnect anytime
|
|
42
|
+
|
|
43
|
+
## Security
|
|
44
|
+
|
|
45
|
+
- **Files never stored on servers** — streamed in real-time only
|
|
46
|
+
- **Ed25519 proof-of-possession** — device identity is cryptographically verified
|
|
47
|
+
- **Encrypted credential storage** — AES-256-GCM with machine-bound keys
|
|
48
|
+
- **Shared directory boundaries** — path traversal protection, symlink escape prevention
|
|
49
|
+
- **Short-lived tokens** — access tokens expire in 30 seconds, auto-refreshed
|
|
50
|
+
|
|
51
|
+
## Configuration
|
|
52
|
+
|
|
53
|
+
Environment variables (optional):
|
|
54
|
+
|
|
55
|
+
| Variable | Default | Description |
|
|
56
|
+
|----------|---------|-------------|
|
|
57
|
+
| `DLINK_CONTROL_URL` | `https://api.devicelink.ai` | Controller API URL |
|
|
58
|
+
| `DLINK_BRIDGE_URL` | `wss://api.devicelink.ai/ws` | Bridge WebSocket URL |
|
|
59
|
+
| `DLINK_DEBUG` | `false` | Enable debug logging |
|
|
60
|
+
|
|
61
|
+
## Requirements
|
|
62
|
+
|
|
63
|
+
- Node.js 20 or later
|
|
64
|
+
- Internet connection for authentication and MCP bridge
|
|
65
|
+
|
|
66
|
+
## License
|
|
67
|
+
|
|
68
|
+
Proprietary. Copyright (c) 2026 DeviceLink. All rights reserved.
|