pushary 1.9.103 → 1.9.104
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/CHANGELOG.md +4 -0
- package/README.md +1 -0
- package/dist/{api-3O3GJV3V.js → api-QOG7JVXE.js} +13 -12
- package/dist/bin/pushary-audit.d.ts +1 -0
- package/dist/bin/pushary-audit.js +263 -0
- package/dist/bin/pushary-bell-hook.js +31 -30
- package/dist/bin/pushary-bell.js +14 -13
- package/dist/bin/pushary-claude.js +42 -41
- package/dist/bin/pushary-clean.js +40 -39
- package/dist/bin/pushary-codex-bridge.js +25 -24
- package/dist/bin/pushary-codex-hook.js +39 -38
- package/dist/bin/pushary-codex-session.js +8 -8
- package/dist/bin/pushary-codex.js +17 -16
- package/dist/bin/pushary-connect.js +33 -32
- package/dist/bin/pushary-cowork.js +8 -8
- package/dist/bin/pushary-daemon.js +52 -50
- package/dist/bin/pushary-disconnect.js +32 -31
- package/dist/bin/pushary-display-hook.js +21 -20
- package/dist/bin/pushary-doctor.js +56 -54
- package/dist/bin/pushary-elicitation-hook.js +31 -30
- package/dist/bin/pushary-gemini-bridge.js +16 -15
- package/dist/bin/pushary-gemini-hook.js +34 -33
- package/dist/bin/pushary-hook.js +36 -35
- package/dist/bin/pushary-login.js +27 -26
- package/dist/bin/pushary-logout.js +33 -32
- package/dist/bin/pushary-mcp.js +14 -13
- package/dist/bin/pushary-mode.js +19 -18
- package/dist/bin/pushary-notification-hook.js +31 -30
- package/dist/bin/pushary-opencode-hook.js +33 -32
- package/dist/bin/pushary-permission-denied-hook.js +35 -34
- package/dist/bin/pushary-permission-hook.js +36 -35
- package/dist/bin/pushary-post-hook.js +31 -30
- package/dist/bin/pushary-prompt-hook.js +31 -30
- package/dist/bin/pushary-session-end-hook.js +33 -32
- package/dist/bin/pushary-session-start-hook.js +41 -40
- package/dist/bin/pushary-setup.js +71 -69
- package/dist/bin/pushary-stats.js +6 -6
- package/dist/bin/pushary-status.js +39 -38
- package/dist/bin/pushary-stop-hook.js +31 -30
- package/dist/bin/pushary-stopfailure-hook.js +31 -30
- package/dist/bin/pushary-suggestions.js +19 -18
- package/dist/bin/pushary-transcript-register.js +22 -21
- package/dist/bin/pushary-transcripts.js +30 -29
- package/dist/bin/pushary-upgrade.js +48 -46
- package/dist/bin/pushary-wait.js +19 -18
- package/dist/bin/pushary.js +11 -9
- package/dist/{chunk-YETNUPV5.js → chunk-2MRLDEQY.js} +3 -3
- package/dist/{chunk-KOUB4ZLX.js → chunk-3A7REECH.js} +1 -1
- package/dist/{chunk-O5ZKMUTP.js → chunk-3KEY3453.js} +6 -6
- package/dist/{chunk-JVE4P54I.js → chunk-4HBWXZPI.js} +5 -3
- package/dist/{chunk-WYJ6QM7K.js → chunk-4JBCPRWZ.js} +2 -2
- package/dist/{chunk-J6SSLXSU.js → chunk-4OLWSYX5.js} +4 -4
- package/dist/{chunk-JECH4NJL.js → chunk-4QI6SBNR.js} +6 -4
- package/dist/{chunk-UOE26LPT.js → chunk-5BX57BGT.js} +7 -7
- package/dist/{chunk-4FAJQPFY.js → chunk-5YVBVJOH.js} +330 -0
- package/dist/{chunk-4TVLPGJV.js → chunk-6B4R7HUV.js} +1 -1
- package/dist/{chunk-JKOAAIJD.js → chunk-7RHEZVAE.js} +5 -5
- package/dist/{chunk-RVSRPDRF.js → chunk-AE2BQ3XM.js} +2 -2
- package/dist/{chunk-SRE6XJ3K.js → chunk-AG7PFGGE.js} +7 -7
- package/dist/{chunk-O7ITTNDD.js → chunk-AYWX6M7J.js} +5 -3
- package/dist/{chunk-JUA7MX2V.js → chunk-BDSI2NEN.js} +4 -4
- package/dist/{chunk-KZERVKTD.js → chunk-BG4HHB7E.js} +2 -1
- package/dist/{chunk-ZCYLCD6L.js → chunk-CC4LGKEZ.js} +5 -5
- package/dist/{chunk-CQ7QE4W2.js → chunk-CFTPHNBY.js} +1 -1
- package/dist/{chunk-AFGMZZEB.js → chunk-FH6PHTUD.js} +2 -2
- package/dist/{chunk-IOQ3ZCAE.js → chunk-FQNMUJTK.js} +1 -1
- package/dist/{chunk-AWF5WICI.js → chunk-FVERRWDP.js} +2 -2
- package/dist/{chunk-KTM2X3XQ.js → chunk-FXTUSTQG.js} +16 -16
- package/dist/{chunk-ZXK46QT4.js → chunk-FYQHXN4X.js} +2 -2
- package/dist/{chunk-AZSOH2SF.js → chunk-GV2MF4NY.js} +2 -2
- package/dist/{chunk-4QO267OY.js → chunk-GV5TEADP.js} +1 -1
- package/dist/{chunk-FF7L4B3W.js → chunk-HB7FHRTT.js} +9 -9
- package/dist/{chunk-T7G6IIV4.js → chunk-HHEFOGT2.js} +3 -3
- package/dist/{chunk-3OIUMHHO.js → chunk-HJ4EBHK4.js} +2 -2
- package/dist/{chunk-MK2XE66G.js → chunk-HXZYBYBD.js} +3 -3
- package/dist/{chunk-SA4PCB6N.js → chunk-I3T5YV5I.js} +7 -7
- package/dist/{chunk-KLJ2CTT7.js → chunk-ID4BZRBW.js} +4 -4
- package/dist/{chunk-Y7KRX7U4.js → chunk-IVAXF3JG.js} +1 -1
- package/dist/{chunk-RMFL62HR.js → chunk-JGRBWTDW.js} +14 -12
- package/dist/{chunk-WPK2UWDU.js → chunk-JMTOQXHV.js} +2 -2
- package/dist/{chunk-QD57EL3I.js → chunk-JVZVO3K5.js} +3 -3
- package/dist/{chunk-KACD6W6J.js → chunk-KDIZS7FN.js} +1 -1
- package/dist/{chunk-T6TQETDN.js → chunk-LIDIA5JW.js} +4 -4
- package/dist/{chunk-G7RMOSRX.js → chunk-M7BDKARZ.js} +1 -1
- package/dist/{chunk-Y3SZVZF6.js → chunk-N4RIGNDX.js} +2 -2
- package/dist/{chunk-7BIVBOD5.js → chunk-NGY2WS3X.js} +5 -5
- package/dist/{chunk-HYAQIKYB.js → chunk-NKA2PEQQ.js} +6 -6
- package/dist/{chunk-MP3SEXXJ.js → chunk-OFRQNTJD.js} +1 -1
- package/dist/{chunk-NZQEABRO.js → chunk-OPV6724W.js} +13 -11
- package/dist/{chunk-SXAZPWL7.js → chunk-ORIVT4BL.js} +8 -6
- package/dist/{chunk-V5DV7XZN.js → chunk-PK6LBL3Z.js} +4 -4
- package/dist/{chunk-6N5DQG5F.js → chunk-PYUN7HNY.js} +2 -2
- package/dist/chunk-QENTGE75.js +86 -0
- package/dist/{chunk-PM34Z5WX.js → chunk-RDUY7MKN.js} +6 -6
- package/dist/{chunk-X3HBR57D.js → chunk-RUN772MN.js} +7 -7
- package/dist/{chunk-VD6CAELE.js → chunk-RYUIXLZ5.js} +4 -4
- package/dist/{chunk-2PR5EP7N.js → chunk-SJCHJQKT.js} +4 -4
- package/dist/{chunk-EOD3DBIN.js → chunk-SJJCCFD5.js} +3 -3
- package/dist/{chunk-3K7PB5LI.js → chunk-SPM4VNED.js} +3 -3
- package/dist/{chunk-3Q2X3T3U.js → chunk-SVZPRTCK.js} +1 -1
- package/dist/{chunk-UQWEH7CK.js → chunk-TMJK3CLD.js} +5 -5
- package/dist/{chunk-AHIAB7JQ.js → chunk-TYH7SNKD.js} +1 -1
- package/dist/{chunk-COBOR3ST.js → chunk-TYM6IH5F.js} +6 -4
- package/dist/{chunk-VJOMBYY5.js → chunk-U5DBYW63.js} +1 -1
- package/dist/{chunk-TLERJKSE.js → chunk-UL52HYKN.js} +1 -1
- package/dist/{chunk-Z2TX7DVU.js → chunk-UUYLBSAU.js} +15 -13
- package/dist/{chunk-7OZOFTTB.js → chunk-UYJLXAP4.js} +7 -7
- package/dist/{chunk-BQHZRH6S.js → chunk-VAZCGOLS.js} +26 -110
- package/dist/{chunk-LURFSDCL.js → chunk-VUFHYMSP.js} +1 -1
- package/dist/{chunk-JPKJBKZE.js → chunk-VZY4GD4T.js} +9 -9
- package/dist/{chunk-5PW25NHB.js → chunk-WBLK4WLO.js} +5 -5
- package/dist/{chunk-2S5J5YI2.js → chunk-XDTE55H7.js} +5 -5
- package/dist/{chunk-3ITURBPE.js → chunk-XTMAVKO3.js} +5 -5
- package/dist/{chunk-E7WJQBK3.js → chunk-XXNXMX2G.js} +14 -14
- package/dist/{chunk-WZNLWDSL.js → chunk-XXPA3X6L.js} +7 -7
- package/dist/{chunk-PWGD5EP6.js → chunk-YDT6TVGN.js} +7 -1
- package/dist/{chunk-NMUI3ZWG.js → chunk-YPY4YCIZ.js} +1 -1
- package/dist/{chunk-PPY5N2E6.js → chunk-YU2EUD7O.js} +1 -1
- package/dist/{chunk-WVAJSBI2.js → chunk-ZBT3U2VB.js} +3 -3
- package/dist/{chunk-AVXG5QB2.js → chunk-ZUXDGVW4.js} +5 -5
- package/dist/{codex-app-cards-switch-D475JLP5.js → codex-app-cards-switch-6IDDWXYS.js} +13 -12
- package/dist/{codex-desktop-launch-WOPEZMO6.js → codex-desktop-launch-VP4TXVCM.js} +1 -1
- package/dist/{codex-session-launch-AWWECV2L.js → codex-session-launch-OACJB5NN.js} +22 -21
- package/dist/{config-A5EC37VZ.js → config-S7HAIK6E.js} +3 -3
- package/dist/{global-upgrade-V6FA6MUF.js → global-upgrade-OOFEGR4H.js} +12 -11
- package/dist/{identity-BEPQQHNR.js → identity-QSM6MVAH.js} +5 -4
- package/dist/{live-capabilities-EAM2QN73.js → live-capabilities-NSVW362T.js} +6 -5
- package/dist/{paths-2IEEYSHM.js → paths-KFRRYJWL.js} +4 -3
- package/dist/reapply-7H3VCPW4.js +65 -0
- package/dist/src/index.js +37 -36
- package/dist/{upgrade-lock-DLGVC34L.js → upgrade-lock-BJKRXNMC.js} +5 -4
- package/dist/usage-KGWL6WKQ.js +11 -0
- package/package.json +2 -1
- package/dist/reapply-LDCMRN6Q.js +0 -64
- package/dist/usage-U6H5UFS2.js +0 -11
|
@@ -12,91 +12,14 @@ import {
|
|
|
12
12
|
ownPackageName
|
|
13
13
|
} from "./chunk-ZVU6WMMU.js";
|
|
14
14
|
|
|
15
|
-
// src/cli/fsx.ts
|
|
16
|
-
import { copyFileSync, lstatSync, realpathSync, existsSync, fchmodSync, fsyncSync, mkdirSync, openSync, closeSync, readFileSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
|
|
17
|
-
import { dirname, join } from "path";
|
|
18
|
-
var readJsonSafe = (filePath) => {
|
|
19
|
-
let raw;
|
|
20
|
-
try {
|
|
21
|
-
raw = readFileSync(filePath, "utf-8");
|
|
22
|
-
} catch (err) {
|
|
23
|
-
const error = err;
|
|
24
|
-
if (error.code === "ENOENT") return { kind: "missing" };
|
|
25
|
-
return { kind: "unreadable", error };
|
|
26
|
-
}
|
|
27
|
-
if (raw.trim() === "") return { kind: "ok", value: {} };
|
|
28
|
-
try {
|
|
29
|
-
const value = JSON.parse(raw);
|
|
30
|
-
return { kind: "ok", value };
|
|
31
|
-
} catch (err) {
|
|
32
|
-
return { kind: "unparseable", error: err, raw };
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
var isFile = (path) => {
|
|
36
|
-
try {
|
|
37
|
-
return statSync(path).isFile();
|
|
38
|
-
} catch {
|
|
39
|
-
return false;
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
var readFileOrMissing = (path) => {
|
|
43
|
-
try {
|
|
44
|
-
return readFileSync(path, "utf-8");
|
|
45
|
-
} catch (error) {
|
|
46
|
-
if (error instanceof Error && "code" in error && error.code === "ENOENT") return null;
|
|
47
|
-
throw error;
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
var stamp = () => (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-");
|
|
51
|
-
var backupFile = (filePath) => {
|
|
52
|
-
const target = `${filePath}.pushary-backup-${stamp()}`;
|
|
53
|
-
copyFileSync(filePath, target);
|
|
54
|
-
return target;
|
|
55
|
-
};
|
|
56
|
-
var writeFileAtomic = (filePath, contents, mode, encoding = "utf-8") => {
|
|
57
|
-
const target = lstatSync(filePath, { throwIfNoEntry: false })?.isSymbolicLink() ? realpathSync(filePath) : filePath;
|
|
58
|
-
const dir = dirname(target);
|
|
59
|
-
if (!existsSync(dir)) mkdirSync(dir, { recursive: true });
|
|
60
|
-
const temp = join(dir, `.${process.pid}-${stamp()}.pushary-tmp`);
|
|
61
|
-
try {
|
|
62
|
-
writeFileSync(temp, contents, mode === void 0 ? encoding : { encoding, mode });
|
|
63
|
-
const handle = openSync(temp, "r+");
|
|
64
|
-
try {
|
|
65
|
-
if (mode !== void 0) fchmodSync(handle, mode);
|
|
66
|
-
fsyncSync(handle);
|
|
67
|
-
} finally {
|
|
68
|
-
closeSync(handle);
|
|
69
|
-
}
|
|
70
|
-
renameSync(temp, target);
|
|
71
|
-
} catch (err) {
|
|
72
|
-
try {
|
|
73
|
-
if (existsSync(temp)) unlinkSync(temp);
|
|
74
|
-
} catch {
|
|
75
|
-
}
|
|
76
|
-
throw err;
|
|
77
|
-
}
|
|
78
|
-
};
|
|
79
|
-
var writeJsonAtomic = (filePath, data, mode) => writeFileAtomic(filePath, `${JSON.stringify(data, null, 2)}
|
|
80
|
-
`, mode);
|
|
81
|
-
var writeJsonAtomicDurable = (filePath, data, mode) => {
|
|
82
|
-
writeJsonAtomic(filePath, data, mode);
|
|
83
|
-
if (process.platform === "win32") return;
|
|
84
|
-
const directory = openSync(dirname(filePath), "r");
|
|
85
|
-
try {
|
|
86
|
-
fsyncSync(directory);
|
|
87
|
-
} finally {
|
|
88
|
-
closeSync(directory);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
|
|
92
15
|
// src/shell-quote.ts
|
|
93
16
|
var shellDoubleQuoted = (text) => `"${text.replace(/(["\\$`])/g, "\\$1")}"`;
|
|
94
17
|
|
|
95
18
|
// src/npm.ts
|
|
96
19
|
import { promisify } from "util";
|
|
97
20
|
import { exec, execFile, execFileSync, execSync } from "child_process";
|
|
98
|
-
import { existsSync
|
|
99
|
-
import { dirname
|
|
21
|
+
import { existsSync, readFileSync, readlinkSync, realpathSync } from "fs";
|
|
22
|
+
import { dirname, isAbsolute, join, relative, resolve } from "path";
|
|
100
23
|
var latestReleaseUrl = (packageName) => `https://registry.npmjs.org/${packageName}/latest`;
|
|
101
24
|
var REGISTRY_TIMEOUT_MS = 5e3;
|
|
102
25
|
var LATEST_TAG = "latest";
|
|
@@ -165,8 +88,8 @@ var resolveGlobalBinary = (name) => {
|
|
|
165
88
|
return resolveGlobalBinaryAt(name, prefix);
|
|
166
89
|
};
|
|
167
90
|
var resolveGlobalBinaryAt = (name, prefix, platform = process.platform) => {
|
|
168
|
-
const candidates = platform === "win32" ? [
|
|
169
|
-
return candidates.find(
|
|
91
|
+
const candidates = platform === "win32" ? [join(prefix, `${name}.cmd`), join(prefix, name)] : [join(prefix, "bin", name)];
|
|
92
|
+
return candidates.find(existsSync);
|
|
170
93
|
};
|
|
171
94
|
var resolvePathBinary = (name, platform = process.platform) => {
|
|
172
95
|
try {
|
|
@@ -278,20 +201,20 @@ var npmInstallFailure = (err, platform = process.platform) => {
|
|
|
278
201
|
var resolveBinary = (name) => resolveGlobalBinary(name) ?? resolvePathBinary(name);
|
|
279
202
|
var resolvePackageVersionFromBinary = (binary, packageName) => {
|
|
280
203
|
try {
|
|
281
|
-
let dir =
|
|
204
|
+
let dir = dirname(realpathSync(binary));
|
|
282
205
|
const packagePath = packageName.split("/");
|
|
283
206
|
for (let depth = 0; depth < 8; depth++) {
|
|
284
207
|
for (const manifest of [
|
|
285
|
-
|
|
286
|
-
|
|
208
|
+
join(dir, "package.json"),
|
|
209
|
+
join(dir, "node_modules", ...packagePath, "package.json")
|
|
287
210
|
]) {
|
|
288
211
|
try {
|
|
289
|
-
const value = JSON.parse(
|
|
212
|
+
const value = JSON.parse(readFileSync(manifest, "utf8"));
|
|
290
213
|
if (value.name === packageName && typeof value.version === "string") return value.version;
|
|
291
214
|
} catch {
|
|
292
215
|
}
|
|
293
216
|
}
|
|
294
|
-
const parent =
|
|
217
|
+
const parent = dirname(dir);
|
|
295
218
|
if (parent === dir) break;
|
|
296
219
|
dir = parent;
|
|
297
220
|
}
|
|
@@ -327,11 +250,11 @@ var localImportsPresent = (entry, packageDir, seen = /* @__PURE__ */ new Set())
|
|
|
327
250
|
if (seen.has(entry)) return true;
|
|
328
251
|
seen.add(entry);
|
|
329
252
|
try {
|
|
330
|
-
const source =
|
|
253
|
+
const source = readFileSync(entry, "utf8");
|
|
331
254
|
for (const match of source.matchAll(/\b(?:import|export)\s+(?:[^"'()]*?\s+from\s+)?["'](\.{1,2}\/[^"']+)["']|\bimport\s*\(\s*["'](\.{1,2}\/[^"']+)["']/g)) {
|
|
332
|
-
const dependency = resolve(
|
|
255
|
+
const dependency = resolve(dirname(entry), match[1] ?? match[2]);
|
|
333
256
|
const localPath = relative(packageDir, dependency);
|
|
334
|
-
if (localPath.startsWith("..") || isAbsolute(localPath) || !
|
|
257
|
+
if (localPath.startsWith("..") || isAbsolute(localPath) || !existsSync(dependency)) return false;
|
|
335
258
|
if (/\.[cm]?js$/.test(dependency) && !localImportsPresent(dependency, packageDir, seen)) return false;
|
|
336
259
|
}
|
|
337
260
|
return true;
|
|
@@ -341,17 +264,17 @@ var localImportsPresent = (entry, packageDir, seen = /* @__PURE__ */ new Set())
|
|
|
341
264
|
};
|
|
342
265
|
var packageBinsPresent = (packageDir, prefix, platform = process.platform, requiredFiles = []) => {
|
|
343
266
|
try {
|
|
344
|
-
const manifest = JSON.parse(
|
|
267
|
+
const manifest = JSON.parse(readFileSync(join(packageDir, "package.json"), "utf8"));
|
|
345
268
|
if (!manifest.bin || typeof manifest.bin !== "object" || Array.isArray(manifest.bin)) return false;
|
|
346
269
|
const bins = Object.entries(manifest.bin);
|
|
347
270
|
if (bins.length === 0) return false;
|
|
348
|
-
if (!requiredFiles.every((path) =>
|
|
271
|
+
if (!requiredFiles.every((path) => existsSync(join(packageDir, path)))) return false;
|
|
349
272
|
const seen = /* @__PURE__ */ new Set();
|
|
350
273
|
return bins.every(([name, target]) => {
|
|
351
274
|
if (typeof target !== "string") return false;
|
|
352
|
-
const shims = platform === "win32" ? [
|
|
353
|
-
const entry =
|
|
354
|
-
return
|
|
275
|
+
const shims = platform === "win32" ? [join(prefix, `${name}.cmd`), join(prefix, name)] : [join(prefix, "bin", name)];
|
|
276
|
+
const entry = join(packageDir, target);
|
|
277
|
+
return existsSync(entry) && shims.some(existsSync) && localImportsPresent(entry, packageDir, seen);
|
|
355
278
|
});
|
|
356
279
|
} catch {
|
|
357
280
|
return false;
|
|
@@ -374,16 +297,16 @@ var globalPackageBinsPresent = (name, prefix, platform) => packageBinsPresent(gl
|
|
|
374
297
|
var errorCode = (error) => typeof error === "object" && error !== null && "code" in error ? error.code : void 0;
|
|
375
298
|
var realpathOrUndefined = (path) => {
|
|
376
299
|
try {
|
|
377
|
-
return
|
|
300
|
+
return realpathSync(path);
|
|
378
301
|
} catch {
|
|
379
302
|
return void 0;
|
|
380
303
|
}
|
|
381
304
|
};
|
|
382
305
|
var definedPaths = (paths) => paths.filter((path) => path !== void 0);
|
|
383
306
|
var readPosixCommandLink = (prefix) => {
|
|
384
|
-
const command =
|
|
307
|
+
const command = join(prefix, "bin", OWNERSHIP_PROBE_COMMAND);
|
|
385
308
|
try {
|
|
386
|
-
const target = resolve(
|
|
309
|
+
const target = resolve(dirname(command), readlinkSync(command));
|
|
387
310
|
return { kind: "resolved", targets: definedPaths([target, realpathOrUndefined(command)]) };
|
|
388
311
|
} catch (error) {
|
|
389
312
|
if (errorCode(error) === "ENOENT") return { kind: "absent" };
|
|
@@ -392,9 +315,9 @@ var readPosixCommandLink = (prefix) => {
|
|
|
392
315
|
}
|
|
393
316
|
};
|
|
394
317
|
var readWindowsCommandLink = (prefix) => {
|
|
395
|
-
const shim =
|
|
318
|
+
const shim = join(prefix, `${OWNERSHIP_PROBE_COMMAND}.cmd`);
|
|
396
319
|
try {
|
|
397
|
-
const target = cmdShimTarget(prefix,
|
|
320
|
+
const target = cmdShimTarget(prefix, readFileSync(shim, "utf8"));
|
|
398
321
|
return target === void 0 ? { kind: "unreadable" } : { kind: "resolved", targets: [target] };
|
|
399
322
|
} catch (error) {
|
|
400
323
|
return errorCode(error) === "ENOENT" ? { kind: "absent" } : { kind: "unreadable" };
|
|
@@ -403,7 +326,7 @@ var readWindowsCommandLink = (prefix) => {
|
|
|
403
326
|
var readCommandLink = (prefix, platform) => platform === "win32" ? readWindowsCommandLink(prefix) : readPosixCommandLink(prefix);
|
|
404
327
|
var readFolderManifest = (folder) => {
|
|
405
328
|
try {
|
|
406
|
-
return { kind: "read", manifest: JSON.parse(
|
|
329
|
+
return { kind: "read", manifest: JSON.parse(readFileSync(join(folder, "package.json"), "utf8")) };
|
|
407
330
|
} catch {
|
|
408
331
|
return { kind: "unreadable" };
|
|
409
332
|
}
|
|
@@ -476,9 +399,9 @@ var installGlobally = (options) => {
|
|
|
476
399
|
}
|
|
477
400
|
const started = (async () => {
|
|
478
401
|
if (!npmIsOnPath()) throw new NpmMissingError();
|
|
479
|
-
const { withUpgradeLock } = await import("./global-upgrade-
|
|
480
|
-
const { installWithUpgradeLock, ownsUpgradeLock } = await import("./upgrade-lock-
|
|
481
|
-
const { autoUpdateLock } = await import("./paths-
|
|
402
|
+
const { withUpgradeLock } = await import("./global-upgrade-OOFEGR4H.js");
|
|
403
|
+
const { installWithUpgradeLock, ownsUpgradeLock } = await import("./upgrade-lock-BJKRXNMC.js");
|
|
404
|
+
const { autoUpdateLock } = await import("./paths-KFRRYJWL.js");
|
|
482
405
|
let result = "skipped";
|
|
483
406
|
const install = async () => {
|
|
484
407
|
const platform = process.platform;
|
|
@@ -525,13 +448,6 @@ var atLeast = (version, floor) => compareVersion(version, floor) >= 0;
|
|
|
525
448
|
var formatVersion = (version) => version.join(".");
|
|
526
449
|
|
|
527
450
|
export {
|
|
528
|
-
readJsonSafe,
|
|
529
|
-
isFile,
|
|
530
|
-
readFileOrMissing,
|
|
531
|
-
backupFile,
|
|
532
|
-
writeFileAtomic,
|
|
533
|
-
writeJsonAtomic,
|
|
534
|
-
writeJsonAtomicDurable,
|
|
535
451
|
shellDoubleQuoted,
|
|
536
452
|
parseVersion,
|
|
537
453
|
compareVersion,
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
postLiveSession,
|
|
5
5
|
postLiveSessionUntilAccepted,
|
|
6
6
|
startLiveSessionHeartbeat
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-KDIZS7FN.js";
|
|
8
8
|
import {
|
|
9
9
|
CommandReceipts,
|
|
10
10
|
controllerCommandSchema
|
|
@@ -14,24 +14,24 @@ import {
|
|
|
14
14
|
describeIdleWindow,
|
|
15
15
|
idleDeadlinePassed,
|
|
16
16
|
startProcessOwnership
|
|
17
|
-
} from "./chunk-
|
|
18
|
-
import {
|
|
19
|
-
spawnClaude
|
|
20
|
-
} from "./chunk-XHKBHWLX.js";
|
|
17
|
+
} from "./chunk-HHEFOGT2.js";
|
|
21
18
|
import {
|
|
22
19
|
repositoryScopeFor
|
|
23
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-GV5TEADP.js";
|
|
24
21
|
import {
|
|
25
22
|
isAskUserResponse,
|
|
26
23
|
isDecisionStopped,
|
|
27
24
|
isWaitForAnswerResponse,
|
|
28
25
|
withdrawQuestion,
|
|
29
26
|
writeDegraded
|
|
30
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-CC4LGKEZ.js";
|
|
31
28
|
import {
|
|
32
29
|
callMcpTool,
|
|
33
30
|
isRetryable
|
|
34
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-PK6LBL3Z.js";
|
|
32
|
+
import {
|
|
33
|
+
spawnClaude
|
|
34
|
+
} from "./chunk-XHKBHWLX.js";
|
|
35
35
|
import {
|
|
36
36
|
AGENT_QUESTION_DESCRIPTION_MAX,
|
|
37
37
|
AGENT_QUESTION_HEADER_MAX,
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
parseCodexQuestions,
|
|
53
53
|
planElicitationAsk,
|
|
54
54
|
readElicitationFields
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-5YVBVJOH.js";
|
|
56
56
|
|
|
57
57
|
// src/codex-question-owner.ts
|
|
58
58
|
import { createHash } from "crypto";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SETUP_FLAGS
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ZBT3U2VB.js";
|
|
4
4
|
import {
|
|
5
5
|
parseFlags
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-YPY4YCIZ.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-YU2EUD7O.js";
|
|
10
10
|
import {
|
|
11
11
|
NPX_LATEST_COMMAND
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-YDT6TVGN.js";
|
|
13
13
|
import {
|
|
14
14
|
CLAUDE_CONNECTOR_GUIDE,
|
|
15
15
|
CLAUDE_CONNECTOR_STEPS,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
CLAUDE_CONNECTOR_URL,
|
|
18
18
|
COWORK_CONNECTOR_LIMIT,
|
|
19
19
|
COWORK_STANDING_INSTRUCTIONS
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-5YVBVJOH.js";
|
|
21
21
|
|
|
22
22
|
// src/cli/cowork.ts
|
|
23
23
|
import { readFileSync } from "fs";
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
notificationAnswerStep
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3KEY3453.js";
|
|
4
4
|
import {
|
|
5
5
|
canChangeApprovalSettings
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-4JBCPRWZ.js";
|
|
7
7
|
import {
|
|
8
8
|
matchMacAccountStep,
|
|
9
9
|
retryAgentCommand
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4QI6SBNR.js";
|
|
11
11
|
import {
|
|
12
12
|
EXIT
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-BG4HHB7E.js";
|
|
14
14
|
import {
|
|
15
15
|
NPX_LATEST_COMMAND
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-YDT6TVGN.js";
|
|
17
17
|
|
|
18
18
|
// src/setup/closing.ts
|
|
19
19
|
var ACTIVITY_URL = "pushary.com/dashboard/agent/activity";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
configFilePath
|
|
3
|
+
} from "./chunk-3A7REECH.js";
|
|
1
4
|
import {
|
|
2
5
|
readJsonSafe,
|
|
3
6
|
writeJsonAtomic
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import {
|
|
6
|
-
configFilePath
|
|
7
|
-
} from "./chunk-KOUB4ZLX.js";
|
|
7
|
+
} from "./chunk-QENTGE75.js";
|
|
8
8
|
import {
|
|
9
9
|
readSetupOutcomeProperties
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-5YVBVJOH.js";
|
|
11
11
|
|
|
12
12
|
// src/diagnostics/service-runtime.ts
|
|
13
13
|
var unescapeXml = (value) => value.replaceAll(""", '"').replaceAll("'", "'").replaceAll("<", "<").replaceAll(">", ">").replaceAll("&", "&");
|
|
@@ -4,24 +4,24 @@ import {
|
|
|
4
4
|
outcomeOfFailedAsk,
|
|
5
5
|
reportMachineDenial,
|
|
6
6
|
storedWaitDeadline
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RUN772MN.js";
|
|
8
8
|
import {
|
|
9
9
|
isGatingMoment,
|
|
10
10
|
recordKeylessMoment
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-6B4R7HUV.js";
|
|
12
12
|
import {
|
|
13
13
|
isAdmitted,
|
|
14
14
|
readAdmissionRules
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-I3T5YV5I.js";
|
|
16
16
|
import {
|
|
17
17
|
isDeferAnswer,
|
|
18
18
|
oncePerSession
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-CFTPHNBY.js";
|
|
20
20
|
import {
|
|
21
21
|
activeHookSource,
|
|
22
22
|
activeIdentity,
|
|
23
23
|
namedSource
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-5BX57BGT.js";
|
|
25
25
|
import {
|
|
26
26
|
DEFAULT_SESSION,
|
|
27
27
|
approvalAwaitingRetry,
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
recordBlockedActionHint,
|
|
38
38
|
reportEvent,
|
|
39
39
|
settleQuestionsForToolUse
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-UUYLBSAU.js";
|
|
41
41
|
import {
|
|
42
42
|
UNNAMED_ACTION,
|
|
43
43
|
deriveAction,
|
|
@@ -48,11 +48,11 @@ import {
|
|
|
48
48
|
patchDeletesFiles,
|
|
49
49
|
permissionDeniedAction,
|
|
50
50
|
scopePathFor
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-OFRQNTJD.js";
|
|
52
52
|
import {
|
|
53
53
|
repoKeyFor,
|
|
54
54
|
repositoryScopeFor
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-GV5TEADP.js";
|
|
56
56
|
import {
|
|
57
57
|
askUser,
|
|
58
58
|
cancelQuestion,
|
|
@@ -69,20 +69,20 @@ import {
|
|
|
69
69
|
waitForQuestion,
|
|
70
70
|
waitsForThePhone,
|
|
71
71
|
withdrawQuestion
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-CC4LGKEZ.js";
|
|
73
73
|
import {
|
|
74
74
|
getMachineId
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-PYUN7HNY.js";
|
|
76
76
|
import {
|
|
77
77
|
claudeConfigDir
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-AYWX6M7J.js";
|
|
79
79
|
import {
|
|
80
80
|
getApiKey,
|
|
81
81
|
getBaseUrl
|
|
82
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-3A7REECH.js";
|
|
83
83
|
import {
|
|
84
84
|
NPX_LATEST_COMMAND
|
|
85
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-YDT6TVGN.js";
|
|
86
86
|
import {
|
|
87
87
|
AGENT_QUESTION_STRATEGY,
|
|
88
88
|
AGENT_QUESTION_TOOL,
|
|
@@ -139,7 +139,7 @@ import {
|
|
|
139
139
|
terminalStaysLiveForTheCall,
|
|
140
140
|
timeoutActionWithoutLocalPrompt,
|
|
141
141
|
unansweredRefusalReason
|
|
142
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-5YVBVJOH.js";
|
|
143
143
|
|
|
144
144
|
// src/terminal-answer-watch.ts
|
|
145
145
|
import { closeSync, openSync, readSync, statSync } from "fs";
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readMacAppAgentKey
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7RHEZVAE.js";
|
|
4
4
|
import {
|
|
5
5
|
API_KEYS_PATH
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-4JBCPRWZ.js";
|
|
7
|
+
import {
|
|
8
|
+
absoluteUrl
|
|
9
|
+
} from "./chunk-NGY2WS3X.js";
|
|
7
10
|
import {
|
|
8
11
|
findExportedKeyLines,
|
|
9
12
|
isAdoptedMacAppKey,
|
|
@@ -13,13 +16,10 @@ import {
|
|
|
13
16
|
readConfigFileKey,
|
|
14
17
|
readKeySource,
|
|
15
18
|
readMacAppKeyPrefix
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import {
|
|
18
|
-
absoluteUrl
|
|
19
|
-
} from "./chunk-7BIVBOD5.js";
|
|
19
|
+
} from "./chunk-NKA2PEQQ.js";
|
|
20
20
|
import {
|
|
21
21
|
isValidApiKey
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-5YVBVJOH.js";
|
|
23
23
|
|
|
24
24
|
// src/key-revocation.ts
|
|
25
25
|
var SELF_REVOKE_PATH = "/api/v1/server/keys/self/revoke";
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
DISCONNECT_AGENT_IDS,
|
|
3
3
|
SETUP_AGENT_CHOICES,
|
|
4
4
|
isApprovalMode
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-5YVBVJOH.js";
|
|
6
6
|
|
|
7
7
|
// src/cli/mode-request.ts
|
|
8
8
|
var parseDuration = (value) => {
|
|
@@ -112,6 +112,12 @@ var COMMAND_LIST = [
|
|
|
112
112
|
{ name: "mode", module: "pushary-mode", summary: "Choose where approval requests appear" },
|
|
113
113
|
{ name: "wait", module: "pushary-wait", summary: 'Show or set the "wait for your phone" ladder (pushary wait 45)' },
|
|
114
114
|
{ name: "stats", module: "pushary-stats", summary: "Show the approval moments your agents hit while not connected" },
|
|
115
|
+
{
|
|
116
|
+
name: "audit",
|
|
117
|
+
module: "pushary-audit",
|
|
118
|
+
summary: "Check a verifiable audit export: every hash, every signature, and the checkpoints you verified before",
|
|
119
|
+
detail: ["Download the file from Dashboard > Agent > Activity > Verifiable, then run: pushary audit verify <file>"]
|
|
120
|
+
},
|
|
115
121
|
{
|
|
116
122
|
name: "suggestions",
|
|
117
123
|
module: "pushary-suggestions",
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
parseFlags
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YPY4YCIZ.js";
|
|
4
4
|
import {
|
|
5
5
|
UsageError
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-YU2EUD7O.js";
|
|
7
7
|
import {
|
|
8
8
|
SETUP_AGENT_CHOICES,
|
|
9
9
|
isSetupConnectMode,
|
|
10
10
|
isValidApiKey,
|
|
11
11
|
normalizeAgentId
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5YVBVJOH.js";
|
|
13
13
|
|
|
14
14
|
// src/setup/options.ts
|
|
15
15
|
var AGENT_CHOICES = SETUP_AGENT_CHOICES;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
openCodeConfigDirFrom
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RDUY7MKN.js";
|
|
4
4
|
import {
|
|
5
5
|
nativeClaudeInstallPath
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-VUFHYMSP.js";
|
|
7
7
|
import {
|
|
8
8
|
grokHome
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5BX57BGT.js";
|
|
10
10
|
import {
|
|
11
11
|
claudeConfigDir,
|
|
12
12
|
clineDataDirectory,
|
|
13
13
|
codexHomeFrom
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-AYWX6M7J.js";
|
|
15
15
|
import {
|
|
16
16
|
HOOK_COMPATIBLE_PROFILES
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-5YVBVJOH.js";
|
|
18
18
|
|
|
19
19
|
// src/vscode-config.ts
|
|
20
20
|
import { homedir } from "os";
|
|
@@ -22,22 +22,23 @@ import {
|
|
|
22
22
|
turnCodexAppCardsOff,
|
|
23
23
|
turnCodexAppCardsOn,
|
|
24
24
|
whyLaunchctlFailed
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-TMJK3CLD.js";
|
|
26
|
+
import "./chunk-N4RIGNDX.js";
|
|
27
27
|
import "./chunk-XCEN33UP.js";
|
|
28
28
|
import "./chunk-QCGNGEGE.js";
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-OPV6724W.js";
|
|
30
30
|
import "./chunk-XHKBHWLX.js";
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-PYUN7HNY.js";
|
|
32
|
+
import "./chunk-NKA2PEQQ.js";
|
|
33
|
+
import "./chunk-FH6PHTUD.js";
|
|
34
|
+
import "./chunk-AYWX6M7J.js";
|
|
35
|
+
import "./chunk-VAZCGOLS.js";
|
|
36
|
+
import "./chunk-3A7REECH.js";
|
|
37
|
+
import "./chunk-QENTGE75.js";
|
|
38
|
+
import "./chunk-YDT6TVGN.js";
|
|
39
39
|
import "./chunk-ZVU6WMMU.js";
|
|
40
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-5YVBVJOH.js";
|
|
41
|
+
import "./chunk-E46NE7FB.js";
|
|
41
42
|
import "./chunk-MLKGABMK.js";
|
|
42
43
|
export {
|
|
43
44
|
CODEX_APP_CARDS_DIRECTORY,
|