deepline 0.3.396 → 0.3.398
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundling-sources/sdk/src/release.ts +1 -1
- package/dist/bundling-sources/shared_libs/play-runtime/fixture-behavior.ts +2 -2
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-deadline-reconciliation.ts +50 -26
- package/dist/cli/auth-3GA2ASQF.js +40 -0
- package/dist/cli/{auth-3LTD62VL.mjs → auth-7ZBPAAZU.mjs} +5 -4
- package/dist/cli/{billing-DP7ZAJBO.mjs → billing-QTWEEL27.mjs} +5 -4
- package/dist/cli/{billing-PA5OXEM5.js → billing-WHP3YMNQ.js} +76 -75
- package/dist/cli/{chunk-I4T4XAA2.mjs → chunk-2QC2T7E3.mjs} +4 -4
- package/dist/cli/{chunk-3T4MCB5R.mjs → chunk-52HHMLRM.mjs} +89 -969
- package/dist/cli/{chunk-ME6XRFLY.js → chunk-6CBU7W56.js} +15 -15
- package/dist/cli/{chunk-LOGGNW4H.mjs → chunk-6DVXLWPB.mjs} +2 -2
- package/dist/cli/{chunk-AUYXWELC.mjs → chunk-6HXULNTW.mjs} +2 -2
- package/dist/cli/chunk-7DRPTGCK.js +930 -0
- package/dist/cli/{chunk-TLQ3FZOC.mjs → chunk-ATDUVJCW.mjs} +3 -3
- package/dist/cli/{chunk-23GAA3YO.mjs → chunk-AWQNG55D.mjs} +1 -1
- package/dist/cli/{chunk-NSOTASOP.js → chunk-BQR6UN3C.js} +1 -83
- package/dist/cli/{chunk-XKZXO7D3.mjs → chunk-CH6EFAJ3.mjs} +1 -1
- package/dist/cli/{chunk-KAEZNPUM.js → chunk-CTZJLQ7A.js} +13 -115
- package/dist/cli/{chunk-AVHLATII.js → chunk-FDAMQFQ7.js} +50 -50
- package/dist/cli/chunk-FIVKWNMT.mjs +210 -0
- package/dist/cli/{chunk-7Z66NHUC.js → chunk-G6BP55EP.js} +26 -26
- package/dist/cli/{chunk-GNN4MY5X.js → chunk-HFDBZXMV.js} +1 -1
- package/dist/cli/{describe-6O2ENKTP.mjs → chunk-HFYQBC2D.mjs} +22 -160
- package/dist/cli/chunk-HGFFYVXN.js +210 -0
- package/dist/cli/{chunk-5WNJF2T3.mjs → chunk-IHG7UAHD.mjs} +1 -83
- package/dist/cli/{chunk-QHGPA362.mjs → chunk-IJU5YQSF.mjs} +6 -108
- package/dist/cli/{chunk-772W2SAU.js → chunk-J4WYPANC.js} +8 -8
- package/dist/cli/{chunk-V7UP2F4U.js → chunk-JU3PF7WM.js} +21 -121
- package/dist/cli/{chunk-MR6XCBQJ.mjs → chunk-LCRQKI7D.mjs} +4 -2
- package/dist/cli/chunk-LJ5747UC.mjs +107 -0
- package/dist/cli/{chunk-LWERJUKN.js → chunk-NA4T3B62.js} +7 -215
- package/dist/cli/{chunk-WQJJNIMQ.js → chunk-NUBIAJI2.js} +11 -9
- package/dist/cli/chunk-OSDXE27V.mjs +88 -0
- package/dist/cli/{chunk-RMTASUAK.js → chunk-OU2RZYVS.js} +65 -65
- package/dist/cli/{chunk-JCN4DHF7.mjs → chunk-OVUFHUMG.mjs} +2 -2
- package/dist/cli/chunk-Q2E4E4FJ.js +112 -0
- package/dist/cli/{chunk-2VOLOWYZ.js → chunk-Q3FNSWJG.js} +293 -1173
- package/dist/cli/{chunk-NHB5YUCS.mjs → chunk-QP2TRM7M.mjs} +1 -1
- package/dist/cli/{describe-EFWNECHI.js → chunk-RFG3MRAC.js} +37 -175
- package/dist/cli/{chunk-RTO5QZWT.js → chunk-S22ZQZMU.js} +6 -6
- package/dist/cli/{chunk-H5KLUGY7.mjs → chunk-TXZVVBQZ.mjs} +1 -209
- package/dist/cli/{chunk-DC6LTULT.js → chunk-U46S43LV.js} +2 -2
- package/dist/cli/chunk-YHPYUZZX.mjs +112 -0
- package/dist/cli/chunk-YHZUZO3U.mjs +930 -0
- package/dist/cli/chunk-ZAAKSJAS.js +88 -0
- package/dist/cli/{chunk-VE3U3SQC.mjs → chunk-ZJ7HLJRF.mjs} +7 -107
- package/dist/cli/chunk-ZM2YPJQJ.js +107 -0
- package/dist/cli/{csv-TF576S77.js → csv-NM25BBX7.js} +13 -12
- package/dist/cli/{csv-RLRR74RQ.mjs → csv-TSBHKVNU.mjs} +4 -3
- package/dist/cli/{db-FDBJUTFO.js → db-GBDNQJF3.js} +30 -29
- package/dist/cli/{db-XORGNBIC.mjs → db-JQN6SYLK.mjs} +5 -4
- package/dist/cli/describe-ETTGW5LT.mjs +164 -0
- package/dist/cli/describe-NVLINP5A.js +164 -0
- package/dist/cli/describe-core.d.mts +100 -0
- package/dist/cli/describe-core.d.ts +100 -0
- package/dist/cli/describe-core.js +18 -0
- package/dist/cli/describe-core.mjs +18 -0
- package/dist/cli/{executions-YPP7WR77.mjs → executions-6S4KIVEY.mjs} +5 -4
- package/dist/cli/{executions-SFYAXPF4.js → executions-IH5JUPIT.js} +7 -6
- package/dist/cli/{feedback-5UZFYMGB.js → feedback-ER375ZCB.js} +8 -7
- package/dist/cli/{feedback-RBGA5ARU.mjs → feedback-PGOZLNXU.mjs} +4 -3
- package/dist/cli/{git-IRSAJEK2.mjs → git-7SBFCM52.mjs} +5 -4
- package/dist/cli/git-W6DBPLZO.js +24 -0
- package/dist/cli/index.js +93 -91
- package/dist/cli/index.mjs +35 -33
- package/dist/cli/{legacy-noops-CVAOQY2F.js → legacy-noops-IOEF2SB7.js} +8 -7
- package/dist/cli/{legacy-noops-NA7N6ZOU.mjs → legacy-noops-Q4UQIOQN.mjs} +5 -4
- package/dist/cli/{monitors-4OMRXCXP.js → monitors-NZ2J4YGD.js} +86 -85
- package/dist/cli/{monitors-ILZ2XHYG.mjs → monitors-RZYBFY3Z.mjs} +5 -4
- package/dist/cli/{org-YGNJDD2X.js → org-ERUOT4B2.js} +65 -64
- package/dist/cli/{org-QDDXAE3J.mjs → org-JLSEM6GG.mjs} +5 -4
- package/dist/cli/{play-L535H26U.js → play-7TUO7YNG.js} +251 -247
- package/dist/cli/{play-VT6OHB2D.mjs → play-Z73VC7YR.mjs} +19 -15
- package/dist/cli/{providers-KG4W5MPK.mjs → providers-7HIII2PW.mjs} +5 -4
- package/dist/cli/{providers-GPZ6PQAL.js → providers-ABKBK2C7.js} +8 -7
- package/dist/cli/{quickstart-UI27S5LO.js → quickstart-JBG5RTFZ.js} +6 -5
- package/dist/cli/{quickstart-2JDGTXIG.mjs → quickstart-QQAOCPCZ.mjs} +4 -3
- package/dist/cli/{search-PW3RAUX7.mjs → search-MT2Q64WC.mjs} +7 -5
- package/dist/cli/search-QMQBC6SV.js +30 -0
- package/dist/cli/{secrets-WFAXOUZE.js → secrets-MEW6LLU5.js} +14 -13
- package/dist/cli/{secrets-HNOMK5A2.mjs → secrets-ZFJPIT6B.mjs} +5 -4
- package/dist/cli/{sessions-XLX3E5UO.mjs → sessions-F2KVVZ2Z.mjs} +5 -4
- package/dist/cli/sessions-TBPU4S6M.js +16 -0
- package/dist/cli/{settings-GADAG2UK.js → settings-6VDZ6G5V.js} +75 -74
- package/dist/cli/{settings-YNZ4YKCH.mjs → settings-LUDDM7HO.mjs} +8 -7
- package/dist/cli/{setup-R5YO7GT6.js → setup-IP2KTFYO.js} +42 -41
- package/dist/cli/{setup-PSEHIUXO.mjs → setup-MCEY473G.mjs} +7 -6
- package/dist/cli/skills-EVIIEX6N.js +29 -0
- package/dist/cli/{skills-LTQBP6CZ.mjs → skills-KMJ3CY4O.mjs} +5 -4
- package/dist/cli/tools-KNLHQ3L6.js +39 -0
- package/dist/cli/{tools-UAXDWU63.mjs → tools-WY3PLUA7.mjs} +13 -8
- package/dist/cli/update-LVADY5YE.js +29 -0
- package/dist/cli/{update-SMNIBIMS.mjs → update-XBV52OFM.mjs} +7 -6
- package/dist/cli/{workflow-IKGMBGF6.mjs → workflow-5N5HMYDY.mjs} +6 -5
- package/dist/cli/{workflow-AOQVZHMD.js → workflow-CO7XWS4D.js} +16 -15
- package/dist/{client-DiGl8ska.d.mts → client-D0j-_aaa.d.mts} +1 -1
- package/dist/{client-Bgis7F6-.d.ts → client-DflfVyj6.d.ts} +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +14 -10
- package/dist/index.mjs +19 -15
- package/dist/install-integrity.json +92 -76
- package/dist/plays/play-description.d.mts +1 -1
- package/dist/plays/play-description.d.ts +1 -1
- package/dist/plays/run-request.d.mts +1 -1
- package/dist/plays/run-request.d.ts +1 -1
- package/dist/release.d.mts +1 -1
- package/dist/release.d.ts +1 -1
- package/dist/release.js +2 -2
- package/dist/release.mjs +1 -1
- package/package.json +6 -1
- package/dist/cli/auth-562JPKOM.js +0 -39
- package/dist/cli/git-5LDY5ZID.js +0 -23
- package/dist/cli/search-MGWROZ33.js +0 -28
- package/dist/cli/sessions-366KROUA.js +0 -15
- package/dist/cli/skills-JF2LPEGM.js +0 -28
- package/dist/cli/tools-CP2PEFRN.js +0 -34
- package/dist/cli/update-HZHZOU6C.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.
|
|
52
|
+
version: "0.3.398",
|
|
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,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
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
4
|
|
|
5
5
|
|
|
6
|
+
var _chunk7DRPTGCKjs = require('./chunk-7DRPTGCK.js');
|
|
6
7
|
|
|
7
|
-
var _chunk2VOLOWYZjs = require('./chunk-2VOLOWYZ.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
@@ -13,37 +13,10 @@ var _chunk2VOLOWYZjs = require('./chunk-2VOLOWYZ.js');
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var _chunkNSOTASOPjs = require('./chunk-NSOTASOP.js');
|
|
20
|
-
require('./chunk-AID3OYVJ.js');
|
|
21
|
-
require('./chunk-KAEZNPUM.js');
|
|
22
|
-
require('./chunk-LWERJUKN.js');
|
|
23
|
-
require('./chunk-KB4SDX5S.js');
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
var _chunkWQJJNIMQjs = require('./chunk-WQJJNIMQ.js');
|
|
27
|
-
require('./chunk-S6R3OX7B.js');
|
|
28
|
-
require('./chunk-UHNDVD3P.js');
|
|
29
|
-
require('./chunk-KXMNM4AQ.js');
|
|
30
|
-
require('./chunk-XDVT3GOM.js');
|
|
31
|
-
require('./chunk-QJBJZVG6.js');
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
var _chunkRTO5QZWTjs = require('./chunk-RTO5QZWT.js');
|
|
35
|
-
require('./chunk-V7UP2F4U.js');
|
|
36
|
-
require('./chunk-XNYIZMNQ.js');
|
|
16
|
+
var _chunkBQR6UN3Cjs = require('./chunk-BQR6UN3C.js');
|
|
37
17
|
|
|
38
18
|
|
|
39
19
|
var _chunk7P5AA3SNjs = require('./chunk-7P5AA3SN.js');
|
|
40
|
-
require('./chunk-GNN4MY5X.js');
|
|
41
|
-
require('./chunk-OG64RBAC.js');
|
|
42
|
-
require('./chunk-COGTRVWW.js');
|
|
43
|
-
|
|
44
|
-
// src/cli/commands/describe.ts
|
|
45
|
-
var _fs = require('fs');
|
|
46
|
-
var _path = require('path');
|
|
47
20
|
|
|
48
21
|
// src/cli/tool-features.ts
|
|
49
22
|
var VIEWS = {
|
|
@@ -58,13 +31,13 @@ var VIEWS = {
|
|
|
58
31
|
details: model,
|
|
59
32
|
lines: [
|
|
60
33
|
...unlisted,
|
|
61
|
-
...
|
|
34
|
+
..._chunk7DRPTGCKjs.formatModelDescription.call(void 0, model).trimEnd().split("\n")
|
|
62
35
|
]
|
|
63
36
|
};
|
|
64
37
|
},
|
|
65
38
|
byok: async (_value, tool) => ({
|
|
66
39
|
details: _nullishCoalesce(tool.byok, () => ( {})),
|
|
67
|
-
lines:
|
|
40
|
+
lines: _chunkBQR6UN3Cjs.byokLines.call(void 0, _nullishCoalesce(tool.byok, () => ( {})))
|
|
68
41
|
})
|
|
69
42
|
};
|
|
70
43
|
var isFeatureView = (value) => typeof value === "string" && Object.hasOwn(VIEWS, value);
|
|
@@ -115,6 +88,24 @@ var FILTER_OF = {
|
|
|
115
88
|
prebuilt_play: "prebuilts",
|
|
116
89
|
custom_play: "custom"
|
|
117
90
|
};
|
|
91
|
+
async function found(lookup) {
|
|
92
|
+
try {
|
|
93
|
+
return await lookup;
|
|
94
|
+
} catch (error) {
|
|
95
|
+
if (error instanceof _chunk7P5AA3SNjs.DeeplineError && (error.statusCode === 404 || error.code === "PLAY_NOT_FOUND" || error.code === "NOT_FOUND")) {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
throw error;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function describeLookupsFor(client) {
|
|
102
|
+
return {
|
|
103
|
+
play: (reference) => found(client.describePlay(reference)),
|
|
104
|
+
tool: (name) => found(client.getTool(name)),
|
|
105
|
+
describeModel: (model) => client.describeModel(model),
|
|
106
|
+
baseUrl: client.baseUrl
|
|
107
|
+
};
|
|
108
|
+
}
|
|
118
109
|
async function describeName(name, options, lookups) {
|
|
119
110
|
const maintainedOnly = options.prebuilt === true || options.tool === true;
|
|
120
111
|
const wants = (filter) => (!options.kinds || options.kinds.includes(filter)) && !(maintainedOnly && filter === "custom");
|
|
@@ -122,7 +113,7 @@ async function describeName(name, options, lookups) {
|
|
|
122
113
|
const record2 = await lookups.play(reference);
|
|
123
114
|
if (!record2) return null;
|
|
124
115
|
return {
|
|
125
|
-
described:
|
|
116
|
+
described: _chunkBQR6UN3Cjs.describedPlay.call(void 0, record2),
|
|
126
117
|
record: { ...record2 },
|
|
127
118
|
schemas: {
|
|
128
119
|
inputSchema: _nullishCoalesce(record2.inputSchema, () => ( null)),
|
|
@@ -137,18 +128,18 @@ async function describeName(name, options, lookups) {
|
|
|
137
128
|
const features = toolFeatures(record2);
|
|
138
129
|
return {
|
|
139
130
|
described: {
|
|
140
|
-
...
|
|
131
|
+
..._chunk7DRPTGCKjs.describedTool.call(void 0, record2, name),
|
|
141
132
|
// Shown when the tool runs only on your own credentials; otherwise
|
|
142
133
|
// it is a feature, described with --feature byok.
|
|
143
134
|
..._optionalChain([byok, 'optionalAccess', _3 => _3.required]) === true ? { byok } : {},
|
|
144
135
|
...features.length ? { features: features.map(({ view: _view, ...feature }) => feature) } : {}
|
|
145
136
|
},
|
|
146
|
-
record:
|
|
137
|
+
record: _chunk7DRPTGCKjs.toolMetadataJsonForDescribe.call(void 0,
|
|
147
138
|
record2,
|
|
148
139
|
name,
|
|
149
140
|
lookups.seedStarterScript
|
|
150
141
|
),
|
|
151
|
-
schemas:
|
|
142
|
+
schemas: _chunk7DRPTGCKjs.publicToolSchemas.call(void 0, record2),
|
|
152
143
|
feature: (featureName, value) => {
|
|
153
144
|
const feature = features.find(({ name: name2 }) => name2 === featureName);
|
|
154
145
|
return feature ? describeFeature(record2, feature, value, {
|
|
@@ -179,7 +170,7 @@ async function describeName(name, options, lookups) {
|
|
|
179
170
|
const note = shadows ? `Showing your workspace play "${name}". It has the same name as a Deepline ${shadows.kind.replace("_", " ")}; see that one with: ${shadows.describeCommand}` : null;
|
|
180
171
|
const verbose = options.verbose === true;
|
|
181
172
|
const isPlay = described.kind === "prebuilt_play" || described.kind === "custom_play";
|
|
182
|
-
const dashboardUrl = isPlay ?
|
|
173
|
+
const dashboardUrl = isPlay ? _chunkBQR6UN3Cjs.buildPlayDashboardUrl.call(void 0, lookups.baseUrl, described.id) : null;
|
|
183
174
|
if (options.webUrl) {
|
|
184
175
|
if (!dashboardUrl) {
|
|
185
176
|
return {
|
|
@@ -243,7 +234,7 @@ async function describeName(name, options, lookups) {
|
|
|
243
234
|
},
|
|
244
235
|
lines: [
|
|
245
236
|
`${described.id} [${described.kind.replace("_", " ")}]`,
|
|
246
|
-
...
|
|
237
|
+
..._chunkBQR6UN3Cjs.schemaLines.call(void 0, described, {
|
|
247
238
|
full: true,
|
|
248
239
|
secondary: true,
|
|
249
240
|
...fields.length ? { fields } : {}
|
|
@@ -252,17 +243,17 @@ async function describeName(name, options, lookups) {
|
|
|
252
243
|
} : {
|
|
253
244
|
envelope: {
|
|
254
245
|
...summary,
|
|
255
|
-
inputs: inputs.map(
|
|
256
|
-
outputs: outputs.map(
|
|
257
|
-
...described.rowInputs ? { rowInputs: described.rowInputs.map(
|
|
258
|
-
...described.rowOutputs ? { rowOutputs: described.rowOutputs.map(
|
|
259
|
-
runExamples:
|
|
246
|
+
inputs: inputs.map(_chunkBQR6UN3Cjs.topLevelField),
|
|
247
|
+
outputs: outputs.map(_chunkBQR6UN3Cjs.topLevelField),
|
|
248
|
+
...described.rowInputs ? { rowInputs: described.rowInputs.map(_chunkBQR6UN3Cjs.topLevelField) } : {},
|
|
249
|
+
...described.rowOutputs ? { rowOutputs: described.rowOutputs.map(_chunkBQR6UN3Cjs.topLevelField) } : {},
|
|
250
|
+
runExamples: _chunkBQR6UN3Cjs.examples.call(void 0, described, { verbose }),
|
|
260
251
|
...dashboardUrl ? { dashboardUrl } : {},
|
|
261
252
|
...shadows ? { shadows, note } : {}
|
|
262
253
|
},
|
|
263
254
|
lines: [
|
|
264
255
|
...note ? [`Note: ${note}`, ""] : [],
|
|
265
|
-
...
|
|
256
|
+
..._chunkBQR6UN3Cjs.describedLines.call(void 0, described, {
|
|
266
257
|
cli: shown && (!named || options.cliExample === true),
|
|
267
258
|
play: shown && (!named || options.playExample === true),
|
|
268
259
|
explain: named,
|
|
@@ -279,7 +270,7 @@ async function describeName(name, options, lookups) {
|
|
|
279
270
|
// its value stands, so callers of the older commands read what they did.
|
|
280
271
|
{ ...view.envelope, ...record }
|
|
281
272
|
) : {
|
|
282
|
-
...
|
|
273
|
+
..._chunkBQR6UN3Cjs.describedJson.call(void 0, described, {
|
|
283
274
|
secondary: verbose || fields.length > 0,
|
|
284
275
|
verbose
|
|
285
276
|
}),
|
|
@@ -289,136 +280,7 @@ async function describeName(name, options, lookups) {
|
|
|
289
280
|
return { status: "described", envelope, lines: view.lines };
|
|
290
281
|
}
|
|
291
282
|
|
|
292
|
-
// src/cli/commands/describe.ts
|
|
293
|
-
async function found(lookup) {
|
|
294
|
-
try {
|
|
295
|
-
return await lookup;
|
|
296
|
-
} catch (error) {
|
|
297
|
-
if (error instanceof _chunk7P5AA3SNjs.DeeplineError && (error.statusCode === 404 || error.code === "PLAY_NOT_FOUND" || error.code === "NOT_FOUND")) {
|
|
298
|
-
return null;
|
|
299
|
-
}
|
|
300
|
-
throw error;
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
async function describeAnything(name, options, onMissing) {
|
|
304
|
-
const client = new (0, _chunkWQJJNIMQjs.DeeplineClient)();
|
|
305
|
-
const outcome = await describeName(name, options, {
|
|
306
|
-
play: (reference) => found(client.describePlay(reference)),
|
|
307
|
-
tool: async (toolName) => await _asyncNullishCoalesce(options.fetchedTool, async () => ( await found(client.getTool(toolName)))),
|
|
308
|
-
describeModel: (model) => client.describeModel(model),
|
|
309
|
-
baseUrl: client.baseUrl,
|
|
310
|
-
seedStarterScript: _chunk2VOLOWYZjs.seedToolListScript
|
|
311
|
-
});
|
|
312
|
-
if (outcome.status === "missing") {
|
|
313
|
-
if (onMissing) return onMissing();
|
|
314
|
-
console.error(
|
|
315
|
-
`Nothing named "${name}". Search for it: deepline search ${JSON.stringify(name.replace(/[-_./]+/g, " "))}`
|
|
316
|
-
);
|
|
317
|
-
return 2;
|
|
318
|
-
}
|
|
319
|
-
if (outcome.status === "refused") {
|
|
320
|
-
console.error(outcome.message);
|
|
321
|
-
return outcome.exitCode;
|
|
322
|
-
}
|
|
323
|
-
return deliver(outcome.envelope, outcome.lines, {
|
|
324
|
-
json: options.json === true,
|
|
325
|
-
out: options.out
|
|
326
|
-
});
|
|
327
|
-
}
|
|
328
|
-
function deliver(envelope, lines, { json, out }) {
|
|
329
|
-
const text = `${lines.join("\n")}
|
|
330
|
-
`;
|
|
331
|
-
if (out) {
|
|
332
|
-
const path = _path.resolve.call(void 0, out);
|
|
333
|
-
const content = json ? `${JSON.stringify(envelope, null, 2)}
|
|
334
|
-
` : text;
|
|
335
|
-
_fs.writeFileSync.call(void 0, path, content);
|
|
336
|
-
const bytes = Buffer.byteLength(content);
|
|
337
|
-
_chunkRTO5QZWTjs.printCommandEnvelope.call(void 0,
|
|
338
|
-
{ path, bytes },
|
|
339
|
-
{ json, text: `Wrote ${path} (${bytes} bytes)
|
|
340
|
-
` }
|
|
341
|
-
);
|
|
342
|
-
return 0;
|
|
343
|
-
}
|
|
344
|
-
_chunkRTO5QZWTjs.printCommandEnvelope.call(void 0, envelope, { json, text });
|
|
345
|
-
return 0;
|
|
346
|
-
}
|
|
347
|
-
function registerDescribeCommand(program) {
|
|
348
|
-
_chunkNSOTASOPjs.addDescribeOptions.call(void 0, program.command("describe <name>")).option("--web-url", "Print only a play's play page URL").description(
|
|
349
|
-
"Describe anything search returns: a tool, monitor type, or play."
|
|
350
|
-
).addHelpText(
|
|
351
|
-
"after",
|
|
352
|
-
`
|
|
353
|
-
What you can describe:
|
|
354
|
-
Any id deepline search returns: a tool id, a monitor type id, or a play name
|
|
355
|
-
or reference. You do not say which kind it is; tool ids, monitor type ids
|
|
356
|
-
and prebuilt play names never overlap.
|
|
357
|
-
|
|
358
|
-
When a name is taken twice:
|
|
359
|
-
A play your workspace created is shown instead of a Deepline tool, monitor
|
|
360
|
-
type or prebuilt play with the same name, and the output says so.
|
|
361
|
-
Pass --prebuilt (or --tool) to see the Deepline one.
|
|
362
|
-
|
|
363
|
-
What it prints:
|
|
364
|
-
The same sections for every kind: what it is, cost, inputs, outputs, then
|
|
365
|
-
an example of running it from the CLI and from inside a play.
|
|
366
|
-
|
|
367
|
-
Examples in the output:
|
|
368
|
-
(default) required inputs filled in, first output read
|
|
369
|
-
--verbose every input filled in, every output read; also shows
|
|
370
|
-
secondary fields
|
|
371
|
-
--cli-example only the CLI example, with how inputs and outputs work
|
|
372
|
-
--play-example only the in-play example, with how inputs and outputs work
|
|
373
|
-
--no-example no examples
|
|
374
|
-
|
|
375
|
-
Features:
|
|
376
|
-
A tool lists its features: parts with their own description, such as the
|
|
377
|
-
model an AI tool runs. --feature <name> describes one at its default value,
|
|
378
|
-
--feature <name>=<value> at another, e.g. --feature model=openai/gpt-5.6-luna.
|
|
379
|
-
|
|
380
|
-
Schema size and format:
|
|
381
|
-
Secondary fields (diagnostics, attempt logs, echoes of input) are left out
|
|
382
|
-
by default; the output names them, and --verbose shows them.
|
|
383
|
-
--fields email,miss_reason shows only the fields you name, plus every
|
|
384
|
-
required input, and names the rest. Use it when you know what you need.
|
|
385
|
-
A schema over ${_chunkNSOTASOPjs.SCHEMA_LINE_LIMIT} lines is folded: deeper objects show only their field
|
|
386
|
-
names. A shape used more than once is printed once under Types.
|
|
387
|
-
--full-schema the normal output, with the schema not folded
|
|
388
|
-
--schema-only only the schema, not folded, and nothing else
|
|
389
|
-
--json the same facts as JSON: fields keyed by name, with what
|
|
390
|
-
each means and, for a tool, where it is in the result;
|
|
391
|
-
secondary fields are named in "hidden"
|
|
392
|
-
--json --full-schema the whole catalog record, as tools describe and
|
|
393
|
-
plays describe print it
|
|
394
|
-
--schema-only --json
|
|
395
|
-
only the input and output JSON Schemas; use this for a
|
|
396
|
-
program, or for a schema too large to read
|
|
397
|
-
--out <path> save any of the above to a file instead of printing it
|
|
398
|
-
|
|
399
|
-
Play page:
|
|
400
|
-
For a play, the output ends with its play page URL (JSON: dashboardUrl).
|
|
401
|
-
--web-url print only that URL; with --json, {"dashboardUrl": ...}.
|
|
402
|
-
Fails for a tool or monitor type, which have no play page.
|
|
403
|
-
|
|
404
|
-
Older commands:
|
|
405
|
-
deepline tools describe and deepline plays describe are this command limited
|
|
406
|
-
to one kind. Their own flags still work: --pricing-only, --examples-only,
|
|
407
|
-
--model and --estimate-payload on tools; --json <fields> on plays.
|
|
408
|
-
|
|
409
|
-
Examples:
|
|
410
|
-
deepline describe hunter_email_verifier
|
|
411
|
-
deepline describe person-linkedin-to-email
|
|
412
|
-
deepline describe my-play --prebuilt
|
|
413
|
-
deepline describe ai_ark_people_search --full-schema
|
|
414
|
-
deepline describe prebuilt/person-to-email-batch --web-url
|
|
415
|
-
deepline describe ai_ark_people_search --schema-only --out schema.json
|
|
416
|
-
`
|
|
417
|
-
).action(async (name, options) => {
|
|
418
|
-
process.exitCode = await describeAnything(name, options);
|
|
419
|
-
});
|
|
420
|
-
}
|
|
421
283
|
|
|
422
284
|
|
|
423
285
|
|
|
424
|
-
exports.
|
|
286
|
+
exports.describeLookupsFor = describeLookupsFor; exports.describeName = describeName;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkJU3PF7WMjs = require('./chunk-JU3PF7WM.js');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
@@ -226,8 +226,8 @@ var BROWSER_OPEN_COOLDOWN_MS = 3e4;
|
|
|
226
226
|
var SAME_URL_BROWSER_OPEN_COOLDOWN_MS = 5 * 6e4;
|
|
227
227
|
var defaultBrowserCommandRunner = childProcess;
|
|
228
228
|
function getAuthedHttpClient() {
|
|
229
|
-
const config =
|
|
230
|
-
return { config, http: new (0,
|
|
229
|
+
const config = _chunkJU3PF7WMjs.resolveConfig.call(void 0, );
|
|
230
|
+
return { config, http: new (0, _chunkJU3PF7WMjs.HttpClient)(config) };
|
|
231
231
|
}
|
|
232
232
|
function stableOsUserId() {
|
|
233
233
|
try {
|
|
@@ -567,7 +567,7 @@ function collectLocalEnvInfo() {
|
|
|
567
567
|
os: `${process.platform} ${process.arch}`,
|
|
568
568
|
node_version: process.version,
|
|
569
569
|
home_dir: homeDir,
|
|
570
|
-
agent_runtime:
|
|
570
|
+
agent_runtime: _chunkJU3PF7WMjs.detectAgentRuntime.call(void 0, )
|
|
571
571
|
};
|
|
572
572
|
const env = process.env;
|
|
573
573
|
const optional = {
|
|
@@ -814,9 +814,9 @@ function markdownTableFromRows(rows, preferredColumns = []) {
|
|
|
814
814
|
}
|
|
815
815
|
function withAgentCommandContext(value) {
|
|
816
816
|
const valueRecord = value !== null && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
817
|
-
return
|
|
817
|
+
return _chunkJU3PF7WMjs.detectAgentRuntime.call(void 0, ) !== "unknown" && valueRecord && !Object.prototype.hasOwnProperty.call(valueRecord, "command_context") ? {
|
|
818
818
|
...valueRecord,
|
|
819
|
-
command_context:
|
|
819
|
+
command_context: _chunkJU3PF7WMjs.resolveCliCommandContext.call(void 0, )
|
|
820
820
|
} : value;
|
|
821
821
|
}
|
|
822
822
|
function printJson(value, fields) {
|
|
@@ -60,209 +60,6 @@ function isDeeplineExtractorTarget(value) {
|
|
|
60
60
|
return value in DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
// src/tool-output.ts
|
|
64
|
-
import {
|
|
65
|
-
closeSync,
|
|
66
|
-
mkdirSync,
|
|
67
|
-
openSync,
|
|
68
|
-
writeFileSync,
|
|
69
|
-
writeSync
|
|
70
|
-
} from "fs";
|
|
71
|
-
import { homedir } from "os";
|
|
72
|
-
import { dirname, join } from "path";
|
|
73
|
-
function isPlainObject(value) {
|
|
74
|
-
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
75
|
-
}
|
|
76
|
-
function getByDottedPath(root, dottedPath) {
|
|
77
|
-
let current = root;
|
|
78
|
-
for (const segment of String(dottedPath || "").split(".").filter(Boolean)) {
|
|
79
|
-
if (!isPlainObject(current) || !(segment in current)) {
|
|
80
|
-
return null;
|
|
81
|
-
}
|
|
82
|
-
current = current[segment];
|
|
83
|
-
}
|
|
84
|
-
return current;
|
|
85
|
-
}
|
|
86
|
-
function normalizeRows(value) {
|
|
87
|
-
if (!Array.isArray(value)) return null;
|
|
88
|
-
return value.map((entry) => {
|
|
89
|
-
if (isPlainObject(entry)) return entry;
|
|
90
|
-
return { value: entry };
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
function columnsForRows(rows) {
|
|
94
|
-
const seen = /* @__PURE__ */ new Set();
|
|
95
|
-
const columns = [];
|
|
96
|
-
for (const row of rows) {
|
|
97
|
-
for (const key of Object.keys(row)) {
|
|
98
|
-
if (!seen.has(key)) {
|
|
99
|
-
seen.add(key);
|
|
100
|
-
columns.push(key);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return columns;
|
|
105
|
-
}
|
|
106
|
-
function candidateRoots(payload) {
|
|
107
|
-
const roots = [
|
|
108
|
-
{ path: null, value: payload }
|
|
109
|
-
];
|
|
110
|
-
if (isPlainObject(payload) && isPlainObject(payload.toolResponse)) {
|
|
111
|
-
roots.push({ path: "toolResponse", value: payload.toolResponse });
|
|
112
|
-
if (Object.prototype.hasOwnProperty.call(payload.toolResponse, "raw")) {
|
|
113
|
-
roots.push({
|
|
114
|
-
path: "toolResponse.raw",
|
|
115
|
-
value: payload.toolResponse.raw
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
if (isPlainObject(payload) && isPlainObject(payload.output)) {
|
|
120
|
-
roots.push({ path: "output", value: payload.output });
|
|
121
|
-
if (Object.prototype.hasOwnProperty.call(payload.output, "body")) {
|
|
122
|
-
roots.push({ path: "output.body", value: payload.output.body });
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
if (isPlainObject(payload) && isPlainObject(payload.result)) {
|
|
126
|
-
roots.push({ path: "result", value: payload.result });
|
|
127
|
-
if (isPlainObject(payload.result.data)) {
|
|
128
|
-
roots.push({ path: "result.data", value: payload.result.data });
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return roots;
|
|
132
|
-
}
|
|
133
|
-
function findBestArrayCandidate(value, pathPrefix = "", depth = 0) {
|
|
134
|
-
if (depth > 5) return null;
|
|
135
|
-
const directRows = normalizeRows(value);
|
|
136
|
-
const hasObjectRow = directRows?.some(
|
|
137
|
-
(row) => Object.keys(row).some((key) => key !== "value")
|
|
138
|
-
) ?? false;
|
|
139
|
-
let best = directRows && directRows.length > 0 && hasObjectRow ? { path: pathPrefix, rows: directRows } : null;
|
|
140
|
-
if (!isPlainObject(value)) {
|
|
141
|
-
return best;
|
|
142
|
-
}
|
|
143
|
-
for (const [key, child] of Object.entries(value)) {
|
|
144
|
-
const childPath = pathPrefix ? `${pathPrefix}.${key}` : key;
|
|
145
|
-
const candidate = findBestArrayCandidate(child, childPath, depth + 1);
|
|
146
|
-
if (!candidate) continue;
|
|
147
|
-
if (!best || candidate.rows.length > best.rows.length) {
|
|
148
|
-
best = candidate;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
return best;
|
|
152
|
-
}
|
|
153
|
-
function tryConvertToList(payload, options) {
|
|
154
|
-
const listExtractorPaths = Array.isArray(options?.listExtractorPaths) ? options?.listExtractorPaths.filter(
|
|
155
|
-
(entry) => typeof entry === "string" && entry.trim().length > 0
|
|
156
|
-
) : [];
|
|
157
|
-
if (listExtractorPaths.length > 0) {
|
|
158
|
-
let emptyMatch = null;
|
|
159
|
-
for (const root of candidateRoots(payload)) {
|
|
160
|
-
for (const extractorPath of listExtractorPaths) {
|
|
161
|
-
const resolved = getByDottedPath(root.value, extractorPath);
|
|
162
|
-
const rows = normalizeRows(resolved);
|
|
163
|
-
if (!rows) {
|
|
164
|
-
continue;
|
|
165
|
-
}
|
|
166
|
-
const sourcePath = root.path ? `${root.path}.${extractorPath}` : extractorPath;
|
|
167
|
-
if (rows.length > 0) {
|
|
168
|
-
return { rows, strategy: "configured_paths", sourcePath };
|
|
169
|
-
}
|
|
170
|
-
emptyMatch ??= { rows, strategy: "configured_paths", sourcePath };
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
if (emptyMatch) {
|
|
174
|
-
return emptyMatch;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
const roots = candidateRoots(payload);
|
|
178
|
-
const v2Raw = roots.find((root) => root.path === "toolResponse.raw");
|
|
179
|
-
for (const root of v2Raw ? [v2Raw] : roots) {
|
|
180
|
-
const candidate = findBestArrayCandidate(root.value, root.path ?? "");
|
|
181
|
-
if (!candidate || candidate.rows.length === 0) continue;
|
|
182
|
-
return {
|
|
183
|
-
rows: candidate.rows,
|
|
184
|
-
strategy: "auto_detected",
|
|
185
|
-
sourcePath: candidate.path || root.path
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
return null;
|
|
189
|
-
}
|
|
190
|
-
function projectRowOutput(conversion) {
|
|
191
|
-
return {
|
|
192
|
-
rows: conversion.rows,
|
|
193
|
-
rowCount: conversion.rows.length,
|
|
194
|
-
columns: columnsForRows(conversion.rows),
|
|
195
|
-
previewRows: conversion.rows.slice(0, 5),
|
|
196
|
-
strategy: conversion.strategy,
|
|
197
|
-
sourcePath: conversion.sourcePath
|
|
198
|
-
};
|
|
199
|
-
}
|
|
200
|
-
function ensureOutputDir() {
|
|
201
|
-
const outputDir = join(homedir(), ".local", "share", "deepline", "data");
|
|
202
|
-
mkdirSync(outputDir, { recursive: true });
|
|
203
|
-
return outputDir;
|
|
204
|
-
}
|
|
205
|
-
function writeJsonOutputFile(payload, stem) {
|
|
206
|
-
const outputDir = ensureOutputDir();
|
|
207
|
-
const outputPath = join(outputDir, `${stem}_${Date.now()}.json`);
|
|
208
|
-
writeFileSync(outputPath, JSON.stringify(payload, null, 2), "utf-8");
|
|
209
|
-
return outputPath;
|
|
210
|
-
}
|
|
211
|
-
function writeCsvOutputFile(rows, stem, options) {
|
|
212
|
-
const outputPath = options?.outPath ? options.outPath : join(ensureOutputDir(), `${stem}_${Date.now()}.csv`);
|
|
213
|
-
mkdirSync(dirname(outputPath), { recursive: true });
|
|
214
|
-
const columns = columnsForRows(rows);
|
|
215
|
-
const escapeCell = (value) => {
|
|
216
|
-
const normalized = value == null ? "" : typeof value === "string" || typeof value === "number" || typeof value === "boolean" ? String(value) : JSON.stringify(value);
|
|
217
|
-
if (/[",\n]/.test(normalized)) {
|
|
218
|
-
return `"${normalized.replace(/"/g, '""')}"`;
|
|
219
|
-
}
|
|
220
|
-
return normalized;
|
|
221
|
-
};
|
|
222
|
-
const fd = openSync(outputPath, "w");
|
|
223
|
-
try {
|
|
224
|
-
writeSync(fd, `${columns.map(escapeCell).join(",")}
|
|
225
|
-
`);
|
|
226
|
-
for (const row of rows) {
|
|
227
|
-
writeSync(
|
|
228
|
-
fd,
|
|
229
|
-
`${columns.map((column) => escapeCell(row[column])).join(",")}
|
|
230
|
-
`
|
|
231
|
-
);
|
|
232
|
-
}
|
|
233
|
-
} finally {
|
|
234
|
-
closeSync(fd);
|
|
235
|
-
}
|
|
236
|
-
const previewRows = rows.slice(0, 5);
|
|
237
|
-
const previewColumns = columns.slice(0, 5);
|
|
238
|
-
const preview = [
|
|
239
|
-
previewColumns.join(","),
|
|
240
|
-
...previewRows.map(
|
|
241
|
-
(row) => previewColumns.map((column) => escapeCell(row[column])).join(",")
|
|
242
|
-
)
|
|
243
|
-
].join("\n");
|
|
244
|
-
return {
|
|
245
|
-
path: outputPath,
|
|
246
|
-
rowCount: rows.length,
|
|
247
|
-
columns,
|
|
248
|
-
preview
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
function extractSummaryFields(payload) {
|
|
252
|
-
const candidates = candidateRoots(payload);
|
|
253
|
-
for (const candidate of candidates) {
|
|
254
|
-
if (!isPlainObject(candidate.value)) continue;
|
|
255
|
-
const summaryEntries = Object.entries(candidate.value).filter(
|
|
256
|
-
([, value]) => {
|
|
257
|
-
return value == null || typeof value === "string" || typeof value === "number" || typeof value === "boolean";
|
|
258
|
-
}
|
|
259
|
-
);
|
|
260
|
-
if (summaryEntries.length === 0) continue;
|
|
261
|
-
return Object.fromEntries(summaryEntries);
|
|
262
|
-
}
|
|
263
|
-
return {};
|
|
264
|
-
}
|
|
265
|
-
|
|
266
63
|
// ../plays/email-status.ts
|
|
267
64
|
var nullable = (type) => ({ type: [type, "null"] });
|
|
268
65
|
var oneOf = (values) => ({ type: "string", enum: values });
|
|
@@ -485,10 +282,5 @@ export {
|
|
|
485
282
|
PHONE_STATUS_VALUES,
|
|
486
283
|
DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS,
|
|
487
284
|
DEEPLINE_EXTRACTOR_TARGETS,
|
|
488
|
-
isDeeplineExtractorTarget
|
|
489
|
-
tryConvertToList,
|
|
490
|
-
projectRowOutput,
|
|
491
|
-
writeJsonOutputFile,
|
|
492
|
-
writeCsvOutputFile,
|
|
493
|
-
extractSummaryFields
|
|
285
|
+
isDeeplineExtractorTarget
|
|
494
286
|
};
|
|
@@ -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
|
|
3
|
+
var _chunkOU2RZYVSjs = require('./chunk-OU2RZYVS.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 =
|
|
16
|
+
const plan = _chunkOU2RZYVSjs.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,
|