frely-cli 0.23.11 → 0.23.13
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 +12 -12
- package/README.zh-CN.md +11 -11
- package/dist/agent/local/approvals.js +14 -18
- package/dist/agent/local/approvals.js.map +1 -1
- package/dist/agent/run-store.d.ts +5 -0
- package/dist/agent/run-store.js +1 -0
- package/dist/agent/run-store.js.map +1 -1
- package/dist/agent/run.d.ts +5 -1
- package/dist/agent/run.js +25 -4
- package/dist/agent/run.js.map +1 -1
- package/dist/agent-help.d.ts +64 -64
- package/dist/agent-help.js +29 -29
- package/dist/agent-help.js.map +1 -1
- package/dist/approval-code.d.ts +4 -0
- package/dist/approval-code.js +15 -0
- package/dist/approval-code.js.map +1 -0
- package/dist/cloud.d.ts +6 -9
- package/dist/cloud.js +25 -24
- package/dist/cloud.js.map +1 -1
- package/dist/controller/approval-wait.d.ts +21 -0
- package/dist/controller/approval-wait.js +28 -0
- package/dist/controller/approval-wait.js.map +1 -0
- package/dist/controller/client.js +1 -1
- package/dist/controller/client.js.map +1 -1
- package/dist/controller/commands.d.ts +3 -6
- package/dist/controller/commands.js +30 -31
- package/dist/controller/commands.js.map +1 -1
- package/dist/device/relay-client.js +4 -0
- package/dist/device/relay-client.js.map +1 -1
- package/dist/diagnostics.js +8 -8
- package/dist/diagnostics.js.map +1 -1
- package/dist/index.js +49 -41
- package/dist/index.js.map +1 -1
- package/dist/local-mcp-command.d.ts +1 -1
- package/dist/local-mcp-command.js +6 -6
- package/dist/local-mcp-command.js.map +1 -1
- package/dist/mcp-authorization.d.ts +4 -4
- package/dist/mcp-authorization.js +23 -25
- package/dist/mcp-authorization.js.map +1 -1
- package/dist/mcp-command.d.ts +8 -6
- package/dist/mcp-command.js +56 -45
- package/dist/mcp-command.js.map +1 -1
- package/dist/remote-lock.d.ts +10 -0
- package/dist/remote-lock.js +24 -0
- package/dist/remote-lock.js.map +1 -0
- package/dist/runtime/mcp-lease.js +1 -1
- package/dist/runtime/mcp-lease.js.map +1 -1
- package/dist/runtime/mcp.js +1 -1
- package/dist/runtime/mcp.js.map +1 -1
- package/dist/runtime/sandbox-proxy.js +2 -2
- package/dist/runtime/sandbox-proxy.js.map +1 -1
- package/dist/runtime/workspace-registry.js +1 -1
- package/dist/runtime/workspace-registry.js.map +1 -1
- package/dist/share/control.d.ts +10 -1
- package/dist/share/control.js +45 -2
- package/dist/share/control.js.map +1 -1
- package/dist/share/run.d.ts +0 -5
- package/dist/share/run.js +3 -14
- package/dist/share/run.js.map +1 -1
- package/dist/skill/access.d.ts +6 -1
- package/dist/skill/access.js +23 -10
- package/dist/skill/access.js.map +1 -1
- package/dist/skill/entry.d.ts +1 -1
- package/dist/skill/entry.js +1 -1
- package/dist/skill/router.d.ts +25 -0
- package/dist/skill/router.js +31 -10
- package/dist/skill/router.js.map +1 -1
- package/dist/update/auto-update.d.ts +1 -1
- package/dist/update/auto-update.js +1 -1
- package/dist/update/auto-update.js.map +1 -1
- package/dist/workspace-command.d.ts +1 -1
- package/dist/workspace-command.js +3 -3
- package/dist/workspace-command.js.map +1 -1
- package/package.json +1 -1
- package/skills/frely-cli/SKILL.md +3 -3
package/dist/skill/access.js
CHANGED
|
@@ -2,9 +2,9 @@ import { homedir } from "node:os";
|
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { LOGIN_REFRESH_UNAVAILABLE, requireLogin } from "../auth.js";
|
|
4
4
|
import { credentialStore as secureCredentialStore } from "../credential-store.js";
|
|
5
|
-
import { remoteAgentMcpInvoker, SkillInvocationError } from "./router.js";
|
|
5
|
+
import { remoteAgentMcpInvoker, remoteAgentTaskClient, SkillInvocationError } from "./router.js";
|
|
6
6
|
import { findManagedSkillByInstallName, ManagedSkillError, managedSkillRoot, managedSkillState, readManagedSkill, removeManagedSkill, skillSlug, writeManagedSkill, } from "./managed.js";
|
|
7
|
-
const MANIFEST_SCHEMA = "frely.
|
|
7
|
+
const MANIFEST_SCHEMA = "frely.agent.public.v1";
|
|
8
8
|
const DISTRIBUTION_ID = /^creator_distribution_[a-f0-9]{24}$/u;
|
|
9
9
|
const MAX_MANIFEST_BYTES = 256 * 1024;
|
|
10
10
|
const MAX_TASK_BYTES = 128 * 1024;
|
|
@@ -23,7 +23,7 @@ const AGENT_NAME = /^([^/@\s]{1,64})\/([^/@\s]{1,64})(?:@([1-9][0-9]{0,8}))?$/u;
|
|
|
23
23
|
export function agentManifestUrl(target, relayUrl) {
|
|
24
24
|
if (!DISTRIBUTION_ID.test(target) && !AGENT_NAME.test(target))
|
|
25
25
|
throw new SkillAccessError("input_invalid", "Use the Agent's name, for example username/name, or username/name@3 for a version.");
|
|
26
|
-
return `${relayUrl}/api/public/
|
|
26
|
+
return `${relayUrl}/api/public/agents/${target.split("/").map(encodeURIComponent).join("/")}`;
|
|
27
27
|
}
|
|
28
28
|
/** An installed Agent's distribution id from the id or `username/name` a user typed; a version written after the name is ignored. */
|
|
29
29
|
export async function resolveAgentTarget(target, relayUrl, home = homedir(), fetchFn = fetch) {
|
|
@@ -173,18 +173,31 @@ export async function invokeInstalledAgent(input) {
|
|
|
173
173
|
if (!input.task.trim() || Buffer.byteLength(input.task, "utf8") > MAX_TASK_BYTES)
|
|
174
174
|
throw new SkillAccessError("input_invalid", "Agent input must be non-empty and at most 128 KiB.");
|
|
175
175
|
const { record, token, credential } = await openInstalledAgent(input);
|
|
176
|
+
const target = { relayUrl: new URL(record.mcpUrl).origin, modelId: record.modelId, token, ...(credential ? { credential } : {}) };
|
|
177
|
+
const tasks = input.taskClient ?? remoteAgentTaskClient;
|
|
178
|
+
let taskId;
|
|
176
179
|
try {
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
modelId: record.modelId,
|
|
180
|
-
token,
|
|
181
|
-
...(credential ? { credential } : {}),
|
|
180
|
+
let result = await (input.remoteInvoker ?? remoteAgentMcpInvoker).invoke({
|
|
181
|
+
...target,
|
|
182
182
|
task: input.task,
|
|
183
|
+
...(input.progressSummary === undefined ? {} : { progressSummary: input.progressSummary }),
|
|
183
184
|
...(input.signal ? { signal: input.signal } : {}),
|
|
184
185
|
});
|
|
186
|
+
// A long call returns `running` after about 50 seconds; the task goes on at Frely, so wait for it here (reading is free).
|
|
187
|
+
while (result.state === "running" && result.taskId !== undefined) {
|
|
188
|
+
taskId = result.taskId;
|
|
189
|
+
if (result.progressSummary)
|
|
190
|
+
input.onProgress?.(result.progressSummary);
|
|
191
|
+
result = await tasks.status({ ...target, taskId, wait: true, ...(input.signal ? { signal: input.signal } : {}) });
|
|
192
|
+
}
|
|
193
|
+
if (result.state === "failed" || result.state === "canceled")
|
|
194
|
+
throw new SkillInvocationError("remote_call_failed");
|
|
185
195
|
return Object.freeze({ ok: true, distributionId: record.distributionId, modelId: record.modelId, text: result.text, ...(result.usage ? { usage: result.usage } : {}) });
|
|
186
196
|
}
|
|
187
197
|
catch (error) {
|
|
198
|
+
// The caller gave up (Ctrl-C, `frely agent cancel`): stop the task at Frely too, so it does not keep running and billing.
|
|
199
|
+
if (taskId !== undefined && input.signal?.aborted)
|
|
200
|
+
await tasks.cancel({ ...target, taskId }).catch(() => undefined);
|
|
188
201
|
throw remoteCallError(error, record.authMode);
|
|
189
202
|
}
|
|
190
203
|
}
|
|
@@ -303,7 +316,7 @@ function parseManifest(value, sourceUrl) {
|
|
|
303
316
|
}
|
|
304
317
|
const canonical = normalizedFrelyUrl(urls.manifest, "manifest_invalid");
|
|
305
318
|
// The manifest answers under its install name however it was asked for (id, name or a former username), so only the origin is compared.
|
|
306
|
-
if (canonical.origin !== sourceUrl.origin || !canonical.pathname.startsWith("/api/public/
|
|
319
|
+
if (canonical.origin !== sourceUrl.origin || !canonical.pathname.startsWith("/api/public/agents/"))
|
|
307
320
|
throw new SkillAccessError("manifest_invalid", "Frely manifest canonical URL does not match the requested URL.");
|
|
308
321
|
const mcp = normalizedFrelyUrl(urls.mcp, "manifest_invalid");
|
|
309
322
|
const expectedMcpPath = `/mcp/${encodeURIComponent(root.modelId)}`;
|
|
@@ -342,7 +355,7 @@ function renderSkill(manifest, slug) {
|
|
|
342
355
|
const description = oneLine(manifest.clientTrigger?.description ?? manifest.description ?? `Use ${manifest.name} through Frely when the user's task matches this Agent.`).slice(0, 900);
|
|
343
356
|
const capabilities = manifest.capabilities.length === 0 ? "- Use the published Agent for tasks described by this Skill." : manifest.capabilities.map((capability) => `- ${capability.id}${capability.description ? `: ${oneLine(capability.description)}` : ""}`).join("\n");
|
|
344
357
|
const triggers = manifest.clientTrigger?.when.map((condition) => `- ${oneLine(condition)}`).join("\n") ?? `- The user explicitly asks for ${oneLine(manifest.name)} or their task matches its published capabilities.`;
|
|
345
|
-
return `---\nname: ${slug}\ndescription: ${JSON.stringify(description)}\ncompatibility: ${JSON.stringify("Requires frely-cli and network access to Frely.")}\nmetadata:\n frely-distribution-id: ${JSON.stringify(manifest.id)}\n frely-model-id: ${JSON.stringify(manifest.modelId)}\n---\n\n# ${oneLine(manifest.name)}\n\nThe Agent runs remotely on Frely; this Skill contains only trigger and invocation instructions.\n\n## When to use\n\n${triggers}\n\n## Public capabilities\n\n${capabilities}\n\n## Execute\n\nPass the user's complete relevant request to stdin of:\n\n\`frely agent run ${manifest.id} --input-stdin --json\`\n\nDo not put credentials in the command and do not replace the user's current model provider. Return the result to the user. If the user asked you to act on it (for example, carry out a plan), do so with your own tools, following your usual confirmation rules. A call can take several minutes. If your command is cut off, run \`frely agent result --last --wait\` instead of calling again. If the result starts with NEED_FILES, read those files yourself and call again with the original task plus them. If the remote call fails, surface the returned state instead of inventing current external facts.\n`;
|
|
358
|
+
return `---\nname: ${slug}\ndescription: ${JSON.stringify(description)}\ncompatibility: ${JSON.stringify("Requires frely-cli and network access to Frely.")}\nmetadata:\n frely-distribution-id: ${JSON.stringify(manifest.id)}\n frely-model-id: ${JSON.stringify(manifest.modelId)}\n---\n\n# ${oneLine(manifest.name)}\n\nThe Agent runs remotely on Frely; this Skill contains only trigger and invocation instructions.\n\n## When to use\n\n${triggers}\n\n## Public capabilities\n\n${capabilities}\n\n## Execute\n\nPass the user's complete relevant request to stdin of:\n\n\`frely agent run ${manifest.id} --input-stdin --json\`\n\nDo not put credentials in the command and do not replace the user's current model provider. Return the result to the user. If the user asked you to act on it (for example, carry out a plan), do so with your own tools, following your usual confirmation rules. A call can take several minutes. If your command is cut off, run \`frely agent result --last --wait\` instead of calling again. If the user asked not to see progress updates (for example in their AGENTS.md), add \`--no-progress-summary\` to the run command. If the result starts with NEED_FILES, read those files yourself and call again with the original task plus them. If the remote call fails, surface the returned state instead of inventing current external facts.\n`;
|
|
346
359
|
}
|
|
347
360
|
function hostAction(host) {
|
|
348
361
|
if (host === "chatgpt")
|
package/dist/skill/access.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access.js","sourceRoot":"","sources":["../../src/skill/access.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"access.js","sourceRoot":"","sources":["../../src/skill/access.ts"],"names":[],"mappings":"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"}
|
package/dist/skill/entry.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type SkillHost, type SkillScope } from "./managed.js";
|
|
2
2
|
export declare const ENTRY_SKILL_ID = "frely-entry";
|
|
3
3
|
/** Teaches an agent with a shell to use Frely through the CLI, and when to offer FrelyMCP. */
|
|
4
|
-
export declare const ENTRY_SKILL = "---\nname: frely\ndescription: Use when the user wants to work with their Frely account or the Frely marketplace through the frely CLI (credits, API keys, plans, orders, installing a Frely Skill or Agent), or wants to connect a computer or an AI client to FrelyMCP.\n---\n\nUse the installed `frely` CLI. Do not rely on remembered syntax: run `frely help --agent --json` for the current command contract, and `frely update` if a command is missing.\n\n## Sign in\n\nRun `frely doctor --json` to see whether the CLI is signed in. If not, ask the user for their email, run `frely login --email <address>`, ask them for the 6-digit code from the email, then run `frely login --code <code>`. New addresses are registered by the same steps. Do not add `--mcp`: it opens this computer to remote clients.\n\n## Account and marketplace\n\n- Account operations (API keys, Credit, plans, orders, Creator items): `frely api list`, `frely api describe <tool>`, `frely api call <tool> --json '{...}'`. The first call needs a browser authorization the user completes; if it fails because there is no terminal, tell the user to run the command once themselves.\n- Ask the user before any call that spends Credit, buys something or changes credentials. Some actions also need a one-time approval on the Frely website; give the user the link from the error.\n- Install a marketplace Skill or Prompt: `frely item install <username/skill-name> --host <your host>`; add `--scope project --dir <project>` to install it for one project instead of globally. Install a published Agent: `frely agent install <username/name> --host <your host>`, then `frely agent run`. When an Agent needs the user's project files, add `--read` (optionally `--read <dir>`): the Agent can then read files of that directory through read-only tools that run on this computer, only the files it asks for; `.git`, `.env*`, key files and git-ignored files are never sent, and the result lists the files read. Tell the user before you add it. If `frely agent run` returns `payment_required`, the balance is too low: do not ask the user to sign in again; run `frely api call credit_products.list --json '{}'`, ask which amount, then `frely api call payment_checkout.create` with `useImmediately` true, give the user the returned `checkoutUrl`, and retry once they have paid. If the install output says Frely has not scanned a Skill, read every file in it before you use it, and tell the user if anything looks unsafe.\n- Use a marketplace MCP without configuring it in your client: `frely item install <username/mcp-name>` installs a Skill that calls it through `frely remote tools|call <username/mcp-name>`. Each call is billed or needs a pass as in any MCP client. `frely remote config <username/mcp-name>` prints the `mcpServers` JSON for clients that should connect to that one MCP directly.\n\n## What needs FrelyMCP\n\nThe steps above work without FrelyMCP. FrelyMCP is only needed to control another computer, use Cloud MCPs the user bought, drive a connected browser, or use Frely from a client with no shell (web ChatGPT or Claude).\n\nCheck whether you already have it: your tool list has Frely tools such as `list_devices` or `frely_list`; or run `claude mcp list` (Claude Code) or `codex mcp list` (Codex) and look for `frely`.\n\nIf the user's request needs FrelyMCP and you do not have it, say so once in this conversation, in your own words: this needs Frely's remote connection, everything else already works, and setting it up takes one browser approval. Do nothing until the user agrees, and do not raise it again if they decline or when the request does not need it. If they agree:\n\n1. Run `frely
|
|
4
|
+
export declare const ENTRY_SKILL = "---\nname: frely\ndescription: Use when the user wants to work with their Frely account or the Frely marketplace through the frely CLI (credits, API keys, plans, orders, installing a Frely Skill or Agent), or wants to connect a computer or an AI client to FrelyMCP.\n---\n\nUse the installed `frely` CLI. Do not rely on remembered syntax: run `frely help --agent --json` for the current command contract, and `frely update` if a command is missing.\n\n## Sign in\n\nRun `frely doctor --json` to see whether the CLI is signed in. If not, ask the user for their email, run `frely login --email <address>`, ask them for the 6-digit code from the email, then run `frely login --code <code>`. New addresses are registered by the same steps. Do not add `--mcp`: it opens this computer to remote clients.\n\n## Account and marketplace\n\n- Account operations (API keys, Credit, plans, orders, Creator items): `frely api list`, `frely api describe <tool>`, `frely api call <tool> --json '{...}'`. The first call needs a browser authorization the user completes; if it fails because there is no terminal, tell the user to run the command once themselves.\n- Ask the user before any call that spends Credit, buys something or changes credentials. Some actions also need a one-time approval on the Frely website; give the user the link from the error.\n- Install a marketplace Skill or Prompt: `frely item install <username/skill-name> --host <your host>`; add `--scope project --dir <project>` to install it for one project instead of globally. Install a published Agent: `frely agent install <username/name> --host <your host>`, then `frely agent run`. When an Agent needs the user's project files, add `--read` (optionally `--read <dir>`): the Agent can then read files of that directory through read-only tools that run on this computer, only the files it asks for; `.git`, `.env*`, key files and git-ignored files are never sent, and the result lists the files read. Tell the user before you add it. If `frely agent run` returns `payment_required`, the balance is too low: do not ask the user to sign in again; run `frely api call credit_products.list --json '{}'`, ask which amount, then `frely api call payment_checkout.create` with `useImmediately` true, give the user the returned `checkoutUrl`, and retry once they have paid. If the install output says Frely has not scanned a Skill, read every file in it before you use it, and tell the user if anything looks unsafe.\n- Use a marketplace MCP without configuring it in your client: `frely item install <username/mcp-name>` installs a Skill that calls it through `frely remote tools|call <username/mcp-name>`. Each call is billed or needs a pass as in any MCP client. `frely remote config <username/mcp-name>` prints the `mcpServers` JSON for clients that should connect to that one MCP directly.\n\n## What needs FrelyMCP\n\nThe steps above work without FrelyMCP. FrelyMCP is only needed to control another computer, use Cloud MCPs the user bought, drive a connected browser, or use Frely from a client with no shell (web ChatGPT or Claude).\n\nCheck whether you already have it: your tool list has Frely tools such as `list_devices` or `frely_list`; or run `claude mcp list` (Claude Code) or `codex mcp list` (Codex) and look for `frely`.\n\nIf the user's request needs FrelyMCP and you do not have it, say so once in this conversation, in your own words: this needs Frely's remote connection, everything else already works, and setting it up takes one browser approval. Do nothing until the user agrees, and do not raise it again if they decline or when the request does not need it. If they agree:\n\n1. Run `frely link on`. When it prints a sign-in or approval link, send the link and keep the command running while the user approves. It prints the MCP URL.\n2. Add it to your client: `claude mcp add --transport http frely \"https://mcp.frely.cloud/mcp\"` or `codex mcp add frely --url \"https://mcp.frely.cloud/mcp\"`. For any other client, give the user the URL and ask them to add it as a remote MCP server with OAuth.\n3. Tell the user to finish the OAuth authorization in their browser, then check with \"list my Frely devices\".\n\nNever put keys or tokens on a command line or in a file; use `--api-key-stdin` where the CLI offers it.\n";
|
|
5
5
|
export interface EntrySkillInstallResult {
|
|
6
6
|
readonly name: "frely";
|
|
7
7
|
readonly path: string;
|
package/dist/skill/entry.js
CHANGED
|
@@ -32,7 +32,7 @@ Check whether you already have it: your tool list has Frely tools such as \`list
|
|
|
32
32
|
|
|
33
33
|
If the user's request needs FrelyMCP and you do not have it, say so once in this conversation, in your own words: this needs Frely's remote connection, everything else already works, and setting it up takes one browser approval. Do nothing until the user agrees, and do not raise it again if they decline or when the request does not need it. If they agree:
|
|
34
34
|
|
|
35
|
-
1. Run \`frely
|
|
35
|
+
1. Run \`frely link on\`. When it prints a sign-in or approval link, send the link and keep the command running while the user approves. It prints the MCP URL.
|
|
36
36
|
2. Add it to your client: \`claude mcp add --transport http frely "https://mcp.frely.cloud/mcp"\` or \`codex mcp add frely --url "https://mcp.frely.cloud/mcp"\`. For any other client, give the user the URL and ask them to add it as a remote MCP server with OAuth.
|
|
37
37
|
3. Tell the user to finish the OAuth authorization in their browser, then check with "list my Frely devices".
|
|
38
38
|
|
package/dist/skill/router.d.ts
CHANGED
|
@@ -6,9 +6,15 @@ export interface SkillCapability {
|
|
|
6
6
|
readonly level: SkillCapabilityLevel;
|
|
7
7
|
readonly entrypoints: readonly SkillEntrypoint[];
|
|
8
8
|
}
|
|
9
|
+
export type AgentTaskState = "running" | "completed" | "failed" | "canceled";
|
|
9
10
|
export interface SkillInvocationResult {
|
|
10
11
|
readonly text: string;
|
|
11
12
|
readonly usage?: Readonly<Record<string, unknown>>;
|
|
13
|
+
/** Set by the Gateway for an Agent call: `running` means the task goes on and `taskId` reads it later. */
|
|
14
|
+
readonly state?: AgentTaskState;
|
|
15
|
+
readonly taskId?: string;
|
|
16
|
+
/** The running Agent's newest one-line progress; absent when progress is off or nothing was reported yet. */
|
|
17
|
+
readonly progressSummary?: string;
|
|
12
18
|
}
|
|
13
19
|
export declare class SkillInvocationError extends Error {
|
|
14
20
|
readonly code: "payment_required" | "entitlement_required" | "remote_authorization_failed" | "capability_unavailable" | "remote_call_failed";
|
|
@@ -84,9 +90,27 @@ export interface RemoteAgentMcpInvoker {
|
|
|
84
90
|
readonly credential?: AuthCredential;
|
|
85
91
|
readonly task: string;
|
|
86
92
|
readonly capabilityId?: string;
|
|
93
|
+
/** Sent only when given; otherwise the Gateway uses the account's setting. */
|
|
94
|
+
readonly progressSummary?: boolean;
|
|
87
95
|
readonly signal?: AbortSignal;
|
|
88
96
|
}): Promise<SkillInvocationResult>;
|
|
89
97
|
}
|
|
98
|
+
export interface RemoteAgentTaskInput {
|
|
99
|
+
readonly relayUrl: string;
|
|
100
|
+
readonly modelId: string;
|
|
101
|
+
readonly token: string;
|
|
102
|
+
readonly credential?: AuthCredential;
|
|
103
|
+
readonly taskId: string;
|
|
104
|
+
readonly signal?: AbortSignal;
|
|
105
|
+
}
|
|
106
|
+
export interface RemoteAgentTaskClient {
|
|
107
|
+
/** Reads a task (task_status); with `wait` the Gateway holds the request up to 50 seconds. Free. */
|
|
108
|
+
status(input: RemoteAgentTaskInput & {
|
|
109
|
+
readonly wait: boolean;
|
|
110
|
+
}): Promise<SkillInvocationResult>;
|
|
111
|
+
/** Cancels a running task (task_cancel); what ran so far is billed. */
|
|
112
|
+
cancel(input: RemoteAgentTaskInput): Promise<SkillInvocationResult>;
|
|
113
|
+
}
|
|
90
114
|
export interface SkillRouterOptions {
|
|
91
115
|
readonly relayUrl?: string;
|
|
92
116
|
readonly modelId: string;
|
|
@@ -105,3 +129,4 @@ export interface SkillRouterOptions {
|
|
|
105
129
|
export declare function invokeSkill(options: SkillRouterOptions): Promise<SkillInvocationResult>;
|
|
106
130
|
/** Minimal stateless MCP client used by the router's remote path. */
|
|
107
131
|
export declare const remoteAgentMcpInvoker: RemoteAgentMcpInvoker;
|
|
132
|
+
export declare const remoteAgentTaskClient: RemoteAgentTaskClient;
|
package/dist/skill/router.js
CHANGED
|
@@ -63,15 +63,11 @@ export async function invokeSkill(options) {
|
|
|
63
63
|
/** Minimal stateless MCP client used by the router's remote path. */
|
|
64
64
|
export const remoteAgentMcpInvoker = {
|
|
65
65
|
async invoke(input) {
|
|
66
|
-
|
|
66
|
+
return taskResult(await postInvoke(input, {
|
|
67
67
|
input: input.task,
|
|
68
68
|
...(input.capabilityId === undefined ? {} : { capabilityId: input.capabilityId }),
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (result === undefined || result.isError === true || text.length === 0) {
|
|
72
|
-
throw new SkillInvocationError("remote_authorization_failed");
|
|
73
|
-
}
|
|
74
|
-
return Object.freeze({ text });
|
|
69
|
+
...(input.progressSummary === undefined ? {} : { progressSummary: input.progressSummary }),
|
|
70
|
+
}));
|
|
75
71
|
},
|
|
76
72
|
async invokeTurn(input) {
|
|
77
73
|
const result = await postInvoke(input, { input: input.task, tools: input.tools, ...(input.items.length === 0 ? {} : { items: input.items }) });
|
|
@@ -98,8 +94,33 @@ export const remoteAgentMcpInvoker = {
|
|
|
98
94
|
return Object.freeze({ status: "completed", text, ...extra });
|
|
99
95
|
},
|
|
100
96
|
};
|
|
101
|
-
|
|
102
|
-
async
|
|
97
|
+
export const remoteAgentTaskClient = {
|
|
98
|
+
async status(input) {
|
|
99
|
+
return taskResult(await postInvoke(input, { taskId: input.taskId, ...(input.wait ? { wait: true } : {}) }, "task_status"));
|
|
100
|
+
},
|
|
101
|
+
async cancel(input) {
|
|
102
|
+
return taskResult(await postInvoke(input, { taskId: input.taskId }, "task_cancel"));
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
/** The text and, for an Agent task, its state, task id and newest progress line. */
|
|
106
|
+
function taskResult(result) {
|
|
107
|
+
const text = resultText(result);
|
|
108
|
+
if (result === undefined || result.isError === true || text.length === 0) {
|
|
109
|
+
throw new SkillInvocationError("remote_authorization_failed");
|
|
110
|
+
}
|
|
111
|
+
const structured = isRecord(result.structuredContent) ? result.structuredContent : {};
|
|
112
|
+
const state = structured.state === "running" || structured.state === "completed" || structured.state === "failed" || structured.state === "canceled" ? structured.state : undefined;
|
|
113
|
+
const taskId = typeof structured.taskId === "string" && /^[A-Za-z0-9_-]{1,128}$/u.test(structured.taskId) ? structured.taskId : undefined;
|
|
114
|
+
const progressSummary = typeof structured.progressSummary === "string" && structured.progressSummary.length > 0 ? structured.progressSummary.slice(0, 200) : undefined;
|
|
115
|
+
return Object.freeze({
|
|
116
|
+
text,
|
|
117
|
+
...(state === undefined ? {} : { state }),
|
|
118
|
+
...(taskId === undefined ? {} : { taskId }),
|
|
119
|
+
...(progressSummary === undefined ? {} : { progressSummary }),
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/** POST one tools/call (`invoke` unless told otherwise) and return its JSON-RPC result, or throw the typed error the router callers expect. */
|
|
123
|
+
async function postInvoke(input, args, tool = "invoke") {
|
|
103
124
|
const endpoint = new URL(`/mcp/${encodeURIComponent(input.modelId)}`, input.relayUrl);
|
|
104
125
|
const response = await fetch(endpoint, {
|
|
105
126
|
method: "POST",
|
|
@@ -114,7 +135,7 @@ async function postInvoke(input, args) {
|
|
|
114
135
|
jsonrpc: "2.0",
|
|
115
136
|
id: "skill-invoke",
|
|
116
137
|
method: "tools/call",
|
|
117
|
-
params: { name:
|
|
138
|
+
params: { name: tool, arguments: args },
|
|
118
139
|
}),
|
|
119
140
|
...(input.signal === undefined ? {} : { signal: input.signal }),
|
|
120
141
|
});
|
package/dist/skill/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/skill/router.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,6BAA6B,GAE9B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/skill/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ declare const defaults: {
|
|
|
13
13
|
lockInstallation: typeof lockInstallation;
|
|
14
14
|
};
|
|
15
15
|
export type AutoUpdateDependencies = typeof defaults;
|
|
16
|
-
/** The device-local switch: a file, so the service and `frely
|
|
16
|
+
/** The device-local switch: a file, so the service and `frely link auto-update` need no shared process. Off when missing. */
|
|
17
17
|
export declare function autoUpdatePath(): string;
|
|
18
18
|
export declare function readAutoUpdate(path?: string): Promise<boolean>;
|
|
19
19
|
export declare function writeAutoUpdate(enabled: boolean, path?: string): Promise<void>;
|
|
@@ -7,7 +7,7 @@ import { inspectInstallation } from "./installation.js";
|
|
|
7
7
|
import { compareVersions, latestRelease } from "./release.js";
|
|
8
8
|
import { installedVersion, installPackage, lockInstallation, prepareStandalone } from "./update.js";
|
|
9
9
|
const defaults = { inspectInstallation, latestRelease, installedVersion, prepareStandalone, installPackage, lockInstallation };
|
|
10
|
-
/** The device-local switch: a file, so the service and `frely
|
|
10
|
+
/** The device-local switch: a file, so the service and `frely link auto-update` need no shared process. Off when missing. */
|
|
11
11
|
export function autoUpdatePath() {
|
|
12
12
|
return join(process.env.XDG_CONFIG_HOME || join(homedir(), ".config"), "frely", "auto-update");
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/update/auto-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAsB,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAuB,MAAM,aAAa,CAAC;AAIzH,MAAM,QAAQ,GAAG,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;AAG/H,
|
|
1
|
+
{"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/update/auto-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAsB,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAuB,MAAM,aAAa,CAAC;AAIzH,MAAM,QAAQ,GAAG,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;AAG/H,6HAA6H;AAC7H,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;AACjG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAI,GAAG,cAAc,EAAE;IAC1D,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC;AACxE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAgB,EAAE,IAAI,GAAG,cAAc,EAAE;IAC7E,IAAI,CAAC,OAAO,EAAE,CAAC;QAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAC1D,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,+IAA+I;AAC/I,MAAM,UAAU,oBAAoB,KAAa,OAAO,GAAG,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;AACvF,IAAI,UAA+B,CAAC;AACpC,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAgB,EAAE,IAAI,GAAG,oBAAoB,EAAE;IACvF,IAAI,UAAU,KAAK,OAAO;QAAE,OAAO;IACnC,UAAU,GAAG,OAAO,CAAC;IACrB,MAAM,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,OAAO,CAAC,MAAM,cAAc,EAAE,CAAC,IAAI,CAAC,MAAM,cAAc,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;AACpF,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,WAAW;IAEO;IADrB,OAAO,GAAG,KAAK,CAAC;IACxB,YAA6B,OAAmJ;QAAnJ,YAAO,GAAP,OAAO,CAA4I;IAAG,CAAC;IAEpL,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;QACjH,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAAE,OAAO,UAAU,CAAC;YACvD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,mBAAmB,EAAE,CAAC;YACnD,IAAI,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC;gBAAE,OAAO,aAAa,CAAC;YACtF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO,SAAS,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,OAAO,MAAM,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YACtD,IAAI,QAAoC,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,KAAK,YAAY,CAAC;gBACxD,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;oBACzE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;iBAC9I,CAAC;gBACF,wIAAwI;gBACxI,IAAI,MAAM,GAAG,KAAK,CAAC;gBACnB,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,CAAC;wBAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC;wBAAC,OAAO,MAAM,CAAC;oBAAC,CAAC;oBAC7D,IAAI,CAAC,IAAI,CAAC,IAAI;wBAAE,OAAO,MAAM,CAAC;gBAChC,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACvB,IAAI,MAAM,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,OAAO;wBAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;gBAC7I,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACzC,MAAM,KAAK,CAAC;gBACd,CAAC;wBAAS,CAAC;oBAAC,IAAI,MAAM;wBAAE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAAC,CAAC;gBACxC,UAAU,CAAC,GAAG,EAAE,6BAA6B,EAAE,EAAE,CAAC,CAAC;gBACnD,OAAO,SAAS,CAAC;YACnB,CAAC;oBAAS,CAAC;gBACT,MAAM,QAAQ,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC1C,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,GAAG,EAAE,0BAA0B,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YACvD,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAAC,CAAC;IACrC,CAAC;CACF;AAED,+HAA+H;AAC/H,MAAM,UAAU,eAAe,CAAC,OACqC;IACnE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAC/F,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAChI,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,QAAQ,CAAC;IAC5F,IAAI,KAAgD,CAAC;IACrD,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO;YAAE,QAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACzJ,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC;IACF,QAAQ,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -4,5 +4,5 @@ export interface WorkspaceCommandInput {
|
|
|
4
4
|
primary: string | null;
|
|
5
5
|
write: (text: string) => void;
|
|
6
6
|
}
|
|
7
|
-
/** `frely
|
|
7
|
+
/** `frely link workspace list|add <path>|remove <path>`. `args` is the normalized argv, e.g. ["mcp", "workspace", "add", "/path"]. */
|
|
8
8
|
export declare function runWorkspaceCommand({ args, primary: primaryInput, write }: WorkspaceCommandInput): Promise<void>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { realpath } from "node:fs/promises";
|
|
2
2
|
import { addWorkspace, ensureWorkspaceRegistered, listWorkspaces, removeWorkspace } from "./runtime/workspace-registry.js";
|
|
3
|
-
/** `frely
|
|
3
|
+
/** `frely link workspace list|add <path>|remove <path>`. `args` is the normalized argv, e.g. ["mcp", "workspace", "add", "/path"]. */
|
|
4
4
|
export async function runWorkspaceCommand({ args, primary: primaryInput, write }) {
|
|
5
5
|
if (!primaryInput)
|
|
6
|
-
throw new Error("MCP is not enabled. Run frely
|
|
6
|
+
throw new Error("MCP is not enabled. Run frely link on.");
|
|
7
7
|
const primary = await realpath(primaryInput);
|
|
8
8
|
// The primary workspace is always registered, so it is listed and routed like any other root.
|
|
9
9
|
await ensureWorkspaceRegistered(primary);
|
|
@@ -25,7 +25,7 @@ export async function runWorkspaceCommand({ args, primary: primaryInput, write }
|
|
|
25
25
|
: format(primary, roots));
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
28
|
-
throw new Error("Unknown workspace command. Run frely
|
|
28
|
+
throw new Error("Unknown workspace command. Run frely link workspace.");
|
|
29
29
|
}
|
|
30
30
|
function ordered(primary, roots) {
|
|
31
31
|
return [primary, ...roots.filter((root) => root !== primary)];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-command.js","sourceRoot":"","sources":["../src/workspace-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAS3H,
|
|
1
|
+
{"version":3,"file":"workspace-command.js","sourceRoot":"","sources":["../src/workspace-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAS3H,sIAAsI;AACtI,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAyB;IACrG,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC7C,8FAA8F;IAC9F,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,KAAK,CAAC,mBAAmB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC,CAAE,EAAE,OAAO,CAAC,CAAC;QACvD,KAAK,CAAC,kCAAkC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC3B,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI;YACzE,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,KAAe;IAC/C,OAAO,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,MAAM,CAAC,OAAe,EAAE,KAAe;IAC9C,OAAO,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7I,CAAC"}
|
package/package.json
CHANGED
|
@@ -7,12 +7,12 @@ Run `frely help --agent --json` for the installed CLI's current capabilities and
|
|
|
7
7
|
|
|
8
8
|
Follow the returned command contract instead of remembered command syntax. If the command is unavailable, report that the installed CLI needs an update.
|
|
9
9
|
|
|
10
|
-
When `frely api call` is refused because the owner must approve it, rerun it with `--wait`: tell the user the approval link first, then run the command in the foreground (tool timeout of at least 10 minutes, never backgrounded or killed). It
|
|
10
|
+
When `frely api call` is refused because the owner must approve it, rerun it with `--wait`: tell the user the approval link first, then run the command in the foreground (tool timeout of at least 10 minutes, never backgrounded or killed). It runs the call once, by itself, as soon as the user approves on their phone or the web, so the user does not need to tell you; if you cannot keep a foreground command open, run `frely permission wait <approval code>` in the background (the refusal shows it) and rerun the call when it exits 0.
|
|
11
11
|
|
|
12
12
|
## Control the user's devices
|
|
13
13
|
|
|
14
14
|
`frely devices` lists the user's computers (online state, workspaces). Then use `frely run <device> -- <command>`, `frely read|ls|grep <device>:<path>`, `frely edit <device>:<path> --from <local file>`, and `frely tools` / `frely call <tool>` for anything else. The first of these commands asks the user to approve this computer once (a short code and a link; they type the code and confirm with a passkey or authenticator code).
|
|
15
15
|
|
|
16
|
-
Use `--out <file>` for large output instead of printing it. Exit codes: 0 done, 1 the CLI itself, 2 the tool or remote command failed, 3 approval needed, 4 not authorized (`frely controller login`), 5 device offline (the output says to run `frely
|
|
16
|
+
Use `--out <file>` for large output instead of printing it. Exit codes: 0 done, 1 the CLI itself, 2 the tool or remote command failed, 3 approval needed, 4 not authorized (`frely controller login`), 5 device offline (the output says to run `frely link on` there), 6 limit reached.
|
|
17
17
|
|
|
18
|
-
On exit code 3 the output has an approval link and a `frely permission wait <
|
|
18
|
+
On exit code 3 the output has an approval link and a `frely permission wait <approval code>` command. Give the user the link, then run `frely permission wait <short code> --then '<the original command>'` in the background: it runs the original command by itself once they approve, so they do not need to tell you. Do not read `~/.config/frely`.
|