@pushary/agent-hooks 1.9.82 → 1.9.83

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.
Files changed (134) hide show
  1. package/data/SKILL.md +132 -465
  2. package/data/cowork/SKILL.md +8 -8
  3. package/data/cursor-plugin/.cursor-plugin/plugin.json +1 -1
  4. package/data/cursor-plugin/CHANGELOG.md +8 -0
  5. package/data/cursor-plugin/commands/notify-when-done.md +1 -1
  6. package/data/cursor-plugin/rules/pushary.mdc +5 -4
  7. package/data/cursor-plugin/skills/pushary/SKILL.md +131 -464
  8. package/data/vscode-plugin/.claude-plugin/plugin.json +1 -1
  9. package/data/vscode-plugin/CHANGELOG.md +8 -0
  10. package/data/vscode-plugin/commands/notify-when-done.md +1 -1
  11. package/data/vscode-plugin/skills/pushary/SKILL.md +131 -464
  12. package/dist/{api-TZO5ACOS.js → api-EKLKVJQG.js} +10 -10
  13. package/dist/bin/pushary-bell-hook.js +25 -25
  14. package/dist/bin/pushary-bell.js +10 -10
  15. package/dist/bin/pushary-claude.js +26 -26
  16. package/dist/bin/pushary-clean.js +36 -33
  17. package/dist/bin/pushary-codex-bridge.js +21 -21
  18. package/dist/bin/pushary-codex-hook.js +30 -30
  19. package/dist/bin/pushary-codex-session.js +8 -8
  20. package/dist/bin/pushary-codex.js +13 -13
  21. package/dist/bin/pushary-connect.js +26 -26
  22. package/dist/bin/pushary-cowork.js +5 -5
  23. package/dist/bin/pushary-daemon.js +38 -38
  24. package/dist/bin/pushary-disconnect.js +25 -25
  25. package/dist/bin/pushary-display-hook.js +16 -16
  26. package/dist/bin/pushary-doctor.js +41 -41
  27. package/dist/bin/pushary-elicitation-hook.js +25 -25
  28. package/dist/bin/pushary-gemini-bridge.js +15 -15
  29. package/dist/bin/pushary-gemini-hook.js +27 -27
  30. package/dist/bin/pushary-hook.js +29 -29
  31. package/dist/bin/pushary-login.js +20 -20
  32. package/dist/bin/pushary-logout.js +24 -24
  33. package/dist/bin/pushary-mcp.js +11 -11
  34. package/dist/bin/pushary-mode.js +15 -15
  35. package/dist/bin/pushary-notification-hook.js +24 -24
  36. package/dist/bin/pushary-opencode-hook.js +26 -26
  37. package/dist/bin/pushary-permission-denied-hook.js +29 -29
  38. package/dist/bin/pushary-permission-hook.js +29 -29
  39. package/dist/bin/pushary-post-hook.js +24 -24
  40. package/dist/bin/pushary-prompt-hook.js +24 -24
  41. package/dist/bin/pushary-session-end-hook.js +26 -26
  42. package/dist/bin/pushary-session-start-hook.js +34 -34
  43. package/dist/bin/pushary-setup.js +45 -45
  44. package/dist/bin/pushary-stats.js +5 -5
  45. package/dist/bin/pushary-status.js +31 -31
  46. package/dist/bin/pushary-stop-hook.js +24 -24
  47. package/dist/bin/pushary-stopfailure-hook.js +24 -24
  48. package/dist/bin/pushary-suggestions.js +15 -15
  49. package/dist/bin/pushary-transcript-register.js +16 -16
  50. package/dist/bin/pushary-transcripts.js +18 -18
  51. package/dist/bin/pushary-upgrade.js +39 -39
  52. package/dist/bin/pushary-wait.js +15 -15
  53. package/dist/bin/pushary.js +7 -7
  54. package/dist/{chunk-O6T3CLWT.js → chunk-2B7YU4EK.js} +2 -2
  55. package/dist/{chunk-CV56MBIZ.js → chunk-2BDGGE2G.js} +6 -6
  56. package/dist/{chunk-TTTK44RK.js → chunk-2KVELJZX.js} +1 -1
  57. package/dist/{chunk-4TR4G7A4.js → chunk-35ABA2JQ.js} +1 -1
  58. package/dist/{chunk-IEAABGST.js → chunk-42RQG2VG.js} +4 -4
  59. package/dist/{chunk-AXE2ZOKS.js → chunk-44R5ATBR.js} +2 -2
  60. package/dist/{chunk-RL2KE6HG.js → chunk-46P53RBT.js} +13 -13
  61. package/dist/{chunk-GUM3WG4B.js → chunk-4P256ZAU.js} +6 -6
  62. package/dist/{chunk-APSYBSMG.js → chunk-5FM4BQOM.js} +10 -10
  63. package/dist/{chunk-UYTPCZ4M.js → chunk-5UPZR3C3.js} +4 -4
  64. package/dist/{chunk-OIW3JAWH.js → chunk-6BD5ZZLL.js} +5 -5
  65. package/dist/{chunk-6L2U3TP3.js → chunk-6CJ4MSZU.js} +6 -6
  66. package/dist/{chunk-S2DLTWFG.js → chunk-6PWU2LBT.js} +3 -3
  67. package/dist/{chunk-VHLRXIMC.js → chunk-7EIMASAA.js} +1 -1
  68. package/dist/{chunk-FHPSVTS5.js → chunk-7MRX5JYA.js} +9 -9
  69. package/dist/{chunk-DS5BR4K6.js → chunk-7YYJASRF.js} +2 -2
  70. package/dist/{chunk-OXKVR2FP.js → chunk-A3TMREYJ.js} +4 -4
  71. package/dist/{chunk-PJ26BODT.js → chunk-ACM4OINM.js} +1 -1
  72. package/dist/{chunk-DJILSCSU.js → chunk-ASEHRBD4.js} +3 -3
  73. package/dist/{chunk-UOUUTDWF.js → chunk-B2RDWRKR.js} +3 -3
  74. package/dist/{chunk-TO77OYLM.js → chunk-BG4YJEFE.js} +1 -1
  75. package/dist/{chunk-72CIQCBA.js → chunk-BJN7LMMK.js} +3 -3
  76. package/dist/{chunk-3BFCJZBU.js → chunk-BLM6O2QL.js} +1 -1
  77. package/dist/{chunk-TKFDPYXS.js → chunk-BUXMFD5C.js} +4 -4
  78. package/dist/{chunk-M5XNFUXN.js → chunk-C5EWCNJF.js} +1 -1
  79. package/dist/{chunk-GUI2NYCX.js → chunk-CVPVP4KP.js} +5 -5
  80. package/dist/{chunk-WUS2LFTM.js → chunk-ELYJNNXG.js} +10 -10
  81. package/dist/{chunk-FJZSJZCT.js → chunk-EMT7I74E.js} +3 -3
  82. package/dist/{chunk-NPBPH7KI.js → chunk-FEF3ILT6.js} +2 -2
  83. package/dist/{chunk-QJJJENT2.js → chunk-FGWRVOBP.js} +5 -5
  84. package/dist/{chunk-G5BYSS6C.js → chunk-G4HTRKCP.js} +6 -6
  85. package/dist/{chunk-5TMGEQAC.js → chunk-GGI6GTBL.js} +4 -4
  86. package/dist/{chunk-OXTRF7CP.js → chunk-GKWPIE6R.js} +1 -1
  87. package/dist/{chunk-L77YWBMK.js → chunk-GMZTABMV.js} +6 -6
  88. package/dist/{chunk-3V6G2GBJ.js → chunk-HCLP2QBX.js} +5 -5
  89. package/dist/{chunk-DX45XQ36.js → chunk-HIMEVTA5.js} +3 -3
  90. package/dist/{chunk-CXZAKS7S.js → chunk-IBULUTHA.js} +4 -4
  91. package/dist/{chunk-W3VRQEL3.js → chunk-IUZCERPQ.js} +2 -2
  92. package/dist/{chunk-RRMRP62I.js → chunk-J2PAQ3HF.js} +6 -6
  93. package/dist/{chunk-YAMNJXCD.js → chunk-JIC5PGNI.js} +17 -11
  94. package/dist/{chunk-LGWTITVK.js → chunk-KR3KVDXD.js} +1 -1
  95. package/dist/{chunk-WG67W43Y.js → chunk-L4THAI7Q.js} +1 -1
  96. package/dist/{chunk-ESRKYHWE.js → chunk-LLQBPDFQ.js} +2 -2
  97. package/dist/{chunk-UB7VUSSX.js → chunk-MA6FJ7U3.js} +3 -3
  98. package/dist/{chunk-ER4UCECJ.js → chunk-MND7HQ4P.js} +1 -1
  99. package/dist/{chunk-JNCD2ZG3.js → chunk-NDLOWIYO.js} +3 -3
  100. package/dist/{chunk-I4RNLK5G.js → chunk-OKZC4FHN.js} +3 -3
  101. package/dist/{chunk-C6FQ4YST.js → chunk-OUYFUUWB.js} +2 -2
  102. package/dist/{chunk-Z5HLACZT.js → chunk-QPJQAE2L.js} +4 -4
  103. package/dist/{chunk-JTYZEP4Q.js → chunk-S55CXRFD.js} +1 -1
  104. package/dist/{chunk-JXE4UQFJ.js → chunk-SN22OXY3.js} +1 -1
  105. package/dist/{chunk-3UBYG4G7.js → chunk-SSNLMIFR.js} +6 -6
  106. package/dist/{chunk-X2P3O4PX.js → chunk-SVAGMJOH.js} +1 -1
  107. package/dist/{chunk-ONUAAXAW.js → chunk-TBU4WXA4.js} +1 -1
  108. package/dist/{chunk-6355HHSR.js → chunk-TMBLBDPB.js} +2 -2
  109. package/dist/{chunk-6224ENW3.js → chunk-TNWQ6SKS.js} +3 -3
  110. package/dist/{chunk-J4TQYGHU.js → chunk-UNEJNC6X.js} +5 -5
  111. package/dist/{chunk-AM3H6HWG.js → chunk-VBY2AHSX.js} +1 -1
  112. package/dist/{chunk-LNSCANYY.js → chunk-VCMDY6YL.js} +3 -3
  113. package/dist/{chunk-IXVMMDIG.js → chunk-VRHVOMH2.js} +3 -3
  114. package/dist/{chunk-WLOVGZ7R.js → chunk-VUI4HK5O.js} +2 -2
  115. package/dist/{chunk-5LLZSX7I.js → chunk-XHHX63PY.js} +3 -3
  116. package/dist/{chunk-NEWGYFKC.js → chunk-XYEGVQST.js} +7 -7
  117. package/dist/{chunk-4S5XVFDV.js → chunk-Y32CL7XZ.js} +1 -1
  118. package/dist/{chunk-2BJZFA7X.js → chunk-YIAJOV2X.js} +3 -3
  119. package/dist/{chunk-D3QGBMO3.js → chunk-YZVAAY6B.js} +1 -1
  120. package/dist/{chunk-2TEX3APZ.js → chunk-ZGZ2L3QN.js} +5 -5
  121. package/dist/{chunk-N3C3D4AV.js → chunk-ZS27XXDA.js} +4 -4
  122. package/dist/{codex-app-cards-switch-3FAIEEB2.js → codex-app-cards-switch-CTAOTOCH.js} +11 -11
  123. package/dist/{codex-desktop-launch-LHMHRVGF.js → codex-desktop-launch-2DZVA5C7.js} +1 -1
  124. package/dist/{codex-session-launch-MXUBSTL2.js → codex-session-launch-TMOSTWEH.js} +18 -18
  125. package/dist/{config-MZDRETL2.js → config-OV6WLZXO.js} +3 -3
  126. package/dist/{global-upgrade-ZDENZA42.js → global-upgrade-FI42NJNL.js} +10 -10
  127. package/dist/{identity-YZRDJOGY.js → identity-PCA25OI5.js} +4 -4
  128. package/dist/{live-capabilities-KSQDWVT6.js → live-capabilities-CYFXHTOI.js} +5 -5
  129. package/dist/{paths-DYZZBVYI.js → paths-4YFDMUK6.js} +3 -3
  130. package/dist/{reapply-L3AI5KJH.js → reapply-PBQ46BPS.js} +27 -27
  131. package/dist/src/index.js +28 -28
  132. package/dist/{upgrade-lock-X7F2OFYB.js → upgrade-lock-22J2AMVY.js} +4 -4
  133. package/dist/{usage-TKZALYXF.js → usage-7KTINNRK.js} +3 -3
  134. package/package.json +1 -1
@@ -3,16 +3,16 @@ import {
3
3
  loadPin,
4
4
  savePin,
5
5
  verifyRecipients
6
- } from "./chunk-VHLRXIMC.js";
6
+ } from "./chunk-7EIMASAA.js";
7
7
  import {
8
8
  SESSION_HISTORY_RETENTION_DAYS
9
9
  } from "./chunk-MHUKYYYR.js";
10
10
  import {
11
11
  ensureDaemonRunning
12
- } from "./chunk-6L2U3TP3.js";
12
+ } from "./chunk-6CJ4MSZU.js";
13
13
  import {
14
14
  hookOwnerOf
15
- } from "./chunk-IEAABGST.js";
15
+ } from "./chunk-42RQG2VG.js";
16
16
  import {
17
17
  buildTranscriptRecords,
18
18
  decodePublicKey,
@@ -23,37 +23,37 @@ import {
23
23
  recordSealerFor,
24
24
  uploadTranscriptRecords,
25
25
  wrapSessionKey
26
- } from "./chunk-W3VRQEL3.js";
26
+ } from "./chunk-IUZCERPQ.js";
27
27
  import {
28
28
  external_exports
29
29
  } from "./chunk-XMSDA5WA.js";
30
30
  import {
31
31
  transcriptEnvironmentPreference,
32
32
  transcriptsEnabled
33
- } from "./chunk-OXTRF7CP.js";
33
+ } from "./chunk-GKWPIE6R.js";
34
34
  import {
35
35
  readTranscriptPreference
36
- } from "./chunk-CXZAKS7S.js";
36
+ } from "./chunk-IBULUTHA.js";
37
37
  import {
38
38
  claudeConfigDir,
39
39
  codexHome,
40
40
  pusharyDir
41
- } from "./chunk-UOUUTDWF.js";
41
+ } from "./chunk-B2RDWRKR.js";
42
42
  import {
43
43
  writeJsonAtomic,
44
44
  writeJsonAtomicDurable
45
- } from "./chunk-2BJZFA7X.js";
45
+ } from "./chunk-YIAJOV2X.js";
46
46
  import {
47
47
  getApiKey,
48
48
  getBaseUrl
49
- } from "./chunk-ONUAAXAW.js";
49
+ } from "./chunk-TBU4WXA4.js";
50
50
  import {
51
51
  PENDING_COMMAND_PREFIX,
52
52
  SESSION_HISTORY_BACKFILL_LIMIT_BYTES,
53
53
  canonicalJsonText,
54
54
  isRecord,
55
55
  redactSecretsFromContent
56
- } from "./chunk-WG67W43Y.js";
56
+ } from "./chunk-L4THAI7Q.js";
57
57
 
58
58
  // src/transcript-registration.ts
59
59
  import { createHash as createHash4 } from "crypto";
@@ -3,13 +3,13 @@ import {
3
3
  NpmMissingError,
4
4
  NpmPermissionError,
5
5
  writeFileAtomic
6
- } from "./chunk-2BJZFA7X.js";
6
+ } from "./chunk-YIAJOV2X.js";
7
7
  import {
8
8
  NPX_LATEST_COMMAND
9
- } from "./chunk-TTTK44RK.js";
9
+ } from "./chunk-2KVELJZX.js";
10
10
  import {
11
11
  readSetupAgentFailures
12
- } from "./chunk-WG67W43Y.js";
12
+ } from "./chunk-L4THAI7Q.js";
13
13
 
14
14
  // src/setup/config-write.ts
15
15
  var AgentConfigWriteError = class extends Error {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  configFilePath
3
- } from "./chunk-ONUAAXAW.js";
3
+ } from "./chunk-TBU4WXA4.js";
4
4
  import {
5
5
  normalizeInstallSource
6
- } from "./chunk-WG67W43Y.js";
6
+ } from "./chunk-L4THAI7Q.js";
7
7
 
8
8
  // src/install-source.ts
9
9
  import { readFileSync } from "fs";
@@ -1,20 +1,20 @@
1
1
  import {
2
2
  openCodeConfigDirFrom
3
- } from "./chunk-CV56MBIZ.js";
3
+ } from "./chunk-2BDGGE2G.js";
4
4
  import {
5
5
  nativeClaudeInstallPath
6
- } from "./chunk-TO77OYLM.js";
6
+ } from "./chunk-BG4YJEFE.js";
7
7
  import {
8
8
  grokHome
9
- } from "./chunk-5TMGEQAC.js";
9
+ } from "./chunk-GGI6GTBL.js";
10
10
  import {
11
11
  claudeConfigDir,
12
12
  clineDataDirectory,
13
13
  codexHomeFrom
14
- } from "./chunk-UOUUTDWF.js";
14
+ } from "./chunk-B2RDWRKR.js";
15
15
  import {
16
16
  HOOK_COMPATIBLE_PROFILES
17
- } from "./chunk-WG67W43Y.js";
17
+ } from "./chunk-L4THAI7Q.js";
18
18
 
19
19
  // src/vscode-config.ts
20
20
  import { homedir } from "os";
@@ -2,31 +2,31 @@ import {
2
2
  SIGNED_OUT_ON_MAC_MESSAGE,
3
3
  describeSignedOutKey,
4
4
  readSignedOutDiagnosis
5
- } from "./chunk-AXE2ZOKS.js";
5
+ } from "./chunk-44R5ATBR.js";
6
6
  import {
7
7
  APPROVAL_RULES_PATH
8
- } from "./chunk-C6FQ4YST.js";
8
+ } from "./chunk-OUYFUUWB.js";
9
9
  import {
10
10
  createIo
11
11
  } from "./chunk-FO3MDD26.js";
12
12
  import {
13
13
  readKeySource
14
- } from "./chunk-CXZAKS7S.js";
14
+ } from "./chunk-IBULUTHA.js";
15
15
  import {
16
16
  absoluteUrl,
17
17
  checkApiKey,
18
18
  describeKeyCheck,
19
19
  keyCheckFromResponse
20
- } from "./chunk-LNSCANYY.js";
20
+ } from "./chunk-VCMDY6YL.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-ONUAAXAW.js";
23
+ } from "./chunk-TBU4WXA4.js";
24
24
  import {
25
25
  EXIT
26
26
  } from "./chunk-KZERVKTD.js";
27
27
  import {
28
28
  KEY_SCOPE
29
- } from "./chunk-WG67W43Y.js";
29
+ } from "./chunk-L4THAI7Q.js";
30
30
 
31
31
  // src/cli/report-key.ts
32
32
  var { dim, yellow } = createIo();
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  addGeminiMcpServer,
3
3
  removeGeminiMcpServer
4
- } from "./chunk-IEAABGST.js";
4
+ } from "./chunk-42RQG2VG.js";
5
5
  import {
6
6
  CLAUDE_CODE_AGENT,
7
7
  compatibleToolLookup
8
- } from "./chunk-FHPSVTS5.js";
8
+ } from "./chunk-7MRX5JYA.js";
9
9
  import {
10
10
  CLAUDE_HOOK_EVENTS,
11
11
  PUSHARY_MCP_URL,
@@ -17,7 +17,7 @@ import {
17
17
  isPusharyHook,
18
18
  registerHookEntry,
19
19
  removeClaudeMcpServers
20
- } from "./chunk-UOUUTDWF.js";
20
+ } from "./chunk-B2RDWRKR.js";
21
21
  import {
22
22
  HOOK_COMPATIBLE_PROFILES,
23
23
  PHONE_ANSWERED_TOOLS,
@@ -28,7 +28,7 @@ import {
28
28
  pusharyMissingReason,
29
29
  refusalOutput,
30
30
  withHookHoldBudget
31
- } from "./chunk-WG67W43Y.js";
31
+ } from "./chunk-L4THAI7Q.js";
32
32
 
33
33
  // src/config-document.ts
34
34
  import { parse, stringify } from "smol-toml";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readTranscriptPreference
3
- } from "./chunk-CXZAKS7S.js";
3
+ } from "./chunk-IBULUTHA.js";
4
4
 
5
5
  // src/transcript-setting.ts
6
6
  var transcriptEnvironmentPreference = () => {
@@ -3,10 +3,10 @@ import {
3
3
  forkFinishWithUpgradeLock,
4
4
  installWithUpgradeLock,
5
5
  releaseAutoUpdateLock
6
- } from "./chunk-ESRKYHWE.js";
6
+ } from "./chunk-LLQBPDFQ.js";
7
7
  import {
8
8
  phoneStartIsRequired
9
- } from "./chunk-UYTPCZ4M.js";
9
+ } from "./chunk-5UPZR3C3.js";
10
10
  import {
11
11
  describeAutoUpdateCheck,
12
12
  globalInstallLocation,
@@ -18,25 +18,25 @@ import {
18
18
  readAutoUpdateState,
19
19
  updateAutoUpdateState,
20
20
  upgradeEntryFor
21
- } from "./chunk-S2DLTWFG.js";
21
+ } from "./chunk-6PWU2LBT.js";
22
22
  import {
23
23
  autoUpdateLock,
24
24
  autoUpdateLog,
25
25
  autoUpdateState
26
- } from "./chunk-UOUUTDWF.js";
26
+ } from "./chunk-B2RDWRKR.js";
27
27
  import {
28
28
  execNpm,
29
29
  fetchLatestPublishedVersion,
30
30
  npmErrorMessage,
31
31
  readGlobalCliInstallAt,
32
32
  readGlobalPrefix
33
- } from "./chunk-2BJZFA7X.js";
33
+ } from "./chunk-YIAJOV2X.js";
34
34
  import {
35
35
  EXIT
36
36
  } from "./chunk-KZERVKTD.js";
37
37
  import {
38
38
  NPX_LATEST_COMMAND
39
- } from "./chunk-TTTK44RK.js";
39
+ } from "./chunk-2KVELJZX.js";
40
40
  import {
41
41
  commandsPackage,
42
42
  globalUpgradeEntry,
@@ -3,24 +3,24 @@ import {
3
3
  expectedLaunchCapabilities,
4
4
  hasSpawnProvider,
5
5
  resolveControlPolicy
6
- } from "./chunk-UYTPCZ4M.js";
6
+ } from "./chunk-5UPZR3C3.js";
7
7
  import {
8
8
  daemonHasRemoteProof,
9
9
  daemonServiceManagerAvailable,
10
10
  hasDaemonServiceDefinition,
11
11
  readDaemonNeedsLogin,
12
12
  readDaemonStatus
13
- } from "./chunk-6L2U3TP3.js";
13
+ } from "./chunk-6CJ4MSZU.js";
14
14
  import {
15
15
  readControlMode,
16
16
  readKeySource
17
- } from "./chunk-CXZAKS7S.js";
17
+ } from "./chunk-IBULUTHA.js";
18
18
  import {
19
19
  getMachineId
20
- } from "./chunk-YAMNJXCD.js";
20
+ } from "./chunk-JIC5PGNI.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-ONUAAXAW.js";
23
+ } from "./chunk-TBU4WXA4.js";
24
24
  import {
25
25
  getPackageVersion
26
26
  } from "./chunk-ZVU6WMMU.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-UOUUTDWF.js";
3
+ } from "./chunk-B2RDWRKR.js";
4
4
  import {
5
5
  readJsonSafe,
6
6
  writeFileAtomic
7
- } from "./chunk-2BJZFA7X.js";
7
+ } from "./chunk-YIAJOV2X.js";
8
8
  import {
9
9
  DECLINED_AGENTS_FILE,
10
10
  DISCONNECT_AGENT_IDS,
@@ -13,7 +13,7 @@ import {
13
13
  serializeDeclinedAgents,
14
14
  withDeclinedAgent,
15
15
  withoutDeclinedAgent
16
- } from "./chunk-WG67W43Y.js";
16
+ } from "./chunk-L4THAI7Q.js";
17
17
 
18
18
  // src/declined-agents-file.ts
19
19
  import { join } from "path";
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  resolveInstallSourceFor
3
- } from "./chunk-NPBPH7KI.js";
3
+ } from "./chunk-FEF3ILT6.js";
4
4
  import {
5
5
  backupFile,
6
6
  readJsonSafe,
7
7
  writeFileAtomic,
8
8
  writeJsonAtomic
9
- } from "./chunk-2BJZFA7X.js";
9
+ } from "./chunk-YIAJOV2X.js";
10
10
  import {
11
11
  configFilePath
12
- } from "./chunk-ONUAAXAW.js";
12
+ } from "./chunk-TBU4WXA4.js";
13
13
  import {
14
14
  API_KEY_PREFIX_PATTERN,
15
15
  isRecord
16
- } from "./chunk-WG67W43Y.js";
16
+ } from "./chunk-L4THAI7Q.js";
17
17
 
18
18
  // src/shell-alias.ts
19
19
  import { homedir } from "os";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  getBaseUrl
3
- } from "./chunk-ONUAAXAW.js";
3
+ } from "./chunk-TBU4WXA4.js";
4
4
  import {
5
5
  compressTranscriptRecord,
6
6
  redactSecretsFromContent,
7
7
  transcriptRecordPlaintext
8
- } from "./chunk-WG67W43Y.js";
8
+ } from "./chunk-L4THAI7Q.js";
9
9
 
10
10
  // src/transcript-api.ts
11
11
  var retentionDaysOf = (sessionHistory) => {
@@ -1,24 +1,24 @@
1
1
  import {
2
2
  APPROVAL_RULES_PATH,
3
3
  canChangeApprovalSettings
4
- } from "./chunk-C6FQ4YST.js";
4
+ } from "./chunk-OUYFUUWB.js";
5
5
  import {
6
6
  callMcpTool
7
- } from "./chunk-Z5HLACZT.js";
7
+ } from "./chunk-QPJQAE2L.js";
8
8
  import {
9
9
  absoluteUrl
10
- } from "./chunk-LNSCANYY.js";
10
+ } from "./chunk-VCMDY6YL.js";
11
11
  import {
12
12
  getBaseUrl
13
- } from "./chunk-ONUAAXAW.js";
13
+ } from "./chunk-TBU4WXA4.js";
14
14
  import {
15
15
  NPX_LATEST_COMMAND
16
- } from "./chunk-TTTK44RK.js";
16
+ } from "./chunk-2KVELJZX.js";
17
17
  import {
18
18
  APPROVAL_MODE_META,
19
19
  classifyConfirmResponse,
20
20
  isAnswerSource
21
- } from "./chunk-WG67W43Y.js";
21
+ } from "./chunk-L4THAI7Q.js";
22
22
 
23
23
  // src/reach.ts
24
24
  var reachVerdict = (channels) => {
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-UOUUTDWF.js";
3
+ } from "./chunk-B2RDWRKR.js";
4
4
  import {
5
5
  writeFileAtomic
6
- } from "./chunk-2BJZFA7X.js";
6
+ } from "./chunk-YIAJOV2X.js";
7
7
 
8
8
  // src/identity.ts
9
9
  import { randomUUID } from "crypto";
10
- import { mkdirSync, readFileSync, writeFileSync } from "fs";
10
+ import { linkSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "fs";
11
11
  import { dirname, join } from "path";
12
12
  var UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
13
13
  var readMachineId = (filePath) => {
@@ -26,18 +26,24 @@ var getOrCreateMachineId = (options = {}) => {
26
26
  const id = (options.randomId ?? randomUUID)();
27
27
  if (!UUID.test(id)) throw new Error("machine id generator returned an invalid UUID");
28
28
  mkdirSync(dirname(filePath), { recursive: true });
29
+ const candidate = join(dirname(filePath), `.machine-id-${randomUUID()}.tmp`);
29
30
  try {
30
- writeFileSync(filePath, `${id}
31
+ writeFileSync(candidate, `${id}
31
32
  `, { flag: "wx", mode: 384 });
33
+ try {
34
+ linkSync(candidate, filePath);
35
+ return id;
36
+ } catch (error) {
37
+ if (!(error instanceof Error) || !("code" in error) || error.code !== "EEXIST") throw error;
38
+ }
39
+ const winner = readMachineId(filePath);
40
+ if (winner) return winner;
41
+ writeFileAtomic(filePath, `${id}
42
+ `, 384);
32
43
  return id;
33
- } catch (err) {
34
- if (err.code !== "EEXIST") throw err;
44
+ } finally {
45
+ rmSync(candidate, { force: true });
35
46
  }
36
- const winner = readMachineId(filePath);
37
- if (winner) return winner;
38
- writeFileAtomic(filePath, `${id}
39
- `, 384);
40
- return id;
41
47
  };
42
48
  var getMachineId = (options = {}) => getOrCreateMachineId(options);
43
49
 
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readConfigFileKey
3
- } from "./chunk-CXZAKS7S.js";
3
+ } from "./chunk-IBULUTHA.js";
4
4
 
5
5
  // src/bell/fleet.ts
6
6
  import { closeSync, constants, futimesSync, lstatSync, mkdirSync, openSync, readdirSync, unlinkSync } from "fs";
@@ -145,7 +145,7 @@ var COWORK_STANDING_INSTRUCTIONS = `Pushary is connected as a connector. Use it
145
145
  - When you need a decision or clarifying answer, call ask_user. Use type "confirm", "select", or "input" as appropriate. Ask once on one channel.
146
146
  - Before a risky or irreversible action outside my existing authorization, call ask_user with type "confirm" and wait for approval. Silence is never consent.
147
147
  - When a task finishes, call send_notification with context.type "task_complete" and a short summary. For an error you cannot resolve, use context.type "error"; use "info" for other updates.
148
- - Only keep a reply channel open when a specific unresolved decision is required: call send_notification with context.askQuestion, then poll the returned linkedCorrelationId with wait_for_answer. Do not ask for optional feedback just to keep a finished turn alive.
148
+ - When a specific unresolved decision blocks finishing, ask it with ask_user before you stop and wait for the answer. Do not ask for optional feedback just to keep a finished turn alive.
149
149
  - Follow handoffAction when present, otherwise nextAction. While pending, keep waiting with the same correlationId. Only for an explicit handoff, cancel_question before asking in the current chat. If cancellation returns handoffAction "stop", stop. If cancellation returns false, poll once for 1 second and honor the answer that won the race. Expired, cancelled, missing, and unavailable questions are not new timeouts.
150
150
  - Pass agentName as "Claude Cowork - <task name>" on every call, and reuse one opaque sessionId per task so parallel tasks stay separate. Never include credentials in these identifiers.
151
151
  - Cancel a question when it is no longer needed. Once this turn ends, reopen Cowork for follow-up work; this connector cannot restart it.
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  autoUpdateLock
3
- } from "./chunk-UOUUTDWF.js";
3
+ } from "./chunk-B2RDWRKR.js";
4
4
  import {
5
5
  installPackageGlobally,
6
6
  npmErrorMessage,
7
7
  writeJsonAtomic
8
- } from "./chunk-2BJZFA7X.js";
8
+ } from "./chunk-YIAJOV2X.js";
9
9
 
10
10
  // src/upgrade-lock.ts
11
11
  import { fork } from "child_process";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  findNativeClaudeInstall
3
- } from "./chunk-TO77OYLM.js";
3
+ } from "./chunk-BG4YJEFE.js";
4
4
  import {
5
5
  parseVersion
6
- } from "./chunk-2BJZFA7X.js";
6
+ } from "./chunk-YIAJOV2X.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-WG67W43Y.js";
9
+ } from "./chunk-L4THAI7Q.js";
10
10
 
11
11
  // src/setup/agent-probe.ts
12
12
  import { execSync } from "child_process";
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-KZERVKTD.js";
8
8
  import {
9
9
  redactSecretsFromContent
10
- } from "./chunk-WG67W43Y.js";
10
+ } from "./chunk-L4THAI7Q.js";
11
11
 
12
12
  // src/cli/json.ts
13
13
  var writeStdoutFully = (text) => new Promise((resolve, reject) => {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  readExistingMachineId
3
- } from "./chunk-YAMNJXCD.js";
3
+ } from "./chunk-JIC5PGNI.js";
4
4
  import {
5
5
  getBaseUrl
6
- } from "./chunk-ONUAAXAW.js";
6
+ } from "./chunk-TBU4WXA4.js";
7
7
  import {
8
8
  NetworkError
9
9
  } from "./chunk-PPY5N2E6.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  clientContextHeaders,
15
15
  redactSecretsFromContent
16
- } from "./chunk-WG67W43Y.js";
16
+ } from "./chunk-L4THAI7Q.js";
17
17
 
18
18
  // src/cli/net.ts
19
19
  import { createRequire } from "module";
@@ -5,19 +5,19 @@ import {
5
5
  hermesAppWiringRecord,
6
6
  hermesConfigReceipt,
7
7
  hermesSetupReceipt
8
- } from "./chunk-UOUUTDWF.js";
8
+ } from "./chunk-B2RDWRKR.js";
9
9
  import {
10
10
  readJsonSafe,
11
11
  resolvePathBinary,
12
12
  writeJsonAtomic
13
- } from "./chunk-2BJZFA7X.js";
13
+ } from "./chunk-YIAJOV2X.js";
14
14
  import {
15
15
  isNewerVersion,
16
16
  isReleaseVersion
17
17
  } from "./chunk-ZVU6WMMU.js";
18
18
  import {
19
19
  isRecord
20
- } from "./chunk-WG67W43Y.js";
20
+ } from "./chunk-L4THAI7Q.js";
21
21
 
22
22
  // src/hermes/plugin-payload.ts
23
23
  import { createHash } from "crypto";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  absoluteUrl
3
- } from "./chunk-LNSCANYY.js";
3
+ } from "./chunk-VCMDY6YL.js";
4
4
  import {
5
5
  KEY_SCOPE
6
- } from "./chunk-WG67W43Y.js";
6
+ } from "./chunk-L4THAI7Q.js";
7
7
 
8
8
  // src/cli/approval-settings-pages.ts
9
9
  var API_KEYS_PATH = "/dashboard/agent/settings";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  keyCheckFromResponse
3
- } from "./chunk-LNSCANYY.js";
3
+ } from "./chunk-VCMDY6YL.js";
4
4
  import {
5
5
  installNetworkDefaults
6
- } from "./chunk-JNCD2ZG3.js";
6
+ } from "./chunk-NDLOWIYO.js";
7
7
  import {
8
8
  getBaseUrl
9
- } from "./chunk-ONUAAXAW.js";
9
+ } from "./chunk-TBU4WXA4.js";
10
10
  import {
11
11
  isRecord,
12
12
  isToolErrorResult,
13
13
  toolFailureCodeOfResult
14
- } from "./chunk-WG67W43Y.js";
14
+ } from "./chunk-L4THAI7Q.js";
15
15
 
16
16
  // src/retry.ts
17
17
  var isRetryable = (err) => {
@@ -7,7 +7,7 @@ import {
7
7
  recordSealerFor,
8
8
  uploadTranscriptRecords,
9
9
  wrapSessionKey
10
- } from "./chunk-W3VRQEL3.js";
10
+ } from "./chunk-IUZCERPQ.js";
11
11
 
12
12
  // src/live-session.ts
13
13
  var MAX_TRANSCRIPT_QUEUE = 100;
@@ -9,7 +9,7 @@ import {
9
9
  isSetupConnectMode,
10
10
  isValidApiKey,
11
11
  normalizeAgentId
12
- } from "./chunk-WG67W43Y.js";
12
+ } from "./chunk-L4THAI7Q.js";
13
13
 
14
14
  // src/setup/options.ts
15
15
  var AGENT_CHOICES = SETUP_AGENT_CHOICES;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  announceSubscriptionRequired,
3
3
  isDeferAnswer
4
- } from "./chunk-AM3H6HWG.js";
4
+ } from "./chunk-VBY2AHSX.js";
5
5
  import {
6
6
  AUTO_DECISION_WINDOW_MS,
7
7
  DEFAULT_SESSION,
@@ -10,19 +10,19 @@ import {
10
10
  permissionDeniedAction,
11
11
  releaseThrottle,
12
12
  reportEvent
13
- } from "./chunk-FHPSVTS5.js";
13
+ } from "./chunk-7MRX5JYA.js";
14
14
  import {
15
15
  askUser,
16
16
  isDecisionStopped,
17
17
  isQuestionLimitRefusal,
18
18
  waitForQuestion
19
- } from "./chunk-OIW3JAWH.js";
19
+ } from "./chunk-6BD5ZZLL.js";
20
20
  import {
21
21
  SubscriptionRequiredError
22
- } from "./chunk-Z5HLACZT.js";
22
+ } from "./chunk-QPJQAE2L.js";
23
23
  import {
24
24
  getMachineId
25
- } from "./chunk-YAMNJXCD.js";
25
+ } from "./chunk-JIC5PGNI.js";
26
26
  import {
27
27
  ASK_CONTEXT_MAX,
28
28
  agentQuestionContext,
@@ -34,7 +34,7 @@ import {
34
34
  questionsShownAsASet,
35
35
  shouldDeferToNativeMode,
36
36
  wireVerdictFor
37
- } from "./chunk-WG67W43Y.js";
37
+ } from "./chunk-L4THAI7Q.js";
38
38
 
39
39
  // src/machine-decision-audit.ts
40
40
  import { basename } from "path";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isSafeReadOnlyCommand
3
- } from "./chunk-WG67W43Y.js";
3
+ } from "./chunk-L4THAI7Q.js";
4
4
 
5
5
  // src/ledger.ts
6
6
  import { appendFileSync, existsSync, mkdirSync, readFileSync, renameSync, rmSync, statSync } from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  NPX_LATEST_COMMAND
3
- } from "./chunk-TTTK44RK.js";
3
+ } from "./chunk-2KVELJZX.js";
4
4
 
5
5
  // src/config.ts
6
6
  import { readFileSync } from "fs";
@@ -521,7 +521,7 @@ var loadedOnce = (load) => {
521
521
  };
522
522
 
523
523
  // src/codex-desktop-proxy.ts
524
- var loadThePhone = () => import("./api-TZO5ACOS.js");
524
+ var loadThePhone = () => import("./api-EKLKVJQG.js");
525
525
  var theFirstCardLoadsAgain = () => {
526
526
  };
527
527
  var APP_SERVER_COMMAND = "app-server";
@@ -1062,7 +1062,7 @@ var codexDesktopCommand = async (args, entry, readAccount) => {
1062
1062
  return runCodexDesktopProxy(engine2, args.slice(3), readAccount, { watchesForCards: layoutIsKnown });
1063
1063
  }
1064
1064
  if (args[0] === APP_CARDS_FLAG) {
1065
- const { codexAppCardsCommandOnThisMac } = await import("./codex-app-cards-switch-3FAIEEB2.js");
1065
+ const { codexAppCardsCommandOnThisMac } = await import("./codex-app-cards-switch-CTAOTOCH.js");
1066
1066
  return codexAppCardsCommandOnThisMac(args.slice(1), entry, readAccount);
1067
1067
  }
1068
1068
  if (args.length > 2) throw new Error("Usage: pushary codex --desktop [path/to/Codex.app]");