deepline 0.3.374 → 0.3.376
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/transient-service-error.ts +56 -4
- package/dist/cli/auth-BTFXJQLT.js +35 -0
- package/dist/cli/{auth-YGCDA4WG.mjs → auth-MLCDUTJY.mjs} +6 -4
- package/dist/cli/{billing-ZXRKPD5D.js → billing-IONI4V7P.js} +73 -73
- package/dist/cli/{billing-3ZLR3CJU.mjs → billing-OUGNDBL4.mjs} +4 -4
- package/dist/cli/{chunk-TZTGK5JQ.js → chunk-34KUUN3Z.js} +52 -51
- package/dist/cli/{chunk-MOBOAZMA.js → chunk-47X6MQ7J.js} +60 -60
- package/dist/cli/{chunk-O7KJYX7R.js → chunk-4V2Q3JO6.js} +15 -15
- package/dist/cli/{chunk-JSK6GUY6.js → chunk-4WINCNNH.js} +13 -9
- package/dist/cli/{chunk-T35LCTC7.js → chunk-5HDB7XXT.js} +235 -235
- package/dist/cli/{chunk-62IBVKWB.mjs → chunk-5HJHTZI6.mjs} +1 -1
- package/dist/cli/{chunk-RT5ICJ5V.js → chunk-6EYTKUDI.js} +2 -2
- package/dist/cli/{chunk-IZVGMVNX.mjs → chunk-7LX2G2PU.mjs} +1 -1
- package/dist/cli/{chunk-NOSIMGZV.js → chunk-7ZZSGV4A.js} +1 -1
- package/dist/cli/{chunk-YPVTQRUM.js → chunk-A6ZTYKYF.js} +33 -7
- package/dist/cli/{chunk-HC5L6KGE.js → chunk-ETUV6RRK.js} +1495 -1495
- package/dist/cli/{chunk-46JCJ7FT.mjs → chunk-FWF24ULX.mjs} +13 -9
- package/dist/cli/{chunk-GT6KGIWV.mjs → chunk-GMRWUGXB.mjs} +3 -3
- package/dist/cli/{chunk-A62HBMHY.mjs → chunk-H7SLESX6.mjs} +1467 -1467
- package/dist/cli/{chunk-VZSVYNZH.mjs → chunk-HDB4GAWY.mjs} +12 -12
- package/dist/cli/{chunk-RXR7A2MX.js → chunk-KHZ6WEVF.js} +26 -26
- package/dist/cli/{chunk-OS7GXARW.mjs → chunk-L6OSOKS6.mjs} +7 -7
- package/dist/cli/{chunk-NNYQ24O5.mjs → chunk-MHRDXS7J.mjs} +1 -1
- package/dist/cli/{chunk-JK547IDB.js → chunk-N6KIEYZV.js} +15 -15
- package/dist/cli/{chunk-3XKAOV74.js → chunk-QSH5CHRI.js} +6 -6
- package/dist/cli/{chunk-OYTPVM2R.mjs → chunk-SPZNLE2D.mjs} +2 -2
- package/dist/cli/{chunk-2DAWTVNN.mjs → chunk-UABI2T3Z.mjs} +2 -2
- package/dist/cli/{chunk-E6BZWURC.mjs → chunk-UE2UHYT3.mjs} +33 -7
- package/dist/cli/{chunk-MQ5UW5AZ.mjs → chunk-V7ZREPSD.mjs} +4 -4
- package/dist/cli/{chunk-SBB27CIJ.mjs → chunk-VL5ERG22.mjs} +2 -2
- package/dist/cli/{chunk-FT6O2ZVJ.mjs → chunk-VNBAOWN3.mjs} +13 -32
- package/dist/cli/{chunk-PCYCNZLR.js → chunk-Y4MXBE3V.js} +8 -8
- package/dist/cli/{chunk-X5V2QTDR.js → chunk-Y5W5IIA4.js} +65 -84
- package/dist/cli/{chunk-YFFH6NDU.mjs → chunk-YXQ7SRL3.mjs} +3 -2
- package/dist/cli/{chunk-53PZA4EP.js → chunk-ZXFGA2VK.js} +8 -8
- package/dist/cli/command-docs.js +2 -2
- package/dist/cli/command-docs.mjs +1 -1
- package/dist/cli/{csv-WSRTANXI.js → csv-LPC7BGZ2.js} +12 -12
- package/dist/cli/{csv-VEHHRUG4.mjs → csv-NITSP7QJ.mjs} +3 -3
- package/dist/cli/{db-BH25DX2G.mjs → db-JVDYEXNC.mjs} +4 -4
- package/dist/cli/{db-JXZNMFCE.js → db-WGD54UKM.js} +29 -29
- package/dist/cli/{describe-N2OBGVJM.js → describe-GA7LSJRY.js} +144 -34
- package/dist/cli/{describe-TMBECHTX.mjs → describe-SVMLA6SN.mjs} +130 -20
- package/dist/cli/{executions-Y4HQHYSO.mjs → executions-CXBJDGMU.mjs} +4 -4
- package/dist/cli/{executions-TX5CQF66.js → executions-P47HEI4N.js} +6 -6
- package/dist/cli/{feedback-W7SRXYSP.mjs → feedback-34OSXUQ2.mjs} +3 -3
- package/dist/cli/{feedback-ASEJ5A7I.js → feedback-GWKWE5CU.js} +7 -7
- package/dist/cli/git-MIPISCON.js +23 -0
- package/dist/cli/{git-2W7CZZRC.mjs → git-YAROF6D3.mjs} +4 -4
- package/dist/cli/index.js +106 -91
- package/dist/cli/index.mjs +63 -48
- package/dist/cli/{legacy-noops-TXMPY3P7.mjs → legacy-noops-2G55OKIU.mjs} +4 -4
- package/dist/cli/{legacy-noops-NJYAAGBY.js → legacy-noops-MDZQL3QH.js} +7 -7
- package/dist/cli/{monitors-G4L65QGQ.mjs → monitors-KUGKMABN.mjs} +4 -4
- package/dist/cli/{monitors-YLKTQ57D.js → monitors-X7QYWFSP.js} +85 -85
- package/dist/cli/{org-ENXO2A33.js → org-6XL3IBT2.js} +64 -64
- package/dist/cli/{org-BCHOWKIA.mjs → org-CNBBAN4W.mjs} +4 -4
- package/dist/cli/{play-JBY7HUYN.mjs → play-33ZMPAR5.mjs} +8 -8
- package/dist/cli/play-3CM3P2DS.js +155 -0
- package/dist/cli/{providers-JV2DZG43.mjs → providers-3OSQNFPE.mjs} +4 -4
- package/dist/cli/{providers-GWFX3E7C.js → providers-5POAURDT.js} +7 -7
- package/dist/cli/{quickstart-CASPK7F4.js → quickstart-LQGPDJTS.js} +5 -5
- package/dist/cli/{quickstart-AIXURXZQ.mjs → quickstart-QICTOOW6.mjs} +3 -3
- package/dist/cli/search-A2YLJ4I5.js +26 -0
- package/dist/cli/{search-DYQB7LHK.mjs → search-HBIX4SF4.mjs} +5 -5
- package/dist/cli/{secrets-RQZPIPO5.mjs → secrets-6MRGZPHT.mjs} +4 -4
- package/dist/cli/{secrets-AZQG2E4U.js → secrets-QKPBNQ3E.js} +13 -13
- package/dist/cli/{sessions-3FJJDMBB.mjs → sessions-NODY2OW4.mjs} +4 -4
- package/dist/cli/{sessions-ZY6RBYD4.js → sessions-NP7BLZD2.js} +5 -5
- package/dist/cli/{settings-GXKWNR5V.js → settings-42QHXUB2.js} +74 -74
- package/dist/cli/{settings-UNZDQGSE.mjs → settings-JCEIOTNL.mjs} +7 -7
- package/dist/cli/{setup-PIRXJ2KJ.mjs → setup-3QR4RGMG.mjs} +6 -6
- package/dist/cli/{setup-UURZD4YO.js → setup-5XXWP54Y.js} +41 -41
- package/dist/cli/skills-4JJEAA66.js +28 -0
- package/dist/cli/{skills-B4AQEIAF.mjs → skills-U4OMXLNS.mjs} +4 -4
- package/dist/cli/{tools-UMGQKUSW.mjs → tools-45OROEZQ.mjs} +7 -7
- package/dist/cli/tools-FDCFSA7W.js +40 -0
- package/dist/cli/{update-SFUTMEKL.mjs → update-2XCRMJ4R.mjs} +6 -6
- package/dist/cli/update-VYL4TXIE.js +28 -0
- package/dist/cli/{workflow-CDAJCMT7.js → workflow-47P4LQNC.js} +15 -15
- package/dist/cli/{workflow-ON6XVW36.mjs → workflow-7X3GCOPY.mjs} +5 -5
- package/dist/index.js +8 -8
- package/dist/index.mjs +7 -7
- package/dist/install-integrity.json +76 -78
- 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 +1 -1
- package/dist/cli/auth-IFXXXZP6.js +0 -33
- package/dist/cli/client-O6IEMURJ.js +0 -20
- package/dist/cli/client-TV254HC4.mjs +0 -20
- package/dist/cli/git-SSSOIQ2L.js +0 -23
- package/dist/cli/play-SSJ3PO4D.js +0 -155
- package/dist/cli/search-N7K6A2YV.js +0 -26
- package/dist/cli/skills-4OUZLKTW.js +0 -28
- package/dist/cli/tools-MIZS5UN6.js +0 -40
- package/dist/cli/update-3CO7LA4M.js +0 -28
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
8
|
-
require('./chunk-
|
|
7
|
+
var _chunkQSH5CHRIjs = require('./chunk-QSH5CHRI.js');
|
|
8
|
+
require('./chunk-N6KIEYZV.js');
|
|
9
9
|
require('./chunk-XNYIZMNQ.js');
|
|
10
10
|
require('./chunk-7P5AA3SN.js');
|
|
11
|
-
require('./chunk-
|
|
11
|
+
require('./chunk-7ZZSGV4A.js');
|
|
12
12
|
require('./chunk-OG64RBAC.js');
|
|
13
13
|
require('./chunk-COGTRVWW.js');
|
|
14
14
|
|
|
@@ -126,7 +126,7 @@ function renderTable(rows, totalRows, verbose, footer = `showing ${rows.length}
|
|
|
126
126
|
column.length,
|
|
127
127
|
...rows.map((row) => {
|
|
128
128
|
const value = _nullishCoalesce(row[column], () => ( ""));
|
|
129
|
-
return (verbose ? value :
|
|
129
|
+
return (verbose ? value : _chunkQSH5CHRIjs.clip.call(void 0, value, 42)).length;
|
|
130
130
|
})
|
|
131
131
|
)
|
|
132
132
|
])
|
|
@@ -136,7 +136,7 @@ function renderTable(rows, totalRows, verbose, footer = `showing ${rows.length}
|
|
|
136
136
|
const body = rows.map(
|
|
137
137
|
(row) => columns.map((column) => {
|
|
138
138
|
const raw = _nullishCoalesce(row[column], () => ( ""));
|
|
139
|
-
const display = verbose ? raw :
|
|
139
|
+
const display = verbose ? raw : _chunkQSH5CHRIjs.clip.call(void 0, raw, 42);
|
|
140
140
|
return display.padEnd(widths[column]);
|
|
141
141
|
}).join(" | ")
|
|
142
142
|
);
|
|
@@ -156,7 +156,7 @@ async function handleCsvShow(path, options, command) {
|
|
|
156
156
|
{ exitCode: 2 }
|
|
157
157
|
);
|
|
158
158
|
}
|
|
159
|
-
const allRows =
|
|
159
|
+
const allRows = _chunkQSH5CHRIjs.readCsvRows.call(void 0, csvPath);
|
|
160
160
|
const [rowStart, rowEnd] = parseRowRange(options.rows);
|
|
161
161
|
const rows = options.summary && options.rows === void 0 ? allRows : selectRows(allRows, rowStart, rowEnd);
|
|
162
162
|
const { rows: selected, columns } = selectColumns(
|
|
@@ -169,7 +169,7 @@ async function handleCsvShow(path, options, command) {
|
|
|
169
169
|
if (options.summary) {
|
|
170
170
|
const summaries = summarizeColumns(selected, columns);
|
|
171
171
|
if (format === "json") {
|
|
172
|
-
|
|
172
|
+
_chunkQSH5CHRIjs.printJson.call(void 0, {
|
|
173
173
|
rows: summaries,
|
|
174
174
|
total_rows: selected.length,
|
|
175
175
|
source_total_rows: allRows.length
|
|
@@ -178,7 +178,7 @@ async function handleCsvShow(path, options, command) {
|
|
|
178
178
|
}
|
|
179
179
|
const displayRows = summaryDisplayRows(summaries);
|
|
180
180
|
if (format === "csv") {
|
|
181
|
-
process.stdout.write(
|
|
181
|
+
process.stdout.write(_chunkQSH5CHRIjs.csvStringFromRows.call(void 0, displayRows));
|
|
182
182
|
return;
|
|
183
183
|
}
|
|
184
184
|
process.stdout.write(
|
|
@@ -193,7 +193,7 @@ async function handleCsvShow(path, options, command) {
|
|
|
193
193
|
return;
|
|
194
194
|
}
|
|
195
195
|
if (format === "json") {
|
|
196
|
-
|
|
196
|
+
_chunkQSH5CHRIjs.printJson.call(void 0, {
|
|
197
197
|
rows: selected.map((row, index) => ({ __row: rowStart + index, ...row }))
|
|
198
198
|
});
|
|
199
199
|
return;
|
|
@@ -436,7 +436,7 @@ async function handleCsvRenderStart(options) {
|
|
|
436
436
|
if (log) {
|
|
437
437
|
detail = `
|
|
438
438
|
CSV render log:
|
|
439
|
-
${
|
|
439
|
+
${_chunkQSH5CHRIjs.clip.call(void 0, log, 2e3)}`;
|
|
440
440
|
}
|
|
441
441
|
} catch (e7) {
|
|
442
442
|
}
|
|
@@ -487,7 +487,7 @@ async function handleCsvRenderStatus(options) {
|
|
|
487
487
|
if (payload.pid) lines.push(`Render PID: ${payload.pid}`);
|
|
488
488
|
if (payload.url) lines.push(`Render URL: ${payload.url}`);
|
|
489
489
|
lines.push(`Render Health: ${payload.health_status}`);
|
|
490
|
-
|
|
490
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0, payload, {
|
|
491
491
|
json: options.json,
|
|
492
492
|
text: `${lines.join("\n")}
|
|
493
493
|
`
|
|
@@ -523,7 +523,7 @@ async function handleCsvRenderStop(options) {
|
|
|
523
523
|
};
|
|
524
524
|
const text = stopped.length > 0 ? `Stopped CSV render process(es): ${stopped.join(" ")}
|
|
525
525
|
` : "No running CSV render process found.\n";
|
|
526
|
-
|
|
526
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0, payload, { json: options.json, text });
|
|
527
527
|
}
|
|
528
528
|
async function handleCsvRender(action, options) {
|
|
529
529
|
const normalized = _nullishCoalesce(action, () => ( "start"));
|
|
@@ -4,11 +4,11 @@ import {
|
|
|
4
4
|
printCommandEnvelope,
|
|
5
5
|
printJson,
|
|
6
6
|
readCsvRows
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-MHRDXS7J.mjs";
|
|
8
|
+
import "./chunk-HDB4GAWY.mjs";
|
|
9
9
|
import "./chunk-DLIRSHV6.mjs";
|
|
10
10
|
import "./chunk-NXGCO4JB.mjs";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-7LX2G2PU.mjs";
|
|
12
12
|
import "./chunk-WZYKRD7T.mjs";
|
|
13
13
|
import "./chunk-KRD6H754.mjs";
|
|
14
14
|
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
DeeplineClient,
|
|
6
6
|
planCustomerDbQuery
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-H7SLESX6.mjs";
|
|
8
8
|
import "./chunk-6IKARAYD.mjs";
|
|
9
9
|
import "./chunk-CBVIJSHF.mjs";
|
|
10
10
|
import {
|
|
@@ -16,15 +16,15 @@ import {
|
|
|
16
16
|
printCommandEnvelope,
|
|
17
17
|
recordRows,
|
|
18
18
|
shouldEmitJson
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-MHRDXS7J.mjs";
|
|
20
20
|
import {
|
|
21
21
|
CustomerDbQueryOutcomeUnknownError
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-HDB4GAWY.mjs";
|
|
23
23
|
import "./chunk-DLIRSHV6.mjs";
|
|
24
24
|
import {
|
|
25
25
|
DeeplineError
|
|
26
26
|
} from "./chunk-NXGCO4JB.mjs";
|
|
27
|
-
import "./chunk-
|
|
27
|
+
import "./chunk-7LX2G2PU.mjs";
|
|
28
28
|
import "./chunk-WZYKRD7T.mjs";
|
|
29
29
|
import "./chunk-KRD6H754.mjs";
|
|
30
30
|
|
|
@@ -4,7 +4,7 @@ var _chunkAID3OYVJjs = require('./chunk-AID3OYVJ.js');
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkETUV6RRKjs = require('./chunk-ETUV6RRK.js');
|
|
8
8
|
require('./chunk-S6R3OX7B.js');
|
|
9
9
|
require('./chunk-LA46MMTL.js');
|
|
10
10
|
|
|
@@ -16,15 +16,15 @@ require('./chunk-LA46MMTL.js');
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _chunkQSH5CHRIjs = require('./chunk-QSH5CHRI.js');
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkN6KIEYZVjs = require('./chunk-N6KIEYZV.js');
|
|
23
23
|
require('./chunk-XNYIZMNQ.js');
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
var _chunk7P5AA3SNjs = require('./chunk-7P5AA3SN.js');
|
|
27
|
-
require('./chunk-
|
|
27
|
+
require('./chunk-7ZZSGV4A.js');
|
|
28
28
|
require('./chunk-OG64RBAC.js');
|
|
29
29
|
require('./chunk-COGTRVWW.js');
|
|
30
30
|
|
|
@@ -47,8 +47,8 @@ function formatCell(value) {
|
|
|
47
47
|
return text.length > 80 ? `${text.slice(0, 77)}...` : text;
|
|
48
48
|
}
|
|
49
49
|
function tableLines(result) {
|
|
50
|
-
const rows =
|
|
51
|
-
const responseColumns =
|
|
50
|
+
const rows = _chunkQSH5CHRIjs.dataExportRows.call(void 0, customerDbRows(result));
|
|
51
|
+
const responseColumns = _chunkQSH5CHRIjs.dataExportColumns.call(void 0,
|
|
52
52
|
rows,
|
|
53
53
|
customerDbColumnNames(result)
|
|
54
54
|
);
|
|
@@ -94,7 +94,7 @@ function tableLines(result) {
|
|
|
94
94
|
return lines;
|
|
95
95
|
}
|
|
96
96
|
function customerDbRows(result) {
|
|
97
|
-
return
|
|
97
|
+
return _chunkQSH5CHRIjs.recordRows.call(void 0, result.rows);
|
|
98
98
|
}
|
|
99
99
|
function customerDbColumnNames(result) {
|
|
100
100
|
return result.columns.map((column) => column.name).filter(Boolean);
|
|
@@ -116,15 +116,15 @@ function collectErrorText(value) {
|
|
|
116
116
|
].filter(Boolean).join("\n");
|
|
117
117
|
}
|
|
118
118
|
function formatDbQueryError(sql, error) {
|
|
119
|
-
const text = error instanceof
|
|
119
|
+
const text = error instanceof _chunkN6KIEYZVjs.CustomerDbQueryOutcomeUnknownError ? collectErrorText(error.cause) : collectErrorText(error);
|
|
120
120
|
const lower = text.toLowerCase();
|
|
121
121
|
const referencesStorage = /"storage"\.|storage\./i.test(sql);
|
|
122
122
|
const runIdColumnMissing = /column\s+"?run_id"?\s+does not exist/i.test(text) || /run_id.*does not exist/i.test(lower);
|
|
123
123
|
const relationMissing = /relation\s+["']?[^"']*storage[^"']*["']?\s+does not exist/i.test(text) || /42p01/i.test(text);
|
|
124
124
|
if (referencesStorage && relationMissing) {
|
|
125
125
|
return [
|
|
126
|
-
...error instanceof
|
|
127
|
-
error instanceof
|
|
126
|
+
...error instanceof _chunkN6KIEYZVjs.CustomerDbQueryOutcomeUnknownError ? [error.message] : [],
|
|
127
|
+
error instanceof _chunkN6KIEYZVjs.CustomerDbQueryOutcomeUnknownError ? "The server reported that the referenced storage table does not exist." : "Customer DB query failed: the referenced storage table does not exist.",
|
|
128
128
|
"Play dataset tables are created only when the corresponding ctx.dataset(...).run(...) call executes. Pilot branches, early returns, and runs that fail before the dataset do not create that table.",
|
|
129
129
|
"Use `deepline runs get <run-id> --full` to inspect returned dataset handles, then export them with `deepline runs export <run-id> --dataset result.rows --out rows.csv`.",
|
|
130
130
|
`Original error: ${errorMessage(error)}`
|
|
@@ -132,7 +132,7 @@ function formatDbQueryError(sql, error) {
|
|
|
132
132
|
}
|
|
133
133
|
if (referencesStorage && runIdColumnMissing) {
|
|
134
134
|
return [
|
|
135
|
-
...error instanceof
|
|
135
|
+
...error instanceof _chunkN6KIEYZVjs.CustomerDbQueryOutcomeUnknownError ? [error.message] : [],
|
|
136
136
|
"Customer DB query failed: storage dataset tables use `_run_id`, not `run_id`.",
|
|
137
137
|
"Prefer `deepline runs export <run-id> --dataset result.rows --out rows.csv` unless you are doing deep table debugging.",
|
|
138
138
|
`Original error: ${errorMessage(error)}`
|
|
@@ -147,7 +147,7 @@ function writeCustomerDbCsv(result, outPath) {
|
|
|
147
147
|
const resolved = _path.resolve.call(void 0, outPath);
|
|
148
148
|
_fs.writeFileSync.call(void 0,
|
|
149
149
|
resolved,
|
|
150
|
-
|
|
150
|
+
_chunkQSH5CHRIjs.dataExportCsvString.call(void 0, customerDbRows(result), customerDbColumnNames(result)),
|
|
151
151
|
"utf-8"
|
|
152
152
|
);
|
|
153
153
|
return resolved;
|
|
@@ -188,7 +188,7 @@ function dbQueryExportEnvelope(input) {
|
|
|
188
188
|
function renderDbQueryResult(result, query, options) {
|
|
189
189
|
const { sql, maxRows, operationKey } = query;
|
|
190
190
|
const { format, out: outPath, json: explicitJsonOutput = false } = options;
|
|
191
|
-
const jsonOutput = explicitJsonOutput ||
|
|
191
|
+
const jsonOutput = explicitJsonOutput || _chunkQSH5CHRIjs.shouldEmitJson.call(void 0, );
|
|
192
192
|
const toolPayload = JSON.stringify({
|
|
193
193
|
sql,
|
|
194
194
|
result_mode: "rows",
|
|
@@ -199,7 +199,7 @@ function renderDbQueryResult(result, query, options) {
|
|
|
199
199
|
if (format === "csv") {
|
|
200
200
|
if (outPath) {
|
|
201
201
|
const exportedPath = writeCustomerDbCsv(result, outPath);
|
|
202
|
-
|
|
202
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
203
203
|
dbQueryExportEnvelope({
|
|
204
204
|
result,
|
|
205
205
|
format,
|
|
@@ -215,7 +215,7 @@ function renderDbQueryResult(result, query, options) {
|
|
|
215
215
|
);
|
|
216
216
|
return;
|
|
217
217
|
}
|
|
218
|
-
|
|
218
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
219
219
|
dbQueryExportEnvelope({
|
|
220
220
|
result,
|
|
221
221
|
format,
|
|
@@ -225,7 +225,7 @@ function renderDbQueryResult(result, query, options) {
|
|
|
225
225
|
}),
|
|
226
226
|
{
|
|
227
227
|
json: explicitJsonOutput,
|
|
228
|
-
text:
|
|
228
|
+
text: _chunkQSH5CHRIjs.dataExportCsvString.call(void 0,
|
|
229
229
|
customerDbRows(result),
|
|
230
230
|
customerDbColumnNames(result)
|
|
231
231
|
)
|
|
@@ -234,14 +234,14 @@ function renderDbQueryResult(result, query, options) {
|
|
|
234
234
|
return;
|
|
235
235
|
}
|
|
236
236
|
if (format === "markdown") {
|
|
237
|
-
const content =
|
|
237
|
+
const content = _chunkQSH5CHRIjs.markdownTableFromRows.call(void 0,
|
|
238
238
|
customerDbRows(result),
|
|
239
239
|
customerDbColumnNames(result)
|
|
240
240
|
);
|
|
241
241
|
if (outPath) {
|
|
242
242
|
const exportedPath = _path.resolve.call(void 0, outPath);
|
|
243
243
|
_fs.writeFileSync.call(void 0, exportedPath, content, "utf-8");
|
|
244
|
-
|
|
244
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
245
245
|
dbQueryExportEnvelope({
|
|
246
246
|
result,
|
|
247
247
|
format,
|
|
@@ -257,7 +257,7 @@ function renderDbQueryResult(result, query, options) {
|
|
|
257
257
|
);
|
|
258
258
|
return;
|
|
259
259
|
}
|
|
260
|
-
|
|
260
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
261
261
|
dbQueryExportEnvelope({
|
|
262
262
|
result,
|
|
263
263
|
format,
|
|
@@ -272,7 +272,7 @@ function renderDbQueryResult(result, query, options) {
|
|
|
272
272
|
);
|
|
273
273
|
return;
|
|
274
274
|
}
|
|
275
|
-
|
|
275
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
276
276
|
{
|
|
277
277
|
...result,
|
|
278
278
|
next: {
|
|
@@ -346,9 +346,9 @@ async function runDbQueryCommand(options) {
|
|
|
346
346
|
...maxRows === void 0 ? {} : { maxRows },
|
|
347
347
|
...operationKey === void 0 ? {} : { operationKey }
|
|
348
348
|
};
|
|
349
|
-
const plan =
|
|
349
|
+
const plan = _chunkETUV6RRKjs.planCustomerDbQuery.call(void 0, query);
|
|
350
350
|
if (options.dryRun) {
|
|
351
|
-
|
|
351
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
352
352
|
{
|
|
353
353
|
dryRun: true,
|
|
354
354
|
...plan,
|
|
@@ -361,11 +361,11 @@ async function runDbQueryCommand(options) {
|
|
|
361
361
|
...out === void 0 ? {} : { file: _path.resolve.call(void 0, out) }
|
|
362
362
|
}
|
|
363
363
|
},
|
|
364
|
-
{ json: options.json ||
|
|
364
|
+
{ json: options.json || _chunkQSH5CHRIjs.shouldEmitJson.call(void 0, ) }
|
|
365
365
|
);
|
|
366
366
|
return 0;
|
|
367
367
|
}
|
|
368
|
-
const client = new (0,
|
|
368
|
+
const client = new (0, _chunkETUV6RRKjs.DeeplineClient)();
|
|
369
369
|
const result = await client.db.query(query);
|
|
370
370
|
renderDbQueryResult(result, query, {
|
|
371
371
|
format,
|
|
@@ -374,8 +374,8 @@ async function runDbQueryCommand(options) {
|
|
|
374
374
|
});
|
|
375
375
|
return 0;
|
|
376
376
|
} catch (error) {
|
|
377
|
-
if (error instanceof
|
|
378
|
-
|
|
377
|
+
if (error instanceof _chunkN6KIEYZVjs.CustomerDbQueryOutcomeUnknownError && (options.json || _chunkQSH5CHRIjs.shouldEmitJson.call(void 0, ))) {
|
|
378
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
379
379
|
{
|
|
380
380
|
ok: false,
|
|
381
381
|
error: {
|
|
@@ -423,8 +423,8 @@ function dbRepairPlainText(result) {
|
|
|
423
423
|
async function handleDbRepair(args) {
|
|
424
424
|
const providerIndex = args.indexOf("--provider");
|
|
425
425
|
const provider = providerIndex >= 0 ? _optionalChain([args, 'access', _9 => _9[providerIndex + 1], 'optionalAccess', _10 => _10.trim, 'call', _11 => _11()]) : void 0;
|
|
426
|
-
const jsonOutput =
|
|
427
|
-
const client = new (0,
|
|
426
|
+
const jsonOutput = _chunkQSH5CHRIjs.argsWantJson.call(void 0, args);
|
|
427
|
+
const client = new (0, _chunkETUV6RRKjs.DeeplineClient)();
|
|
428
428
|
let result;
|
|
429
429
|
try {
|
|
430
430
|
result = await client.repairIngestionStorage(
|
|
@@ -440,7 +440,7 @@ async function handleDbRepair(args) {
|
|
|
440
440
|
console.error(errorMessage2(error));
|
|
441
441
|
return 1;
|
|
442
442
|
}
|
|
443
|
-
|
|
443
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
444
444
|
{
|
|
445
445
|
command: "db repair",
|
|
446
446
|
status: result.status,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await 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 _chunkT35LCTC7js = require('./chunk-T35LCTC7.js');
|
|
4
3
|
|
|
5
4
|
|
|
6
5
|
|
|
6
|
+
var _chunkY5W5IIA4js = require('./chunk-Y5W5IIA4.js');
|
|
7
7
|
|
|
8
|
-
var _chunkX5V2QTDRjs = require('./chunk-X5V2QTDR.js');
|
|
9
8
|
|
|
9
|
+
var _chunk5HDB7XXTjs = require('./chunk-5HDB7XXT.js');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -14,39 +14,106 @@ var _chunkX5V2QTDRjs = require('./chunk-X5V2QTDR.js');
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
var _chunkA6ZTYKYFjs = require('./chunk-A6ZTYKYF.js');
|
|
18
20
|
require('./chunk-AID3OYVJ.js');
|
|
19
21
|
require('./chunk-QGKPTBRR.js');
|
|
20
22
|
require('./chunk-3KC45UVF.js');
|
|
21
23
|
require('./chunk-5JLQPVNX.js');
|
|
22
|
-
require('./chunk-
|
|
23
|
-
require('./chunk-
|
|
24
|
-
require('./chunk-GEJDBXXM.js');
|
|
24
|
+
require('./chunk-ZXFGA2VK.js');
|
|
25
|
+
require('./chunk-KHZ6WEVF.js');
|
|
25
26
|
require('./chunk-3VN4FTE3.js');
|
|
27
|
+
require('./chunk-GEJDBXXM.js');
|
|
26
28
|
require('./chunk-5O4B6AUN.js');
|
|
27
29
|
|
|
28
30
|
|
|
29
|
-
var
|
|
31
|
+
var _chunkETUV6RRKjs = require('./chunk-ETUV6RRK.js');
|
|
30
32
|
require('./chunk-S6R3OX7B.js');
|
|
31
33
|
require('./chunk-LA46MMTL.js');
|
|
32
|
-
require('./chunk-AYHLUHE5.js');
|
|
33
34
|
require('./chunk-QJBJZVG6.js');
|
|
35
|
+
require('./chunk-AYHLUHE5.js');
|
|
34
36
|
require('./chunk-WJYPBHTE.js');
|
|
35
37
|
|
|
36
38
|
|
|
37
|
-
var
|
|
38
|
-
require('./chunk-
|
|
39
|
+
var _chunkQSH5CHRIjs = require('./chunk-QSH5CHRI.js');
|
|
40
|
+
require('./chunk-N6KIEYZV.js');
|
|
39
41
|
require('./chunk-XNYIZMNQ.js');
|
|
40
42
|
|
|
41
43
|
|
|
42
44
|
var _chunk7P5AA3SNjs = require('./chunk-7P5AA3SN.js');
|
|
43
|
-
require('./chunk-
|
|
45
|
+
require('./chunk-7ZZSGV4A.js');
|
|
44
46
|
require('./chunk-OG64RBAC.js');
|
|
45
47
|
require('./chunk-COGTRVWW.js');
|
|
46
48
|
|
|
47
49
|
// src/cli/commands/describe.ts
|
|
48
50
|
var _fs = require('fs');
|
|
49
51
|
var _path = require('path');
|
|
52
|
+
|
|
53
|
+
// src/cli/tool-features.ts
|
|
54
|
+
var VIEWS = {
|
|
55
|
+
ai_gateway_model: async (value, _tool, { describeModel }) => {
|
|
56
|
+
if (!value)
|
|
57
|
+
throw new Error("Name a model: --feature model=<provider/model>");
|
|
58
|
+
const model = await describeModel(value);
|
|
59
|
+
const unlisted = model.modelMetadata ? [] : [
|
|
60
|
+
`Warning: ${value} is not in the live AI Gateway catalog; check the id at https://ai-gateway.vercel.sh/v1/models.`
|
|
61
|
+
];
|
|
62
|
+
return {
|
|
63
|
+
details: model,
|
|
64
|
+
lines: [
|
|
65
|
+
...unlisted,
|
|
66
|
+
..._chunkY5W5IIA4js.formatModelDescription.call(void 0, model).trimEnd().split("\n")
|
|
67
|
+
]
|
|
68
|
+
};
|
|
69
|
+
},
|
|
70
|
+
byok: async (_value, tool) => ({
|
|
71
|
+
details: _nullishCoalesce(tool.byok, () => ( {})),
|
|
72
|
+
lines: _chunkA6ZTYKYFjs.byokLines.call(void 0, _nullishCoalesce(tool.byok, () => ( {})))
|
|
73
|
+
})
|
|
74
|
+
};
|
|
75
|
+
var isFeatureView = (value) => typeof value === "string" && Object.hasOwn(VIEWS, value);
|
|
76
|
+
var asRecord = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : {};
|
|
77
|
+
function inputProperties(tool) {
|
|
78
|
+
const inputSchema = asRecord(tool.inputSchema);
|
|
79
|
+
const jsonSchema = asRecord(_nullishCoalesce(inputSchema.jsonSchema, () => ( inputSchema)));
|
|
80
|
+
return asRecord(jsonSchema.properties);
|
|
81
|
+
}
|
|
82
|
+
var firstSentence = (text) => typeof text === "string" ? _nullishCoalesce(text.split(/(?<=\.)\s/)[0], () => ( text)) : "";
|
|
83
|
+
function toolFeatures(tool) {
|
|
84
|
+
const inputs = Object.entries(inputProperties(tool)).flatMap(
|
|
85
|
+
([name, value]) => {
|
|
86
|
+
const schema = asRecord(value);
|
|
87
|
+
if (!isFeatureView(schema.feature)) return [];
|
|
88
|
+
return [
|
|
89
|
+
{
|
|
90
|
+
name,
|
|
91
|
+
summary: firstSentence(schema.description),
|
|
92
|
+
view: schema.feature,
|
|
93
|
+
...typeof schema.default === "string" ? { defaultValue: schema.default } : {}
|
|
94
|
+
}
|
|
95
|
+
];
|
|
96
|
+
}
|
|
97
|
+
);
|
|
98
|
+
const byok = _optionalChain([tool, 'access', _ => _.byok, 'optionalAccess', _2 => _2.supported]) === true ? [
|
|
99
|
+
{
|
|
100
|
+
name: "byok",
|
|
101
|
+
summary: "Run it on your own provider credentials.",
|
|
102
|
+
view: "byok"
|
|
103
|
+
}
|
|
104
|
+
] : [];
|
|
105
|
+
return [...inputs, ...byok];
|
|
106
|
+
}
|
|
107
|
+
function parseFeatureRequest(request) {
|
|
108
|
+
const [name = "", ...rest] = request.split("=");
|
|
109
|
+
const value = rest.join("=");
|
|
110
|
+
return value ? { name, value } : { name };
|
|
111
|
+
}
|
|
112
|
+
async function describeFeature(tool, feature, value, dependencies) {
|
|
113
|
+
return VIEWS[feature.view](_nullishCoalesce(value, () => ( feature.defaultValue)), tool, dependencies);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// src/cli/commands/describe.ts
|
|
50
117
|
var FILTER_OF = {
|
|
51
118
|
tool: "tools",
|
|
52
119
|
monitor_type: "monitors",
|
|
@@ -66,11 +133,11 @@ async function found(lookup) {
|
|
|
66
133
|
async function describeAnything(name, options, onMissing) {
|
|
67
134
|
const maintainedOnly = options.prebuilt === true || options.tool === true;
|
|
68
135
|
const wants = (filter) => (!options.kinds || options.kinds.includes(filter)) && !(maintainedOnly && filter === "custom");
|
|
69
|
-
const client = new (0,
|
|
136
|
+
const client = new (0, _chunkETUV6RRKjs.DeeplineClient)();
|
|
70
137
|
const play = async (reference) => {
|
|
71
138
|
const record2 = await client.describePlay(reference);
|
|
72
139
|
return {
|
|
73
|
-
described:
|
|
140
|
+
described: _chunk5HDB7XXTjs.describedPlay.call(void 0, record2),
|
|
74
141
|
record: { ...record2 },
|
|
75
142
|
schemas: {
|
|
76
143
|
inputSchema: _nullishCoalesce(record2.inputSchema, () => ( null)),
|
|
@@ -81,15 +148,23 @@ async function describeAnything(name, options, onMissing) {
|
|
|
81
148
|
const tool = async () => {
|
|
82
149
|
const record2 = await _asyncNullishCoalesce(options.fetchedTool, async () => ( await client.getTool(name)));
|
|
83
150
|
const { byok } = record2;
|
|
151
|
+
const features = toolFeatures(record2);
|
|
84
152
|
return {
|
|
85
153
|
described: {
|
|
86
|
-
...
|
|
87
|
-
// Shown when
|
|
88
|
-
//
|
|
89
|
-
...
|
|
154
|
+
..._chunkY5W5IIA4js.describedTool.call(void 0, record2, name),
|
|
155
|
+
// Shown when the tool runs only on your own credentials; otherwise
|
|
156
|
+
// it is a feature, described with --feature byok.
|
|
157
|
+
..._optionalChain([byok, 'optionalAccess', _3 => _3.required]) === true ? { byok } : {},
|
|
158
|
+
...features.length ? { features: features.map(({ view: _view, ...feature }) => feature) } : {}
|
|
90
159
|
},
|
|
91
|
-
record:
|
|
92
|
-
schemas:
|
|
160
|
+
record: _chunkY5W5IIA4js.toolMetadataJsonForDescribe.call(void 0, record2, name),
|
|
161
|
+
schemas: _chunkY5W5IIA4js.publicToolSchemas.call(void 0, record2),
|
|
162
|
+
feature: (featureName, value) => {
|
|
163
|
+
const feature = features.find(({ name: name2 }) => name2 === featureName);
|
|
164
|
+
return feature ? describeFeature(record2, feature, value, {
|
|
165
|
+
describeModel: (model) => client.describeModel(model)
|
|
166
|
+
}) : null;
|
|
167
|
+
}
|
|
93
168
|
};
|
|
94
169
|
};
|
|
95
170
|
const sources = name.includes("/") ? [{ kinds: ["prebuilts", "custom"], find: () => play(name) }] : [
|
|
@@ -120,6 +195,33 @@ async function describeAnything(name, options, onMissing) {
|
|
|
120
195
|
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;
|
|
121
196
|
const verbose = options.verbose === true;
|
|
122
197
|
const json = options.json === true;
|
|
198
|
+
if (options.feature !== void 0) {
|
|
199
|
+
const { name: featureName, value } = parseFeatureRequest(options.feature);
|
|
200
|
+
const pending = _nullishCoalesce(_optionalChain([chosen, 'access', _4 => _4.feature, 'optionalCall', _5 => _5(featureName, value)]), () => ( null));
|
|
201
|
+
const features = _nullishCoalesce(described.features, () => ( []));
|
|
202
|
+
if (!pending) {
|
|
203
|
+
console.error(
|
|
204
|
+
features.length ? `${described.id} has no feature "${featureName}". Its features: ${features.map(({ name: name2 }) => name2).join(", ")}.` : `${described.id} has no features to describe.`
|
|
205
|
+
);
|
|
206
|
+
return 2;
|
|
207
|
+
}
|
|
208
|
+
const shownValue = _nullishCoalesce(value, () => ( _optionalChain([features, 'access', _6 => _6.find, 'call', _7 => _7(({ name: name2 }) => name2 === featureName), 'optionalAccess', _8 => _8.defaultValue])));
|
|
209
|
+
const { details, lines } = await pending;
|
|
210
|
+
return deliver(
|
|
211
|
+
{
|
|
212
|
+
kind: described.kind,
|
|
213
|
+
id: described.id,
|
|
214
|
+
feature: featureName,
|
|
215
|
+
...shownValue ? { value: shownValue } : {},
|
|
216
|
+
details
|
|
217
|
+
},
|
|
218
|
+
[
|
|
219
|
+
`${described.id} --feature ${featureName}${shownValue ? `=${shownValue}` : ""}`,
|
|
220
|
+
...lines
|
|
221
|
+
],
|
|
222
|
+
{ json, out: options.out }
|
|
223
|
+
);
|
|
224
|
+
}
|
|
123
225
|
const fields = (_nullishCoalesce(options.fields, () => ( ""))).split(",").map((name2) => name2.trim()).filter(Boolean);
|
|
124
226
|
const named = options.cliExample === true || options.playExample === true;
|
|
125
227
|
const shown = options.example !== false;
|
|
@@ -139,7 +241,7 @@ async function describeAnything(name, options, onMissing) {
|
|
|
139
241
|
},
|
|
140
242
|
lines: [
|
|
141
243
|
`${described.id} [${described.kind.replace("_", " ")}]`,
|
|
142
|
-
...
|
|
244
|
+
..._chunkA6ZTYKYFjs.schemaLines.call(void 0, described, {
|
|
143
245
|
full: true,
|
|
144
246
|
secondary: true,
|
|
145
247
|
...fields.length ? { fields } : {}
|
|
@@ -148,16 +250,16 @@ async function describeAnything(name, options, onMissing) {
|
|
|
148
250
|
} : {
|
|
149
251
|
envelope: {
|
|
150
252
|
...summary,
|
|
151
|
-
inputs: inputs.map(
|
|
152
|
-
outputs: outputs.map(
|
|
153
|
-
...described.rowInputs ? { rowInputs: described.rowInputs.map(
|
|
154
|
-
...described.rowOutputs ? { rowOutputs: described.rowOutputs.map(
|
|
155
|
-
runExamples:
|
|
253
|
+
inputs: inputs.map(_chunkA6ZTYKYFjs.topLevelField),
|
|
254
|
+
outputs: outputs.map(_chunkA6ZTYKYFjs.topLevelField),
|
|
255
|
+
...described.rowInputs ? { rowInputs: described.rowInputs.map(_chunkA6ZTYKYFjs.topLevelField) } : {},
|
|
256
|
+
...described.rowOutputs ? { rowOutputs: described.rowOutputs.map(_chunkA6ZTYKYFjs.topLevelField) } : {},
|
|
257
|
+
runExamples: _chunkA6ZTYKYFjs.examples.call(void 0, described, { verbose }),
|
|
156
258
|
...shadows ? { shadows, note } : {}
|
|
157
259
|
},
|
|
158
260
|
lines: [
|
|
159
261
|
...note ? [`Note: ${note}`, ""] : [],
|
|
160
|
-
...
|
|
262
|
+
..._chunkA6ZTYKYFjs.describedLines.call(void 0, described, {
|
|
161
263
|
cli: shown && (!named || options.cliExample === true),
|
|
162
264
|
play: shown && (!named || options.playExample === true),
|
|
163
265
|
explain: named,
|
|
@@ -173,32 +275,35 @@ async function describeAnything(name, options, onMissing) {
|
|
|
173
275
|
// its value stands, so callers of the older commands read what they did.
|
|
174
276
|
{ ...view.envelope, ...record }
|
|
175
277
|
) : {
|
|
176
|
-
...
|
|
278
|
+
..._chunkA6ZTYKYFjs.describedJson.call(void 0, described, {
|
|
177
279
|
secondary: verbose || fields.length > 0,
|
|
178
280
|
verbose
|
|
179
281
|
}),
|
|
180
282
|
...shadows ? { shadows, note } : {}
|
|
181
283
|
};
|
|
182
|
-
|
|
284
|
+
return deliver(envelope, view.lines, { json, out: options.out });
|
|
285
|
+
}
|
|
286
|
+
function deliver(envelope, lines, { json, out }) {
|
|
287
|
+
const text = `${lines.join("\n")}
|
|
183
288
|
`;
|
|
184
|
-
if (
|
|
185
|
-
const path = _path.resolve.call(void 0,
|
|
289
|
+
if (out) {
|
|
290
|
+
const path = _path.resolve.call(void 0, out);
|
|
186
291
|
const content = json ? `${JSON.stringify(envelope, null, 2)}
|
|
187
292
|
` : text;
|
|
188
293
|
_fs.writeFileSync.call(void 0, path, content);
|
|
189
294
|
const bytes = Buffer.byteLength(content);
|
|
190
|
-
|
|
295
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0,
|
|
191
296
|
{ path, bytes },
|
|
192
297
|
{ json, text: `Wrote ${path} (${bytes} bytes)
|
|
193
298
|
` }
|
|
194
299
|
);
|
|
195
300
|
return 0;
|
|
196
301
|
}
|
|
197
|
-
|
|
302
|
+
_chunkQSH5CHRIjs.printCommandEnvelope.call(void 0, envelope, { json, text });
|
|
198
303
|
return 0;
|
|
199
304
|
}
|
|
200
305
|
function registerDescribeCommand(program) {
|
|
201
|
-
|
|
306
|
+
_chunkA6ZTYKYFjs.addDescribeOptions.call(void 0, program.command("describe <name>")).description(
|
|
202
307
|
"Describe anything search returns: a tool, monitor type, or play."
|
|
203
308
|
).addHelpText(
|
|
204
309
|
"after",
|
|
@@ -225,12 +330,17 @@ Examples in the output:
|
|
|
225
330
|
--play-example only the in-play example, with how inputs and outputs work
|
|
226
331
|
--no-example no examples
|
|
227
332
|
|
|
333
|
+
Features:
|
|
334
|
+
A tool lists its features: parts with their own description, such as the
|
|
335
|
+
model an AI tool runs. --feature <name> describes one at its default value,
|
|
336
|
+
--feature <name>=<value> at another, e.g. --feature model=openai/gpt-5.6-luna.
|
|
337
|
+
|
|
228
338
|
Schema size and format:
|
|
229
339
|
Secondary fields (diagnostics, attempt logs, echoes of input) are left out
|
|
230
340
|
by default; the output names them, and --verbose shows them.
|
|
231
341
|
--fields email,miss_reason shows only the fields you name, plus every
|
|
232
342
|
required input, and names the rest. Use it when you know what you need.
|
|
233
|
-
A schema over ${
|
|
343
|
+
A schema over ${_chunkA6ZTYKYFjs.SCHEMA_LINE_LIMIT} lines is folded: deeper objects show only their field
|
|
234
344
|
names. A shape used more than once is printed once under Types.
|
|
235
345
|
--full-schema the normal output, with the schema not folded
|
|
236
346
|
--schema-only only the schema, not folded, and nothing else
|