deepline 0.3.455 → 0.3.456

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 (112) hide show
  1. package/dist/bundling-sources/sdk/src/client.ts +23 -0
  2. package/dist/bundling-sources/sdk/src/release.ts +1 -1
  3. package/dist/cli/{auth-BGPCPVHW.mjs → auth-OBWRDCK3.mjs} +4 -4
  4. package/dist/cli/auth-X5H25CM4.js +40 -0
  5. package/dist/cli/{billing-FCC2YOKB.js → billing-XDDTD7C3.js} +73 -73
  6. package/dist/cli/{billing-6BLEXHCR.mjs → billing-ZR4OHVLA.mjs} +4 -4
  7. package/dist/cli/{chunk-IUSGWMGK.mjs → chunk-4EMVWEUJ.mjs} +2 -2
  8. package/dist/cli/{chunk-LQH2KJ53.js → chunk-4X5H47H5.js} +81 -81
  9. package/dist/cli/{chunk-CZREA5NE.js → chunk-76GTVFFG.js} +8 -8
  10. package/dist/cli/{chunk-R2GLGLDR.mjs → chunk-77Z5BO7D.mjs} +21 -0
  11. package/dist/cli/{chunk-YIFCV77L.mjs → chunk-7PW2K3AT.mjs} +2 -2
  12. package/dist/cli/{chunk-RYGDM5BG.mjs → chunk-AGWG2PVB.mjs} +1 -1
  13. package/dist/cli/{chunk-3E4WSS35.mjs → chunk-APPPIUEW.mjs} +1 -1
  14. package/dist/cli/{chunk-NMJ4D2WO.js → chunk-AQFHU3DW.js} +21 -0
  15. package/dist/cli/{chunk-2SN2EEQW.js → chunk-BQWHXKXO.js} +16 -16
  16. package/dist/cli/{chunk-6F7TD4M4.js → chunk-CJTOZLFI.js} +6 -6
  17. package/dist/cli/{chunk-FCQ52RUB.mjs → chunk-GQVMERZ7.mjs} +2 -2
  18. package/dist/cli/{chunk-R5VMRVRN.mjs → chunk-HZODG765.mjs} +4 -4
  19. package/dist/cli/{chunk-2VHR5DXQ.mjs → chunk-IQ5OW2WC.mjs} +3 -3
  20. package/dist/cli/{chunk-EXZOUJCD.js → chunk-J2KWJKTM.js} +3 -3
  21. package/dist/cli/{chunk-MFKTYIBJ.js → chunk-K5TWU5I6.js} +51 -51
  22. package/dist/cli/{chunk-VMGTYM3A.js → chunk-KFCXTVDW.js} +20 -20
  23. package/dist/cli/{chunk-LRA5YJVV.mjs → chunk-M7FF76WO.mjs} +1 -1
  24. package/dist/cli/{chunk-3RQY2OG7.mjs → chunk-NXJEDRPH.mjs} +2 -2
  25. package/dist/cli/{chunk-J7WYWQF4.js → chunk-OQEIP4HF.js} +6 -6
  26. package/dist/cli/{chunk-WVGPAP7A.mjs → chunk-P5MB2PXV.mjs} +3 -3
  27. package/dist/cli/{chunk-MCMLQ7GD.js → chunk-PPF557JY.js} +8 -8
  28. package/dist/cli/{chunk-YKEWDVZC.js → chunk-QLB5T7IS.js} +26 -26
  29. package/dist/cli/{chunk-2R7JD2NY.js → chunk-S3D7OY6D.js} +4 -4
  30. package/dist/cli/{chunk-BCB2QNG4.js → chunk-SAO7KYJE.js} +2 -2
  31. package/dist/cli/{chunk-SMZUU4NY.js → chunk-SHWMFFKX.js} +2 -2
  32. package/dist/cli/{chunk-UVJLG5KD.js → chunk-SOUPX3YJ.js} +50 -50
  33. package/dist/cli/{chunk-4Z3X5CWI.mjs → chunk-U4JZWJ52.mjs} +1 -1
  34. package/dist/cli/{chunk-W3DIXRDT.js → chunk-VVYM2F7X.js} +21 -10
  35. package/dist/cli/{chunk-WBULEVM4.mjs → chunk-W64S7C55.mjs} +1 -1
  36. package/dist/cli/{chunk-6TOMXZX3.js → chunk-WEHXHC7N.js} +1 -1
  37. package/dist/cli/{chunk-VIGEE67Z.mjs → chunk-WXCYW6PA.mjs} +3 -3
  38. package/dist/cli/{chunk-B7K3QD5W.mjs → chunk-XRNBDUYR.mjs} +8 -8
  39. package/dist/cli/{chunk-RQMEYYN4.js → chunk-XVGEAB44.js} +35 -35
  40. package/dist/cli/{chunk-4BZFRLKU.mjs → chunk-YMV3AULG.mjs} +5 -5
  41. package/dist/cli/{chunk-DPTEABFU.mjs → chunk-ZCXFZSVH.mjs} +1 -1
  42. package/dist/cli/{chunk-PQ4JU2MV.mjs → chunk-ZODPS5JW.mjs} +12 -1
  43. package/dist/cli/command-docs.js +2 -2
  44. package/dist/cli/command-docs.mjs +1 -1
  45. package/dist/cli/{csv-TEAA2YV5.js → csv-B35BFYGT.js} +12 -12
  46. package/dist/cli/{csv-27T3L4RC.mjs → csv-P2ATJQUY.mjs} +3 -3
  47. package/dist/cli/{db-J3PPU7GX.js → db-ELEZFHG7.js} +25 -25
  48. package/dist/cli/{db-N3NRYYI4.mjs → db-PSITREEX.mjs} +4 -4
  49. package/dist/cli/{describe-PX7XBLZF.js → describe-AXWFWCWZ.js} +17 -17
  50. package/dist/cli/{describe-SJBCCTR7.mjs → describe-E2ZFRC5Z.mjs} +13 -13
  51. package/dist/cli/describe-core.d.mts +1 -1
  52. package/dist/cli/describe-core.d.ts +1 -1
  53. package/dist/cli/{executions-XN376RR4.mjs → executions-BZTPNWW2.mjs} +4 -4
  54. package/dist/cli/{executions-WXIL4C5M.js → executions-GWYPVJYE.js} +6 -6
  55. package/dist/cli/{feedback-KHJXJ2K7.mjs → feedback-F3RKOHZN.mjs} +3 -3
  56. package/dist/cli/{feedback-LG5NWE3R.js → feedback-UCW6EFOR.js} +7 -7
  57. package/dist/cli/git-HEKGLILK.js +24 -0
  58. package/dist/cli/{git-726A5HHA.mjs → git-LGQMBBO3.mjs} +4 -4
  59. package/dist/cli/index.js +136 -136
  60. package/dist/cli/index.mjs +38 -38
  61. package/dist/cli/{legacy-noops-V4WS63SD.mjs → legacy-noops-4TVFFILL.mjs} +4 -4
  62. package/dist/cli/{legacy-noops-QI6VN34P.js → legacy-noops-SRH3BPNV.js} +7 -7
  63. package/dist/cli/{monitors-ICQ2Q4XT.js → monitors-6NHXI3EW.js} +89 -89
  64. package/dist/cli/{monitors-AAWRYPHY.mjs → monitors-WBST3XUH.mjs} +5 -5
  65. package/dist/cli/{org-5JV6KYY2.js → org-5EFVZUB2.js} +66 -66
  66. package/dist/cli/{org-7VJKBTZX.mjs → org-DSDNRGDV.mjs} +4 -4
  67. package/dist/cli/{play-2D6ZIJEV.mjs → play-EKOV2T5N.mjs} +11 -11
  68. package/dist/cli/{play-HDI2MLJL.js → play-RMWBABCH.js} +284 -284
  69. package/dist/cli/{providers-KSKVBQFP.mjs → providers-AWNJWZWD.mjs} +46 -4
  70. package/dist/cli/{providers-GIE2W4ZG.js → providers-Y4EYH7IZ.js} +50 -8
  71. package/dist/cli/{quickstart-7OGLDF3M.mjs → quickstart-CPW66MBY.mjs} +3 -3
  72. package/dist/cli/{quickstart-JKNKNDXG.js → quickstart-JQ3W6LWQ.js} +5 -5
  73. package/dist/cli/search-PJXI2GJR.js +30 -0
  74. package/dist/cli/{search-CPKXOGV4.mjs → search-VP4Y6MQU.mjs} +5 -5
  75. package/dist/cli/{secrets-QHGLI7O6.mjs → secrets-2VEENFF4.mjs} +4 -4
  76. package/dist/cli/{secrets-LFQXTVIE.js → secrets-CPMHM5HU.js} +13 -13
  77. package/dist/cli/{sessions-HVMTS7N5.js → sessions-ALPCLDJI.js} +5 -5
  78. package/dist/cli/{sessions-M4OT6NPP.mjs → sessions-INDUUZ3K.mjs} +4 -4
  79. package/dist/cli/{settings-BJBOMHL2.mjs → settings-3YBZZPAM.mjs} +10 -10
  80. package/dist/cli/{settings-42WLEHAZ.js → settings-5PO4C33K.js} +77 -77
  81. package/dist/cli/{setup-ILUF7GCP.mjs → setup-7SOJ4INF.mjs} +8 -8
  82. package/dist/cli/{setup-6TZ4L5LT.js → setup-RK2MUVXO.js} +43 -43
  83. package/dist/cli/{skills-7RIWQDD6.mjs → skills-5PR5RTOX.mjs} +6 -6
  84. package/dist/cli/skills-J3243JQE.js +30 -0
  85. package/dist/cli/{tools-J3VDLDF2.mjs → tools-OSJJUP36.mjs} +13 -13
  86. package/dist/cli/tools-V2B44RFH.js +45 -0
  87. package/dist/cli/update-CKIL2SWB.js +32 -0
  88. package/dist/cli/{update-GMXJF4WT.mjs → update-TDCMXJ62.mjs} +8 -8
  89. package/dist/cli/{workflow-LVVK2N3T.js → workflow-6DKCCQYA.js} +15 -15
  90. package/dist/cli/{workflow-W7NQS26K.mjs → workflow-6O24O6LT.mjs} +5 -5
  91. package/dist/{client-BbU5_j7n.d.mts → client-BX2EVlPo.d.mts} +14 -0
  92. package/dist/{client-CYqG23K1.d.ts → client-CRz2laoR.d.ts} +14 -0
  93. package/dist/index.d.mts +2 -2
  94. package/dist/index.d.ts +2 -2
  95. package/dist/index.js +6 -6
  96. package/dist/index.mjs +3 -3
  97. package/dist/install-integrity.json +84 -84
  98. package/dist/plays/play-description.d.mts +1 -1
  99. package/dist/plays/play-description.d.ts +1 -1
  100. package/dist/plays/run-request.d.mts +1 -1
  101. package/dist/plays/run-request.d.ts +1 -1
  102. package/dist/release.d.mts +1 -1
  103. package/dist/release.d.ts +1 -1
  104. package/dist/release.js +2 -2
  105. package/dist/release.mjs +1 -1
  106. package/package.json +1 -1
  107. package/dist/cli/auth-SRR4DW75.js +0 -40
  108. package/dist/cli/git-PXYOFDQH.js +0 -24
  109. package/dist/cli/search-LOWDQS5X.js +0 -30
  110. package/dist/cli/skills-I5OWZZ2Z.js +0 -30
  111. package/dist/cli/tools-Y4SPWXFJ.js +0 -45
  112. package/dist/cli/update-HQ5WT3G6.js +0 -32
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkJ7WYWQF4js = require('./chunk-J7WYWQF4.js');
5
+ var _chunkOQEIP4HFjs = require('./chunk-OQEIP4HF.js');
6
6
 
7
7
 
8
8
 
@@ -25,7 +25,7 @@ var _chunkJ7WYWQF4js = require('./chunk-J7WYWQF4.js');
25
25
 
26
26
 
27
27
 
28
- var _chunk2R7JD2NYjs = require('./chunk-2R7JD2NY.js');
28
+ var _chunkS3D7OY6Djs = require('./chunk-S3D7OY6D.js');
29
29
 
30
30
  // src/cli/commands/auth.ts
31
31
 
@@ -52,7 +52,7 @@ function statusBannerLine(value) {
52
52
  return `Service notice: ${banner.message}`;
53
53
  }
54
54
  function envFilePath(baseUrl) {
55
- return _chunk2R7JD2NYjs.hostEnvFilePath.call(void 0, baseUrl);
55
+ return _chunkS3D7OY6Djs.hostEnvFilePath.call(void 0, baseUrl);
56
56
  }
57
57
  function normalizeAuthScope(value) {
58
58
  if (!value || value === "global") return "global";
@@ -65,7 +65,7 @@ function parseAuthScope(args) {
65
65
  }
66
66
  function pendingClaimPath(baseUrl, scope) {
67
67
  if (scope === "folder") {
68
- const target = _chunk2R7JD2NYjs.resolveProjectPinTarget.call(void 0, );
68
+ const target = _chunkS3D7OY6Djs.resolveProjectPinTarget.call(void 0, );
69
69
  if (!target.ok) {
70
70
  throw new Error(
71
71
  `Cowork project folder is ambiguous. Candidate folders: ${target.candidates.join(
@@ -75,10 +75,10 @@ function pendingClaimPath(baseUrl, scope) {
75
75
  }
76
76
  return _path.join.call(void 0, target.dir, ".deepline", "setup", "pending-auth.json");
77
77
  }
78
- return `${_chunk2R7JD2NYjs.hostConfigDirPath.call(void 0, baseUrl)}/pending-auth.json`;
78
+ return `${_chunkS3D7OY6Djs.hostConfigDirPath.call(void 0, baseUrl)}/pending-auth.json`;
79
79
  }
80
80
  function legacyPendingClaimTokenPath(baseUrl) {
81
- return `${_chunk2R7JD2NYjs.hostConfigDirPath.call(void 0, baseUrl)}/pending-claim-token`;
81
+ return `${_chunkS3D7OY6Djs.hostConfigDirPath.call(void 0, baseUrl)}/pending-claim-token`;
82
82
  }
83
83
  function savePendingClaim(baseUrl, claim) {
84
84
  const filePath = pendingClaimPath(baseUrl, claim.scope);
@@ -180,21 +180,21 @@ function parseRegisterWaitMode(args) {
180
180
  function shouldWaitForRegisterClaim(mode) {
181
181
  if (mode === "yes") return true;
182
182
  if (mode === "no") return false;
183
- return _chunk2R7JD2NYjs.detectAgentRuntime.call(void 0, ) !== "claude_cowork";
183
+ return _chunkS3D7OY6Djs.detectAgentRuntime.call(void 0, ) !== "claude_cowork";
184
184
  }
185
185
  function saveEnvValues(values, baseUrl, scope) {
186
186
  const filtered = {
187
- ...values[_chunk2R7JD2NYjs.HOST_URL_ENV] ? { [_chunk2R7JD2NYjs.HOST_URL_ENV]: values[_chunk2R7JD2NYjs.HOST_URL_ENV] } : {},
188
- ...values[_chunk2R7JD2NYjs.API_KEY_ENV] ? { [_chunk2R7JD2NYjs.API_KEY_ENV]: values[_chunk2R7JD2NYjs.API_KEY_ENV] } : {},
189
- ...values[_chunk2R7JD2NYjs.ACTIVE_ORG_ID_ENV] ? { [_chunk2R7JD2NYjs.ACTIVE_ORG_ID_ENV]: values[_chunk2R7JD2NYjs.ACTIVE_ORG_ID_ENV] } : {},
190
- ...Object.prototype.hasOwnProperty.call(values, _chunk2R7JD2NYjs.ACTIVE_ORG_NAME_ENV) ? { [_chunk2R7JD2NYjs.ACTIVE_ORG_NAME_ENV]: values[_chunk2R7JD2NYjs.ACTIVE_ORG_NAME_ENV] } : {},
187
+ ...values[_chunkS3D7OY6Djs.HOST_URL_ENV] ? { [_chunkS3D7OY6Djs.HOST_URL_ENV]: values[_chunkS3D7OY6Djs.HOST_URL_ENV] } : {},
188
+ ...values[_chunkS3D7OY6Djs.API_KEY_ENV] ? { [_chunkS3D7OY6Djs.API_KEY_ENV]: values[_chunkS3D7OY6Djs.API_KEY_ENV] } : {},
189
+ ...values[_chunkS3D7OY6Djs.ACTIVE_ORG_ID_ENV] ? { [_chunkS3D7OY6Djs.ACTIVE_ORG_ID_ENV]: values[_chunkS3D7OY6Djs.ACTIVE_ORG_ID_ENV] } : {},
190
+ ...Object.prototype.hasOwnProperty.call(values, _chunkS3D7OY6Djs.ACTIVE_ORG_NAME_ENV) ? { [_chunkS3D7OY6Djs.ACTIVE_ORG_NAME_ENV]: values[_chunkS3D7OY6Djs.ACTIVE_ORG_NAME_ENV] } : {},
191
191
  // An explicit empty list must reach the store: it clears a stale line.
192
- ...Object.prototype.hasOwnProperty.call(values, _chunk2R7JD2NYjs.FEATURES_ENV) ? { [_chunk2R7JD2NYjs.FEATURES_ENV]: values[_chunk2R7JD2NYjs.FEATURES_ENV] } : {}
192
+ ...Object.prototype.hasOwnProperty.call(values, _chunkS3D7OY6Djs.FEATURES_ENV) ? { [_chunkS3D7OY6Djs.FEATURES_ENV]: values[_chunkS3D7OY6Djs.FEATURES_ENV] } : {}
193
193
  };
194
194
  if (scope === "folder") {
195
- _chunk2R7JD2NYjs.saveProjectDeeplineEnvValues.call(void 0, filtered);
195
+ _chunkS3D7OY6Djs.saveProjectDeeplineEnvValues.call(void 0, filtered);
196
196
  } else {
197
- _chunk2R7JD2NYjs.saveHostEnvValues.call(void 0, baseUrl, filtered);
197
+ _chunkS3D7OY6Djs.saveHostEnvValues.call(void 0, baseUrl, filtered);
198
198
  }
199
199
  }
200
200
  function activeOrgEnvValues(data) {
@@ -202,21 +202,21 @@ function activeOrgEnvValues(data) {
202
202
  if (!orgId) return {};
203
203
  const orgName = typeof data.org_name === "string" ? data.org_name.trim() : "";
204
204
  return {
205
- [_chunk2R7JD2NYjs.ACTIVE_ORG_ID_ENV]: orgId,
206
- [_chunk2R7JD2NYjs.ACTIVE_ORG_NAME_ENV]: orgName,
207
- ..._chunk2R7JD2NYjs.featureEnvValues.call(void 0, data)
205
+ [_chunkS3D7OY6Djs.ACTIVE_ORG_ID_ENV]: orgId,
206
+ [_chunkS3D7OY6Djs.ACTIVE_ORG_NAME_ENV]: orgName,
207
+ ..._chunkS3D7OY6Djs.featureEnvValues.call(void 0, data)
208
208
  };
209
209
  }
210
210
  async function httpJson(method, url, apiKey, body, timeoutMs = AUTH_HTTP_TIMEOUT_MS) {
211
211
  const headers = {
212
212
  "Content-Type": "application/json",
213
- "User-Agent": `deepline-ts-sdk/${_chunk2R7JD2NYjs.SDK_VERSION}`,
213
+ "User-Agent": `deepline-ts-sdk/${_chunkS3D7OY6Djs.SDK_VERSION}`,
214
214
  "X-Deepline-Client-Family": "sdk",
215
215
  "X-Deepline-CLI-Family": "sdk",
216
- "X-Deepline-Agent-Runtime": _chunk2R7JD2NYjs.detectAgentRuntime.call(void 0, ),
217
- "X-Deepline-CLI-Version": _chunk2R7JD2NYjs.SDK_VERSION,
218
- "X-Deepline-SDK-Version": _chunk2R7JD2NYjs.SDK_VERSION,
219
- "X-Deepline-API-Contract": _chunk2R7JD2NYjs.SDK_API_CONTRACT
216
+ "X-Deepline-Agent-Runtime": _chunkS3D7OY6Djs.detectAgentRuntime.call(void 0, ),
217
+ "X-Deepline-CLI-Version": _chunkS3D7OY6Djs.SDK_VERSION,
218
+ "X-Deepline-SDK-Version": _chunkS3D7OY6Djs.SDK_VERSION,
219
+ "X-Deepline-API-Contract": _chunkS3D7OY6Djs.SDK_API_CONTRACT
220
220
  };
221
221
  if (apiKey) headers["Authorization"] = `Bearer ${apiKey}`;
222
222
  const bypassToken = _optionalChain([process, 'access', _7 => _7.env, 'access', _8 => _8.VERCEL_PROTECTION_BYPASS_TOKEN, 'optionalAccess', _9 => _9.trim, 'call', _10 => _10()]);
@@ -262,7 +262,7 @@ async function readStatusBanner(baseUrl) {
262
262
  return _optionalChain([response, 'optionalAccess', _11 => _11.status]) === 200 ? _nullishCoalesce(response.data.banner, () => ( null)) : null;
263
263
  }
264
264
  async function reportSetupCompleted(input) {
265
- const apiKey = input.authScope === "folder" ? _chunk2R7JD2NYjs.resolveProjectApiKeyForBaseUrl.call(void 0, input.baseUrl) : _chunk2R7JD2NYjs.resolveGlobalApiKeyForBaseUrl.call(void 0, input.baseUrl);
265
+ const apiKey = input.authScope === "folder" ? _chunkS3D7OY6Djs.resolveProjectApiKeyForBaseUrl.call(void 0, input.baseUrl) : _chunkS3D7OY6Djs.resolveGlobalApiKeyForBaseUrl.call(void 0, input.baseUrl);
266
266
  if (!apiKey) return;
267
267
  try {
268
268
  await httpJson(
@@ -359,7 +359,7 @@ async function printClaimSuccessBanner(baseUrl, apiKey, statusData) {
359
359
  }
360
360
  }
361
361
  async function handleRegister(args) {
362
- const baseUrl = _chunk2R7JD2NYjs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
362
+ const baseUrl = _chunkS3D7OY6Djs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
363
363
  let orgName = "";
364
364
  let orgId = "";
365
365
  let agentName = "";
@@ -414,19 +414,19 @@ async function handleRegister(args) {
414
414
  });
415
415
  saveEnvValues(
416
416
  {
417
- [_chunk2R7JD2NYjs.HOST_URL_ENV]: baseUrl
417
+ [_chunkS3D7OY6Djs.HOST_URL_ENV]: baseUrl
418
418
  },
419
419
  baseUrl,
420
420
  authScope
421
421
  );
422
422
  }
423
423
  if (claimUrl) {
424
- const shouldOpen = waitMode !== "no" && _chunk2R7JD2NYjs.detectAgentRuntime.call(void 0, ) !== "claude_cowork";
424
+ const shouldOpen = waitMode !== "no" && _chunkS3D7OY6Djs.detectAgentRuntime.call(void 0, ) !== "claude_cowork";
425
425
  console.log(
426
426
  shouldOpen ? " Opening approval page in your browser." : " Open this approval page in your browser:"
427
427
  );
428
428
  console.log(` ${claimUrl}`);
429
- if (shouldOpen) _chunkJ7WYWQF4js.openInBrowser.call(void 0, claimUrl);
429
+ if (shouldOpen) _chunkOQEIP4HFjs.openInBrowser.call(void 0, claimUrl);
430
430
  }
431
431
  if (data.cli_message) {
432
432
  console.log(String(data.cli_message));
@@ -469,8 +469,8 @@ async function handleRegister(args) {
469
469
  if (apiKey) {
470
470
  saveEnvValues(
471
471
  {
472
- [_chunk2R7JD2NYjs.HOST_URL_ENV]: baseUrl,
473
- [_chunk2R7JD2NYjs.API_KEY_ENV]: apiKey,
472
+ [_chunkS3D7OY6Djs.HOST_URL_ENV]: baseUrl,
473
+ [_chunkS3D7OY6Djs.API_KEY_ENV]: apiKey,
474
474
  ...activeOrgEnvValues(statusData)
475
475
  },
476
476
  baseUrl,
@@ -492,7 +492,7 @@ async function handleRegister(args) {
492
492
  }
493
493
  }
494
494
  async function handleWait(args) {
495
- const baseUrl = _chunk2R7JD2NYjs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
495
+ const baseUrl = _chunkS3D7OY6Djs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
496
496
  let timeoutSeconds = 300;
497
497
  let requestedScope;
498
498
  if (args.includes("--auth-scope")) {
@@ -516,7 +516,7 @@ async function handleWait(args) {
516
516
  const authScope = resumed.scope;
517
517
  const claimToken = _nullishCoalesce(_optionalChain([pendingClaim, 'optionalAccess', _12 => _12.claimToken]), () => ( ""));
518
518
  if (!pendingClaim) {
519
- const scopedApiKey = authScope === "folder" ? _chunk2R7JD2NYjs.resolveProjectApiKeyForBaseUrl.call(void 0, baseUrl) : _chunk2R7JD2NYjs.resolveGlobalApiKeyForBaseUrl.call(void 0, baseUrl);
519
+ const scopedApiKey = authScope === "folder" ? _chunkS3D7OY6Djs.resolveProjectApiKeyForBaseUrl.call(void 0, baseUrl) : _chunkS3D7OY6Djs.resolveGlobalApiKeyForBaseUrl.call(void 0, baseUrl);
520
520
  if (scopedApiKey) {
521
521
  console.log("Already connected.");
522
522
  return EXIT_OK;
@@ -559,8 +559,8 @@ async function handleWait(args) {
559
559
  if (apiKey) {
560
560
  saveEnvValues(
561
561
  {
562
- [_chunk2R7JD2NYjs.HOST_URL_ENV]: baseUrl,
563
- [_chunk2R7JD2NYjs.API_KEY_ENV]: apiKey,
562
+ [_chunkS3D7OY6Djs.HOST_URL_ENV]: baseUrl,
563
+ [_chunkS3D7OY6Djs.API_KEY_ENV]: apiKey,
564
564
  ...activeOrgEnvValues(data)
565
565
  },
566
566
  baseUrl,
@@ -584,8 +584,8 @@ async function handleWait(args) {
584
584
  return EXIT_AUTH;
585
585
  }
586
586
  async function authStatusLine(timeoutMs = 3e3) {
587
- const baseUrl = _chunk2R7JD2NYjs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
588
- const apiKey = _chunk2R7JD2NYjs.resolveApiKeyForBaseUrl.call(void 0, baseUrl);
587
+ const baseUrl = _chunkS3D7OY6Djs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
588
+ const apiKey = _chunkS3D7OY6Djs.resolveApiKeyForBaseUrl.call(void 0, baseUrl);
589
589
  if (!apiKey) return `Auth: not connected (${baseUrl})`;
590
590
  try {
591
591
  const { status, data } = await httpJson(
@@ -608,9 +608,9 @@ async function authStatusLine(timeoutMs = 3e3) {
608
608
  }
609
609
  }
610
610
  async function handleStatus(args) {
611
- const baseUrl = _chunk2R7JD2NYjs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
611
+ const baseUrl = _chunkS3D7OY6Djs.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
612
612
  const reveal = args.includes("--reveal");
613
- const jsonOutput = _chunkJ7WYWQF4js.argsWantJson.call(void 0, args);
613
+ const jsonOutput = _chunkOQEIP4HFjs.argsWantJson.call(void 0, args);
614
614
  const hasExplicitAuthScope = args.includes("--auth-scope");
615
615
  let authScope = null;
616
616
  if (hasExplicitAuthScope) {
@@ -651,14 +651,14 @@ async function handleStatus(args) {
651
651
  };
652
652
  hostLines.push(`Host: ${baseUrl} (unreachable)`);
653
653
  }
654
- const apiKey = authScope === "folder" ? _chunk2R7JD2NYjs.resolveProjectApiKeyForBaseUrl.call(void 0, baseUrl) : authScope === "global" ? _chunk2R7JD2NYjs.resolveGlobalApiKeyForBaseUrl.call(void 0, baseUrl) : _chunk2R7JD2NYjs.resolveApiKeyForBaseUrl.call(void 0, baseUrl);
654
+ const apiKey = authScope === "folder" ? _chunkS3D7OY6Djs.resolveProjectApiKeyForBaseUrl.call(void 0, baseUrl) : authScope === "global" ? _chunkS3D7OY6Djs.resolveGlobalApiKeyForBaseUrl.call(void 0, baseUrl) : _chunkS3D7OY6Djs.resolveApiKeyForBaseUrl.call(void 0, baseUrl);
655
655
  if (!apiKey) {
656
656
  const { claim: pendingClaim } = resolvePendingAuthClaimForResume(
657
657
  baseUrl,
658
658
  _nullishCoalesce(authScope, () => ( void 0))
659
659
  );
660
660
  if (pendingClaim) {
661
- _chunkJ7WYWQF4js.printCommandEnvelope.call(void 0,
661
+ _chunkOQEIP4HFjs.printCommandEnvelope.call(void 0,
662
662
  {
663
663
  ..._nullishCoalesce(hostStatusPayload, () => ( { host: baseUrl })),
664
664
  status: "pending",
@@ -679,7 +679,7 @@ async function handleStatus(args) {
679
679
  );
680
680
  return EXIT_OK;
681
681
  }
682
- _chunkJ7WYWQF4js.printCommandEnvelope.call(void 0,
682
+ _chunkOQEIP4HFjs.printCommandEnvelope.call(void 0,
683
683
  {
684
684
  ..._nullishCoalesce(hostStatusPayload, () => ( { host: baseUrl })),
685
685
  status: "not connected",
@@ -712,7 +712,7 @@ async function handleStatus(args) {
712
712
  }
713
713
  );
714
714
  if (status === 401 || status === 403) {
715
- _chunkJ7WYWQF4js.printCommandEnvelope.call(void 0,
715
+ _chunkOQEIP4HFjs.printCommandEnvelope.call(void 0,
716
716
  {
717
717
  ..._nullishCoalesce(hostStatusPayload, () => ( { host: baseUrl })),
718
718
  status: "unauthorized",
@@ -739,7 +739,7 @@ async function handleStatus(args) {
739
739
  console.error(`Auth status error (status ${status}).`);
740
740
  return EXIT_SERVER;
741
741
  }
742
- const resolvedAuthScope = _nullishCoalesce(authScope, () => ( (_chunk2R7JD2NYjs.getResolvedProjectAuthSource.call(void 0, baseUrl, apiKey) ? "folder" : "global")));
742
+ const resolvedAuthScope = _nullishCoalesce(authScope, () => ( (_chunkS3D7OY6Djs.getResolvedProjectAuthSource.call(void 0, baseUrl, apiKey) ? "folder" : "global")));
743
743
  clearSatisfiedPendingClaim(
744
744
  baseUrl,
745
745
  resolvedAuthScope,
@@ -767,28 +767,28 @@ async function handleStatus(args) {
767
767
  if (apiKeyResp) {
768
768
  saveEnvValues(
769
769
  {
770
- [_chunk2R7JD2NYjs.HOST_URL_ENV]: baseUrl,
771
- [_chunk2R7JD2NYjs.API_KEY_ENV]: apiKeyResp,
770
+ [_chunkS3D7OY6Djs.HOST_URL_ENV]: baseUrl,
771
+ [_chunkS3D7OY6Djs.API_KEY_ENV]: apiKeyResp,
772
772
  ...activeOrgEnvValues(data)
773
773
  },
774
774
  baseUrl,
775
775
  resolvedAuthScope
776
776
  );
777
777
  if (resolvedAuthScope === "folder") {
778
- const target = _chunk2R7JD2NYjs.resolveProjectPinTarget.call(void 0, );
778
+ const target = _chunkS3D7OY6Djs.resolveProjectPinTarget.call(void 0, );
779
779
  savedApiKeyPath = target.ok ? _path.join.call(void 0, target.dir, ".env.deepline") : null;
780
780
  } else {
781
781
  savedApiKeyPath = envFilePath(baseUrl);
782
782
  }
783
783
  }
784
- } else if (resolvedAuthScope === "folder" || _chunk2R7JD2NYjs.storedHostApiKey.call(void 0, baseUrl) === apiKey) {
785
- saveEnvValues(_chunk2R7JD2NYjs.featureEnvValues.call(void 0, data), baseUrl, resolvedAuthScope);
784
+ } else if (resolvedAuthScope === "folder" || _chunkS3D7OY6Djs.storedHostApiKey.call(void 0, baseUrl) === apiKey) {
785
+ saveEnvValues(_chunkS3D7OY6Djs.featureEnvValues.call(void 0, data), baseUrl, resolvedAuthScope);
786
786
  }
787
- _chunkJ7WYWQF4js.printCommandEnvelope.call(void 0,
787
+ _chunkOQEIP4HFjs.printCommandEnvelope.call(void 0,
788
788
  {
789
789
  ...payload,
790
- ..._chunk2R7JD2NYjs.detectAgentRuntime.call(void 0, ) !== "unknown" ? {
791
- command_context: _chunk2R7JD2NYjs.resolveCliCommandContext.call(void 0,
790
+ ..._chunkS3D7OY6Djs.detectAgentRuntime.call(void 0, ) !== "unknown" ? {
791
+ command_context: _chunkS3D7OY6Djs.resolveCliCommandContext.call(void 0,
792
792
  { baseUrl, apiKey },
793
793
  resolvedAuthScope
794
794
  )
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isJsonOutputMode
3
- } from "./chunk-RYGDM5BG.mjs";
3
+ } from "./chunk-AGWG2PVB.mjs";
4
4
 
5
5
  // src/cli/progress.ts
6
6
  import { Worker } from "worker_threads";
@@ -28,7 +28,7 @@ var _chunkKXMNM4AQjs = require('./chunk-KXMNM4AQ.js');
28
28
 
29
29
 
30
30
 
31
- var _chunk2R7JD2NYjs = require('./chunk-2R7JD2NY.js');
31
+ var _chunkS3D7OY6Djs = require('./chunk-S3D7OY6D.js');
32
32
 
33
33
 
34
34
  var _chunkALJJRZNJjs = require('./chunk-ALJJRZNJ.js');
@@ -649,7 +649,7 @@ var ToolCalls = class {
649
649
  idempotencyKey,
650
650
  onResponse: (response2) => {
651
651
  lastResponse = null;
652
- atomicToolsSupported = response2.headers.get(_chunk2R7JD2NYjs.ATOMIC_TOOL_EXECUTE_SUPPORTED_HEADER) === "true";
652
+ atomicToolsSupported = response2.headers.get(_chunkS3D7OY6Djs.ATOMIC_TOOL_EXECUTE_SUPPORTED_HEADER) === "true";
653
653
  recoverySupported = response2.headers.get("X-Deepline-Idempotency-Supported") === "true";
654
654
  if (_optionalChain([options, 'optionalAccess', _30 => _30.onServerTiming])) {
655
655
  try {
@@ -999,8 +999,8 @@ function runtimeSelectionHeaders(runtime, env) {
999
999
  }
1000
1000
  const receivers = _optionalChain([env, 'access', _52 => _52.DEEPLINE_RUNTIME_RETAINED_PIPELINE_RECEIVERS, 'optionalAccess', _53 => _53.trim, 'call', _54 => _54()]);
1001
1001
  return {
1002
- [_chunk2R7JD2NYjs.RUNTIME_ENVIRONMENT_TOKEN_HEADER]: token,
1003
- ...receivers ? { [_chunk2R7JD2NYjs.RETAINED_PIPELINE_RECEIVERS_HEADER]: receivers } : {}
1002
+ [_chunkS3D7OY6Djs.RUNTIME_ENVIRONMENT_TOKEN_HEADER]: token,
1003
+ ...receivers ? { [_chunkS3D7OY6Djs.RETAINED_PIPELINE_RECEIVERS_HEADER]: receivers } : {}
1004
1004
  };
1005
1005
  }
1006
1006
  function normalizeTestPolicyOverrides(value, source) {
@@ -1071,7 +1071,7 @@ var PlayClient = class {
1071
1071
  return _chunkJKVRBCZLjs.startPlayRun.call(void 0,
1072
1072
  this.http,
1073
1073
  resolved.request,
1074
- _optionalChain([options, 'optionalAccess', _62 => _62.cliAdmission]) ? { ...headers, "X-Deepline-API-Major": String(_chunk2R7JD2NYjs.SDK_API_MAJOR) } : headers,
1074
+ _optionalChain([options, 'optionalAccess', _62 => _62.cliAdmission]) ? { ...headers, "X-Deepline-API-Major": String(_chunkS3D7OY6Djs.SDK_API_MAJOR) } : headers,
1075
1075
  options
1076
1076
  );
1077
1077
  }
@@ -1137,9 +1137,9 @@ var PlayClient = class {
1137
1137
  }
1138
1138
  };
1139
1139
  function createPlayClient(options) {
1140
- const config = _chunk2R7JD2NYjs.resolveConfig.call(void 0, options);
1140
+ const config = _chunkS3D7OY6Djs.resolveConfig.call(void 0, options);
1141
1141
  return new PlayClient(
1142
- new (0, _chunk2R7JD2NYjs.HttpClient)(config),
1142
+ new (0, _chunkS3D7OY6Djs.HttpClient)(config),
1143
1143
  _nullishCoalesce(config.environment, () => ( process.env))
1144
1144
  );
1145
1145
  }
@@ -3153,7 +3153,7 @@ function isolatedCiRuntimeEventReadHeaders(env) {
3153
3153
  "RUNTIME_EVENT_INTERNAL_TOKEN_REQUIRED"
3154
3154
  );
3155
3155
  }
3156
- return { [_chunk2R7JD2NYjs.COORDINATOR_INTERNAL_TOKEN_HEADER]: token };
3156
+ return { [_chunkS3D7OY6Djs.COORDINATOR_INTERNAL_TOKEN_HEADER]: token };
3157
3157
  }
3158
3158
  function sleep(ms) {
3159
3159
  return new Promise((resolve) => setTimeout(resolve, ms));
@@ -3391,9 +3391,9 @@ var DeeplineClient = (_class = class _DeeplineClient {
3391
3391
  * @throws {@link ConfigError} if no API key can be resolved from any source.
3392
3392
  */
3393
3393
  constructor(options) {
3394
- this.config = _chunk2R7JD2NYjs.resolveConfig.call(void 0, options);
3394
+ this.config = _chunkS3D7OY6Djs.resolveConfig.call(void 0, options);
3395
3395
  this.environment = _nullishCoalesce(this.config.environment, () => ( process.env));
3396
- this.http = new (0, _chunk2R7JD2NYjs.HttpClient)(this.config);
3396
+ this.http = new (0, _chunkS3D7OY6Djs.HttpClient)(this.config);
3397
3397
  this.playClient = new PlayClient(this.http, this.environment);
3398
3398
  this.toolCalls = new ToolCalls(
3399
3399
  this.http,
@@ -5177,6 +5177,17 @@ var DeeplineClient = (_class = class _DeeplineClient {
5177
5177
  async getNotificationSettings() {
5178
5178
  return this.http.get("/api/v2/settings/notifications");
5179
5179
  }
5180
+ /** Start provider OAuth; complete the returned URL in an authenticated browser. */
5181
+ async connectIntegration(provider, scopes) {
5182
+ return this.http.post("/api/v2/integrations/connect", {
5183
+ provider,
5184
+ ...scopes ? { scopes } : {}
5185
+ });
5186
+ }
5187
+ /** Probe an OAuth connection, refreshing expired tokens through the normal lifecycle. */
5188
+ async testIntegration(provider) {
5189
+ return this.http.get(`/api/oauth/test/${encodeURIComponent(provider)}`);
5190
+ }
5180
5191
  /** Save provider-owned credential fields without starting an OAuth browser flow. */
5181
5192
  async setIntegrationCredentials(provider, credentials) {
5182
5193
  return this.http.post("/api/v2/integrations/connect", {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  writeRawStderr
3
- } from "./chunk-RYGDM5BG.mjs";
3
+ } from "./chunk-AGWG2PVB.mjs";
4
4
 
5
5
  // src/cli/maintenance-policy.ts
6
6
  import { InvalidArgumentError } from "commander";
@@ -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.455",
52
+ version: "0.3.456",
53
53
  updateSummary: {
54
54
  introducedIn: "0.3.90",
55
55
  summary: "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."
@@ -3,15 +3,15 @@ import {
3
3
  } from "./chunk-LJ5747UC.mjs";
4
4
  import {
5
5
  DeeplineClient
6
- } from "./chunk-PQ4JU2MV.mjs";
6
+ } from "./chunk-ZODPS5JW.mjs";
7
7
  import {
8
8
  printCommandEnvelope,
9
9
  renderCommandEnvelopeText
10
- } from "./chunk-RYGDM5BG.mjs";
10
+ } from "./chunk-AGWG2PVB.mjs";
11
11
  import {
12
12
  resolveConfig,
13
13
  sdkCliStateDirPath
14
- } from "./chunk-LRA5YJVV.mjs";
14
+ } from "./chunk-M7FF76WO.mjs";
15
15
  import {
16
16
  __commonJS,
17
17
  __toESM
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  recentSearchRef,
7
7
  registerDeprecatedSearchCommand
8
- } from "./chunk-VIGEE67Z.mjs";
8
+ } from "./chunk-WXCYW6PA.mjs";
9
9
  import {
10
10
  arrayField,
11
11
  formatModelDescription,
@@ -48,7 +48,7 @@ import {
48
48
  import {
49
49
  DeeplineClient,
50
50
  validateExecutionIdempotencyKey
51
- } from "./chunk-PQ4JU2MV.mjs";
51
+ } from "./chunk-ZODPS5JW.mjs";
52
52
  import {
53
53
  stableStringify
54
54
  } from "./chunk-UBKA33KY.mjs";
@@ -58,18 +58,18 @@ import {
58
58
  maybeAutoUpdateAndRelaunch,
59
59
  registerCompatibilityCatalog,
60
60
  runToolExecuteStage
61
- } from "./chunk-R5VMRVRN.mjs";
61
+ } from "./chunk-HZODG765.mjs";
62
62
  import {
63
63
  isCliTraceEnabled,
64
64
  recordCliTrace,
65
65
  resolveCliMaintenancePolicy
66
- } from "./chunk-WBULEVM4.mjs";
66
+ } from "./chunk-W64S7C55.mjs";
67
67
  import {
68
68
  checkSdkCompatibility,
69
69
  enforceSdkCompatibilityResponse,
70
70
  flushDeferredSkillsSyncNotices,
71
71
  syncSdkSkillsIfNeeded
72
- } from "./chunk-WVGPAP7A.mjs";
72
+ } from "./chunk-P5MB2PXV.mjs";
73
73
  import {
74
74
  printCommandEnvelope,
75
75
  printCompactJson,
@@ -77,12 +77,12 @@ import {
77
77
  printJsonError,
78
78
  renderCommandEnvelopeText,
79
79
  shouldEmitJson
80
- } from "./chunk-RYGDM5BG.mjs";
80
+ } from "./chunk-AGWG2PVB.mjs";
81
81
  import {
82
82
  readSdkSkillsLocalVersion,
83
83
  resolveConfig,
84
84
  sdkCliStateDirPath
85
- } from "./chunk-LRA5YJVV.mjs";
85
+ } from "./chunk-M7FF76WO.mjs";
86
86
  import {
87
87
  DeeplineError
88
88
  } from "./chunk-HBL4PM5Q.mjs";
@@ -971,7 +971,7 @@ Examples:
971
971
  process.exitCode = await narrowView();
972
972
  return;
973
973
  }
974
- const { describeAnything } = await import("./describe-SJBCCTR7.mjs");
974
+ const { describeAnything } = await import("./describe-E2ZFRC5Z.mjs");
975
975
  process.exitCode = await describeAnything(
976
976
  toolId,
977
977
  {