frely-cli 0.23.15 → 0.23.17
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 +1 -1
- package/dist/agent-help.d.ts +14 -0
- package/dist/agent-help.js +126 -2
- package/dist/agent-help.js.map +1 -1
- package/dist/credential-file.js +5 -4
- package/dist/credential-file.js.map +1 -1
- package/dist/index.js +38 -8
- package/dist/index.js.map +1 -1
- package/dist/link-claim.d.ts +18 -0
- package/dist/link-claim.js +43 -0
- package/dist/link-claim.js.map +1 -0
- package/dist/mcp-authorization.d.ts +16 -0
- package/dist/mcp-authorization.js +76 -0
- package/dist/mcp-authorization.js.map +1 -1
- package/dist/mcp-command.js +1 -1
- package/dist/mcp-command.js.map +1 -1
- package/dist/service.d.ts +4 -1
- package/dist/service.js +4 -3
- package/dist/service.js.map +1 -1
- package/dist/skill/entry.d.ts +1 -1
- package/dist/skill/entry.js +1 -1
- package/dist/update/installation.js +1 -1
- package/dist/update/installation.js.map +1 -1
- package/package.json +1 -1
- package/skills/frely-cli/SKILL.md +2 -2
package/README.md
CHANGED
|
@@ -72,7 +72,7 @@ frely skill install --host <claude-code|codex|pi|generic>
|
|
|
72
72
|
| `frely tunnel <host>:<port>` | Inside a sandboxed command: listen on `127.0.0.1` and forward TCP connections to `host:port` through the sandbox, for database and redis clients. `--local-port N` picks the local port. |
|
|
73
73
|
| `frely uninstall` | Remove Frely from this computer (lists everything first). |
|
|
74
74
|
|
|
75
|
-
All commands and options: [command reference](https://cli.frely.cloud/docs/help/commands/). `frely help --agent --json` prints the full machine-readable contract.
|
|
75
|
+
All commands and options: [command reference](https://cli.frely.cloud/docs/help/commands/). `frely help --agent --json` prints the full machine-readable contract; add `--summary` for a short grouped index, or a command id or group (for example `agent.run`, `agent`) for one command family with examples.
|
|
76
76
|
|
|
77
77
|
## Use with FrelyMCP
|
|
78
78
|
|
package/dist/agent-help.d.ts
CHANGED
|
@@ -871,6 +871,20 @@ export declare function agentHelp(): {
|
|
|
871
871
|
readonly purpose: "Access Frely Network (preview) using its separate setup and credentials.";
|
|
872
872
|
}];
|
|
873
873
|
};
|
|
874
|
+
export type AgentHelpView = {
|
|
875
|
+
readonly summary?: boolean;
|
|
876
|
+
readonly all?: boolean;
|
|
877
|
+
readonly name?: string;
|
|
878
|
+
};
|
|
879
|
+
/**
|
|
880
|
+
* `agentHelp()` is the full contract. `{ summary: true }` is a short index (one `id [effect] summary` line per command, grouped) for choosing a command;
|
|
881
|
+
* `{ name }` returns the full entries of one command (`agent.run`) or group (`agent`, `agents`, `link`) with examples and
|
|
882
|
+
* confirmation notes. An unknown name returns `{ ok: false }` with the names that exist.
|
|
883
|
+
*/
|
|
884
|
+
export declare function agentHelpView(view?: AgentHelpView): {
|
|
885
|
+
readonly ok: boolean;
|
|
886
|
+
readonly value: unknown;
|
|
887
|
+
};
|
|
874
888
|
export declare function cliUsage(): string;
|
|
875
889
|
/**
|
|
876
890
|
* A command group without a direct action (`frely link workspace`, `frely agent`,
|
package/dist/agent-help.js
CHANGED
|
@@ -96,6 +96,130 @@ export function agentHelp() {
|
|
|
96
96
|
commands: COMMANDS,
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
|
+
/** Group key per command id, in the order the summary lists them. Keys are what `frely help --agent --json <group>` accepts. */
|
|
100
|
+
const AGENT_GROUPS = [
|
|
101
|
+
{ key: "account", title: "Account and CLI", test: (id) => ["login", "logout", "uninstall", "doctor", "update", "help"].includes(id) },
|
|
102
|
+
{ key: "api", title: "Account API and remote MCP products", test: (id) => id === "api" || id.startsWith("remote.") },
|
|
103
|
+
{ key: "items", title: "Marketplace items", test: (id) => id.startsWith("item.") },
|
|
104
|
+
{ key: "skills", title: "Skills", test: (id) => id.startsWith("skill.") },
|
|
105
|
+
{ key: "agents", title: "Agents", test: (id) => id.startsWith("agent.") },
|
|
106
|
+
{ key: "devices", title: "Control your devices", test: (id) => ["devices", "run", "ps", "logs", "kill", "read", "ls", "grep", "edit", "permission", "tools", "call"].includes(id) },
|
|
107
|
+
{ key: "link", title: "Let others control this computer", test: (id) => id.startsWith("link.") },
|
|
108
|
+
{ key: "providers", title: "Providers", test: (id) => id.startsWith("provider.") },
|
|
109
|
+
{ key: "share", title: "Share", test: (id) => id === "share" || id.startsWith("service.") },
|
|
110
|
+
{ key: "sandbox", title: "Command sandbox", test: (id) => id === "tunnel" || id === "sandbox.proxy" },
|
|
111
|
+
{ key: "app", title: "Frely App", test: (id) => id.startsWith("app.") },
|
|
112
|
+
{ key: "computer", title: "Computer use", test: (id) => id.startsWith("computer.") && id !== "computer.mcp" },
|
|
113
|
+
];
|
|
114
|
+
/** Commands meant for services, not for an Agent to pick; listed in the summary only with --all. */
|
|
115
|
+
const INTERNAL_IDS = new Set(["mcp.stdio", "mcp.serve", "computer.mcp", "network"]);
|
|
116
|
+
/** Examples and confirmation notes, shown only in the detail view. Keep to commands an Agent runs often. */
|
|
117
|
+
const DETAILS = {
|
|
118
|
+
login: {
|
|
119
|
+
examples: ["frely login --email user@example.com", "frely login --code 123456"],
|
|
120
|
+
confirm: "Tell the user before asking for the 6-digit code; never add --mcp unless the user is registering for the first time.",
|
|
121
|
+
},
|
|
122
|
+
api: {
|
|
123
|
+
examples: ["frely api list", "frely api describe credit_products.list", "frely api call credit_products.list --json '{}'", "frely api call <tool> --json '{...}' --wait"],
|
|
124
|
+
confirm: "Ask the user before any call that spends Credit, buys something or changes credentials. A call that needs the owner's approval prints a link: show it to the user, and use --wait in the foreground.",
|
|
125
|
+
},
|
|
126
|
+
"agent.run": {
|
|
127
|
+
examples: ["printf '%s' \"$REQUEST\" | frely agent run alice/reviewer --input-stdin --json", "frely agent run alice/reviewer --input 'summarize this repo' --read --json", "frely agent result --last --wait"],
|
|
128
|
+
confirm: "Usage may be billed; tell the user before adding --read. On payment_required do not ask the user to sign in again: offer a Credit top-up through frely api.",
|
|
129
|
+
},
|
|
130
|
+
"item.install": {
|
|
131
|
+
examples: ["frely item install alice/skill-name --host claude-code --json", "frely item install alice/prompt-name --scope project --dir ./my-project"],
|
|
132
|
+
confirm: "A paid part needs a pass; the command prints how to buy one. If the output says Frely has not scanned a Skill, read every file in it before use.",
|
|
133
|
+
},
|
|
134
|
+
"agent.install": { examples: ["frely agent install alice/reviewer --host codex --json"] },
|
|
135
|
+
"link.on": {
|
|
136
|
+
examples: ["frely link on", "frely link on --workspace ~/projects --days 30 --no-browser"],
|
|
137
|
+
confirm: "Opens this computer to remote clients after a browser approval by the owner; do it only when the user asked for remote control.",
|
|
138
|
+
},
|
|
139
|
+
permission: {
|
|
140
|
+
examples: ["frely permission request my-mac --resource ssh --reason 'deploy' --command 'ssh host'", "frely permission wait K7 --then 'ssh host'"],
|
|
141
|
+
confirm: "The owner approves on the web. Exit code 3 prints the approval link: show it to the user, then run `permission wait` in the background.",
|
|
142
|
+
},
|
|
143
|
+
share: {
|
|
144
|
+
examples: ["frely share 3000 --ttl 2"],
|
|
145
|
+
confirm: "Publishes a local web service on the Internet; the owner approves in the browser each time. Tell the user the link is public.",
|
|
146
|
+
},
|
|
147
|
+
};
|
|
148
|
+
function groupOf(command) {
|
|
149
|
+
if (INTERNAL_IDS.has(command.id))
|
|
150
|
+
return "internal";
|
|
151
|
+
return AGENT_GROUPS.find((group) => group.test(command.id))?.key ?? "internal";
|
|
152
|
+
}
|
|
153
|
+
/** One-line summaries where the first sentence of `purpose` does not read well alone. */
|
|
154
|
+
const SUMMARY_OVERRIDES = {
|
|
155
|
+
logout: "Remove login and stop the MCP background service",
|
|
156
|
+
"item.update": "List installed items with newer versions, or update one folder",
|
|
157
|
+
"item.run": "Run an encrypted paid script of an installed item in the sandbox",
|
|
158
|
+
"item.install": "Install a Prompt or Skill from the marketplace",
|
|
159
|
+
"agent.run": "Send the user's request to an installed Agent (may be billed)",
|
|
160
|
+
"agent.local.add": "Download an Agent's repository to run locally",
|
|
161
|
+
"link.on": "Enable, renew or start remote control of this computer; prints the MCP URL",
|
|
162
|
+
"link.auto-update": "Show or set automatic updates of the background service",
|
|
163
|
+
"sandbox.proxy": "Show, save or remove the proxy the command sandbox uses",
|
|
164
|
+
"app.update": "Update the Frely App",
|
|
165
|
+
doctor: "Show sign-in, installation, update and connection status",
|
|
166
|
+
"remote.tools": "List the tools of a marketplace remote MCP, with input schemas",
|
|
167
|
+
"item.trust": "Mark an installed item as reviewed, or check it with --check",
|
|
168
|
+
"agent.status": "Inspect an installed Agent Skill and its Key budget",
|
|
169
|
+
"agent.local.list": "List local Agents, whether running, and approved sites",
|
|
170
|
+
edit: "Write a device file from a local file or a JSON patch",
|
|
171
|
+
"link.local.list": "List local MCP servers that remote clients could use",
|
|
172
|
+
"app.status": "Show whether the Frely App is installed and running",
|
|
173
|
+
"computer.status": "Show whether computer use is blocked and its runtime state",
|
|
174
|
+
"computer.enable": "Lift the local computer-use block and pre-install its runtime",
|
|
175
|
+
"link.workspace.add": "Add a workspace directory for this device",
|
|
176
|
+
};
|
|
177
|
+
function firstSentence(text, max = 72) {
|
|
178
|
+
const sentence = (text.split(/\.\s|\s\(|;\s|:\s/u)[0] ?? text).replace(/[.:;,]$/u, "");
|
|
179
|
+
if (sentence.length <= max)
|
|
180
|
+
return sentence;
|
|
181
|
+
const cut = sentence.slice(0, max - 1);
|
|
182
|
+
return `${cut.slice(0, Math.max(cut.lastIndexOf(" "), 40))}…`;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* `agentHelp()` is the full contract. `{ summary: true }` is a short index (one `id [effect] summary` line per command, grouped) for choosing a command;
|
|
186
|
+
* `{ name }` returns the full entries of one command (`agent.run`) or group (`agent`, `agents`, `link`) with examples and
|
|
187
|
+
* confirmation notes. An unknown name returns `{ ok: false }` with the names that exist.
|
|
188
|
+
*/
|
|
189
|
+
export function agentHelpView(view = {}) {
|
|
190
|
+
const base = { schemaVersion: "frely.cli.agent-help.v1", cliVersion: VERSION };
|
|
191
|
+
if (view.name !== undefined) {
|
|
192
|
+
const name = view.name;
|
|
193
|
+
const matches = COMMANDS.filter((command) => command.id === name || command.id.startsWith(`${name}.`) || groupOf(command) === name);
|
|
194
|
+
if (matches.length === 0) {
|
|
195
|
+
const known = [...AGENT_GROUPS.map((group) => group.key), "internal"];
|
|
196
|
+
return { ok: false, value: { ok: false, error: `Unknown command or group: ${name}`, known, hint: "frely help --agent --json --summary" } };
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
ok: true,
|
|
200
|
+
value: { ...base, query: name, commands: matches.map((command) => ({ ...command, group: groupOf(command), ...DETAILS[command.id] })) },
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
if (view.summary === true) {
|
|
204
|
+
const keys = view.all === true ? [...AGENT_GROUPS.map((group) => group.key), "internal"] : AGENT_GROUPS.map((group) => group.key);
|
|
205
|
+
const groups = keys.map((key) => ({
|
|
206
|
+
key,
|
|
207
|
+
title: AGENT_GROUPS.find((group) => group.key === key)?.title ?? "Internal (services)",
|
|
208
|
+
commands: COMMANDS.filter((command) => groupOf(command) === key).map((command) => `${command.id} [${command.effect}] ${SUMMARY_OVERRIDES[command.id] ?? firstSentence(command.purpose)}`),
|
|
209
|
+
})).filter((group) => group.commands.length > 0);
|
|
210
|
+
return {
|
|
211
|
+
ok: true,
|
|
212
|
+
value: {
|
|
213
|
+
...base,
|
|
214
|
+
view: "summary",
|
|
215
|
+
instructions: agentHelp().instructions,
|
|
216
|
+
groups,
|
|
217
|
+
detail: "frely help --agent --json <command id or group key> prints full usage, examples and confirmation notes; without a name and --summary it prints everything.",
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
return { ok: true, value: agentHelp() };
|
|
222
|
+
}
|
|
99
223
|
const GROUPS = [
|
|
100
224
|
{ title: "Control your devices", ids: ["devices", "run", "ps", "logs", "kill", "read", "ls", "grep", "edit", "permission", "tools", "call"] },
|
|
101
225
|
{ title: "Account", ids: ["login", "logout", "uninstall", "doctor", "update"] },
|
|
@@ -133,7 +257,7 @@ const SHORT_USAGE = {
|
|
|
133
257
|
"link.on": "frely link on [--workspace <path>] [--days 1..365] [--no-browser] [--json]",
|
|
134
258
|
"link.workspace": "frely link workspace list|add <path>|remove <path>",
|
|
135
259
|
"link.local": "frely link local list|add <name> (--url <address>|-- <command>)|remove <name>",
|
|
136
|
-
"link.lifecycle": "frely link status|stop|
|
|
260
|
+
"link.lifecycle": "frely link status|stop|off",
|
|
137
261
|
"skill.install": "frely skill install [--host <host>]",
|
|
138
262
|
"item.install": "frely item install <username/name[@version]> [--host <host>]",
|
|
139
263
|
"item.update": "frely item update [<folder>]",
|
|
@@ -173,7 +297,7 @@ export function cliUsage() {
|
|
|
173
297
|
for (const id of group.ids)
|
|
174
298
|
lines.push(` ${SHORT_USAGE[id] ?? id}\n`);
|
|
175
299
|
}
|
|
176
|
-
lines.push("\nFull flags and the machine-readable contract: frely help --agent --json\n");
|
|
300
|
+
lines.push("\nFull flags and the machine-readable contract: frely help --agent --json [--summary | <command or group>]\n");
|
|
177
301
|
return lines.join("");
|
|
178
302
|
}
|
|
179
303
|
/**
|
package/dist/agent-help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-help.js","sourceRoot":"","sources":["../src/agent-help.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-help.js","sourceRoot":"","sources":["../src/agent-help.ts"],"names":[],"mappings":"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"}
|
package/dist/credential-file.js
CHANGED
|
@@ -141,19 +141,20 @@ export async function ensureCredentialDirectory(path, create) {
|
|
|
141
141
|
return false;
|
|
142
142
|
await mkdir(dirname(path), { recursive: true, mode: 0o700 });
|
|
143
143
|
const parent = await lstat(dirname(path));
|
|
144
|
-
assertPrivate(parent, true);
|
|
144
|
+
assertPrivate(parent, true, true);
|
|
145
145
|
await mkdir(path, { mode: 0o700 }).catch((error) => { if (!hasCode(error, "EEXIST"))
|
|
146
146
|
throw error; });
|
|
147
147
|
info = await lstat(path);
|
|
148
148
|
}
|
|
149
|
-
assertPrivate(await lstat(dirname(path)), true);
|
|
149
|
+
assertPrivate(await lstat(dirname(path)), true, true);
|
|
150
150
|
assertPrivate(info, true);
|
|
151
151
|
return true;
|
|
152
152
|
}
|
|
153
|
-
|
|
153
|
+
/** `parent`: the folder that holds the vault folder (for example ~/.config) only has to be owned by the user and closed to group/other writes; it is commonly 0755. The vault folder and its files stay owner-only. */
|
|
154
|
+
function assertPrivate(info, directory, parent = false) {
|
|
154
155
|
if (info.isSymbolicLink() || (directory ? !info.isDirectory() : !info.isFile()) || (!directory && info.nlink !== 1))
|
|
155
156
|
throw new Error("Credential vault paths must be regular owner-controlled files and directories, not links.");
|
|
156
|
-
if (process.platform !== "win32" && ((info.mode & 0o077) !== 0 || (process.getuid && info.uid !== process.getuid())))
|
|
157
|
+
if (process.platform !== "win32" && ((info.mode & (parent ? 0o022 : 0o077)) !== 0 || (process.getuid && info.uid !== process.getuid())))
|
|
157
158
|
throw new Error("Credential vault permissions are unsafe. Use owner-only directories (0700) and files (0600).");
|
|
158
159
|
}
|
|
159
160
|
export async function readPrivateFile(path) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-file.js","sourceRoot":"","sources":["../src/credential-file.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"credential-file.js","sourceRoot":"","sources":["../src/credential-file.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { formatApprovalCode } from "./approval-code.js";
|
|
3
3
|
import { applyDataDir, activeDataDir } from "./data-dir.js";
|
|
4
4
|
import { update } from "./update/update.js";
|
|
5
|
-
import { requireMcpAuthorization, inspectMcpMetadata, inspectMcpMetadataOrQuarantine, revokeMcpAuthorization, generateMcpKey, parseMcpDays, MCP_DEFAULT_DAYS } from "./mcp-authorization.js";
|
|
5
|
+
import { requireMcpAuthorization, inspectMcpMetadata, inspectMcpMetadataOrQuarantine, revokeMcpAuthorization, lockLinkOnServer, generateMcpKey, parseMcpDays, MCP_DEFAULT_DAYS } from "./mcp-authorization.js";
|
|
6
6
|
import { chmod, readFile, realpath, stat, writeFile } from "node:fs/promises";
|
|
7
7
|
import { homedir } from "node:os";
|
|
8
8
|
import { sshProxyConnect } from "./runtime/ssh-proxy.js";
|
|
@@ -41,9 +41,10 @@ import { detectSandboxBackend } from "./runtime/sandbox.js";
|
|
|
41
41
|
import { LocalMcpHub, loadManualEntries } from "./runtime/local-mcp.js";
|
|
42
42
|
import { reportedWorkspaces } from "./runtime/workspace-registry.js";
|
|
43
43
|
import { VERSION } from "./version.js";
|
|
44
|
-
import {
|
|
44
|
+
import { agentHelpView, cliUsage, linkUsage, subcommandUsage } from "./agent-help.js";
|
|
45
45
|
import { ensureMcpAuthorization, grantInactive, mcpStartLogin, normalizeLinkArgs, startMcp, takeInstallToken } from "./mcp-command.js";
|
|
46
46
|
import { remoteLocked, remoteState, setRemoteLock } from "./remote-lock.js";
|
|
47
|
+
import { watchLinkClaim } from "./link-claim.js";
|
|
47
48
|
import { getKeyBudget, KeyBudgetError, publicKeyBudgetError } from "./key-budget.js";
|
|
48
49
|
import { runNetwork, publicNetworkError } from "./network.js";
|
|
49
50
|
import { runComputerCommand } from "./computer/command.js";
|
|
@@ -72,6 +73,23 @@ async function installAgent(target, args) {
|
|
|
72
73
|
else
|
|
73
74
|
stdout.write(`Agent: ${value.name}\nSkill: ${value.skillPath}\nAuth: ${value.authMode}\nState: ${value.state}\n${value.hostAction ? `Host action: ${value.hostAction}\n` : ""}${entry ? `Frely Skill: ${entry.path}\n` : ""}`);
|
|
74
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* After a login the computer is `null`: not controlled. A standby background service keeps it connected to Frely (the same connection and
|
|
78
|
+
* heartbeat a controlled computer uses) so the owner can turn remote control on from the web after two-step verification; it serves no tools
|
|
79
|
+
* until then. Skipped while the local lock is set (`frely link off`), without a service manager, or with FRELY_NO_SERVICE=1.
|
|
80
|
+
*/
|
|
81
|
+
async function installStandbyService() {
|
|
82
|
+
if (process.env.FRELY_NO_SERVICE === "1" || (await remoteLocked()))
|
|
83
|
+
return;
|
|
84
|
+
try {
|
|
85
|
+
if ((await serviceStatus()).installed)
|
|
86
|
+
return;
|
|
87
|
+
await installDeviceRelayService(undefined, { standby: true });
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
process.stderr.write(`Could not start the standby service (${error instanceof Error ? error.message : String(error)}). Remote control stays off; run frely link on to enable it on this computer.\n`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
75
93
|
async function main() {
|
|
76
94
|
const args = normalizeLinkArgs(applyDataDir(process.argv.slice(2)));
|
|
77
95
|
const command = args[0];
|
|
@@ -122,7 +140,11 @@ async function main() {
|
|
|
122
140
|
return;
|
|
123
141
|
}
|
|
124
142
|
if ((command === "help" || command === "--help") && args.includes("--agent")) {
|
|
125
|
-
|
|
143
|
+
const name = args.slice(1).find((arg) => !arg.startsWith("-"));
|
|
144
|
+
const result = agentHelpView({ summary: args.includes("--summary"), all: args.includes("--all"), ...(name === undefined ? {} : { name }) });
|
|
145
|
+
stdout.write(JSON.stringify(result.value, null, args.includes("--json") ? undefined : 2) + "\n");
|
|
146
|
+
if (!result.ok)
|
|
147
|
+
process.exitCode = 1;
|
|
126
148
|
return;
|
|
127
149
|
}
|
|
128
150
|
if (!command || command === "help" || command === "--help" || command === "-h")
|
|
@@ -480,6 +502,7 @@ async function main() {
|
|
|
480
502
|
return;
|
|
481
503
|
}
|
|
482
504
|
stdout.write(`Logged in as ${resumed.user.email}.\n`);
|
|
505
|
+
await installStandbyService();
|
|
483
506
|
return;
|
|
484
507
|
}
|
|
485
508
|
// Email-based device login (two steps): `--email` sends the code, `--code` finishes.
|
|
@@ -498,6 +521,7 @@ async function main() {
|
|
|
498
521
|
const { user } = await finishDeviceLogin(relayUrl, pendingChallenge, deviceId);
|
|
499
522
|
await deletePendingEmailChallenge(relayUrl);
|
|
500
523
|
stdout.write(`Logged in as ${user.email}.\n`);
|
|
524
|
+
await installStandbyService();
|
|
501
525
|
const mcp = pendingChallenge.mcp;
|
|
502
526
|
if (mcp && result.mcpPreapproval) {
|
|
503
527
|
const authorization = await ensureMcpAuthorization({
|
|
@@ -566,6 +590,7 @@ async function main() {
|
|
|
566
590
|
}, { openBrowser: !noBrowser });
|
|
567
591
|
const user = result.user;
|
|
568
592
|
stdout.write(`Logged in as ${user.email}.\n`);
|
|
593
|
+
await installStandbyService();
|
|
569
594
|
if (!("sessionBound" in result) || !result.sessionBound) {
|
|
570
595
|
stdout.write("Your server version is older and does not support logging out per device yet.\n");
|
|
571
596
|
}
|
|
@@ -722,7 +747,12 @@ async function main() {
|
|
|
722
747
|
if (serviceCredentialStore)
|
|
723
748
|
process.env.FRELY_CREDENTIAL_STORE = serviceCredentialStore;
|
|
724
749
|
await requireLogin();
|
|
725
|
-
|
|
750
|
+
// `--standby` is the background service of a computer that is not (yet) controlled: it serves local Providers only until the owner turns
|
|
751
|
+
// remote control on, then restarts in full mode. It stays provider-only while the local lock is set (`frely link off`).
|
|
752
|
+
const standby = args.includes("--standby");
|
|
753
|
+
const localLease = standby ? await inspectMcpMetadata().catch(() => null) : null;
|
|
754
|
+
const standbyIdle = standby && ((await remoteLocked()) || !localLease || grantInactive(localLease));
|
|
755
|
+
const providerOnly = args.includes("--provider-only") || standbyIdle;
|
|
726
756
|
// Without --workspace (a service re-registered by hand, Windows after a reboot) use the workspace the device MCP grant is bound to; a different directory never matches the grant and would leave remote execution disabled.
|
|
727
757
|
const grantWorkspace = providerOnly || option(args, "--workspace") ? undefined : (await inspectMcpMetadata().catch(() => null))?.grant.workspace;
|
|
728
758
|
const workspace = providerOnly ? undefined : resolve(option(args, "--workspace") || grantWorkspace || process.cwd());
|
|
@@ -747,6 +777,8 @@ async function main() {
|
|
|
747
777
|
}
|
|
748
778
|
localMcp?.start();
|
|
749
779
|
piNode?.start();
|
|
780
|
+
if (standbyIdle)
|
|
781
|
+
void watchLinkClaim({ signal: controller.signal, log: nodeLog, onClaimed: stop });
|
|
750
782
|
// Services saved with `frely service share --background` stay connected for as long as the daemon runs.
|
|
751
783
|
const services = superviseServices({ signal: controller.signal, log: nodeLog }).catch((error) => nodeLog(`Services stopped: ${error instanceof Error ? error.message : String(error)}`));
|
|
752
784
|
try {
|
|
@@ -806,8 +838,6 @@ async function main() {
|
|
|
806
838
|
stdout.write("Remote control is turned off on this computer; run `frely link on` to allow it again.\n");
|
|
807
839
|
return;
|
|
808
840
|
}
|
|
809
|
-
if (process.argv[3] === "url")
|
|
810
|
-
process.stderr.write("`frely link on` is deprecated; use `frely link on`.\n");
|
|
811
841
|
// Internal: update scripts only resume the installed service, never prompt for approval.
|
|
812
842
|
if (args.includes("--resume")) {
|
|
813
843
|
const service = await startMcpService();
|
|
@@ -865,9 +895,9 @@ async function main() {
|
|
|
865
895
|
if (command === "link" && args[1] === "off") {
|
|
866
896
|
// The local lock comes first: even if the revoke below cannot reach Frely, this computer already refuses remote control.
|
|
867
897
|
await setRemoteLock(true);
|
|
868
|
-
await
|
|
898
|
+
await lockLinkOnServer((message) => { process.stderr.write(message); });
|
|
869
899
|
if ((await listLocalProviders()).length > 0 || (await listLocalServices().catch(() => [])).some((service) => service.background)) {
|
|
870
|
-
await installDeviceRelayService();
|
|
900
|
+
await installDeviceRelayService(undefined, { standby: true });
|
|
871
901
|
stdout.write("Remote control is off and locked on this computer; only `frely link on` here can turn it on again. The background service keeps running for local Providers and services.\n");
|
|
872
902
|
}
|
|
873
903
|
else {
|