pushary 1.9.107 → 1.9.109

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 (128) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/data/cursor-plugin/README.md +9 -0
  3. package/dist/{api-RL5CPDTH.js → api-YCDTPFT7.js} +10 -10
  4. package/dist/bin/pushary-audit.js +3 -3
  5. package/dist/bin/pushary-bell-hook.js +26 -26
  6. package/dist/bin/pushary-bell.js +10 -10
  7. package/dist/bin/pushary-claude.js +24 -24
  8. package/dist/bin/pushary-clean.js +33 -33
  9. package/dist/bin/pushary-codex-bridge.js +20 -20
  10. package/dist/bin/pushary-codex-hook.js +31 -31
  11. package/dist/bin/pushary-codex-session.js +8 -8
  12. package/dist/bin/pushary-codex.js +14 -14
  13. package/dist/bin/pushary-connect.js +27 -27
  14. package/dist/bin/pushary-cowork.js +5 -5
  15. package/dist/bin/pushary-daemon.js +40 -40
  16. package/dist/bin/pushary-disconnect.js +26 -26
  17. package/dist/bin/pushary-display-hook.js +16 -16
  18. package/dist/bin/pushary-doctor.js +41 -41
  19. package/dist/bin/pushary-elicitation-hook.js +26 -26
  20. package/dist/bin/pushary-gemini-bridge.js +14 -14
  21. package/dist/bin/pushary-gemini-hook.js +28 -28
  22. package/dist/bin/pushary-hook.js +31 -31
  23. package/dist/bin/pushary-login.js +20 -20
  24. package/dist/bin/pushary-logout.js +25 -25
  25. package/dist/bin/pushary-mcp.js +11 -11
  26. package/dist/bin/pushary-mode.js +15 -15
  27. package/dist/bin/pushary-notification-hook.js +25 -25
  28. package/dist/bin/pushary-opencode-hook.js +27 -27
  29. package/dist/bin/pushary-permission-denied-hook.js +31 -31
  30. package/dist/bin/pushary-permission-hook.js +31 -31
  31. package/dist/bin/pushary-post-hook.js +25 -25
  32. package/dist/bin/pushary-prompt-hook.js +25 -25
  33. package/dist/bin/pushary-session-end-hook.js +25 -25
  34. package/dist/bin/pushary-session-start-hook.js +34 -34
  35. package/dist/bin/pushary-setup.js +49 -45
  36. package/dist/bin/pushary-stats.js +5 -5
  37. package/dist/bin/pushary-status.js +31 -31
  38. package/dist/bin/pushary-stop-hook.js +25 -25
  39. package/dist/bin/pushary-stopfailure-hook.js +25 -25
  40. package/dist/bin/pushary-suggestions.js +15 -15
  41. package/dist/bin/pushary-transcript-register.js +16 -16
  42. package/dist/bin/pushary-transcripts.js +24 -24
  43. package/dist/bin/pushary-upgrade.js +39 -39
  44. package/dist/bin/pushary-wait.js +15 -15
  45. package/dist/bin/pushary.js +7 -7
  46. package/dist/{chunk-X3QG5RT5.js → chunk-3OPHZY7L.js} +1 -1
  47. package/dist/{chunk-VCWLGM77.js → chunk-3SFUJREU.js} +2 -2
  48. package/dist/{chunk-UUJQK7DJ.js → chunk-3X3FNKAE.js} +1 -1
  49. package/dist/{chunk-MFJHLVIZ.js → chunk-3YY6CUU7.js} +4 -4
  50. package/dist/{chunk-FUTFQSRA.js → chunk-4472LNSQ.js} +1 -1
  51. package/dist/{chunk-UXIUCMFO.js → chunk-4BDOUP4B.js} +5 -5
  52. package/dist/{chunk-B7O4CXFX.js → chunk-4SUNBCR6.js} +3 -3
  53. package/dist/{chunk-4EMPELDR.js → chunk-6OSRPTDX.js} +4 -4
  54. package/dist/{chunk-LK3WA6MK.js → chunk-7KBKJ2KH.js} +3 -3
  55. package/dist/{chunk-CJTJ55DR.js → chunk-7S262556.js} +1 -1
  56. package/dist/{chunk-2HC5ISDW.js → chunk-7VIJBCMF.js} +2 -2
  57. package/dist/{chunk-ASCQXNCL.js → chunk-ANKVTTB3.js} +1 -1
  58. package/dist/{chunk-4XE3DVF7.js → chunk-BDAT6H7J.js} +2 -2
  59. package/dist/{chunk-VKTW5WVB.js → chunk-BFXJUZUH.js} +2 -2
  60. package/dist/{chunk-DS672F57.js → chunk-BUBLUKJM.js} +9 -9
  61. package/dist/{chunk-2BILLNZ4.js → chunk-DYA7VIL6.js} +14 -14
  62. package/dist/{chunk-ATVZAEM5.js → chunk-EMEF7ALE.js} +5 -5
  63. package/dist/{chunk-S2TTGX6F.js → chunk-F3O5VDQL.js} +4 -4
  64. package/dist/{chunk-5IAW6G3K.js → chunk-F7BLCVHZ.js} +2 -2
  65. package/dist/{chunk-NM44KCO6.js → chunk-FIFSPMQZ.js} +3 -3
  66. package/dist/{chunk-PFZCLG55.js → chunk-FR25IWL7.js} +4 -4
  67. package/dist/{chunk-IAASPG5B.js → chunk-FYK7JV2R.js} +5 -5
  68. package/dist/{chunk-LL7SW4RL.js → chunk-G6PHMB3F.js} +3 -3
  69. package/dist/{chunk-GUIS6ASL.js → chunk-GNOSBEUB.js} +1 -1
  70. package/dist/{chunk-P3H6I656.js → chunk-GU7AN46G.js} +10 -10
  71. package/dist/{chunk-CKWV3T7O.js → chunk-H3FRQS4V.js} +6 -6
  72. package/dist/{chunk-TXMYET7E.js → chunk-HLZIHAUY.js} +3 -3
  73. package/dist/{chunk-Z5FV7LTD.js → chunk-I4THVOUC.js} +2 -2
  74. package/dist/{chunk-HONSMBF2.js → chunk-II6M23WI.js} +6 -6
  75. package/dist/{chunk-I3IUS4SR.js → chunk-J5EAU44S.js} +1 -1
  76. package/dist/{chunk-G5HGV6D4.js → chunk-JOF3TPDT.js} +2 -2
  77. package/dist/{chunk-DH22FQAS.js → chunk-K6E24TJ6.js} +1 -1
  78. package/dist/{chunk-6DKMZBRK.js → chunk-KCDWWT42.js} +1 -1
  79. package/dist/{chunk-A37RKFI3.js → chunk-KCKLLGMW.js} +4 -4
  80. package/dist/{chunk-JCSJEMTA.js → chunk-KK5YNO2M.js} +2 -2
  81. package/dist/{chunk-GESW4OSZ.js → chunk-M6SP3FZF.js} +3 -3
  82. package/dist/{chunk-ZCBTCW3T.js → chunk-MAWFWQLR.js} +3 -3
  83. package/dist/{chunk-S75UO75C.js → chunk-MMHBNMHK.js} +29 -6
  84. package/dist/{chunk-YDQ6OJMF.js → chunk-MYDTSPIZ.js} +1 -1
  85. package/dist/{chunk-FJYUB3ZK.js → chunk-P7LHBBM5.js} +3 -3
  86. package/dist/{chunk-KHZCJP7P.js → chunk-PEWTRW6S.js} +10 -10
  87. package/dist/{chunk-OBZQPBUI.js → chunk-PZ3X6NFM.js} +4 -4
  88. package/dist/{chunk-RKQVMFHN.js → chunk-QMUSLBVA.js} +5 -5
  89. package/dist/{chunk-EMSRB2KH.js → chunk-QNUGTQKZ.js} +3 -3
  90. package/dist/{chunk-FE5JENEJ.js → chunk-QPNYMNB7.js} +2 -2
  91. package/dist/{chunk-43PNDDB3.js → chunk-R7D2YAXW.js} +6 -6
  92. package/dist/{chunk-GKCDMAUM.js → chunk-RXRKX646.js} +1 -1
  93. package/dist/{chunk-JLJJRBTD.js → chunk-S2NBNU4K.js} +5 -5
  94. package/dist/{chunk-XN527J4W.js → chunk-S442423U.js} +1 -1
  95. package/dist/{chunk-ZB2WNJXZ.js → chunk-S7LMAMMY.js} +4 -4
  96. package/dist/{chunk-O5TB2LMQ.js → chunk-SALM3IYQ.js} +8 -3
  97. package/dist/{chunk-HH5NNPB5.js → chunk-SCQRKKGL.js} +1 -1
  98. package/dist/{chunk-OINGJICB.js → chunk-SDZBQQEK.js} +4 -4
  99. package/dist/{chunk-HLYZEZOI.js → chunk-T3B2L64E.js} +2 -2
  100. package/dist/{chunk-772NHSQB.js → chunk-TIU3TP36.js} +2 -2
  101. package/dist/{chunk-GBHP3LML.js → chunk-TKJJWIR4.js} +2 -2
  102. package/dist/{chunk-J2HIFUAT.js → chunk-U6LVSHBR.js} +7 -7
  103. package/dist/{chunk-76JOLPST.js → chunk-UC2NBQS3.js} +1 -1
  104. package/dist/{chunk-LMDXQIYT.js → chunk-UK4Z3X75.js} +1 -1
  105. package/dist/{chunk-DIVVLBZZ.js → chunk-ULTBTBMV.js} +6 -6
  106. package/dist/{chunk-IGO5NDQY.js → chunk-V25XPPEY.js} +2 -2
  107. package/dist/{chunk-IHQRLJEP.js → chunk-VKGSGULO.js} +5 -5
  108. package/dist/{chunk-LIPMEFRA.js → chunk-VZVEZILS.js} +2 -2
  109. package/dist/{chunk-VK4PPVWB.js → chunk-WU3TP2TP.js} +6 -6
  110. package/dist/{chunk-J5PUKKCT.js → chunk-X5VHTPAD.js} +5 -5
  111. package/dist/{chunk-4OUPD4KA.js → chunk-XUKBMRT2.js} +9 -4
  112. package/dist/{chunk-B5Q44HKN.js → chunk-YB2S73VZ.js} +1 -1
  113. package/dist/{chunk-DA57ZI62.js → chunk-ZMZG32RS.js} +2 -2
  114. package/dist/{codex-app-cards-switch-FD2ZWLYL.js → codex-app-cards-switch-CQIIZDPU.js} +11 -11
  115. package/dist/codex-card-routing-KIFZHIHM.js +20 -0
  116. package/dist/{codex-desktop-launch-BN5OABPN.js → codex-desktop-launch-YPISWZJX.js} +1 -1
  117. package/dist/{codex-session-launch-O3PHQWTS.js → codex-session-launch-ZL5WZXD7.js} +17 -17
  118. package/dist/{config-KWP7UXYG.js → config-3V3AT3AR.js} +3 -3
  119. package/dist/{global-upgrade-NBSY5436.js → global-upgrade-DI4JAPW6.js} +9 -9
  120. package/dist/{identity-RP5I7KTV.js → identity-XP7JUJJR.js} +4 -4
  121. package/dist/{live-capabilities-XC6C47ZH.js → live-capabilities-TFDE3XNS.js} +4 -4
  122. package/dist/{paths-OE5APZ4Q.js → paths-ZC5TUIHB.js} +3 -3
  123. package/dist/{reapply-DRZ32BIB.js → reapply-T2BYF7XY.js} +27 -27
  124. package/dist/src/index.d.ts +2 -0
  125. package/dist/src/index.js +30 -30
  126. package/dist/{upgrade-lock-LWTVHYAJ.js → upgrade-lock-IWVHMUXK.js} +4 -4
  127. package/dist/{usage-5YESCANM.js → usage-Z6WWH3ED.js} +3 -3
  128. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  HOOK_HOLD_BUDGET_ENV,
3
3
  hookHoldBudgetProof
4
- } from "./chunk-O5TB2LMQ.js";
4
+ } from "./chunk-SALM3IYQ.js";
5
5
 
6
6
  // src/hold-budget.ts
7
7
  var takeHookHoldBudget = (args = process.argv.slice(2), env = process.env) => {
@@ -12,7 +12,7 @@ import {
12
12
  reachVerdict,
13
13
  reachesYou,
14
14
  verifyDelivery
15
- } from "./chunk-VK4PPVWB.js";
15
+ } from "./chunk-WU3TP2TP.js";
16
16
  import {
17
17
  humanIsTty,
18
18
  writeHuman
@@ -24,14 +24,14 @@ import {
24
24
  } from "./chunk-FO3MDD26.js";
25
25
  import {
26
26
  reportedInstallSource
27
- } from "./chunk-Z5FV7LTD.js";
27
+ } from "./chunk-I4THVOUC.js";
28
28
  import {
29
29
  NPX_LATEST_COMMAND
30
- } from "./chunk-YDQ6OJMF.js";
30
+ } from "./chunk-MYDTSPIZ.js";
31
31
  import {
32
32
  NO_PAIRING_COMPUTER,
33
33
  PAIR_TTL_SECONDS
34
- } from "./chunk-O5TB2LMQ.js";
34
+ } from "./chunk-SALM3IYQ.js";
35
35
 
36
36
  // src/onboarding.ts
37
37
  import qrcodeTerminal from "qrcode-terminal";
@@ -3622,6 +3622,7 @@ var fileChangeQuestion = (changes) => {
3622
3622
  const unnamed = changes.length - FILE_CHANGES_NAMED_IN_A_QUESTION;
3623
3623
  return `Allow these ${changes.length} file changes once? ${named}${unnamed > 0 ? ` and ${unnamed} more` : ""}`;
3624
3624
  };
3625
+ var codexElicitationToolName = (serverName, toolName) => `mcp__${serverName}__${toolName}`;
3625
3626
  var withCodexReason = (detail, reason) => text(reason) ? `${detail}
3626
3627
 
3627
3628
  Codex's reason: ${redactSecrets(reason)}` : detail;
@@ -3657,7 +3658,7 @@ var parseCodexNativeApproval = (value) => {
3657
3658
  return {
3658
3659
  ...base,
3659
3660
  codexAsksForAPerson,
3660
- toolName: `mcp__${p.serverName}__${meta.tool_name}`,
3661
+ toolName: codexElicitationToolName(p.serverName, meta.tool_name),
3661
3662
  toolInputs: [meta.tool_params],
3662
3663
  question: p.message,
3663
3664
  detail: redactSecrets([`Risk: ${meta.riskLevel}`, meta.subtitle, JSON.stringify(meta.tool_params)].filter(Boolean).join("\n")),
@@ -3667,7 +3668,7 @@ var parseCodexNativeApproval = (value) => {
3667
3668
  return {
3668
3669
  ...base,
3669
3670
  codexAsksForAPerson,
3670
- toolName: `mcp__${p.serverName}__${meta.tool_name}`,
3671
+ toolName: codexElicitationToolName(p.serverName, meta.tool_name),
3671
3672
  toolInputs: [meta.tool_params],
3672
3673
  question: p.message,
3673
3674
  detail: redactSecrets(JSON.stringify(meta.tool_params)),
@@ -3980,6 +3981,7 @@ var reportableSessionId = (value) => typeof value === "string" && value.length >
3980
3981
  var HOOK_BATCH_MAX_BYTES = 4 * 1024 * 1024;
3981
3982
  var REPO_KEY_MAX_LENGTH = 200;
3982
3983
  var SESSION_ID_MAX_LENGTH = 200;
3984
+ var TOOL_NAME_MAX_LENGTH = 100;
3983
3985
  var WILDCARD_TOOL_PATTERN = "*";
3984
3986
  var isRepoKeyMatch = (ruleRepoKey, currentRepoKey) => {
3985
3987
  if (!ruleRepoKey) return true;
@@ -7748,7 +7750,7 @@ var findBestRoute = (routes, toolName, args, repoKey) => {
7748
7750
  let bestWeight = 0;
7749
7751
  let bestScoped = -1;
7750
7752
  let bestLength = -1;
7751
- const { forms } = restrictionReadingOf(routes.map((route) => route.toolPattern), toolName, args);
7753
+ const forms = formsOfEveryCandidate(routes.map((route) => route.toolPattern), toolName, args);
7752
7754
  for (const candidate of routes) {
7753
7755
  if (!isRepoKeyMatch(candidate.repoKey, repoKey)) continue;
7754
7756
  const rank = matchToolPatternAny(candidate.toolPattern, toolName, forms, PATTERN_INTENT.restrict);
@@ -7800,6 +7802,7 @@ var restrictionReadingOf = (restrictingPatterns, toolName, args) => {
7800
7802
  hidesWhatItRuns: POSIX_SHELL_TOOLS.has(toolName) && spellings.hidesWhatItRuns
7801
7803
  };
7802
7804
  };
7805
+ var formsOfEveryCandidate = (restrictingPatterns, toolName, args) => [...new Set(args.flatMap((arg) => restrictionReadingOf(restrictingPatterns, toolName, [arg]).forms))];
7803
7806
  var restrictingPatternsOf = (policies) => policies.filter(restricts).map((policy) => policy.tool);
7804
7807
  var policyReadingOf = (policies, toolName, args) => restrictionReadingOf(restrictingPatternsOf(policies), toolName, args);
7805
7808
  var stricterRule = (current, challenger) => current !== void 0 && (challenger === void 0 || comparePolicyStrictness(current.policy, challenger.policy) > 0) ? current : challenger;
@@ -8659,6 +8662,7 @@ export {
8659
8662
  CODEX_NATIVE_APPROVAL_METHODS,
8660
8663
  CODEX_NATIVE_APPROVAL_CHOICES,
8661
8664
  CODEX_NATIVE_APPROVAL_REPLIES,
8665
+ codexElicitationToolName,
8662
8666
  parseCodexNativeApproval,
8663
8667
  codexNativeApprovalResponse,
8664
8668
  transcriptRecordPlaintext,
@@ -8704,6 +8708,7 @@ export {
8704
8708
  HOOK_LOCATOR_BINARY,
8705
8709
  isTokenCount,
8706
8710
  reportableSessionId,
8711
+ TOOL_NAME_MAX_LENGTH,
8707
8712
  normalizeRepoRemote,
8708
8713
  localRepoKey,
8709
8714
  isSafeReadOnlyCommand,
@@ -7,7 +7,7 @@ import {
7
7
  recordSealerFor,
8
8
  uploadTranscriptRecords,
9
9
  wrapSessionKey
10
- } from "./chunk-4XE3DVF7.js";
10
+ } from "./chunk-BDAT6H7J.js";
11
11
 
12
12
  // src/live-session.ts
13
13
  var MAX_TRANSCRIPT_QUEUE = 100;
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  pusharyHookExecutable
3
- } from "./chunk-MFJHLVIZ.js";
3
+ } from "./chunk-3YY6CUU7.js";
4
4
  import {
5
5
  bridgeResolvesToApp,
6
6
  cursorUserHooks,
7
7
  executableFileName,
8
8
  isBridgeLocator,
9
9
  liveBridgeProbe
10
- } from "./chunk-JCSJEMTA.js";
10
+ } from "./chunk-KK5YNO2M.js";
11
11
  import {
12
12
  atLeast,
13
13
  parseVersion
14
- } from "./chunk-ZCBTCW3T.js";
14
+ } from "./chunk-MAWFWQLR.js";
15
15
  import {
16
16
  CURSOR_GATE_COVERAGE,
17
17
  CURSOR_GATE_SCRIPT,
@@ -21,7 +21,7 @@ import {
21
21
  isCursorHookPayload,
22
22
  isRecord,
23
23
  toolsCoveredByGateEntry
24
- } from "./chunk-O5TB2LMQ.js";
24
+ } from "./chunk-SALM3IYQ.js";
25
25
 
26
26
  // src/cursor-gate-registration.ts
27
27
  import { dirname, isAbsolute, join, resolve } from "path";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  configFilePath
3
- } from "./chunk-GKCDMAUM.js";
3
+ } from "./chunk-RXRKX646.js";
4
4
  import {
5
5
  readJsonSafe,
6
6
  writeJsonAtomic
7
7
  } from "./chunk-T5I4PKOQ.js";
8
8
  import {
9
9
  readSetupOutcomeProperties
10
- } from "./chunk-O5TB2LMQ.js";
10
+ } from "./chunk-SALM3IYQ.js";
11
11
 
12
12
  // src/diagnostics/service-runtime.ts
13
13
  var unescapeXml = (value) => value.replaceAll("&quot;", '"').replaceAll("&apos;", "'").replaceAll("&lt;", "<").replaceAll("&gt;", ">").replaceAll("&amp;", "&");
@@ -4,10 +4,10 @@ import {
4
4
  keyPrefix,
5
5
  readConfigFileKey,
6
6
  readMacAppKeyPrefix
7
- } from "./chunk-B7O4CXFX.js";
7
+ } from "./chunk-4SUNBCR6.js";
8
8
  import {
9
9
  NPX_LATEST_COMMAND
10
- } from "./chunk-YDQ6OJMF.js";
10
+ } from "./chunk-MYDTSPIZ.js";
11
11
 
12
12
  // src/key-signed-out.ts
13
13
  var VERDICT_BY_CHECK = {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-JCSJEMTA.js";
3
+ } from "./chunk-KK5YNO2M.js";
4
4
  import {
5
5
  readRegularJsonFile,
6
6
  writeFileAtomic
@@ -13,7 +13,7 @@ import {
13
13
  serializeDeclinedAgents,
14
14
  withDeclinedAgent,
15
15
  withoutDeclinedAgent
16
- } from "./chunk-O5TB2LMQ.js";
16
+ } from "./chunk-SALM3IYQ.js";
17
17
 
18
18
  // src/declined-agents-file.ts
19
19
  import { join } from "path";
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  announceSubscriptionRequired,
3
3
  isDeferAnswer
4
- } from "./chunk-UUJQK7DJ.js";
4
+ } from "./chunk-3X3FNKAE.js";
5
5
  import {
6
6
  AUTO_DECISION_WINDOW_MS,
7
7
  DEFAULT_SESSION,
8
8
  claimThrottle,
9
9
  releaseThrottle,
10
10
  reportEvent
11
- } from "./chunk-KHZCJP7P.js";
11
+ } from "./chunk-PEWTRW6S.js";
12
12
  import {
13
13
  deriveToolTarget,
14
14
  permissionDeniedAction
15
- } from "./chunk-76JOLPST.js";
15
+ } from "./chunk-UC2NBQS3.js";
16
16
  import {
17
17
  askUser,
18
18
  isDecisionStopped,
19
19
  isQuestionLimitRefusal,
20
20
  waitForQuestion
21
- } from "./chunk-IAASPG5B.js";
21
+ } from "./chunk-FYK7JV2R.js";
22
22
  import {
23
23
  SubscriptionRequiredError
24
- } from "./chunk-PFZCLG55.js";
24
+ } from "./chunk-FR25IWL7.js";
25
25
  import {
26
26
  getMachineId
27
- } from "./chunk-I3IUS4SR.js";
27
+ } from "./chunk-J5EAU44S.js";
28
28
  import {
29
29
  ASK_CONTEXT_MAX,
30
30
  agentQuestionContext,
@@ -36,7 +36,7 @@ import {
36
36
  questionsShownAsASet,
37
37
  shouldDeferToNativeMode,
38
38
  wireVerdictFor
39
- } from "./chunk-O5TB2LMQ.js";
39
+ } from "./chunk-SALM3IYQ.js";
40
40
 
41
41
  // src/machine-decision-audit.ts
42
42
  import { basename } from "path";
@@ -24,7 +24,7 @@ import {
24
24
  reportableSessionId,
25
25
  toToolLookup,
26
26
  truncateLine
27
- } from "./chunk-O5TB2LMQ.js";
27
+ } from "./chunk-SALM3IYQ.js";
28
28
 
29
29
  // ../hook-mapping/src/commit-receipt.ts
30
30
  var COMMIT_OUTPUT_MAX_LENGTH = 65536;
@@ -2,7 +2,7 @@ import {
2
2
  localRepoKey,
3
3
  normalizeRepoRemote,
4
4
  parseGitBranch
5
- } from "./chunk-O5TB2LMQ.js";
5
+ } from "./chunk-SALM3IYQ.js";
6
6
 
7
7
  // src/repo.ts
8
8
  import { existsSync, readFileSync, statSync } from "fs";
@@ -4,7 +4,7 @@ import {
4
4
  postLiveSession,
5
5
  postLiveSessionUntilAccepted,
6
6
  startLiveSessionHeartbeat
7
- } from "./chunk-HH5NNPB5.js";
7
+ } from "./chunk-SCQRKKGL.js";
8
8
  import {
9
9
  CommandReceipts,
10
10
  controllerCommandSchema
@@ -14,21 +14,21 @@ import {
14
14
  describeIdleWindow,
15
15
  idleDeadlinePassed,
16
16
  startProcessOwnership
17
- } from "./chunk-FE5JENEJ.js";
17
+ } from "./chunk-QPNYMNB7.js";
18
18
  import {
19
19
  repositoryScopeFor
20
- } from "./chunk-LMDXQIYT.js";
20
+ } from "./chunk-UK4Z3X75.js";
21
21
  import {
22
22
  isAskUserResponse,
23
23
  isDecisionStopped,
24
24
  isWaitForAnswerResponse,
25
25
  withdrawQuestion,
26
26
  writeDegraded
27
- } from "./chunk-IAASPG5B.js";
27
+ } from "./chunk-FYK7JV2R.js";
28
28
  import {
29
29
  callMcpTool,
30
30
  isRetryable
31
- } from "./chunk-PFZCLG55.js";
31
+ } from "./chunk-FR25IWL7.js";
32
32
  import {
33
33
  spawnClaude
34
34
  } from "./chunk-XHKBHWLX.js";
@@ -52,7 +52,7 @@ import {
52
52
  parseCodexQuestions,
53
53
  planElicitationAsk,
54
54
  readElicitationFields
55
- } from "./chunk-O5TB2LMQ.js";
55
+ } from "./chunk-SALM3IYQ.js";
56
56
 
57
57
  // src/codex-question-owner.ts
58
58
  import { createHash } from "crypto";
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-ROVLRXBI.js";
4
4
  import {
5
5
  parseVersion
6
- } from "./chunk-ZCBTCW3T.js";
6
+ } from "./chunk-MAWFWQLR.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-O5TB2LMQ.js";
9
+ } from "./chunk-SALM3IYQ.js";
10
10
 
11
11
  // src/setup/agent-probe.ts
12
12
  import { execSync } from "child_process";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  compatibleConfigFile
3
- } from "./chunk-JLJJRBTD.js";
3
+ } from "./chunk-S2NBNU4K.js";
4
4
  import {
5
5
  hookOwnerOf,
6
6
  hookOwnerOfCommands
7
- } from "./chunk-MFJHLVIZ.js";
7
+ } from "./chunk-3YY6CUU7.js";
8
8
  import {
9
9
  AGENT_CHOICES
10
- } from "./chunk-DH22FQAS.js";
10
+ } from "./chunk-K6E24TJ6.js";
11
11
  import {
12
12
  bridgeStub,
13
13
  claudeSettings,
@@ -19,7 +19,7 @@ import {
19
19
  resolveBridgeStub,
20
20
  vscodePluginDir,
21
21
  windowsNodeLauncherFor
22
- } from "./chunk-JCSJEMTA.js";
22
+ } from "./chunk-KK5YNO2M.js";
23
23
  import {
24
24
  readJsonSafe
25
25
  } from "./chunk-T5I4PKOQ.js";
@@ -29,7 +29,7 @@ import {
29
29
  OPENCODE_APPROVAL_EVENT,
30
30
  hookCompatibleProfile,
31
31
  isRecord
32
- } from "./chunk-O5TB2LMQ.js";
32
+ } from "./chunk-SALM3IYQ.js";
33
33
 
34
34
  // src/opencode-plugin.ts
35
35
  var OPENCODE_PLUGIN_MARKER = "pushary-opencode-plugin w1";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  claudeConfigDir
3
- } from "./chunk-JCSJEMTA.js";
3
+ } from "./chunk-KK5YNO2M.js";
4
4
  import {
5
5
  claudePermissionRulesFromSettings
6
- } from "./chunk-O5TB2LMQ.js";
6
+ } from "./chunk-SALM3IYQ.js";
7
7
 
8
8
  // src/claude-permission-rules.ts
9
9
  import { readFileSync, statSync } from "fs";
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  APPROVAL_RULES_PATH,
3
3
  canChangeApprovalSettings
4
- } from "./chunk-2HC5ISDW.js";
4
+ } from "./chunk-7VIJBCMF.js";
5
5
  import {
6
6
  callMcpTool
7
- } from "./chunk-PFZCLG55.js";
7
+ } from "./chunk-FR25IWL7.js";
8
8
  import {
9
9
  absoluteUrl
10
- } from "./chunk-EMSRB2KH.js";
10
+ } from "./chunk-QNUGTQKZ.js";
11
11
  import {
12
12
  getBaseUrl
13
- } from "./chunk-GKCDMAUM.js";
13
+ } from "./chunk-RXRKX646.js";
14
14
  import {
15
15
  NPX_LATEST_COMMAND
16
- } from "./chunk-YDQ6OJMF.js";
16
+ } from "./chunk-MYDTSPIZ.js";
17
17
  import {
18
18
  AGENT_STOP_DEFAULT_SECONDS,
19
19
  APPROVAL_MODE_META,
@@ -21,7 +21,7 @@ import {
21
21
  classifyConfirmResponse,
22
22
  isAnswerSource,
23
23
  roundTripAsk
24
- } from "./chunk-O5TB2LMQ.js";
24
+ } from "./chunk-SALM3IYQ.js";
25
25
 
26
26
  // src/reach.ts
27
27
  var reachVerdict = (channels) => {
@@ -3,24 +3,24 @@ import {
3
3
  expectedLaunchCapabilities,
4
4
  hasSpawnProvider,
5
5
  resolveControlPolicy
6
- } from "./chunk-GESW4OSZ.js";
6
+ } from "./chunk-M6SP3FZF.js";
7
7
  import {
8
8
  daemonHasRemoteProof,
9
9
  daemonServiceManagerAvailable,
10
10
  hasDaemonServiceDefinition,
11
11
  readDaemonNeedsLogin,
12
12
  readDaemonStatus
13
- } from "./chunk-HONSMBF2.js";
13
+ } from "./chunk-II6M23WI.js";
14
14
  import {
15
15
  getMachineId
16
- } from "./chunk-I3IUS4SR.js";
16
+ } from "./chunk-J5EAU44S.js";
17
17
  import {
18
18
  readControlMode,
19
19
  readKeySource
20
- } from "./chunk-B7O4CXFX.js";
20
+ } from "./chunk-4SUNBCR6.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-GKCDMAUM.js";
23
+ } from "./chunk-RXRKX646.js";
24
24
  import {
25
25
  getPackageVersion
26
26
  } from "./chunk-ZVU6WMMU.js";
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  notificationAnswerStep
3
- } from "./chunk-VK4PPVWB.js";
3
+ } from "./chunk-WU3TP2TP.js";
4
4
  import {
5
5
  canChangeApprovalSettings
6
- } from "./chunk-2HC5ISDW.js";
6
+ } from "./chunk-7VIJBCMF.js";
7
7
  import {
8
8
  matchMacAccountStep,
9
9
  retryAgentCommand
10
- } from "./chunk-FJYUB3ZK.js";
10
+ } from "./chunk-P7LHBBM5.js";
11
11
  import {
12
12
  EXIT
13
13
  } from "./chunk-BG4HHB7E.js";
14
14
  import {
15
15
  NPX_LATEST_COMMAND
16
- } from "./chunk-YDQ6OJMF.js";
16
+ } from "./chunk-MYDTSPIZ.js";
17
17
 
18
18
  // src/setup/closing.ts
19
19
  var ACTIVITY_URL = "pushary.com/dashboard/agent/activity";
@@ -26,6 +26,10 @@ var sendAnotherTestLines = (appPlatforms) => {
26
26
  var TRANSCRIPT_SYNC_NOTICE = `Transcripts sync redacted and encrypted. Your phone can decrypt them; authorized Pushary compliance admins can recover them for documented legal obligations. Turn off: ${NPX_LATEST_COMMAND} transcripts off`;
27
27
  var PAIR_PHONE_APP_HINT = `${NPX_LATEST_COMMAND} setup --connect app pair the Pushary app on your phone`;
28
28
  var RESTART_AGENTS_LINE = "Restart any open agent sessions so they pick up Pushary.";
29
+ var TEAM_OFFER_LINE = "On a team? Send risky steps to a lead and see who approved: pushary.com/teams";
30
+ var PLANS_THAT_CAN_MOVE_UP_TO_TEAM = ["agent", "agent_pro"];
31
+ var canMoveUpToTeam = (plan) => PLANS_THAT_CAN_MOVE_UP_TO_TEAM.some((candidate) => candidate === plan);
32
+ var teamOfferLines = (setupSucceeded, plan) => setupSucceeded && canMoveUpToTeam(plan) ? [TEAM_OFFER_LINE] : [];
29
33
  var ANSWERING_DEVICES = {
30
34
  mobile_app: "Your phone",
31
35
  mobile_background: "Your phone",
@@ -267,6 +271,7 @@ var unverifiedKeyClosingReason = (facts) => {
267
271
 
268
272
  export {
269
273
  TRANSCRIPT_SYNC_NOTICE,
274
+ teamOfferLines,
270
275
  renderCommandSurface,
271
276
  phoneStartFellShortLine,
272
277
  phoneStartServiceState,
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-BG4HHB7E.js";
4
4
  import {
5
5
  renderCommandHelp
6
- } from "./chunk-YDQ6OJMF.js";
6
+ } from "./chunk-MYDTSPIZ.js";
7
7
  import {
8
8
  getPackageVersion
9
9
  } from "./chunk-ZVU6WMMU.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  parseSseMessages
3
- } from "./chunk-PFZCLG55.js";
3
+ } from "./chunk-FR25IWL7.js";
4
4
  import {
5
5
  NPX_LATEST_COMMAND
6
- } from "./chunk-YDQ6OJMF.js";
6
+ } from "./chunk-MYDTSPIZ.js";
7
7
 
8
8
  // src/mcp-stdio-bridge.ts
9
9
  var MCP_BRIDGE_BINARY = "pushary-mcp";
@@ -22,22 +22,22 @@ import {
22
22
  turnCodexAppCardsOff,
23
23
  turnCodexAppCardsOn,
24
24
  whyLaunchctlFailed
25
- } from "./chunk-G5HGV6D4.js";
26
- import "./chunk-S75UO75C.js";
25
+ } from "./chunk-JOF3TPDT.js";
26
+ import "./chunk-MMHBNMHK.js";
27
27
  import "./chunk-XCEN33UP.js";
28
28
  import "./chunk-QCGNGEGE.js";
29
- import "./chunk-HONSMBF2.js";
29
+ import "./chunk-II6M23WI.js";
30
30
  import "./chunk-XHKBHWLX.js";
31
- import "./chunk-I3IUS4SR.js";
32
- import "./chunk-B7O4CXFX.js";
33
- import "./chunk-Z5FV7LTD.js";
34
- import "./chunk-JCSJEMTA.js";
35
- import "./chunk-ZCBTCW3T.js";
36
- import "./chunk-GKCDMAUM.js";
31
+ import "./chunk-J5EAU44S.js";
32
+ import "./chunk-4SUNBCR6.js";
33
+ import "./chunk-I4THVOUC.js";
34
+ import "./chunk-KK5YNO2M.js";
35
+ import "./chunk-MAWFWQLR.js";
36
+ import "./chunk-RXRKX646.js";
37
37
  import "./chunk-T5I4PKOQ.js";
38
- import "./chunk-YDQ6OJMF.js";
38
+ import "./chunk-MYDTSPIZ.js";
39
39
  import "./chunk-ZVU6WMMU.js";
40
- import "./chunk-O5TB2LMQ.js";
40
+ import "./chunk-SALM3IYQ.js";
41
41
  import "./chunk-E46NE7FB.js";
42
42
  import "./chunk-MLKGABMK.js";
43
43
  export {
@@ -0,0 +1,20 @@
1
+ import {
2
+ deriveToolTarget
3
+ } from "./chunk-UC2NBQS3.js";
4
+ import {
5
+ TOOL_NAME_MAX_LENGTH,
6
+ codexElicitationToolName
7
+ } from "./chunk-SALM3IYQ.js";
8
+ import "./chunk-MLKGABMK.js";
9
+
10
+ // src/codex-card-routing.ts
11
+ var NAMES_NO_TOOL = {};
12
+ var codexCardRoutingOf = (call) => {
13
+ if (call === null) return NAMES_NO_TOOL;
14
+ const routingToolName = codexElicitationToolName(call.serverName, call.toolName);
15
+ if (routingToolName.length > TOOL_NAME_MAX_LENGTH) return NAMES_NO_TOOL;
16
+ return { routingToolName, routingToolTarget: deriveToolTarget(routingToolName, call.toolParams) };
17
+ };
18
+ export {
19
+ codexCardRoutingOf
20
+ };
@@ -11,7 +11,7 @@ import {
11
11
  installedCodexApp,
12
12
  shellQuoted,
13
13
  writeDesktopProxy
14
- } from "./chunk-S75UO75C.js";
14
+ } from "./chunk-MMHBNMHK.js";
15
15
  import "./chunk-XCEN33UP.js";
16
16
  import {
17
17
  CODEX_APP_LAUNCH_VARIABLE
@@ -11,36 +11,36 @@ import {
11
11
  isCodexQuestionLeftWithTheLocalClient,
12
12
  planCodexElicitation,
13
13
  reportOwnedQuestion
14
- } from "./chunk-DIVVLBZZ.js";
15
- import "./chunk-HH5NNPB5.js";
16
- import "./chunk-GESW4OSZ.js";
17
- import "./chunk-IGO5NDQY.js";
14
+ } from "./chunk-ULTBTBMV.js";
15
+ import "./chunk-SCQRKKGL.js";
16
+ import "./chunk-M6SP3FZF.js";
17
+ import "./chunk-V25XPPEY.js";
18
18
  import "./chunk-N5P2FLOJ.js";
19
- import "./chunk-FE5JENEJ.js";
19
+ import "./chunk-QPNYMNB7.js";
20
20
  import "./chunk-ROVLRXBI.js";
21
- import "./chunk-4XE3DVF7.js";
21
+ import "./chunk-BDAT6H7J.js";
22
22
  import "./chunk-XMSDA5WA.js";
23
- import "./chunk-LMDXQIYT.js";
23
+ import "./chunk-UK4Z3X75.js";
24
24
  import {
25
25
  writeDegraded
26
- } from "./chunk-IAASPG5B.js";
26
+ } from "./chunk-FYK7JV2R.js";
27
27
  import "./chunk-POFBE6ZY.js";
28
- import "./chunk-PFZCLG55.js";
29
- import "./chunk-EMSRB2KH.js";
30
- import "./chunk-LL7SW4RL.js";
28
+ import "./chunk-FR25IWL7.js";
29
+ import "./chunk-QNUGTQKZ.js";
30
+ import "./chunk-G6PHMB3F.js";
31
31
  import "./chunk-XHKBHWLX.js";
32
- import "./chunk-I3IUS4SR.js";
33
- import "./chunk-JCSJEMTA.js";
34
- import "./chunk-ZCBTCW3T.js";
35
- import "./chunk-GKCDMAUM.js";
32
+ import "./chunk-J5EAU44S.js";
33
+ import "./chunk-KK5YNO2M.js";
34
+ import "./chunk-MAWFWQLR.js";
35
+ import "./chunk-RXRKX646.js";
36
36
  import "./chunk-YU2EUD7O.js";
37
37
  import "./chunk-T5I4PKOQ.js";
38
38
  import "./chunk-BG4HHB7E.js";
39
- import "./chunk-YDQ6OJMF.js";
39
+ import "./chunk-MYDTSPIZ.js";
40
40
  import "./chunk-ZVU6WMMU.js";
41
41
  import {
42
42
  canonicalJsonText
43
- } from "./chunk-O5TB2LMQ.js";
43
+ } from "./chunk-SALM3IYQ.js";
44
44
  import "./chunk-MLKGABMK.js";
45
45
 
46
46
  // src/codex-session-launch.ts
@@ -3,9 +3,9 @@ import {
3
3
  getApiKey,
4
4
  getBaseUrl,
5
5
  resetKeyDriftWarning
6
- } from "./chunk-GKCDMAUM.js";
7
- import "./chunk-YDQ6OJMF.js";
8
- import "./chunk-O5TB2LMQ.js";
6
+ } from "./chunk-RXRKX646.js";
7
+ import "./chunk-MYDTSPIZ.js";
8
+ import "./chunk-SALM3IYQ.js";
9
9
  import "./chunk-MLKGABMK.js";
10
10
  export {
11
11
  configFilePath,
@@ -7,20 +7,20 @@ import {
7
7
  recordUnfinishedUpgrade,
8
8
  upgradeInstalledPackage,
9
9
  withUpgradeLock
10
- } from "./chunk-CKWV3T7O.js";
11
- import "./chunk-VCWLGM77.js";
12
- import "./chunk-GESW4OSZ.js";
13
- import "./chunk-IGO5NDQY.js";
10
+ } from "./chunk-H3FRQS4V.js";
11
+ import "./chunk-3SFUJREU.js";
12
+ import "./chunk-M6SP3FZF.js";
13
+ import "./chunk-V25XPPEY.js";
14
14
  import "./chunk-ROVLRXBI.js";
15
- import "./chunk-5IAW6G3K.js";
15
+ import "./chunk-F7BLCVHZ.js";
16
16
  import "./chunk-POFBE6ZY.js";
17
- import "./chunk-JCSJEMTA.js";
18
- import "./chunk-ZCBTCW3T.js";
17
+ import "./chunk-KK5YNO2M.js";
18
+ import "./chunk-MAWFWQLR.js";
19
19
  import "./chunk-T5I4PKOQ.js";
20
20
  import "./chunk-BG4HHB7E.js";
21
- import "./chunk-YDQ6OJMF.js";
21
+ import "./chunk-MYDTSPIZ.js";
22
22
  import "./chunk-ZVU6WMMU.js";
23
- import "./chunk-O5TB2LMQ.js";
23
+ import "./chunk-SALM3IYQ.js";
24
24
  import "./chunk-MLKGABMK.js";
25
25
  export {
26
26
  finishGlobalUpgrade,