@floh-solutions/pharos-cli 0.28.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/adopt-type.d.ts.map +1 -1
- package/dist/adopt-type.js +7 -2
- package/dist/adopt-type.js.map +1 -1
- package/dist/capabilities.d.ts +7 -0
- package/dist/capabilities.d.ts.map +1 -1
- package/dist/capabilities.js +25 -0
- package/dist/capabilities.js.map +1 -1
- package/dist/cli.d.ts +18 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +178 -86
- package/dist/cli.js.map +1 -1
- package/dist/commands/delegate.d.ts +143 -0
- package/dist/commands/delegate.d.ts.map +1 -0
- package/dist/commands/delegate.js +364 -0
- package/dist/commands/delegate.js.map +1 -0
- package/dist/commands/doctor.d.ts +8 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +179 -4
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/issue.d.ts.map +1 -1
- package/dist/commands/issue.js +89 -7
- package/dist/commands/issue.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +7 -3
- package/dist/commands/setup.js.map +1 -1
- package/dist/delegate/hosts.d.ts +83 -0
- package/dist/delegate/hosts.d.ts.map +1 -0
- package/dist/delegate/hosts.js +154 -0
- package/dist/delegate/hosts.js.map +1 -0
- package/dist/delegate/quote.d.ts +78 -0
- package/dist/delegate/quote.d.ts.map +1 -0
- package/dist/delegate/quote.js +134 -0
- package/dist/delegate/quote.js.map +1 -0
- package/dist/delegate/sessions.d.ts +113 -0
- package/dist/delegate/sessions.d.ts.map +1 -0
- package/dist/delegate/sessions.js +220 -0
- package/dist/delegate/sessions.js.map +1 -0
- package/dist/delegate/vsix.d.ts +122 -0
- package/dist/delegate/vsix.d.ts.map +1 -0
- package/dist/delegate/vsix.js +329 -0
- package/dist/delegate/vsix.js.map +1 -0
- package/package.json +5 -4
- package/skill/SKILL.md +67 -6
- package/vscode/README.md +30 -0
- package/vscode/pharos-bridge.json +10 -0
- package/vscode/pharos-bridge.vsix +0 -0
- package/dist/commands/pr.d.ts +0 -56
- package/dist/commands/pr.d.ts.map +0 -1
- package/dist/commands/pr.js +0 -202
- package/dist/commands/pr.js.map +0 -1
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { type AgentId, type HostId, type InstalledApp, type Mode } from "../delegate/hosts.js";
|
|
2
|
+
import { type SessionProbes } from "../delegate/sessions.js";
|
|
3
|
+
import { type InstalledExtension } from "../delegate/vsix.js";
|
|
4
|
+
import { type ExitCode, type Io } from "../output.js";
|
|
5
|
+
/**
|
|
6
|
+
* `pharos delegate` — hand a prompt to a coding agent in the app the person
|
|
7
|
+
* works in, sending it into the session that is already there or starting one.
|
|
8
|
+
*
|
|
9
|
+
* ## Two doors, one engine — again
|
|
10
|
+
*
|
|
11
|
+
* Pharos.app's "Ask Agent" menu is a GUI over this verb, the same way its
|
|
12
|
+
* Command line wizard is a GUI over `doctor` and `setup`. The app builds the
|
|
13
|
+
* prompt, calls this with `--json`, and renders the decoded outcome. It never
|
|
14
|
+
* parses `ps`, never speaks AppleScript and never opens the Argus socket: one
|
|
15
|
+
* detector, one launcher, and the drifting copy is the one nobody looks at.
|
|
16
|
+
* That is also why every refusal carries a **stable `reason` id** — the app
|
|
17
|
+
* renders facts, not scraped prose, and renaming one is a contract change.
|
|
18
|
+
*
|
|
19
|
+
* ## The routes, and why each is what it is (measured 2026-09-10)
|
|
20
|
+
*
|
|
21
|
+
* - **Terminal.app** — Apple Events. `do script <text> in <tab>` types into
|
|
22
|
+
* the tab whose tty the session holds and submits; with no session, `do
|
|
23
|
+
* script "cd … && claude '…'"` opens a window. Typing into another
|
|
24
|
+
* process's tty directly (`TIOCSTI`) is refused by the kernel, so the host
|
|
25
|
+
* has to do the typing.
|
|
26
|
+
* - **VS Code / Insiders** — a `vscode[-insiders]://floh-solutions.pharos/
|
|
27
|
+
* delegate?…` URI, opened with the system `open`, handled by OUR bridge
|
|
28
|
+
* extension. Measured against the Claude Code (2.1.228) and Codex (26.5803)
|
|
29
|
+
* extensions: neither takes a prompt from outside, and the `code` CLI runs
|
|
30
|
+
* no terminal command. The bridge is authoritative for the terminal it
|
|
31
|
+
* owns; this verb still pre-checks the host, the agent and the bridge so a
|
|
32
|
+
* missing piece is refused by name here rather than failing silently in an
|
|
33
|
+
* editor that never opened.
|
|
34
|
+
* - **Navarch** — refused `unsupported` until the argus repo gains a verb
|
|
35
|
+
* that finds-or-creates a worker on a folder without a board todo (#1378).
|
|
36
|
+
* Every operator action there needs an open todo today, and a delegation
|
|
37
|
+
* from Pharos has none: the work item is the todo.
|
|
38
|
+
*
|
|
39
|
+
* ## Refusals are on STDOUT, exit 2
|
|
40
|
+
*
|
|
41
|
+
* A refusal is a fact about this machine, not a failed call: the host is not
|
|
42
|
+
* installed, the bridge is missing, Automation was denied. It is emitted as
|
|
43
|
+
* `{ ok: false, reason, detail, … }` on stdout the way `doctor` emits an
|
|
44
|
+
* `ok: false` check, with exit 2 because the fix is on the machine and
|
|
45
|
+
* repeating the call unchanged cannot help. Only an unexpected failure — an
|
|
46
|
+
* Apple Event error that is not the Automation refusal, `open` itself dying —
|
|
47
|
+
* takes the CLI's ordinary route: `{ error: { kind, message } }` on stderr,
|
|
48
|
+
* exit 1.
|
|
49
|
+
*/
|
|
50
|
+
export interface DelegateOptions {
|
|
51
|
+
host: string | undefined;
|
|
52
|
+
agent: string | undefined;
|
|
53
|
+
/** VS Code hosts only. Defaults to `terminal`. */
|
|
54
|
+
mode: string | undefined;
|
|
55
|
+
/** Absolute path of the project folder the session must be in. */
|
|
56
|
+
folder: string | undefined;
|
|
57
|
+
/** The prompt, already built by the caller. */
|
|
58
|
+
text: string | undefined;
|
|
59
|
+
/** Detect and report, send nothing. */
|
|
60
|
+
dryRun: boolean;
|
|
61
|
+
pretty: boolean;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The closed set. The app renders these as facts; do not rename one without a
|
|
65
|
+
* note on the board and a matching change on the app side.
|
|
66
|
+
*/
|
|
67
|
+
export declare const REASONS: readonly ["host-not-installed", "agent-not-installed", "bridge-not-installed", "automation-denied", "folder-missing", "unsupported"];
|
|
68
|
+
export type Reason = (typeof REASONS)[number];
|
|
69
|
+
export interface SessionReport {
|
|
70
|
+
pid: number;
|
|
71
|
+
cwd: string;
|
|
72
|
+
name: string | null;
|
|
73
|
+
status: "idle" | "busy" | null;
|
|
74
|
+
tty: string | null;
|
|
75
|
+
}
|
|
76
|
+
export interface DelegateOutcome {
|
|
77
|
+
ok: true;
|
|
78
|
+
action: "sent" | "launched";
|
|
79
|
+
host: HostId;
|
|
80
|
+
agent: AgentId;
|
|
81
|
+
mode: Mode;
|
|
82
|
+
folder: string;
|
|
83
|
+
session: SessionReport | null;
|
|
84
|
+
detail: string;
|
|
85
|
+
/** Present, and true, only on `--dry-run`: `action` is what it WOULD do. */
|
|
86
|
+
dryRun?: true;
|
|
87
|
+
/** The URI handed to the bridge, on the VS Code hosts. */
|
|
88
|
+
uri?: string;
|
|
89
|
+
}
|
|
90
|
+
export interface DelegateRefusal {
|
|
91
|
+
ok: false;
|
|
92
|
+
reason: Reason;
|
|
93
|
+
detail: string;
|
|
94
|
+
host: HostId;
|
|
95
|
+
agent: AgentId;
|
|
96
|
+
mode: Mode;
|
|
97
|
+
folder: string;
|
|
98
|
+
}
|
|
99
|
+
/** The machine-facing pieces, injectable so the routes are testable without a Mac in a known state. */
|
|
100
|
+
export interface DelegateDeps {
|
|
101
|
+
findApp: (host: HostId, env: NodeJS.ProcessEnv) => Promise<InstalledApp | null>;
|
|
102
|
+
resolveOnPath: (executable: string, env: NodeJS.ProcessEnv) => Promise<string | null>;
|
|
103
|
+
probes: (env: NodeJS.ProcessEnv, claudePath: string | null) => SessionProbes;
|
|
104
|
+
installedExtensions: (host: HostId, env: NodeJS.ProcessEnv) => Promise<InstalledExtension[] | null>;
|
|
105
|
+
/** Run an AppleScript source with arguments; resolves to its result text. */
|
|
106
|
+
osascript: (source: string, args: string[]) => Promise<string>;
|
|
107
|
+
/** Hand a URI to the system. */
|
|
108
|
+
open: (uri: string) => Promise<void>;
|
|
109
|
+
}
|
|
110
|
+
export declare const SYSTEM_DEPS: DelegateDeps;
|
|
111
|
+
/**
|
|
112
|
+
* The environment to hand a launched app or shell, with this session's
|
|
113
|
+
* Claude Code identity removed.
|
|
114
|
+
*
|
|
115
|
+
* A `pharos delegate` run BY a coding agent inherits that agent's
|
|
116
|
+
* `CLAUDECODE`, `CLAUDE_PID` and `CLAUDE_CODE_*` variables. Passed on to `open`
|
|
117
|
+
* or an auto-launched Terminal, they stamp the launched agent as a *child* of
|
|
118
|
+
* the launcher's session — invisible to `claude agents --json`, with its
|
|
119
|
+
* transcript off — which is exactly the session both this verb and the bridge
|
|
120
|
+
* rely on `agents --json` to find. `CLAUDE_CODE_SSE_PORT` is kept: it points a
|
|
121
|
+
* child at a shared MCP server rather than at the parent's identity, and
|
|
122
|
+
* dropping it would break that connection without helping here.
|
|
123
|
+
*/
|
|
124
|
+
export declare function childEnv(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
125
|
+
export declare function runDelegate(io: Io, env: NodeJS.ProcessEnv, options: DelegateOptions, deps?: DelegateDeps): Promise<ExitCode>;
|
|
126
|
+
/**
|
|
127
|
+
* The URI the bridge handles.
|
|
128
|
+
*
|
|
129
|
+
* **Every value is percent-encoded TWICE.** VS Code decodes the query once
|
|
130
|
+
* before any extension sees it (`Uri.parse` percent-decodes the query
|
|
131
|
+
* component — measured by the bridge track with `vscode-uri`, the class the
|
|
132
|
+
* workbench uses), so a single encoding breaks on any prompt holding `&`,
|
|
133
|
+
* `=`, `+` or `%`: `text=a%26b` would arrive as `text=a&b` and split. The
|
|
134
|
+
* bridge refuses a query with unknown keys, so that failure would be loud
|
|
135
|
+
* rather than a silently truncated prompt — but loud is still failed.
|
|
136
|
+
*/
|
|
137
|
+
export declare function delegateUri(scheme: "vscode" | "vscode-insiders", job: {
|
|
138
|
+
folder: string;
|
|
139
|
+
agent: AgentId;
|
|
140
|
+
mode: Mode;
|
|
141
|
+
text: string;
|
|
142
|
+
}): string;
|
|
143
|
+
//# sourceMappingURL=delegate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate.d.ts","sourceRoot":"","sources":["../../src/commands/delegate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
|
+
import { stat } from "node:fs/promises";
|
|
3
|
+
import { isAbsolute, join } from "node:path";
|
|
4
|
+
import { promisify } from "node:util";
|
|
5
|
+
import { findApp, HOSTS, HOST_IDS, AGENT_IDS, MODES, isAgentId, isHostId, isMode, } from "../delegate/hosts.js";
|
|
6
|
+
import { asTypedInput, LAUNCH_SCRIPT, launchCommand, SEND_TO_TAB_SCRIPT } from "../delegate/quote.js";
|
|
7
|
+
import { chooseSession, findSessions, systemProbes, } from "../delegate/sessions.js";
|
|
8
|
+
import { BRIDGE_EXTENSION_ID, CLAUDE_EXTENSION_ID, extensionsDirectory, installedExtensions, } from "../delegate/vsix.js";
|
|
9
|
+
import { CliError, EXIT_FAILED, EXIT_USAGE, emit, emitText, usageError } from "../output.js";
|
|
10
|
+
import { resolveOnPath } from "./doctor.js";
|
|
11
|
+
const run = promisify(execFile);
|
|
12
|
+
/**
|
|
13
|
+
* The closed set. The app renders these as facts; do not rename one without a
|
|
14
|
+
* note on the board and a matching change on the app side.
|
|
15
|
+
*/
|
|
16
|
+
export const REASONS = [
|
|
17
|
+
"host-not-installed",
|
|
18
|
+
"agent-not-installed",
|
|
19
|
+
"bridge-not-installed",
|
|
20
|
+
"automation-denied",
|
|
21
|
+
"folder-missing",
|
|
22
|
+
"unsupported",
|
|
23
|
+
];
|
|
24
|
+
export const SYSTEM_DEPS = {
|
|
25
|
+
findApp,
|
|
26
|
+
resolveOnPath,
|
|
27
|
+
probes: systemProbes,
|
|
28
|
+
installedExtensions,
|
|
29
|
+
osascript: async (source, args) => {
|
|
30
|
+
// `--` ends option parsing, so a prompt that begins with a dash is an
|
|
31
|
+
// argument and not a flag. Every variable value travels as argv; nothing
|
|
32
|
+
// is spliced into the script (see `delegate/quote.ts`).
|
|
33
|
+
const { stdout } = await run("/usr/bin/osascript", ["-e", source, "--", ...args], {
|
|
34
|
+
timeout: 30_000,
|
|
35
|
+
maxBuffer: 1024 * 1024,
|
|
36
|
+
// Scrubbed: if this Apple Event auto-launches Terminal, the app must not
|
|
37
|
+
// inherit a nested-session identity. See {@link childEnv}.
|
|
38
|
+
env: childEnv(process.env),
|
|
39
|
+
});
|
|
40
|
+
return stdout;
|
|
41
|
+
},
|
|
42
|
+
open: async (uri) => {
|
|
43
|
+
// **`open` hands the caller's environment to the app it launches** (measured
|
|
44
|
+
// by the bridge track, #1375): a VS Code launched with `CLAUDE_CODE_*` set
|
|
45
|
+
// gives every integrated terminal a nested-session identity for the app's
|
|
46
|
+
// whole lifetime, so a `claude` started in one registers as a child and
|
|
47
|
+
// never appears in `claude agents --json`. Scrubbed here at the source.
|
|
48
|
+
await run("/usr/bin/open", [uri], { timeout: 30_000, env: childEnv(process.env) });
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* The environment to hand a launched app or shell, with this session's
|
|
53
|
+
* Claude Code identity removed.
|
|
54
|
+
*
|
|
55
|
+
* A `pharos delegate` run BY a coding agent inherits that agent's
|
|
56
|
+
* `CLAUDECODE`, `CLAUDE_PID` and `CLAUDE_CODE_*` variables. Passed on to `open`
|
|
57
|
+
* or an auto-launched Terminal, they stamp the launched agent as a *child* of
|
|
58
|
+
* the launcher's session — invisible to `claude agents --json`, with its
|
|
59
|
+
* transcript off — which is exactly the session both this verb and the bridge
|
|
60
|
+
* rely on `agents --json` to find. `CLAUDE_CODE_SSE_PORT` is kept: it points a
|
|
61
|
+
* child at a shared MCP server rather than at the parent's identity, and
|
|
62
|
+
* dropping it would break that connection without helping here.
|
|
63
|
+
*/
|
|
64
|
+
export function childEnv(env) {
|
|
65
|
+
const clean = {};
|
|
66
|
+
for (const [key, value] of Object.entries(env)) {
|
|
67
|
+
if (key === "CLAUDECODE" || key === "CLAUDE_PID")
|
|
68
|
+
continue;
|
|
69
|
+
if (key.startsWith("CLAUDE_CODE_") && key !== "CLAUDE_CODE_SSE_PORT")
|
|
70
|
+
continue;
|
|
71
|
+
clean[key] = value;
|
|
72
|
+
}
|
|
73
|
+
return clean;
|
|
74
|
+
}
|
|
75
|
+
export async function runDelegate(io, env, options, deps = SYSTEM_DEPS) {
|
|
76
|
+
const host = oneOf(options.host, "--host", HOST_IDS, isHostId);
|
|
77
|
+
const agent = oneOf(options.agent, "--agent", AGENT_IDS, isAgentId);
|
|
78
|
+
const mode = options.mode === undefined ? "terminal" : oneOf(options.mode, "--mode", MODES, isMode);
|
|
79
|
+
if (mode === "extension" && HOSTS[host].vscode === undefined) {
|
|
80
|
+
throw usageError(`--mode extension applies to the VS Code hosts only; ${HOSTS[host].name} has no extension to `
|
|
81
|
+
+ "open the prompt in. Leave --mode off, or pass --host vscode / vscode-insiders.", { host, mode });
|
|
82
|
+
}
|
|
83
|
+
const text = (options.text ?? "").replace(/\r\n/g, "\n").trim();
|
|
84
|
+
if (text === "") {
|
|
85
|
+
throw usageError("Nothing to send. Pass the prompt with --text, --file or --stdin.");
|
|
86
|
+
}
|
|
87
|
+
const folder = (options.folder ?? "").trim();
|
|
88
|
+
if (folder === "")
|
|
89
|
+
throw usageError("--folder is required: the absolute path of the project folder.");
|
|
90
|
+
if (!isAbsolute(folder)) {
|
|
91
|
+
throw usageError(`--folder must be absolute, got ${JSON.stringify(folder)}.`, { folder });
|
|
92
|
+
}
|
|
93
|
+
const base = { host, agent, mode, folder };
|
|
94
|
+
const refuse = (reason, detail) => emitRefusal(io, options.pretty, { ok: false, reason, detail, ...base });
|
|
95
|
+
const succeed = (outcome) => emitOutcome(io, options.pretty, {
|
|
96
|
+
ok: true,
|
|
97
|
+
...base,
|
|
98
|
+
...outcome,
|
|
99
|
+
...(options.dryRun ? { dryRun: true } : {}),
|
|
100
|
+
});
|
|
101
|
+
// Cheapest fact first: nothing else is worth asking about a folder that is
|
|
102
|
+
// not there, and it is the one refusal that is entirely the caller's to fix.
|
|
103
|
+
const info = await stat(folder).catch(() => null);
|
|
104
|
+
if (info === null || !info.isDirectory()) {
|
|
105
|
+
return refuse("folder-missing", `${folder} is not a directory on this machine. The linked folder for this project has moved `
|
|
106
|
+
+ "or was never here — pick it again in Settings ▸ Agents.");
|
|
107
|
+
}
|
|
108
|
+
const app = await deps.findApp(host, env);
|
|
109
|
+
if (app === null) {
|
|
110
|
+
return refuse("host-not-installed", `${HOSTS[host].name} is not installed — looked up by bundle id ${HOSTS[host].bundleId} through `
|
|
111
|
+
+ "Spotlight and at the usual paths under /Applications and ~/Applications."
|
|
112
|
+
+ (HOSTS[host].cask === undefined ? "" : ` \`brew install --cask ${HOSTS[host].cask}\` installs it.`));
|
|
113
|
+
}
|
|
114
|
+
// Navarch is refused before the agent is even resolved: it cannot take a
|
|
115
|
+
// delegation at all yet, so an `agent-not-installed` about it would name the
|
|
116
|
+
// wrong problem.
|
|
117
|
+
if (host === "navarch") {
|
|
118
|
+
return refuse("unsupported", "Navarch cannot take a delegation yet. Every operator action on the Argus board needs an "
|
|
119
|
+
+ "open todo, and a delegation from Pharos has none — the work item is the todo. Todo #1378 "
|
|
120
|
+
+ "on the ask-agent board adds a `delegate` op to the argus repo (find-or-create a worker on "
|
|
121
|
+
+ "a folder and type into it); until it lands, choose Terminal or VS Code.");
|
|
122
|
+
}
|
|
123
|
+
// **May be null, and that is not always a refusal.** The Terminal route runs
|
|
124
|
+
// the agent by this path, so it must exist there; the VS Code extension route
|
|
125
|
+
// runs the agent's OWN bundled binary through the extension, so an agent off
|
|
126
|
+
// PATH is fine there. Each route decides — see {@link delegateToVsCode}.
|
|
127
|
+
const agentPath = await deps.resolveOnPath(agent, env);
|
|
128
|
+
if (host === "vscode" || host === "vscode-insiders") {
|
|
129
|
+
return delegateToVsCode(host, agent, mode, folder, text, agentPath, env, deps, options.dryRun, refuse, succeed);
|
|
130
|
+
}
|
|
131
|
+
if (agentPath === null)
|
|
132
|
+
return refuse("agent-not-installed", agentNotInstalled(agent, env));
|
|
133
|
+
return delegateToTerminal(agent, folder, text, agentPath, env, deps, options.dryRun, refuse, succeed);
|
|
134
|
+
}
|
|
135
|
+
/** The `agent-not-installed` detail — one place, because two routes reach it. */
|
|
136
|
+
function agentNotInstalled(agent, env) {
|
|
137
|
+
const entries = (env["PATH"] ?? "").split(":").filter((entry) => entry !== "").length;
|
|
138
|
+
return (`\`${agent}\` is not on the PATH this ran with (${entries} entries). A coding agent is your `
|
|
139
|
+
+ "login and is never installed by pharos — "
|
|
140
|
+
+ (agent === "claude" ? "`npm i -g @anthropic-ai/claude-code`" : "`npm i -g @openai/codex`")
|
|
141
|
+
+ " puts it there. If it IS installed, `pharos doctor` prints the PATH that was searched.");
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* The URI the bridge handles.
|
|
145
|
+
*
|
|
146
|
+
* **Every value is percent-encoded TWICE.** VS Code decodes the query once
|
|
147
|
+
* before any extension sees it (`Uri.parse` percent-decodes the query
|
|
148
|
+
* component — measured by the bridge track with `vscode-uri`, the class the
|
|
149
|
+
* workbench uses), so a single encoding breaks on any prompt holding `&`,
|
|
150
|
+
* `=`, `+` or `%`: `text=a%26b` would arrive as `text=a&b` and split. The
|
|
151
|
+
* bridge refuses a query with unknown keys, so that failure would be loud
|
|
152
|
+
* rather than a silently truncated prompt — but loud is still failed.
|
|
153
|
+
*/
|
|
154
|
+
export function delegateUri(scheme, job) {
|
|
155
|
+
const twice = (value) => encodeURIComponent(encodeURIComponent(value));
|
|
156
|
+
return `${scheme}://${BRIDGE_EXTENSION_ID}/delegate?folder=${twice(job.folder)}&agent=${job.agent}`
|
|
157
|
+
+ `&mode=${job.mode}&text=${twice(job.text)}`;
|
|
158
|
+
}
|
|
159
|
+
async function delegateToVsCode(host, agent, mode, folder, text, agentPath, env, deps, dryRun, refuse, succeed) {
|
|
160
|
+
const spec = HOSTS[host];
|
|
161
|
+
const name = spec.name;
|
|
162
|
+
if (mode === "extension" && agent === "codex") {
|
|
163
|
+
return refuse("unsupported", "The Codex extension takes no prompt from outside — measured on 26.5803: its URI handler "
|
|
164
|
+
+ "routes only to its own views and `chatgpt.newChat` takes no arguments. Use --mode terminal "
|
|
165
|
+
+ "for Codex; the bridge runs it in an integrated terminal instead.");
|
|
166
|
+
}
|
|
167
|
+
const extensions = await deps.installedExtensions(host, env);
|
|
168
|
+
const bridge = extensions?.find((extension) => extension.id === BRIDGE_EXTENSION_ID);
|
|
169
|
+
if (bridge === undefined) {
|
|
170
|
+
const directory = extensionsDirectory(host, env) ?? "the extensions directory";
|
|
171
|
+
return refuse("bridge-not-installed", `The Pharos bridge (${BRIDGE_EXTENSION_ID}) is not installed in ${name} — looked in ${directory}`
|
|
172
|
+
+ (extensions === null ? ", which does not exist: that VS Code has never run" : "")
|
|
173
|
+
+ ". `pharos setup --install vscode-bridge` installs the one this pharos ships.");
|
|
174
|
+
}
|
|
175
|
+
const claudeExt = extensions?.find((extension) => extension.id === CLAUDE_EXTENSION_ID);
|
|
176
|
+
const usesExtensionBinary = mode === "extension" && agent === "claude" && claudeExt !== undefined;
|
|
177
|
+
// **The extension route needs no agent on PATH.** The Claude Code extension
|
|
178
|
+
// bundles its own binary at `resources/native-binary/claude` and the bridge
|
|
179
|
+
// runs it through `claude-vscode.terminal.open`, so an agent off PATH is only
|
|
180
|
+
// a refusal when there is no extension to fall back on. This is the ask's
|
|
181
|
+
// "if their VS Code has claude extensions installed … use the extension".
|
|
182
|
+
if (agentPath === null && !usesExtensionBinary) {
|
|
183
|
+
return refuse("agent-not-installed", agentNotInstalled(agent, env));
|
|
184
|
+
}
|
|
185
|
+
// Detect against the bundled binary when that is the only `claude` there, so
|
|
186
|
+
// the prediction still holds; the bridge does its own detection regardless.
|
|
187
|
+
const probePath = agent === "claude"
|
|
188
|
+
? agentPath ?? (claudeExt === undefined ? null : join(claudeExt.path, "resources", "native-binary", "claude"))
|
|
189
|
+
: null;
|
|
190
|
+
const { sessions, incomplete, detail: probeDetail } = await findSessions(agent, folder, deps.probes(env, probePath));
|
|
191
|
+
const session = chooseSession(sessions, host);
|
|
192
|
+
const uri = delegateUri(spec.vscode.scheme, { folder, agent, mode, text });
|
|
193
|
+
const agentName = agent === "claude" ? "Claude" : "Codex";
|
|
194
|
+
const claudeExtInstalled = mode === "extension" && agent === "claude" ? claudeExt !== undefined : true;
|
|
195
|
+
// The bridge decides; this is the same detection it runs, so the prediction
|
|
196
|
+
// is honest and the wording says whose call it is. One tense throughout —
|
|
197
|
+
// `would` in a dry run, plain past/present otherwise.
|
|
198
|
+
const hand = dryRun ? "Would hand this to" : "Handed to";
|
|
199
|
+
const core = session !== null
|
|
200
|
+
? `${hand} the Pharos bridge in ${name}, which ${dryRun ? "would send" : "sends"} it to the `
|
|
201
|
+
+ `${agentName} session there${describeStatus(session)}.`
|
|
202
|
+
: mode === "extension"
|
|
203
|
+
? `${hand} the Pharos bridge in ${name}, which ${dryRun ? "would open" : "opens"} it in the `
|
|
204
|
+
+ "Claude Code extension."
|
|
205
|
+
+ (claudeExtInstalled ? "" : " That extension is not installed there, so the bridge falls back to an integrated terminal.")
|
|
206
|
+
: `${hand} the Pharos bridge in ${name}, which ${dryRun ? "would start" : "starts"} ${agentName} `
|
|
207
|
+
+ `in an integrated terminal in ${folder}.`;
|
|
208
|
+
const detail = session === null && incomplete
|
|
209
|
+
? `${core} Detection was incomplete (${probeDetail ?? "a probe failed"}); a running session may exist that could not be found.`
|
|
210
|
+
: core;
|
|
211
|
+
if (!dryRun) {
|
|
212
|
+
try {
|
|
213
|
+
await deps.open(uri);
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
throw new CliError(`\`open\` could not hand the URI to ${name}: ${messageOf(error)}`, "internal", EXIT_FAILED, { host, uri });
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
return succeed({
|
|
220
|
+
action: session !== null ? "sent" : "launched",
|
|
221
|
+
session: report(session),
|
|
222
|
+
detail,
|
|
223
|
+
uri,
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Terminal.app — measured on Terminal 2.15 with Claude Code 2.1.268.
|
|
228
|
+
*
|
|
229
|
+
* `do script … in tab` writes to the tab's tty as typed input and follows it
|
|
230
|
+
* with a return, which the running agent's input box submits. A multi-line
|
|
231
|
+
* prompt is wrapped in bracketed paste so it lands as one message (see
|
|
232
|
+
* `delegate/quote.ts`). With no session in a Terminal tab, a window is opened
|
|
233
|
+
* running the agent with the prompt as its first message.
|
|
234
|
+
*
|
|
235
|
+
* Both are Apple Events. The first time, macOS asks whether the RESPONSIBLE
|
|
236
|
+
* process — Pharos.app when the app ran this, your terminal when you did —
|
|
237
|
+
* may control Terminal; a refusal comes back as `-1743` and is reported as
|
|
238
|
+
* `automation-denied` with the Settings pane named.
|
|
239
|
+
*/
|
|
240
|
+
async function delegateToTerminal(agent, folder, text, agentPath, env, deps, dryRun, refuse, succeed) {
|
|
241
|
+
const { sessions, incomplete, detail: probeDetail } = await findSessions(agent, folder, deps.probes(env, agent === "claude" ? agentPath : null));
|
|
242
|
+
const session = chooseSession(sessions, "terminal");
|
|
243
|
+
const agentName = agent === "claude" ? "Claude" : "Codex";
|
|
244
|
+
// `chooseSession` already dropped tty-less sessions, so `session` is a real
|
|
245
|
+
// send target. A found session tells us where it is; `[...new Set(…)]` so two
|
|
246
|
+
// sessions in one app do not read as "Navarch and Navarch".
|
|
247
|
+
const elsewhere = sessions.filter((found) => found.host !== "terminal");
|
|
248
|
+
const elsewhereApps = [
|
|
249
|
+
...new Set(elsewhere.map((found) => (found.host === null ? "another app" : HOSTS[found.host].name))),
|
|
250
|
+
];
|
|
251
|
+
const elsewhereNote = elsewhereApps.length === 0
|
|
252
|
+
? ""
|
|
253
|
+
: ` A ${agentName} session on this folder is running in ${elsewhereApps.join(" and ")}, not in Terminal.`;
|
|
254
|
+
const incompleteNote = session === null && incomplete
|
|
255
|
+
? ` Detection was incomplete (${probeDetail ?? "a probe failed"}); a running session may exist that could not be found.`
|
|
256
|
+
: "";
|
|
257
|
+
if (session !== null && session.tty !== null) {
|
|
258
|
+
if (dryRun) {
|
|
259
|
+
return succeed({
|
|
260
|
+
action: "sent",
|
|
261
|
+
session: report(session),
|
|
262
|
+
detail: `Would type the prompt into the ${agentName} session in Terminal${describeStatus(session)}.`,
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
const result = await appleEvent(deps, SEND_TO_TAB_SCRIPT, [session.tty, asTypedInput(text)], refuse);
|
|
266
|
+
if (typeof result !== "string")
|
|
267
|
+
return result;
|
|
268
|
+
if (result.trim() === "sent") {
|
|
269
|
+
return succeed({
|
|
270
|
+
action: "sent",
|
|
271
|
+
session: report(session),
|
|
272
|
+
detail: `Sent to the ${agentName} session in Terminal${describeStatus(session)}.`,
|
|
273
|
+
});
|
|
274
|
+
}
|
|
275
|
+
// The process tree says Terminal, but no window of this Terminal has a tab
|
|
276
|
+
// on that tty — a session in a tab that was closed, or a Terminal this
|
|
277
|
+
// instance cannot see. Falling through to a new window is the honest
|
|
278
|
+
// outcome, and the detail says why.
|
|
279
|
+
const launched = await launch(deps, folder, agentPath, text, refuse);
|
|
280
|
+
if (typeof launched !== "string")
|
|
281
|
+
return launched;
|
|
282
|
+
return succeed({
|
|
283
|
+
action: "launched",
|
|
284
|
+
session: null,
|
|
285
|
+
detail: `Opened a new Terminal window in ${folder} running ${agentName} with the prompt, because the `
|
|
286
|
+
+ `${agentName} session attributed to Terminal (pid ${session.pid}) holds no tab on tty `
|
|
287
|
+
+ `${session.tty} that could be typed into.`,
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
const opened = dryRun ? "Would open" : "Opened";
|
|
291
|
+
const detail = `${opened} a new Terminal window in ${folder} running ${agentName} with the prompt.${elsewhereNote}${incompleteNote}`;
|
|
292
|
+
if (dryRun) {
|
|
293
|
+
return succeed({ action: "launched", session: null, detail });
|
|
294
|
+
}
|
|
295
|
+
const launched = await launch(deps, folder, agentPath, text, refuse);
|
|
296
|
+
if (typeof launched !== "string")
|
|
297
|
+
return launched;
|
|
298
|
+
return succeed({ action: "launched", session: null, detail });
|
|
299
|
+
}
|
|
300
|
+
async function launch(deps, folder, agentPath, text, refuse) {
|
|
301
|
+
return appleEvent(deps, LAUNCH_SCRIPT, [launchCommand(folder, agentPath, text)], refuse);
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Run one AppleScript, turning the Automation refusal into its reason id and
|
|
305
|
+
* anything else into the CLI's ordinary failure.
|
|
306
|
+
*
|
|
307
|
+
* `-1743` is `errAEEventNotPermitted`: the responsible process is not allowed
|
|
308
|
+
* to send Apple Events to Terminal. It is the one error that is a setting
|
|
309
|
+
* rather than a fault, so it is the one that gets a stable id.
|
|
310
|
+
*/
|
|
311
|
+
async function appleEvent(deps, source, args, refuse) {
|
|
312
|
+
try {
|
|
313
|
+
return await deps.osascript(source, args);
|
|
314
|
+
}
|
|
315
|
+
catch (error) {
|
|
316
|
+
const message = messageOf(error);
|
|
317
|
+
if (/-1743\b/.test(message) || /not authori[sz]ed to send apple events/i.test(message)) {
|
|
318
|
+
return refuse("automation-denied", "macOS refused to let this process control Terminal (Apple Event error -1743). Allow it "
|
|
319
|
+
+ "in System Settings ▸ Privacy & Security ▸ Automation: under the app that ran this "
|
|
320
|
+
+ "command — Pharos when the app did, your terminal app when you did — switch on "
|
|
321
|
+
+ "Terminal, then try again. If no prompt ever appeared, the app was denied once and "
|
|
322
|
+
+ "macOS does not ask twice.");
|
|
323
|
+
}
|
|
324
|
+
throw new CliError(`Terminal did not take the Apple Event: ${message}`, "internal", EXIT_FAILED);
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
function describeStatus(session) {
|
|
328
|
+
const parts = [session.status ?? "status unknown", `pid ${session.pid}`];
|
|
329
|
+
if (session.tty !== null)
|
|
330
|
+
parts.push(session.tty);
|
|
331
|
+
return ` (${parts.join(", ")})`;
|
|
332
|
+
}
|
|
333
|
+
function report(session) {
|
|
334
|
+
if (session === null)
|
|
335
|
+
return null;
|
|
336
|
+
return { pid: session.pid, cwd: session.cwd, name: session.name, status: session.status, tty: session.tty };
|
|
337
|
+
}
|
|
338
|
+
function emitOutcome(io, pretty, outcome) {
|
|
339
|
+
return pretty ? emitText(io, outcome.detail) : emit(io, outcome);
|
|
340
|
+
}
|
|
341
|
+
function emitRefusal(io, pretty, refusal) {
|
|
342
|
+
if (pretty)
|
|
343
|
+
io.stdout(`${refusal.reason}: ${refusal.detail}`);
|
|
344
|
+
else
|
|
345
|
+
io.stdout(JSON.stringify(refusal, undefined, 2));
|
|
346
|
+
return EXIT_USAGE;
|
|
347
|
+
}
|
|
348
|
+
function oneOf(value, flag, allowed, guard) {
|
|
349
|
+
const given = (value ?? "").trim();
|
|
350
|
+
if (given === "")
|
|
351
|
+
throw usageError(`${flag} is required: one of ${allowed.join(", ")}.`, { flag, allowed });
|
|
352
|
+
if (!guard(given)) {
|
|
353
|
+
throw usageError(`${flag} takes one of ${allowed.join(", ")}, not ${JSON.stringify(given)}.`, {
|
|
354
|
+
flag,
|
|
355
|
+
given,
|
|
356
|
+
allowed,
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
return given;
|
|
360
|
+
}
|
|
361
|
+
function messageOf(error) {
|
|
362
|
+
return error instanceof Error ? error.message : String(error);
|
|
363
|
+
}
|
|
364
|
+
//# sourceMappingURL=delegate.js.map
|