deepline 0.3.367 → 0.3.369

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 (100) hide show
  1. package/dist/bundling-sources/sdk/src/release.ts +7 -1
  2. package/dist/bundling-sources/sdk/src/types.ts +5 -0
  3. package/dist/cli/{auth-2DHYG3WZ.mjs → auth-F5YPFL6L.mjs} +4 -4
  4. package/dist/cli/auth-L3ZF67G5.js +33 -0
  5. package/dist/cli/{billing-YBTOTHXM.js → billing-3HHLCETY.js} +73 -73
  6. package/dist/cli/{billing-VFBFBOO5.mjs → billing-LNO6FPPM.mjs} +4 -4
  7. package/dist/cli/{chunk-R2HHZLOP.js → chunk-2AENFV3B.js} +4 -4
  8. package/dist/cli/{chunk-GD2VVYGB.mjs → chunk-4RVNJQ7D.mjs} +6 -1
  9. package/dist/cli/{chunk-OCX5D2WI.mjs → chunk-5IXQ6VP4.mjs} +1 -1
  10. package/dist/cli/{chunk-AVSPBILZ.js → chunk-6A3GNWSU.js} +8 -8
  11. package/dist/cli/{chunk-Z35CB3I5.js → chunk-74XTRGY5.js} +2 -2
  12. package/dist/cli/{chunk-6DRGO4CB.mjs → chunk-COEBGYBW.mjs} +6 -6
  13. package/dist/cli/{chunk-K4V4FX76.mjs → chunk-EJC3INZD.mjs} +1 -1
  14. package/dist/cli/{chunk-D7SELX66.js → chunk-ERMXQOIV.js} +6 -6
  15. package/dist/cli/{chunk-5NVMNFCG.js → chunk-FXVRQHJC.js} +15 -15
  16. package/dist/cli/{chunk-3ZO2O2LE.mjs → chunk-H4N6FMJ5.mjs} +2 -2
  17. package/dist/cli/{chunk-BBQ5IWRX.mjs → chunk-JGLIB4JN.mjs} +10 -102
  18. package/dist/cli/{chunk-KJFND3YT.js → chunk-KGZRUGL7.js} +9 -9
  19. package/dist/cli/{chunk-B7JTGFDS.js → chunk-KR5NWPWI.js} +6 -1
  20. package/dist/cli/{chunk-LDSBBKSM.mjs → chunk-KU4X5TWN.mjs} +2 -2
  21. package/dist/cli/{chunk-CRRVBNZD.js → chunk-LH3BV773.js} +117 -9
  22. package/dist/cli/{chunk-3BZR22CZ.js → chunk-OEQC4QLU.js} +60 -60
  23. package/dist/cli/{chunk-XPIZKTYZ.js → chunk-P7W5OMQ6.js} +50 -50
  24. package/dist/cli/{chunk-LJIWLZHS.js → chunk-PRMAO43X.js} +54 -146
  25. package/dist/cli/{chunk-HEWGTHI2.mjs → chunk-RIT4UED6.mjs} +111 -3
  26. package/dist/cli/{chunk-W2LUUB3U.mjs → chunk-SDOPEZYS.mjs} +4 -4
  27. package/dist/cli/{chunk-DIDYT2TH.mjs → chunk-TRRFXE4X.mjs} +2 -2
  28. package/dist/cli/{chunk-3Y3N7WQO.mjs → chunk-U5VEW7LL.mjs} +1 -1
  29. package/dist/cli/{chunk-JNQECSK5.mjs → chunk-VUYCB2RY.mjs} +1 -1
  30. package/dist/cli/{chunk-MKRADCZK.js → chunk-X6FNDFTD.js} +26 -26
  31. package/dist/cli/{chunk-MXJEKMHU.js → chunk-XH3EIQAZ.js} +224 -224
  32. package/dist/cli/{chunk-GXRUBTXZ.mjs → chunk-YCLPW7QO.mjs} +2 -2
  33. package/dist/cli/client-HL2AHZPQ.js +20 -0
  34. package/dist/cli/{client-F6SEXBBG.mjs → client-HURLYTDV.mjs} +3 -3
  35. package/dist/cli/{csv-4AB42QFI.js → csv-BZ7QNGLU.js} +12 -12
  36. package/dist/cli/{csv-DC3MLBOC.mjs → csv-ZECPS6DF.mjs} +3 -3
  37. package/dist/cli/{db-JAQHMLUY.mjs → db-EUNDS5UG.mjs} +4 -4
  38. package/dist/cli/{db-M3URDTLR.js → db-JXLCCIML.js} +29 -29
  39. package/dist/cli/{describe-AVXUIRDK.js → describe-DNDL3TC6.js} +15 -15
  40. package/dist/cli/{describe-RYXCBLJG.mjs → describe-L6LADCXI.mjs} +8 -8
  41. package/dist/cli/{executions-DYDW4WY3.js → executions-GPKPWEHO.js} +6 -6
  42. package/dist/cli/{executions-XPY5FKOS.mjs → executions-GRCD2GHT.mjs} +4 -4
  43. package/dist/cli/{feedback-ZOI3GFAC.mjs → feedback-5WG2HNZ6.mjs} +3 -3
  44. package/dist/cli/{feedback-HMP2ZYNW.js → feedback-VJCNBYVQ.js} +7 -7
  45. package/dist/cli/{git-K35PB25D.mjs → git-3G5Q4TPI.mjs} +4 -4
  46. package/dist/cli/git-MSJ6SFLT.js +23 -0
  47. package/dist/cli/index.js +82 -82
  48. package/dist/cli/index.mjs +32 -32
  49. package/dist/cli/{legacy-noops-PKGJRS75.mjs → legacy-noops-7WLCNXLD.mjs} +4 -4
  50. package/dist/cli/{legacy-noops-QNNMKQDW.js → legacy-noops-YAO3LDPI.js} +7 -7
  51. package/dist/cli/{monitors-MUMWTBID.js → monitors-MQ6KNDOH.js} +85 -85
  52. package/dist/cli/{monitors-JMNBMRSQ.mjs → monitors-NRQN7M3A.mjs} +4 -4
  53. package/dist/cli/{org-2QL6AY6G.js → org-TGKGLAB4.js} +64 -64
  54. package/dist/cli/{org-AQPMMPQE.mjs → org-X46ICV24.mjs} +4 -4
  55. package/dist/cli/{play-AITTTWYK.mjs → play-PCLCMTVK.mjs} +7 -7
  56. package/dist/cli/play-TJBPVFUK.js +153 -0
  57. package/dist/cli/{providers-BGTPNAOA.js → providers-IPH3TV6J.js} +7 -7
  58. package/dist/cli/{providers-LRCYLIQA.mjs → providers-T2S532QL.mjs} +4 -4
  59. package/dist/cli/{quickstart-3II563Z7.mjs → quickstart-6CO5FGYE.mjs} +3 -3
  60. package/dist/cli/{quickstart-WMAUXWKW.js → quickstart-GXFHMZL7.js} +5 -5
  61. package/dist/cli/search-34MPYWVW.js +26 -0
  62. package/dist/cli/{search-J6ELRZNH.mjs → search-6HML4FB2.mjs} +5 -5
  63. package/dist/cli/{secrets-HDBB2647.js → secrets-J6T743DQ.js} +13 -13
  64. package/dist/cli/{secrets-L7LOTLZB.mjs → secrets-KCNIINW5.mjs} +4 -4
  65. package/dist/cli/{sessions-ZO3WB3EF.js → sessions-ABXL2OZV.js} +5 -5
  66. package/dist/cli/{sessions-7DMN24LF.mjs → sessions-FQHM34TD.mjs} +4 -4
  67. package/dist/cli/{settings-USHCF4YD.mjs → settings-3UXXWUZ3.mjs} +7 -7
  68. package/dist/cli/{settings-OVUM5BLZ.js → settings-HB5DSAUW.js} +74 -74
  69. package/dist/cli/{setup-FZQ7HDL4.mjs → setup-2MOBCKAB.mjs} +6 -6
  70. package/dist/cli/{setup-W77Y5ALX.js → setup-TMJJLEYX.js} +41 -41
  71. package/dist/cli/skills-D3IIQSUK.js +28 -0
  72. package/dist/cli/{skills-A2LR3RAP.mjs → skills-LWS7PNTF.mjs} +4 -4
  73. package/dist/cli/{tools-FX7G7KX5.mjs → tools-TIUE2AK7.mjs} +6 -6
  74. package/dist/cli/tools-XWUSCNVK.js +40 -0
  75. package/dist/cli/update-7O5MXP5K.js +28 -0
  76. package/dist/cli/{update-EODE5FHU.mjs → update-IYXAP5MI.mjs} +6 -6
  77. package/dist/cli/{workflow-7352UH6L.mjs → workflow-3CVYOEKJ.mjs} +5 -5
  78. package/dist/cli/{workflow-JEY4ESZA.js → workflow-SGF3DFKJ.js} +15 -15
  79. package/dist/{client-BmKft6Pr.d.mts → client-CjHv4K6D.d.mts} +8 -0
  80. package/dist/{client-Bra0Nc2D.d.ts → client-rTuhNN-x.d.ts} +8 -0
  81. package/dist/index.d.mts +2 -2
  82. package/dist/index.d.ts +2 -2
  83. package/dist/index.js +6 -6
  84. package/dist/index.mjs +3 -3
  85. package/dist/install-integrity.json +76 -76
  86. package/dist/plays/run-request.d.mts +1 -1
  87. package/dist/plays/run-request.d.ts +1 -1
  88. package/dist/release.d.mts +5 -1
  89. package/dist/release.d.ts +5 -1
  90. package/dist/release.js +2 -2
  91. package/dist/release.mjs +1 -1
  92. package/package.json +1 -1
  93. package/dist/cli/auth-I2E45QZK.js +0 -33
  94. package/dist/cli/client-VWGJIUGH.js +0 -20
  95. package/dist/cli/git-TJEM2U4K.js +0 -23
  96. package/dist/cli/play-YO52D4YP.js +0 -153
  97. package/dist/cli/search-FQ5NSE7R.js +0 -26
  98. package/dist/cli/skills-GLKEZPFV.js +0 -28
  99. package/dist/cli/tools-HBNJ3WP3.js +0 -40
  100. package/dist/cli/update-A2TZZO2S.js +0 -28
@@ -49,7 +49,7 @@ var SDK_RELEASE = {
49
49
  // getters keep their established compatibility behavior.
50
50
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
51
51
  // 0.3.90 is the first deliberately versioned SDK release for API v3.
52
- version: "0.3.367",
52
+ version: "0.3.369",
53
53
  updateSummary: "Play grep now returns concise results with the matched fields and terms. Automatic CLI updates are enabled by default; use `deepline settings autoupdate off` to opt out, `deepline settings autoupdate on` to re-enable updates, or `deepline settings autoupdate pin <version>` to hold an exact release.",
54
54
  packageCapabilities: {
55
55
  updatePreferences: 1
@@ -93,6 +93,11 @@ var SDK_RELEASE = {
93
93
  introducedIn: "0.3.91",
94
94
  reason: "deepline search was added in SDK CLI 0.3.91 as the one search across tools, monitors, and plays. On an older version run deepline tools search or deepline plays search, or update."
95
95
  },
96
+ {
97
+ command: "describe",
98
+ introducedIn: "0.3.312",
99
+ reason: "deepline describe was added in SDK CLI 0.3.312 as the one describe for tools, monitor types, and plays. On an older version run deepline tools describe or deepline plays describe, or update."
100
+ },
96
101
  {
97
102
  command: "notifications",
98
103
  introducedIn: "0.2.40",
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-NXGCO4JB.mjs";
15
15
  import {
16
16
  SDK_RELEASE
17
- } from "./chunk-GD2VVYGB.mjs";
17
+ } from "./chunk-4RVNJQ7D.mjs";
18
18
 
19
19
  // src/errors.ts
20
20
  var CustomerDbQueryOutcomeUnknownError = class extends DeeplineError {
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
 
4
- var _chunkD7SELX66js = require('./chunk-D7SELX66.js');
4
+ var _chunkERMXQOIVjs = require('./chunk-ERMXQOIV.js');
5
5
 
6
6
 
7
- var _chunkR2HHZLOPjs = require('./chunk-R2HHZLOP.js');
7
+ var _chunk2AENFV3Bjs = require('./chunk-2AENFV3B.js');
8
8
 
9
9
  // src/cli/commands/sessions.ts
10
10
 
@@ -139,7 +139,7 @@ function currentSessionFile(agent) {
139
139
  const newestFirst = listSessionFiles(agent).sort(
140
140
  (a, b) => b.mtimeMs - a.mtimeMs
141
141
  );
142
- const sessionId = _chunkR2HHZLOPjs.agentSessionIdFromEnvironment.call(void 0, );
142
+ const sessionId = _chunk2AENFV3Bjs.agentSessionIdFromEnvironment.call(void 0, );
143
143
  const cwd = process.cwd();
144
144
  return _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(newestFirst.find((candidate) => candidate.sessionId === sessionId), () => ( newestFirst.find(
145
145
  (candidate) => sessionStartedInDirectory(candidate, cwd)
@@ -448,7 +448,7 @@ function buildSessionUploadContent(raw) {
448
448
  return { encodedContent: encoded, needsChunking: true };
449
449
  }
450
450
  async function uploadPayload(path, payload) {
451
- const { http } = _chunkD7SELX66js.getAuthedHttpClient.call(void 0, );
451
+ const { http } = _chunkERMXQOIVjs.getAuthedHttpClient.call(void 0, );
452
452
  return await http.post(path, payload);
453
453
  }
454
454
  async function uploadChunkedSessions(sessions, options) {
@@ -481,7 +481,7 @@ async function uploadChunkedSessions(sessions, options) {
481
481
  ...options.rating ? { rating: options.rating } : {}
482
482
  });
483
483
  const sessionIds = sessions.map((session) => session.sessionId);
484
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
484
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
485
485
  {
486
486
  ...response,
487
487
  ok: true,
@@ -513,7 +513,7 @@ async function handleSessionsSend(options) {
513
513
  filename: _path.basename.call(void 0, filePath),
514
514
  ...rating ? { rating } : {}
515
515
  });
516
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
516
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
517
517
  {
518
518
  ...response2,
519
519
  ok: true,
@@ -563,7 +563,7 @@ async function handleSessionsSend(options) {
563
563
  ...rating ? { rating } : {}
564
564
  });
565
565
  const sessionIds = built.map((session) => session.sessionId);
566
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
566
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
567
567
  {
568
568
  ...response,
569
569
  ok: true,
@@ -671,7 +671,7 @@ ${refreshMeta}
671
671
  </body>
672
672
  </html>`;
673
673
  _fs.writeFileSync.call(void 0, outputPath, html, "utf8");
674
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
674
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
675
675
  {
676
676
  ok: true,
677
677
  file: outputPath,
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunk3BZR22CZjs = require('./chunk-3BZR22CZ.js');
3
+ var _chunkOEQC4QLUjs = require('./chunk-OEQC4QLU.js');
4
4
 
5
5
  // src/cli/npm-script-policy.ts
6
6
  var _child_process = require('child_process');
@@ -13,7 +13,7 @@ function npmSupportsAllowScripts(version) {
13
13
  }
14
14
  function readNpmVersion(env) {
15
15
  try {
16
- const plan = _chunk3BZR22CZjs.resolveShellSpawn.call(void 0, "npm", ["--version"], process.platform, env);
16
+ const plan = _chunkOEQC4QLUjs.resolveShellSpawn.call(void 0, "npm", ["--version"], process.platform, env);
17
17
  const result = _child_process.spawnSync.call(void 0, plan.command, plan.args, {
18
18
  encoding: "utf8",
19
19
  env,
@@ -19,11 +19,11 @@ import {
19
19
  } from "./chunk-EDWJY6T4.mjs";
20
20
  import {
21
21
  registerDeprecatedSearchCommand
22
- } from "./chunk-HEWGTHI2.mjs";
22
+ } from "./chunk-RIT4UED6.mjs";
23
23
  import {
24
24
  handleDeploymentGet,
25
25
  handleDeploymentsList
26
- } from "./chunk-DIDYT2TH.mjs";
26
+ } from "./chunk-TRRFXE4X.mjs";
27
27
  import {
28
28
  pinLocalPlayImports,
29
29
  planLocalPlayExecution
@@ -42,7 +42,7 @@ import {
42
42
  normalizeRunEventOperationRequest,
43
43
  parseLogLevel,
44
44
  playInputExampleArgs
45
- } from "./chunk-JNQECSK5.mjs";
45
+ } from "./chunk-VUYCB2RY.mjs";
46
46
  import {
47
47
  CSV_DATA_INPUT_KEY,
48
48
  buildNamedPlayRunRequest,
@@ -75,10 +75,10 @@ import {
75
75
  printJsonError,
76
76
  renderCommandEnvelopeText,
77
77
  shouldEmitJson
78
- } from "./chunk-K4V4FX76.mjs";
78
+ } from "./chunk-EJC3INZD.mjs";
79
79
  import {
80
80
  fetchWithDeploymentProtection
81
- } from "./chunk-OCX5D2WI.mjs";
81
+ } from "./chunk-5IXQ6VP4.mjs";
82
82
  import {
83
83
  DeeplineError
84
84
  } from "./chunk-NXGCO4JB.mjs";
@@ -16476,7 +16476,7 @@ Examples:
16476
16476
  process.exitCode = await ownView();
16477
16477
  return;
16478
16478
  }
16479
- const { describeAnything } = await import("./describe-RYXCBLJG.mjs");
16479
+ const { describeAnything } = await import("./describe-L6LADCXI.mjs");
16480
16480
  process.exitCode = await describeAnything(
16481
16481
  name,
16482
16482
  {
@@ -3,7 +3,7 @@ import {
3
3
  detectAgentRuntime,
4
4
  resolveCliCommandContext,
5
5
  resolveConfig
6
- } from "./chunk-OCX5D2WI.mjs";
6
+ } from "./chunk-5IXQ6VP4.mjs";
7
7
  import {
8
8
  DeeplineError
9
9
  } from "./chunk-NXGCO4JB.mjs";
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkR2HHZLOPjs = require('./chunk-R2HHZLOP.js');
6
+ var _chunk2AENFV3Bjs = require('./chunk-2AENFV3B.js');
7
7
 
8
8
 
9
9
  var _chunk7P5AA3SNjs = require('./chunk-7P5AA3SN.js');
@@ -225,8 +225,8 @@ var BROWSER_OPEN_COOLDOWN_MS = 3e4;
225
225
  var SAME_URL_BROWSER_OPEN_COOLDOWN_MS = 5 * 6e4;
226
226
  var defaultBrowserCommandRunner = childProcess;
227
227
  function getAuthedHttpClient() {
228
- const config = _chunkR2HHZLOPjs.resolveConfig.call(void 0, );
229
- return { config, http: new (0, _chunkR2HHZLOPjs.HttpClient)(config) };
228
+ const config = _chunk2AENFV3Bjs.resolveConfig.call(void 0, );
229
+ return { config, http: new (0, _chunk2AENFV3Bjs.HttpClient)(config) };
230
230
  }
231
231
  function stableOsUserId() {
232
232
  try {
@@ -566,7 +566,7 @@ function collectLocalEnvInfo() {
566
566
  os: `${process.platform} ${process.arch}`,
567
567
  node_version: process.version,
568
568
  home_dir: homeDir,
569
- agent_runtime: _chunkR2HHZLOPjs.detectAgentRuntime.call(void 0, )
569
+ agent_runtime: _chunk2AENFV3Bjs.detectAgentRuntime.call(void 0, )
570
570
  };
571
571
  const env = process.env;
572
572
  const optional = {
@@ -813,9 +813,9 @@ function markdownTableFromRows(rows, preferredColumns = []) {
813
813
  }
814
814
  function withAgentCommandContext(value) {
815
815
  const valueRecord = value !== null && typeof value === "object" && !Array.isArray(value) ? value : null;
816
- return _chunkR2HHZLOPjs.detectAgentRuntime.call(void 0, ) !== "unknown" && valueRecord && !Object.prototype.hasOwnProperty.call(valueRecord, "command_context") ? {
816
+ return _chunk2AENFV3Bjs.detectAgentRuntime.call(void 0, ) !== "unknown" && valueRecord && !Object.prototype.hasOwnProperty.call(valueRecord, "command_context") ? {
817
817
  ...valueRecord,
818
- command_context: _chunkR2HHZLOPjs.resolveCliCommandContext.call(void 0, )
818
+ command_context: _chunk2AENFV3Bjs.resolveCliCommandContext.call(void 0, )
819
819
  } : value;
820
820
  }
821
821
  function printJson(value, fields) {
@@ -1,17 +1,17 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
 
4
- var _chunkZ35CB3I5js = require('./chunk-Z35CB3I5.js');
4
+ var _chunk74XTRGY5js = require('./chunk-74XTRGY5.js');
5
5
 
6
6
 
7
7
 
8
- var _chunk3BZR22CZjs = require('./chunk-3BZR22CZ.js');
8
+ var _chunkOEQC4QLUjs = require('./chunk-OEQC4QLU.js');
9
9
 
10
10
 
11
- var _chunkD7SELX66js = require('./chunk-D7SELX66.js');
11
+ var _chunkERMXQOIVjs = require('./chunk-ERMXQOIV.js');
12
12
 
13
13
 
14
- var _chunkR2HHZLOPjs = require('./chunk-R2HHZLOP.js');
14
+ var _chunk2AENFV3Bjs = require('./chunk-2AENFV3B.js');
15
15
 
16
16
  // src/cli/commands/update.ts
17
17
  var _child_process = require('child_process');
@@ -489,7 +489,7 @@ function normalizedNpmPrefix(value) {
489
489
  }
490
490
  function resolveNpmGlobalPrefix(env) {
491
491
  try {
492
- const plan = _chunk3BZR22CZjs.resolveShellSpawn.call(void 0, "npm", ["prefix", "-g"], process.platform, env);
492
+ const plan = _chunkOEQC4QLUjs.resolveShellSpawn.call(void 0, "npm", ["prefix", "-g"], process.platform, env);
493
493
  const result = _child_process.spawnSync.call(void 0, plan.command, plan.args, {
494
494
  encoding: "utf8",
495
495
  env,
@@ -545,8 +545,8 @@ function resolveUpdatePlan(options = {}) {
545
545
  const npmGlobalPrefix = options.npmGlobalPrefix !== void 0 ? options.npmGlobalPrefix : resolveNpmGlobalPrefix(env);
546
546
  const hasVerifiedNpmOwnership = inferredInstallPrefix !== null && normalizedNpmPrefix(inferredInstallPrefix) === normalizedNpmPrefix(npmGlobalPrefix);
547
547
  const installPrefix = options.requireVerifiedNpmOwnership ? hasVerifiedNpmOwnership ? inferredInstallPrefix : null : inferredInstallPrefix;
548
- const npmVersion = options.npmVersion === void 0 ? _chunkZ35CB3I5js.readNpmVersion.call(void 0, env) : options.npmVersion;
549
- const npmGlobalInstallFlags = _chunkZ35CB3I5js.npmSupportsAllowScripts.call(void 0, npmVersion) ? [...NPM_SDK_INSTALL_COMMON_FLAGS, "--allow-scripts=esbuild"] : NPM_SDK_INSTALL_COMMON_FLAGS;
548
+ const npmVersion = options.npmVersion === void 0 ? _chunk74XTRGY5js.readNpmVersion.call(void 0, env) : options.npmVersion;
549
+ const npmGlobalInstallFlags = _chunk74XTRGY5js.npmSupportsAllowScripts.call(void 0, npmVersion) ? [...NPM_SDK_INSTALL_COMMON_FLAGS, "--allow-scripts=esbuild"] : NPM_SDK_INSTALL_COMMON_FLAGS;
550
550
  const args = installPrefix ? [
551
551
  "install",
552
552
  "-g",
@@ -556,7 +556,7 @@ function resolveUpdatePlan(options = {}) {
556
556
  packageSpec
557
557
  ] : ["install", "-g", ...npmGlobalInstallFlags, packageSpec];
558
558
  const fallbackRegistryUrl = options.npmFallbackRegistryUrl !== void 0 ? options.npmFallbackRegistryUrl : publicNpmFallbackRegistryUrl(
559
- _optionalChain([env, 'access', _18 => _18.DEEPLINE_HOST_URL, 'optionalAccess', _19 => _19.trim, 'call', _20 => _20()]) || _chunkR2HHZLOPjs.autoDetectBaseUrl.call(void 0, )
559
+ _optionalChain([env, 'access', _18 => _18.DEEPLINE_HOST_URL, 'optionalAccess', _19 => _19.trim, 'call', _20 => _20()]) || _chunk2AENFV3Bjs.autoDetectBaseUrl.call(void 0, )
560
560
  );
561
561
  return {
562
562
  kind: "npm-global",
@@ -703,7 +703,7 @@ function sidecarInstallFailure(versionDir) {
703
703
  function runCommand(command, args, env = process.env) {
704
704
  return new Promise((resolveResult) => {
705
705
  let output = "";
706
- const plan = _chunk3BZR22CZjs.resolveShellSpawn.call(void 0, command, args, process.platform, env);
706
+ const plan = _chunkOEQC4QLUjs.resolveShellSpawn.call(void 0, command, args, process.platform, env);
707
707
  const child = _child_process.spawn.call(void 0, plan.command, plan.args, {
708
708
  stdio: ["inherit", "pipe", "pipe"],
709
709
  shell: plan.shell,
@@ -1079,14 +1079,14 @@ async function publishedVersionSupportsPin(version, fallbackRegistryUrl) {
1079
1079
  throw _nullishCoalesce(lastError, () => ( new Error("No npm registry was available")));
1080
1080
  }
1081
1081
  async function runUpdateCommand(options, dependencies = {}) {
1082
- const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => ( _chunkR2HHZLOPjs.autoDetectBaseUrl));
1082
+ const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => ( _chunk2AENFV3Bjs.autoDetectBaseUrl));
1083
1083
  const resolvePlan = _nullishCoalesce(dependencies.resolvePlan, () => ( resolveUpdatePlan));
1084
1084
  const runPlan = _nullishCoalesce(dependencies.runPlan, () => ( runUpdatePlan));
1085
1085
  const syncSkills = _nullishCoalesce(dependencies.syncSkillsIfNeeded, () => ( (async () => {
1086
1086
  const originalWrite = process.stdout.write.bind(process.stdout);
1087
1087
  process.stdout.write = (() => true);
1088
1088
  try {
1089
- const exitCode = await _chunk3BZR22CZjs.runSkillsCommand.call(void 0, { json: true });
1089
+ const exitCode = await _chunkOEQC4QLUjs.runSkillsCommand.call(void 0, { json: true });
1090
1090
  if (exitCode !== 0) {
1091
1091
  throw new Error(
1092
1092
  `Deepline skills update failed with exit ${exitCode}.`
@@ -1157,11 +1157,11 @@ async function runUpdateCommand(options, dependencies = {}) {
1157
1157
  ]
1158
1158
  };
1159
1159
  if (options.json && !options.executeWithJson) {
1160
- _chunkD7SELX66js.printCommandEnvelope.call(void 0, { ...plan, render }, { json: true });
1160
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: true });
1161
1161
  return 0;
1162
1162
  }
1163
1163
  if (options.printCommand) {
1164
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
1164
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
1165
1165
  {
1166
1166
  ...plan,
1167
1167
  render: {
@@ -1174,7 +1174,7 @@ async function runUpdateCommand(options, dependencies = {}) {
1174
1174
  return 0;
1175
1175
  }
1176
1176
  if (plan.kind === "source" || plan.kind === "homebrew") {
1177
- _chunkD7SELX66js.printCommandEnvelope.call(void 0, { ...plan, render }, { json: false });
1177
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: false });
1178
1178
  return 0;
1179
1179
  }
1180
1180
  stderr.write(`Updating Deepline SDK/CLI with: ${plan.manualCommand}
@@ -1204,7 +1204,7 @@ To retry with full installer output, run: deepline skills --json
1204
1204
  );
1205
1205
  }
1206
1206
  if (options.executeWithJson && options.json) {
1207
- _chunkD7SELX66js.printCommandEnvelope.call(void 0,
1207
+ _chunkERMXQOIVjs.printCommandEnvelope.call(void 0,
1208
1208
  {
1209
1209
  ok: true,
1210
1210
  pinnedVersion
@@ -2,7 +2,7 @@ import {
2
2
  argsWantJson,
3
3
  openInBrowser,
4
4
  printCommandEnvelope
5
- } from "./chunk-K4V4FX76.mjs";
5
+ } from "./chunk-EJC3INZD.mjs";
6
6
  import {
7
7
  ACTIVE_ORG_ID_ENV,
8
8
  ACTIVE_ORG_NAME_ENV,
@@ -25,7 +25,7 @@ import {
25
25
  saveHostEnvValues,
26
26
  saveProjectDeeplineEnvValues,
27
27
  storedHostApiKey
28
- } from "./chunk-OCX5D2WI.mjs";
28
+ } from "./chunk-5IXQ6VP4.mjs";
29
29
 
30
30
  // src/cli/commands/auth.ts
31
31
  import {
@@ -9,9 +9,11 @@ import {
9
9
  shellQuote
10
10
  } from "./chunk-OVDNJAJN.mjs";
11
11
  import {
12
+ Capability,
13
+ observedMaxText,
12
14
  recentSearchRef,
13
15
  registerDeprecatedSearchCommand
14
- } from "./chunk-HEWGTHI2.mjs";
16
+ } from "./chunk-RIT4UED6.mjs";
15
17
  import {
16
18
  extractSummaryFields,
17
19
  projectRowOutput,
@@ -26,7 +28,7 @@ import {
26
28
  import {
27
29
  DeeplineClient,
28
30
  validateExecutionIdempotencyKey
29
- } from "./chunk-JNQECSK5.mjs";
31
+ } from "./chunk-VUYCB2RY.mjs";
30
32
  import {
31
33
  beginToolExecuteCommand,
32
34
  getToolExecuteInvocationId,
@@ -40,11 +42,11 @@ import {
40
42
  printJsonError,
41
43
  renderCommandEnvelopeText,
42
44
  shouldEmitJson
43
- } from "./chunk-K4V4FX76.mjs";
45
+ } from "./chunk-EJC3INZD.mjs";
44
46
  import {
45
47
  resolveConfig,
46
48
  sdkCliStateDirPath
47
- } from "./chunk-OCX5D2WI.mjs";
49
+ } from "./chunk-5IXQ6VP4.mjs";
48
50
  import {
49
51
  DeeplineError
50
52
  } from "./chunk-NXGCO4JB.mjs";
@@ -243,102 +245,6 @@ function arrayField(value, key) {
243
245
  return Array.isArray(candidate) ? candidate : [];
244
246
  }
245
247
 
246
- // src/cli/tool-description.ts
247
- var Capability = class _Capability {
248
- #catalogEntry;
249
- constructor(catalogEntry) {
250
- this.#catalogEntry = catalogEntry;
251
- }
252
- static fromCatalogEntry(catalogEntry) {
253
- return new _Capability(catalogEntry);
254
- }
255
- describe() {
256
- return CapabilityDescription.fromCatalogEntry(this.#catalogEntry);
257
- }
258
- };
259
- var CapabilityDescription = class _CapabilityDescription {
260
- #catalogEntry;
261
- constructor(catalogEntry) {
262
- this.#catalogEntry = catalogEntry;
263
- }
264
- static fromCatalogEntry(catalogEntry) {
265
- return new _CapabilityDescription(catalogEntry);
266
- }
267
- /**
268
- * The customer price already resolved by the catalog. This intentionally
269
- * omits provider-price fields, even when a catalog Adapter carried them.
270
- */
271
- customerCost() {
272
- const legacyCost = recordValue(this.#catalogEntry.cost);
273
- const pricing = recordValue(this.#catalogEntry.pricing);
274
- const unit = stringValue(pricing.unit);
275
- const legacyPricingModel = stringValue(
276
- legacyCost.pricingModel ?? legacyCost.pricing_model
277
- );
278
- const pricingModel = unit === "call" ? "fixed" : unit === "result" || unit === "page" ? `per_${unit}` : unit === "usage" ? "provider_usage" : legacyPricingModel;
279
- const canonicalCredits = pricingNumber(
280
- pricing,
281
- "creditsPerUnit",
282
- "credits_per_unit",
283
- this.#catalogEntry.deeplineCreditsPerPricingUnit ?? this.#catalogEntry.deepline_credits_per_pricing_unit
284
- );
285
- const canonicalUsd = pricingNumber(
286
- pricing,
287
- "usdPerUnit",
288
- "usd_per_unit",
289
- this.#catalogEntry.deeplineUsdPerPricingUnit ?? this.#catalogEntry.deepline_usd_per_pricing_unit
290
- );
291
- const billingSource = stringValue(
292
- this.#catalogEntry.billingSource ?? this.#catalogEntry.billing_source
293
- );
294
- const billingSourceLabel = stringValue(
295
- this.#catalogEntry.billingSourceLabel ?? this.#catalogEntry.billing_source_label
296
- );
297
- const isFree = billingSource === "free";
298
- return {
299
- pricingModel: pricingModel || null,
300
- unit: unit || null,
301
- displayText: isFree ? "Free" : stringValue(pricing.displayText ?? pricing.display_text),
302
- summary: isFree ? null : stringValue(pricing.summary),
303
- billingMode: stringValue(
304
- legacyCost.billingMode ?? legacyCost.billing_mode
305
- ),
306
- billingSource,
307
- billingSourceLabel,
308
- deeplineCreditsPerPricingUnit: isFree ? 0 : canonicalCredits,
309
- deeplineUsdPerPricingUnit: isFree ? 0 : canonicalUsd,
310
- ...pricing.estimatedRange && !isFree && billingSource !== "own_provider_credentials" ? {
311
- estimatedRange: pricing.estimatedRange,
312
- details: Array.isArray(pricing.details) ? pricing.details.filter(
313
- (value) => typeof value === "string"
314
- ) : []
315
- } : {},
316
- ...pricing.observedReference && !isFree && billingSource !== "own_provider_credentials" ? {
317
- observedReference: pricing.observedReference,
318
- details: Array.isArray(pricing.details) ? pricing.details.filter(
319
- (value) => typeof value === "string"
320
- ) : []
321
- } : {}
322
- };
323
- }
324
- };
325
- function recordValue(value) {
326
- return value && typeof value === "object" && !Array.isArray(value) ? value : {};
327
- }
328
- function stringValue(value) {
329
- return typeof value === "string" && value.trim() ? value : null;
330
- }
331
- function numberValue(value) {
332
- return typeof value === "number" && Number.isFinite(value) ? value : null;
333
- }
334
- function pricingNumber(pricing, canonicalKey, aliasKey, legacyValue) {
335
- for (const key of [canonicalKey, aliasKey]) {
336
- if (Object.prototype.hasOwnProperty.call(pricing, key))
337
- return numberValue(pricing[key]);
338
- }
339
- return numberValue(legacyValue);
340
- }
341
-
342
248
  // src/cli/tool-connection-status.ts
343
249
  function toolConnectionStatusMessage(input) {
344
250
  if (input.credentialStatus === "requires_connection") {
@@ -1030,7 +936,7 @@ Examples:
1030
936
  process.exitCode = await narrowView();
1031
937
  return;
1032
938
  }
1033
- const { describeAnything } = await import("./describe-RYXCBLJG.mjs");
939
+ const { describeAnything } = await import("./describe-L6LADCXI.mjs");
1034
940
  process.exitCode = await describeAnything(
1035
941
  toolId,
1036
942
  { ...options, kinds: ["tools", "monitors"], fetchedTool: metadata },
@@ -1587,7 +1493,8 @@ function describedTool(tool, requestedToolId) {
1587
1493
  cost: [
1588
1494
  stringField2(cost, "displayText"),
1589
1495
  // "Free (free)" says the same thing twice.
1590
- billing.toLowerCase() === stringField2(cost, "displayText").toLowerCase() ? "" : billing && `(${billing})`
1496
+ billing.toLowerCase() === stringField2(cost, "displayText").toLowerCase() ? "" : billing && `(${billing})`,
1497
+ observedMaxText(cost) && `\u2014 ${observedMaxText(cost)}`
1591
1498
  ].filter(Boolean).join(" ") || void 0,
1592
1499
  guidance: [
1593
1500
  ...contract.deprecated === true ? [`Deprecated. ${stringField2(deprecation, "message")}`.trim()] : [],
@@ -1736,6 +1643,7 @@ function toolPricingOnlyLines(tool, requestedToolId, options = {}) {
1736
1643
  const price = displayText || summary || (credits !== null ? `${formatDecimal(credits)} Deepline credits${usd !== null ? ` / ${formatUsd(usd)}` : ""} per ${unit}` : "pricing unavailable");
1737
1644
  return [
1738
1645
  `${options.heading ?? `Pricing: ${toolId}`}: ${price}`,
1646
+ ...observedMaxText(cost) ? [` ${observedMaxText(cost)}`] : [],
1739
1647
  ...cost.observedReference || cost.estimatedRange ? [
1740
1648
  ...summary ? [` ${summary}`] : [],
1741
1649
  ...(cost.details ?? []).map((detail) => ` ${detail}`)
@@ -21,7 +21,7 @@ var _chunkLA46MMTLjs = require('./chunk-LA46MMTL.js');
21
21
 
22
22
 
23
23
 
24
- var _chunkR2HHZLOPjs = require('./chunk-R2HHZLOP.js');
24
+ var _chunk2AENFV3Bjs = require('./chunk-2AENFV3B.js');
25
25
 
26
26
 
27
27
 
@@ -167,7 +167,7 @@ async function queryCustomerDatabase(http, input) {
167
167
  if (error instanceof _chunk7P5AA3SNjs.DeeplineError && (_optionalChain([error, 'access', _2 => _2.code, 'optionalAccess', _3 => _3.startsWith, 'call', _4 => _4("NETWORK_")]) || // Older API readers return PostgreSQL errors as HTTP 400, including
168
168
  // lost connections and explicitly unknown transaction resolution.
169
169
  /^08[A-Z0-9]{3}$/.test(_nullishCoalesce(error.code, () => ( ""))) || ["57P01", "57P02", "57P03"].includes(_nullishCoalesce(error.code, () => ( ""))) || error.statusCode === 408 || (_nullishCoalesce(error.statusCode, () => ( 0))) >= 500)) {
170
- throw new (0, _chunkR2HHZLOPjs.CustomerDbQueryOutcomeUnknownError)(
170
+ throw new (0, _chunk2AENFV3Bjs.CustomerDbQueryOutcomeUnknownError)(
171
171
  error,
172
172
  plan.request.body.operation_key
173
173
  );
@@ -175,7 +175,7 @@ async function queryCustomerDatabase(http, input) {
175
175
  throw error;
176
176
  }
177
177
  if (!result || typeof result !== "object" || Array.isArray(result) || typeof result.command !== "string" || !Array.isArray(result.columns) || !Array.isArray(result.rows) || typeof result.truncated !== "boolean" || result.row_count !== null && (!Number.isSafeInteger(result.row_count) || result.row_count < 0) || !Number.isSafeInteger(result.row_count_returned) || result.row_count_returned < 0) {
178
- throw new (0, _chunkR2HHZLOPjs.CustomerDbQueryOutcomeUnknownError)(
178
+ throw new (0, _chunk2AENFV3Bjs.CustomerDbQueryOutcomeUnknownError)(
179
179
  new (0, _chunk7P5AA3SNjs.DeeplineError)(
180
180
  "The SQL response did not contain a valid result.",
181
181
  200,
@@ -186,7 +186,7 @@ async function queryCustomerDatabase(http, input) {
186
186
  }
187
187
  const operation = result.operation;
188
188
  if (input.operationKey !== void 0 && (!operation || operation.operation_key !== input.operationKey || !Number.isSafeInteger(operation.completed_at_ms) || operation.completed_at_ms < 0 || !["executed", "operation_recovery"].includes(operation.source))) {
189
- throw new (0, _chunkR2HHZLOPjs.CustomerDbQueryOutcomeUnknownError)(
189
+ throw new (0, _chunk2AENFV3Bjs.CustomerDbQueryOutcomeUnknownError)(
190
190
  new (0, _chunk7P5AA3SNjs.DeeplineError)(
191
191
  "The server did not confirm the original atomic SQL operation.",
192
192
  200,
@@ -2910,8 +2910,8 @@ function runtimeSelectionHeaders(runtime) {
2910
2910
  }
2911
2911
  const receivers = _optionalChain([process, 'access', _104 => _104.env, 'access', _105 => _105.DEEPLINE_RUNTIME_RETAINED_PIPELINE_RECEIVERS, 'optionalAccess', _106 => _106.trim, 'call', _107 => _107()]);
2912
2912
  return {
2913
- [_chunkR2HHZLOPjs.RUNTIME_ENVIRONMENT_TOKEN_HEADER]: token,
2914
- ...receivers ? { [_chunkR2HHZLOPjs.RETAINED_PIPELINE_RECEIVERS_HEADER]: receivers } : {}
2913
+ [_chunk2AENFV3Bjs.RUNTIME_ENVIRONMENT_TOKEN_HEADER]: token,
2914
+ ...receivers ? { [_chunk2AENFV3Bjs.RETAINED_PIPELINE_RECEIVERS_HEADER]: receivers } : {}
2915
2915
  };
2916
2916
  }
2917
2917
  function isolatedCiRuntimeEventReadHeaders() {
@@ -2927,7 +2927,7 @@ function isolatedCiRuntimeEventReadHeaders() {
2927
2927
  "RUNTIME_EVENT_INTERNAL_TOKEN_REQUIRED"
2928
2928
  );
2929
2929
  }
2930
- return { [_chunkR2HHZLOPjs.COORDINATOR_INTERNAL_TOKEN_HEADER]: token };
2930
+ return { [_chunk2AENFV3Bjs.COORDINATOR_INTERNAL_TOKEN_HEADER]: token };
2931
2931
  }
2932
2932
  function normalizeTestPolicyOverrides(value, source) {
2933
2933
  if (value && typeof value === "object" && !Array.isArray(value)) {
@@ -3217,8 +3217,8 @@ var DeeplineClient = (_class = class _DeeplineClient {
3217
3217
  * @throws {@link ConfigError} if no API key can be resolved from any source.
3218
3218
  */
3219
3219
  constructor(options) {
3220
- this.config = _chunkR2HHZLOPjs.resolveConfig.call(void 0, options);
3221
- this.http = new (0, _chunkR2HHZLOPjs.HttpClient)(this.config);
3220
+ this.config = _chunk2AENFV3Bjs.resolveConfig.call(void 0, options);
3221
+ this.http = new (0, _chunk2AENFV3Bjs.HttpClient)(this.config);
3222
3222
  this.toolCalls = new ToolCalls(
3223
3223
  this.http,
3224
3224
  this.config.timeout,
@@ -49,7 +49,7 @@ var SDK_RELEASE = {
49
49
  // getters keep their established compatibility behavior.
50
50
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
51
51
  // 0.3.90 is the first deliberately versioned SDK release for API v3.
52
- version: "0.3.367",
52
+ version: "0.3.369",
53
53
  updateSummary: "Play grep now returns concise results with the matched fields and terms. Automatic CLI updates are enabled by default; use `deepline settings autoupdate off` to opt out, `deepline settings autoupdate on` to re-enable updates, or `deepline settings autoupdate pin <version>` to hold an exact release.",
54
54
  packageCapabilities: {
55
55
  updatePreferences: 1
@@ -93,6 +93,11 @@ var SDK_RELEASE = {
93
93
  introducedIn: "0.3.91",
94
94
  reason: "deepline search was added in SDK CLI 0.3.91 as the one search across tools, monitors, and plays. On an older version run deepline tools search or deepline plays search, or update."
95
95
  },
96
+ {
97
+ command: "describe",
98
+ introducedIn: "0.3.312",
99
+ reason: "deepline describe was added in SDK CLI 0.3.312 as the one describe for tools, monitor types, and plays. On an older version run deepline tools describe or deepline plays describe, or update."
100
+ },
96
101
  {
97
102
  command: "notifications",
98
103
  introducedIn: "0.2.40",
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  getAuthedHttpClient,
3
3
  printCommandEnvelope
4
- } from "./chunk-K4V4FX76.mjs";
4
+ } from "./chunk-EJC3INZD.mjs";
5
5
  import {
6
6
  agentSessionIdFromEnvironment
7
- } from "./chunk-OCX5D2WI.mjs";
7
+ } from "./chunk-5IXQ6VP4.mjs";
8
8
 
9
9
  // src/cli/commands/sessions.ts
10
10
  import {