frely-cli 0.20.7 → 0.21.1
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 +5 -0
- package/dist/agent-help.d.ts +12 -0
- package/dist/agent-help.js +3 -0
- package/dist/agent-help.js.map +1 -1
- package/dist/credential-basic.d.ts +3 -1
- package/dist/credential-basic.js +6 -2
- package/dist/credential-basic.js.map +1 -1
- package/dist/credential-store.d.ts +8 -2
- package/dist/credential-store.js +50 -3
- package/dist/credential-store.js.map +1 -1
- package/dist/diagnostics.d.ts +2 -0
- package/dist/diagnostics.js +10 -5
- package/dist/diagnostics.js.map +1 -1
- package/dist/index.js +19 -2
- package/dist/index.js.map +1 -1
- package/dist/runtime/iroh-native.d.ts +5 -4
- package/dist/runtime/iroh-native.js +5 -4
- package/dist/runtime/iroh-native.js.map +1 -1
- package/dist/runtime/p2p.js +10 -4
- package/dist/runtime/p2p.js.map +1 -1
- package/dist/runtime/sandbox.d.ts +2 -0
- package/dist/runtime/sandbox.js +16 -0
- package/dist/runtime/sandbox.js.map +1 -1
- package/dist/service.d.ts +15 -0
- package/dist/service.js +61 -5
- package/dist/service.js.map +1 -1
- package/dist/skill/cloud-item.d.ts +7 -0
- package/dist/skill/cloud-item.js +1 -1
- package/dist/skill/cloud-item.js.map +1 -1
- package/dist/skill/entry.d.ts +15 -0
- package/dist/skill/entry.js +45 -0
- package/dist/skill/entry.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -46,6 +46,10 @@ The script installs the latest `frely`, then runs `frely mcp start`: it opens th
|
|
|
46
46
|
|
|
47
47
|
The workspace is your home directory by default (credential and shell start-up files stay protected). Set `FRELY_WORKSPACE=/path` to share another folder, and `FRELY_INSTALL_DIR` to install somewhere other than `~/.local/bin`.
|
|
48
48
|
|
|
49
|
+
### Let your agent set it up (no device access)
|
|
50
|
+
|
|
51
|
+
Ask an agent that has a shell (Claude Code, Codex, pi) to install the CLI, sign in with `frely login --email`, and run `frely skill install --host <host>`. The `frely` Skill it installs teaches the agent to use your account (`frely api`), install marketplace items and Agents, and to offer FrelyMCP only when a request needs it (another computer, Cloud MCPs, a browser, a client without a shell). This path does not open this computer to remote clients; `frely mcp start` does.
|
|
52
|
+
|
|
49
53
|
### Install only
|
|
50
54
|
|
|
51
55
|
`install.sh` and `install.ps1` (same URLs, `https://frely.cloud/install.sh`) only install the program, for scripts, Skills and agents that need the CLI. Or use npm (Node.js 22 or newer):
|
|
@@ -188,6 +192,7 @@ frely agent install <distribution-id|manifest-url> [--host chatgpt|codex|claude-
|
|
|
188
192
|
frely agent run <distribution-id> (--input <text>|--input-stdin) [--json]
|
|
189
193
|
frely agent status (<distribution-id>|--api-key-stdin [--relay <url>]) [--json]
|
|
190
194
|
frely agent remove <distribution-id> [--json]
|
|
195
|
+
frely skill install [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--json]
|
|
191
196
|
frely item install <item-id> [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--dir <path>] [--json]
|
|
192
197
|
frely item trust <folder> [--check]
|
|
193
198
|
frely provider share [ollama|openai-compatible] [--url <loopback-v1-url>] [--models <a,b>] [--slot <slot-id> | --creator] [--name <name>]
|
package/dist/agent-help.d.ts
CHANGED
|
@@ -106,6 +106,12 @@ export declare const COMMANDS: readonly [{
|
|
|
106
106
|
readonly auth: "account-and-mcp";
|
|
107
107
|
readonly effect: "local-execution";
|
|
108
108
|
readonly purpose: "Foreground Device Relay client; the background service runs this. Not needed for normal use.";
|
|
109
|
+
}, {
|
|
110
|
+
readonly id: "skill.install";
|
|
111
|
+
readonly usage: "frely skill install [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--json]";
|
|
112
|
+
readonly auth: "none";
|
|
113
|
+
readonly effect: "local-write";
|
|
114
|
+
readonly purpose: "Install the `frely` Skill into the host Skill folder. It teaches the agent to sign in, use `frely api`, install marketplace items and Agents, and offer FrelyMCP only when a request needs it. Running it again refreshes the Skill; an edited copy is left alone. Does not enable device MCP.";
|
|
109
115
|
}, {
|
|
110
116
|
readonly id: "item.trust";
|
|
111
117
|
readonly usage: "frely item trust <folder> [--check]";
|
|
@@ -335,6 +341,12 @@ export declare function agentHelp(): {
|
|
|
335
341
|
readonly auth: "account-and-mcp";
|
|
336
342
|
readonly effect: "local-execution";
|
|
337
343
|
readonly purpose: "Foreground Device Relay client; the background service runs this. Not needed for normal use.";
|
|
344
|
+
}, {
|
|
345
|
+
readonly id: "skill.install";
|
|
346
|
+
readonly usage: "frely skill install [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--json]";
|
|
347
|
+
readonly auth: "none";
|
|
348
|
+
readonly effect: "local-write";
|
|
349
|
+
readonly purpose: "Install the `frely` Skill into the host Skill folder. It teaches the agent to sign in, use `frely api`, install marketplace items and Agents, and offer FrelyMCP only when a request needs it. Running it again refreshes the Skill; an edited copy is left alone. Does not enable device MCP.";
|
|
338
350
|
}, {
|
|
339
351
|
readonly id: "item.trust";
|
|
340
352
|
readonly usage: "frely item trust <folder> [--check]";
|
package/dist/agent-help.js
CHANGED
|
@@ -18,6 +18,7 @@ export const COMMANDS = [
|
|
|
18
18
|
{ id: "mcp.remove", usage: "frely mcp remove", auth: "account", effect: "remote-write", purpose: "Revoke device MCP for every connected client and uninstall the background service (kept running provider-only when local Providers exist)." },
|
|
19
19
|
{ id: "mcp.stdio", usage: "frely mcp stdio [--workspace <path>]", auth: "mcp", effect: "local-execution", purpose: "Serve authorized local tools over stdio for a local MCP client." },
|
|
20
20
|
{ id: "mcp.serve", usage: "frely mcp serve [--workspace <path>]", auth: "account-and-mcp", effect: "local-execution", purpose: "Foreground Device Relay client; the background service runs this. Not needed for normal use." },
|
|
21
|
+
{ id: "skill.install", usage: "frely skill install [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--json]", auth: "none", effect: "local-write", purpose: "Install the `frely` Skill into the host Skill folder. It teaches the agent to sign in, use `frely api`, install marketplace items and Agents, and offer FrelyMCP only when a request needs it. Running it again refreshes the Skill; an edited copy is left alone. Does not enable device MCP." },
|
|
21
22
|
{ id: "item.trust", usage: "frely item trust <folder> [--check]", auth: "none", effect: "local-write", purpose: "Remember that the installed files of an item were reviewed, or with --check print trusted / not reviewed (exit 1 when not reviewed). A new version must be reviewed again." },
|
|
22
23
|
{ id: "item.install", usage: "frely item install <item-id> [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--dir <path>] [--json]", auth: "cloud-oauth", effect: "local-write", purpose: "Install a download-install Prompt or Skill from the marketplace through Frely Cloud. The paid part is installed only with a valid pass; otherwise the command prints how to buy one. Skills go to the host Skill folder, Prompts to --dir (default: current directory). Scripts are saved without execute permission." },
|
|
23
24
|
{ id: "agent.install", usage: "frely agent install <distribution-id|manifest-url> [--host chatgpt|codex|claude-code|pi|generic] [--scope global|project] [--api-key-stdin] [--json]", auth: "optional-api-key", effect: "local-write", purpose: "Install the public Agent's trigger Skill; an API key goes only through stdin to secure storage." },
|
|
@@ -65,6 +66,7 @@ const GROUPS = [
|
|
|
65
66
|
{ title: "Account", ids: ["login", "logout", "uninstall", "doctor", "update"] },
|
|
66
67
|
{ title: "Device MCP", ids: ["mcp.start", "mcp.workspace", "mcp.local", "mcp.lifecycle"] },
|
|
67
68
|
{ title: "Agents", ids: ["agent.install", "agent.run", "agent.status", "agent.remove"] },
|
|
69
|
+
{ title: "Skills", ids: ["skill.install"] },
|
|
68
70
|
{ title: "Marketplace items", ids: ["item.install", "item.trust"] },
|
|
69
71
|
{ title: "Providers", ids: ["provider.share", "provider.list"] },
|
|
70
72
|
{ title: "API", ids: ["api"] },
|
|
@@ -83,6 +85,7 @@ const SHORT_USAGE = {
|
|
|
83
85
|
"mcp.workspace": "frely mcp workspace list|add <path>|remove <path>",
|
|
84
86
|
"mcp.local": "frely mcp local list|add <name> (--url <address>|-- <command>)|remove <name>",
|
|
85
87
|
"mcp.lifecycle": "frely mcp status|stop|remove",
|
|
88
|
+
"skill.install": "frely skill install [--host <host>]",
|
|
86
89
|
"item.install": "frely item install <item-id> [--host <host>]",
|
|
87
90
|
"item.trust": "frely item trust <folder> [--check]",
|
|
88
91
|
"agent.install": "frely agent install <distribution-id> [--host <host>] [--api-key-stdin]",
|
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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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { CredentialStore } from "./credential-store.js";
|
|
2
|
+
export declare const basicFallbackEligible: (service: string) => boolean;
|
|
2
3
|
export declare const BASIC_CREDENTIAL_BACKEND = "private session files (not encrypted)";
|
|
3
4
|
/** Layer-one credentials have no OS keyring or operator-supplied key dependency. */
|
|
4
|
-
export declare function createBasicCredentialStore(rootInput?: string): CredentialStore;
|
|
5
|
+
export declare function createBasicCredentialStore(rootInput?: string, extraServices?: readonly string[]): CredentialStore;
|
|
5
6
|
export declare const basicCredentialStore: CredentialStore;
|
|
7
|
+
export declare const mcpFallbackCredentialStore: CredentialStore;
|
package/dist/credential-basic.js
CHANGED
|
@@ -5,12 +5,15 @@ import { dirname, join, resolve, win32 } from "node:path";
|
|
|
5
5
|
import { readPrivateFile, writePrivateFile, ensureCredentialDirectory } from "./credential-file.js";
|
|
6
6
|
import { runCredentialCommand } from "./credential-command.js";
|
|
7
7
|
const SERVICES = new Set(["frely-cli-basic-v1", "frely-network", "frely-cli-provider-device-v1"]);
|
|
8
|
+
/** The only extra service allowed in files, and only as the Linux auto-mode fallback when no Secret Service exists. */
|
|
9
|
+
const MCP_AUTHORIZATION_SERVICE = "frely-cli-mcp-authorization-v1";
|
|
10
|
+
export const basicFallbackEligible = (service) => service === MCP_AUTHORIZATION_SERVICE;
|
|
8
11
|
export const BASIC_CREDENTIAL_BACKEND = "private session files (not encrypted)";
|
|
9
12
|
/** Layer-one credentials have no OS keyring or operator-supplied key dependency. */
|
|
10
|
-
export function createBasicCredentialStore(rootInput) {
|
|
13
|
+
export function createBasicCredentialStore(rootInput, extraServices = []) {
|
|
11
14
|
const root = () => rootInput ?? resolve(process.env.XDG_CONFIG_HOME || join(homedir(), ".config"), "frely", "basic-credentials-v1");
|
|
12
15
|
const entry = (service, account) => {
|
|
13
|
-
if (!SERVICES.has(service) || !account || /[\x00-\x1f\x7f]/u.test(account))
|
|
16
|
+
if (!(SERVICES.has(service) || extraServices.includes(service)) || !account || /[\x00-\x1f\x7f]/u.test(account))
|
|
14
17
|
throw new Error("Credential is not eligible for basic storage.");
|
|
15
18
|
return join(root(), createHash("sha256").update(JSON.stringify([service, account])).digest("hex") + ".json");
|
|
16
19
|
};
|
|
@@ -81,4 +84,5 @@ try {
|
|
|
81
84
|
} catch { exit 1 }
|
|
82
85
|
`;
|
|
83
86
|
export const basicCredentialStore = createBasicCredentialStore();
|
|
87
|
+
export const mcpFallbackCredentialStore = createBasicCredentialStore(undefined, [MCP_AUTHORIZATION_SERVICE]);
|
|
84
88
|
//# sourceMappingURL=credential-basic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-basic.js","sourceRoot":"","sources":["../src/credential-basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,oBAAoB,EAAE,eAAe,EAAE,8BAA8B,CAAC,CAAC,CAAC;AAClG,MAAM,CAAC,MAAM,wBAAwB,GAAG,uCAAuC,CAAC;AAEhF,oFAAoF;AACpF,MAAM,UAAU,0BAA0B,CAAC,SAAkB;
|
|
1
|
+
{"version":3,"file":"credential-basic.js","sourceRoot":"","sources":["../src/credential-basic.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,10 +8,16 @@ interface StoreOptions {
|
|
|
8
8
|
platform?: NodeJS.Platform;
|
|
9
9
|
env?: NodeJS.ProcessEnv;
|
|
10
10
|
run?: CredentialCommand;
|
|
11
|
+
/** Private-file store used when Linux auto mode has no usable Secret Service. */
|
|
12
|
+
fallback?: CredentialStore;
|
|
11
13
|
}
|
|
12
14
|
export declare function credentialStoreBackend(env?: NodeJS.ProcessEnv, platform?: NodeJS.Platform): string;
|
|
13
15
|
/** Backend selection and OS access happen at credential use, not module import. */
|
|
14
|
-
export declare function createCredentialStore(options?: StoreOptions): CredentialStore
|
|
16
|
+
export declare function createCredentialStore(options?: StoreOptions): CredentialStore & {
|
|
17
|
+
lastBackend(): string | undefined;
|
|
18
|
+
};
|
|
15
19
|
/** Tests replace this narrow adapter without contacting the user's credential store. */
|
|
16
|
-
export declare const credentialStore: CredentialStore
|
|
20
|
+
export declare const credentialStore: CredentialStore & {
|
|
21
|
+
lastBackend(): string | undefined;
|
|
22
|
+
};
|
|
17
23
|
export {};
|
package/dist/credential-store.js
CHANGED
|
@@ -2,6 +2,7 @@ import { homedir } from "node:os";
|
|
|
2
2
|
import { join, resolve } from "node:path";
|
|
3
3
|
import { createNativeCredentialStore } from "./credential-native.js";
|
|
4
4
|
import { createEncryptedCredentialStore } from "./credential-file.js";
|
|
5
|
+
import { mcpFallbackCredentialStore, basicFallbackEligible, BASIC_CREDENTIAL_BACKEND } from "./credential-basic.js";
|
|
5
6
|
import { createSystemCredentialStore } from "./credential-system.js";
|
|
6
7
|
export function credentialStoreBackend(env = process.env, platform = process.platform) {
|
|
7
8
|
const mode = env.FRELY_CREDENTIAL_STORE ?? "auto";
|
|
@@ -33,15 +34,61 @@ export function createCredentialStore(options = {}) {
|
|
|
33
34
|
if (!service || !account || /[\x00-\x1f\x7f]/u.test(service + account))
|
|
34
35
|
throw new Error("Credential service and account must be non-empty and contain no control characters.");
|
|
35
36
|
};
|
|
37
|
+
// Only `auto` on Linux without an injected key may fall back; `system` and `encrypted-file` stay strict.
|
|
38
|
+
// Reads prefer the private file, so a value written there is never shadowed by a later keyring.
|
|
39
|
+
const fallbackFor = (service) => {
|
|
40
|
+
const env = options.env ?? process.env;
|
|
41
|
+
const auto = (env.FRELY_CREDENTIAL_STORE ?? "auto") === "auto" && env.FRELY_CREDENTIAL_KEY === undefined;
|
|
42
|
+
return auto && (options.platform ?? process.platform) === "linux" && basicFallbackEligible(service) ? options.fallback ?? mcpFallbackCredentialStore : null;
|
|
43
|
+
};
|
|
44
|
+
let lastBackend;
|
|
36
45
|
return {
|
|
37
|
-
|
|
46
|
+
lastBackend: () => lastBackend,
|
|
47
|
+
async getPassword(service, account) {
|
|
48
|
+
validate(service, account);
|
|
49
|
+
const basic = fallbackFor(service);
|
|
50
|
+
if (basic) {
|
|
51
|
+
const stored = await basic.getPassword(service, account);
|
|
52
|
+
if (stored !== null) {
|
|
53
|
+
lastBackend = BASIC_CREDENTIAL_BACKEND;
|
|
54
|
+
return stored;
|
|
55
|
+
}
|
|
56
|
+
try {
|
|
57
|
+
lastBackend = undefined;
|
|
58
|
+
return await select().getPassword(service, account);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return select().getPassword(service, account);
|
|
65
|
+
},
|
|
38
66
|
async setPassword(service, account, password) {
|
|
39
67
|
validate(service, account);
|
|
40
68
|
if (!password || Buffer.byteLength(password, "utf8") > 1024 * 1024)
|
|
41
69
|
throw new Error("Credential must contain between 1 byte and 1 MiB.");
|
|
42
|
-
|
|
70
|
+
const basic = fallbackFor(service);
|
|
71
|
+
if (!basic)
|
|
72
|
+
return select().setPassword(service, account, password);
|
|
73
|
+
if (await basic.getPassword(service, account) === null) {
|
|
74
|
+
try {
|
|
75
|
+
await select().setPassword(service, account, password);
|
|
76
|
+
lastBackend = undefined;
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
catch { /* no usable Secret Service */ }
|
|
80
|
+
}
|
|
81
|
+
await basic.setPassword(service, account, password);
|
|
82
|
+
lastBackend = BASIC_CREDENTIAL_BACKEND;
|
|
83
|
+
},
|
|
84
|
+
async deletePassword(service, account) {
|
|
85
|
+
validate(service, account);
|
|
86
|
+
const basic = fallbackFor(service);
|
|
87
|
+
if (!basic)
|
|
88
|
+
return select().deletePassword(service, account);
|
|
89
|
+
const removed = await basic.deletePassword(service, account);
|
|
90
|
+
return await select().deletePassword(service, account).catch(() => false) || removed;
|
|
43
91
|
},
|
|
44
|
-
async deletePassword(service, account) { validate(service, account); return select().deletePassword(service, account); },
|
|
45
92
|
};
|
|
46
93
|
}
|
|
47
94
|
/** Tests replace this narrow adapter without contacting the user's credential store. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-store.js","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"credential-store.js","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":"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"}
|
package/dist/diagnostics.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { inspectMcpMetadata, requireMcpAuthorization } from "./mcp-authorization
|
|
|
4
4
|
import { readDeviceBinding } from "./device/state.js";
|
|
5
5
|
import { readConnectionStatus } from "./device/connection-status.js";
|
|
6
6
|
import { serviceStatus } from "./service.js";
|
|
7
|
+
import { sandboxUnavailableReason } from "./runtime/sandbox.js";
|
|
7
8
|
export interface DiagnosticCheck {
|
|
8
9
|
name: string;
|
|
9
10
|
ok: boolean;
|
|
@@ -25,6 +26,7 @@ declare const defaultDependencies: {
|
|
|
25
26
|
readConnectionStatus: typeof readConnectionStatus;
|
|
26
27
|
serviceStatus: typeof serviceStatus;
|
|
27
28
|
inspectUpdate: typeof inspectUpdate;
|
|
29
|
+
sandboxUnavailableReason: typeof sandboxUnavailableReason;
|
|
28
30
|
};
|
|
29
31
|
type DoctorDependencies = Omit<typeof defaultDependencies, "reconcileMcpAuthorization"> & {
|
|
30
32
|
reconcileMcpAuthorization?: typeof defaultDependencies.reconcileMcpAuthorization;
|
package/dist/diagnostics.js
CHANGED
|
@@ -4,11 +4,12 @@ import { clearMcpAuthorization, inspectMcpMetadata, McpAuthorizationError, McpCo
|
|
|
4
4
|
import { resetDeviceRegistration } from "./device/control.js";
|
|
5
5
|
import { readDeviceBinding } from "./device/state.js";
|
|
6
6
|
import { connectionIsLive, connectionStatusPath, readConnectionStatus } from "./device/connection-status.js";
|
|
7
|
+
import { credentialStore } from "./credential-store.js";
|
|
7
8
|
import { serviceStatus } from "./service.js";
|
|
8
9
|
import { VERSION } from "./version.js";
|
|
9
10
|
import { dirname } from "node:path";
|
|
10
11
|
import { readAppInstall, verifyCapsule } from "./agent/app-install.js";
|
|
11
|
-
import { isSandboxDisabled } from "./runtime/sandbox.js";
|
|
12
|
+
import { isSandboxDisabled, sandboxUnavailableReason } from "./runtime/sandbox.js";
|
|
12
13
|
const defaultDependencies = { inspectAuth, probeCredentialStore, whoami, inspectMcpMetadata, requireMcpAuthorization,
|
|
13
14
|
reconcileMcpAuthorization: async (metadata, code) => {
|
|
14
15
|
if (!metadata)
|
|
@@ -17,7 +18,7 @@ const defaultDependencies = { inspectAuth, probeCredentialStore, whoami, inspect
|
|
|
17
18
|
if (code === "device_not_found" || code === "device_revoked")
|
|
18
19
|
await resetDeviceRegistration();
|
|
19
20
|
},
|
|
20
|
-
readDeviceBinding, readConnectionStatus, serviceStatus, inspectUpdate };
|
|
21
|
+
readDeviceBinding, readConnectionStatus, serviceStatus, inspectUpdate, sandboxUnavailableReason };
|
|
21
22
|
export async function statusSnapshot() {
|
|
22
23
|
const auth = await inspectAuth();
|
|
23
24
|
const metadata = await inspectMcpMetadata().catch(() => null);
|
|
@@ -64,7 +65,7 @@ export async function doctor(options = {}, dependencies = defaultDependencies) {
|
|
|
64
65
|
const service = metadata || binding ? await dependencies.serviceStatus().catch(() => null) : null;
|
|
65
66
|
add("service", service?.active ? "pass" : "info", !metadata && !binding ? "Not configured."
|
|
66
67
|
: !service ? "Service status unavailable."
|
|
67
|
-
: service.active ? "Background service running."
|
|
68
|
+
: service.active ? service.detached ? "Background process running (no systemd user manager; it will not restart after a reboot)." : "Background service running."
|
|
68
69
|
: service.installed ? "Background service stopped; a foreground relay may still be running."
|
|
69
70
|
: "Background service not installed; a foreground relay may still be running.");
|
|
70
71
|
const connection = bindingMatches && binding ? await dependencies.readConnectionStatus(binding).catch(() => null) : null;
|
|
@@ -91,7 +92,11 @@ export async function doctor(options = {}, dependencies = defaultDependencies) {
|
|
|
91
92
|
const appInstall = await readAppInstall().then((install) => verifyCapsule(install).then(() => install)).catch(() => null);
|
|
92
93
|
add("app", appInstall ? "pass" : "info", appInstall ? `Frely App ${appInstall.appVersion} installed (capsule verified).`
|
|
93
94
|
: "Frely App not installed. Run frely app install.");
|
|
94
|
-
|
|
95
|
+
const sandboxGap = dependencies.sandboxUnavailableReason();
|
|
96
|
+
// Without a sandbox remote commands are refused, which only matters once device MCP is enabled.
|
|
97
|
+
add("sandbox", isSandboxDisabled() ? "info" : sandboxGap ? (metadata ? "fail" : "info") : "pass", isSandboxDisabled() ? "Command sandbox disabled by environment (FRELY_SANDBOX=off)."
|
|
98
|
+
: sandboxGap ? `Command sandbox unavailable (${sandboxGap}); remote commands are refused unless the owner approves running them unsandboxed. On Linux install bubblewrap, socat and ripgrep.`
|
|
99
|
+
: "Command sandbox active (workspace + temp writes only).");
|
|
95
100
|
const refreshGuidance = connection?.autoRefresh && connection.pid === service?.pid
|
|
96
101
|
? "The service will switch after active work finishes and the installation passes its startup check."
|
|
97
102
|
: "Finish running tasks and restart the service from a local terminal.";
|
|
@@ -120,7 +125,7 @@ export async function doctor(options = {}, dependencies = defaultDependencies) {
|
|
|
120
125
|
if (metadata && !expired && mcpMatches) {
|
|
121
126
|
try {
|
|
122
127
|
await dependencies.requireMcpAuthorization();
|
|
123
|
-
add("mcp_authorization", "pass",
|
|
128
|
+
add("mcp_authorization", "pass", `Secure key and server authorization verified${credentialStore.lastBackend() ? ` (key stored in ${credentialStore.lastBackend()})` : ""}.`);
|
|
124
129
|
}
|
|
125
130
|
catch (error) {
|
|
126
131
|
if (metadata && error instanceof McpAuthorizationError && ["mcp_authorization_not_found", "mcp_authorization_invalid", "device_not_found", "device_revoked"].includes(error.code)) {
|
package/dist/diagnostics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -34,6 +34,7 @@ import { runComputerCommand } from "./computer/command.js";
|
|
|
34
34
|
import { runComputerMcpServer } from "./computer/server.js";
|
|
35
35
|
import { agentManifestUrl, installSkillAdapter, invokeInstalledAgent, publicSkillAccessError, removeSkillAdapter, skillAdapterStatus } from "./skill/access.js";
|
|
36
36
|
import { installCloudItem, trustCloudItem } from "./skill/cloud-item.js";
|
|
37
|
+
import { installEntrySkill } from "./skill/entry.js";
|
|
37
38
|
import { callCloudTool } from "./cloud.js";
|
|
38
39
|
import { createInterface } from "node:readline/promises";
|
|
39
40
|
import { runUninstall } from "./uninstall.js";
|
|
@@ -163,6 +164,21 @@ async function main() {
|
|
|
163
164
|
}
|
|
164
165
|
throw new Error(`Unknown agent command.\n${subcommandUsage("agent")}`);
|
|
165
166
|
}
|
|
167
|
+
if (command === "skill") {
|
|
168
|
+
if (args[1] !== "install") {
|
|
169
|
+
stdout.write(subcommandUsage("skill"));
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const host = skillHost(option(args, "--host") ?? "generic");
|
|
173
|
+
const scope = skillScope(option(args, "--scope") ?? "global");
|
|
174
|
+
const value = await installEntrySkill({ host, scope });
|
|
175
|
+
if (args.includes("--json")) {
|
|
176
|
+
stdout.write(`${JSON.stringify(value)}\n`);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
stdout.write(`Skill: frely\nPath: ${value.path}\nRestart or reload the agent session so it rescans Skills.\n`);
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
166
182
|
if (command === "item") {
|
|
167
183
|
if (args[1] === "trust") {
|
|
168
184
|
const folder = args[2];
|
|
@@ -523,13 +539,14 @@ async function main() {
|
|
|
523
539
|
const metadata = await inspectMcpMetadataOrQuarantine((message) => { process.stderr.write(message); });
|
|
524
540
|
const service = await serviceStatus();
|
|
525
541
|
const expired = metadata ? grantInactive(metadata) : false;
|
|
542
|
+
const running = service.detached ? "running (background process, not restarted after reboot)" : "running";
|
|
526
543
|
const value = { configured: Boolean(metadata), service: { installed: service.installed, running: service.active }, ...(metadata ? { mcpUrl: metadata.mcpResource, workspace: metadata.grant.workspace, expiresAt: metadata.grant.expiresAt, expired } : {}) };
|
|
527
544
|
if (args.includes("--json"))
|
|
528
545
|
stdout.write(`${JSON.stringify(value)}\n`);
|
|
529
546
|
else if (!metadata)
|
|
530
|
-
stdout.write(`Device MCP is not configured. Run frely mcp start.\nService: ${service.active ?
|
|
547
|
+
stdout.write(`Device MCP is not configured. Run frely mcp start.\nService: ${service.active ? running : service.installed ? "stopped" : "not installed"}\n`);
|
|
531
548
|
else
|
|
532
|
-
stdout.write(`MCP URL: ${metadata.mcpResource}\nWorkspace: ${metadata.grant.workspace}\nAuthorization: ${expired ? "expired or inactive (run frely mcp start to renew)" : `active until ${metadata.grant.expiresAt}`}\nService: ${service.active ?
|
|
549
|
+
stdout.write(`MCP URL: ${metadata.mcpResource}\nWorkspace: ${metadata.grant.workspace}\nAuthorization: ${expired ? "expired or inactive (run frely mcp start to renew)" : `active until ${metadata.grant.expiresAt}`}\nService: ${service.active ? running : service.installed ? "stopped (run frely mcp start)" : "not installed (run frely mcp start)"}\n`);
|
|
533
550
|
return;
|
|
534
551
|
}
|
|
535
552
|
if (command === "mcp" && args[1] === "stop") {
|