- Settings → Remote devices → Node: type master|slave (stored in state, beats config role; Restart DSH button under systemd/launchd), origin (read-only: own origin / paired master), 'Master has an auth middleware' toggle - middleware on: a non-DSH answer on the link (login redirect, 401/403, inline HTML) raises auth-required; the UI opens <master>/dsh-remote/signin in a popup, the user signs in to the proxy, one click hands the proxy session cookie back (postMessage, origin-checked, trusted origins only), link retries - edge mode 'cookie': pasted authentik_proxy_… (or a whole Cookie header), rotated proxy cookies persisted back; pair.mjs/install-mac --edge cookie - connectMaster serialised; a failed attempt never clears a finished link - tests: cookie seed/mode, HTML login wall; e2e-signin against a fake proxy
28 lines
865 B
JSON
28 lines
865 B
JSON
{
|
|
"name": "@local/dsh-remote",
|
|
"version": "0.5.0",
|
|
"description": "Claude-Desktop-style remote control for DSH: master/slave link, every device's sessions on every device (/r/<device>/), plugin + config sync with opt-in secrets.",
|
|
"private": true,
|
|
"type": "module",
|
|
"license": "MIT",
|
|
"exports": {
|
|
".": "./index.js",
|
|
"./client": "./client.js",
|
|
"./package.json": "./package.json"
|
|
},
|
|
"files": ["index.js", "client.js", "lib/*.mjs", "cordis.patch.yml", "README.md", "deploy/*"],
|
|
"scripts": { "test": "node --test test/*.test.mjs" },
|
|
"dsh": {
|
|
"bundle": { "patch": "./cordis.patch.yml" },
|
|
"client": {
|
|
"platform": "web",
|
|
"immediately": true,
|
|
"inject": [
|
|
"@deepseek-ai/dsh-client-ui-layout",
|
|
"@deepseek-ai/dsh-client-ui-sidebar",
|
|
"@deepseek-ai/dsh-client-ui-workspace"
|
|
]
|
|
}
|
|
}
|
|
}
|