deepline 0.3.427 → 0.3.428
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/sdk/src/types.ts +14 -1
- package/dist/bundling-sources/shared_libs/observability/scheduled-jobs.json +18 -0
- package/dist/cli/auth-JNCOOTY4.js +40 -0
- package/dist/cli/{auth-4X5ZKTJJ.mjs → auth-ZABHDJT3.mjs} +4 -4
- package/dist/cli/{billing-V3OQHRKV.mjs → billing-AKHWV3MV.mjs} +4 -4
- package/dist/cli/{billing-OXG3Q7AS.js → billing-FUG6Q7SL.js} +73 -73
- package/dist/cli/{chunk-JEFT6QTT.mjs → chunk-2LLDHR5C.mjs} +1 -1
- package/dist/cli/{chunk-CH7B3T5E.mjs → chunk-3J7FZHJA.mjs} +1 -1
- package/dist/cli/{chunk-6KFFNYO6.js → chunk-3YUXZMTE.js} +8 -8
- package/dist/cli/{chunk-YTWDMQLC.js → chunk-4QNMO7DK.js} +2 -2
- package/dist/cli/{chunk-3O5BPCWB.mjs → chunk-5FJG4APE.mjs} +5 -5
- package/dist/cli/{chunk-H64EDTZZ.mjs → chunk-6AX4NTKV.mjs} +2 -2
- package/dist/cli/{chunk-TXCYMXG7.js → chunk-6E4IYB3I.js} +6 -6
- package/dist/cli/{chunk-XAUHRRUG.js → chunk-6S6WXN63.js} +1 -1
- package/dist/cli/{chunk-4NZAT6VQ.js → chunk-ACGNIHLS.js} +20 -20
- package/dist/cli/{chunk-MJ2WV3LS.mjs → chunk-D33GOTFE.mjs} +4 -4
- package/dist/cli/{chunk-BVJFHPB5.js → chunk-D6UO4WN3.js} +79 -79
- package/dist/cli/{chunk-U4MH5KFQ.js → chunk-DLCQIK5H.js} +10 -10
- package/dist/cli/{chunk-GYZDLABX.js → chunk-EPHQBWED.js} +26 -26
- package/dist/cli/{chunk-7SUNA75F.js → chunk-EU2VT52L.js} +52 -52
- package/dist/cli/{chunk-4GJT6BAH.js → chunk-F5HARRY4.js} +35 -35
- package/dist/cli/{chunk-3UGHZGXU.mjs → chunk-FHKQTCC4.mjs} +1 -1
- package/dist/cli/{chunk-MWL44NXV.mjs → chunk-IQUHUR72.mjs} +1 -1
- package/dist/cli/{chunk-O3ZWP4KL.js → chunk-JFXX4SQV.js} +12 -9
- package/dist/cli/{chunk-INFLI36H.js → chunk-K4EHBVYV.js} +13 -6
- package/dist/cli/{chunk-3H4CUTG5.mjs → chunk-MBHTTATW.mjs} +2 -2
- package/dist/cli/{chunk-XIZCVFTO.js → chunk-MCGTLMDV.js} +2 -2
- package/dist/cli/{chunk-5HFIHG2V.mjs → chunk-NNZFHUV3.mjs} +3 -3
- package/dist/cli/{chunk-MALRKVEP.js → chunk-PA6TQR75.js} +4 -4
- package/dist/cli/{chunk-POIETGSV.mjs → chunk-PQY6VEEL.mjs} +2 -2
- package/dist/cli/{chunk-PLN4F3DW.js → chunk-QATVL6X3.js} +16 -16
- package/dist/cli/{chunk-EER67G2B.mjs → chunk-R4MGS7YD.mjs} +13 -6
- package/dist/cli/{chunk-OZ7M22PE.mjs → chunk-S5M6ZEKW.mjs} +3 -3
- package/dist/cli/{chunk-X4FVKKU2.mjs → chunk-SAY6IYJA.mjs} +8 -8
- package/dist/cli/{chunk-CYF7Y2K3.mjs → chunk-TZZ73X6X.mjs} +2 -2
- package/dist/cli/{chunk-ZNBMA4ZC.js → chunk-UJ3HL3W2.js} +50 -50
- package/dist/cli/{chunk-STV2UBYA.mjs → chunk-XM52HE7B.mjs} +7 -4
- package/dist/cli/{chunk-WWOUGKO6.js → chunk-XQY5BDGY.js} +6 -6
- package/dist/cli/{chunk-MTI24NKI.mjs → chunk-Z7URKNIZ.mjs} +1 -1
- package/dist/cli/{chunk-JD5WFLF6.mjs → chunk-ZRZC6WWR.mjs} +1 -1
- package/dist/cli/command-docs.js +2 -2
- package/dist/cli/command-docs.mjs +1 -1
- package/dist/cli/{csv-UP7VZ5XY.js → csv-A5GRNUFM.js} +12 -12
- package/dist/cli/{csv-MTZFRU7E.mjs → csv-IMRHD3VV.mjs} +3 -3
- package/dist/cli/{db-UYDMCKKN.js → db-6W2XVIWB.js} +25 -25
- package/dist/cli/{db-N67ZA3XK.mjs → db-XKGAEZPP.mjs} +4 -4
- package/dist/cli/{describe-IHJTJI6Y.mjs → describe-226ZOVOL.mjs} +12 -12
- package/dist/cli/{describe-ANKULJMG.js → describe-QVHO24JP.js} +16 -16
- package/dist/cli/describe-core.d.mts +1 -1
- package/dist/cli/describe-core.d.ts +1 -1
- package/dist/cli/{executions-5AV5LB25.mjs → executions-35YPXQ3R.mjs} +4 -4
- package/dist/cli/{executions-LYI4OYNS.js → executions-6JTC3A4Z.js} +6 -6
- package/dist/cli/{feedback-WTBJTJNZ.mjs → feedback-M6WLA3CD.mjs} +3 -3
- package/dist/cli/{feedback-V6AEZY7B.js → feedback-UP2MK5EU.js} +7 -7
- package/dist/cli/{git-TI5FHJAN.mjs → git-7EPDO7IK.mjs} +4 -4
- package/dist/cli/git-BZOIQ4FW.js +24 -0
- package/dist/cli/index.js +135 -135
- package/dist/cli/index.mjs +37 -37
- package/dist/cli/{legacy-noops-HZSXECAV.js → legacy-noops-CSHWJ5PI.js} +7 -7
- package/dist/cli/{legacy-noops-55WIJYDZ.mjs → legacy-noops-PUN3XKGB.mjs} +4 -4
- package/dist/cli/{monitors-LCM5INTO.js → monitors-I4LEOVPV.js} +84 -84
- package/dist/cli/{monitors-O233NFG3.mjs → monitors-OADIHUZT.mjs} +4 -4
- package/dist/cli/{org-YY33PBZT.js → org-EVRPU7YU.js} +64 -64
- package/dist/cli/{org-RXBSIFKK.mjs → org-XCQD6GYA.mjs} +4 -4
- package/dist/cli/{play-SKXVHW3X.js → play-AOSMIPDJ.js} +298 -298
- package/dist/cli/{play-RPVYEAPU.mjs → play-FFGDT6V3.mjs} +11 -11
- package/dist/cli/{providers-VEAXU2RJ.js → providers-LZ7HI3ZS.js} +7 -7
- package/dist/cli/{providers-LD3KKFJ4.mjs → providers-NMK7TKSJ.mjs} +4 -4
- package/dist/cli/{quickstart-R6AHSDG5.mjs → quickstart-4DGYWMTT.mjs} +3 -3
- package/dist/cli/{quickstart-RXWFQYS7.js → quickstart-IKNDABRN.js} +5 -5
- package/dist/cli/{search-C5OKXPTC.mjs → search-4H4Y4HWQ.mjs} +5 -5
- package/dist/cli/search-DFZO2D3W.js +30 -0
- package/dist/cli/{secrets-6RB3VV44.mjs → secrets-BFOXOQRA.mjs} +4 -4
- package/dist/cli/{secrets-4H6ZJX73.js → secrets-VUNWQ6EH.js} +13 -13
- package/dist/cli/{sessions-6L3QV7NH.js → sessions-LEQFHXIK.js} +5 -5
- package/dist/cli/{sessions-3VBCFW2E.mjs → sessions-UOE3SVYP.mjs} +4 -4
- package/dist/cli/{settings-QFBAOXNP.js → settings-OS24T5VT.js} +75 -75
- package/dist/cli/{settings-MSLQGTMD.mjs → settings-QHEY5BCS.mjs} +8 -8
- package/dist/cli/{setup-5STMP55W.js → setup-LC3QKIC7.js} +42 -42
- package/dist/cli/{setup-2DIZBEKV.mjs → setup-R7LZOV43.mjs} +7 -7
- package/dist/cli/skills-CX45Z2JV.js +29 -0
- package/dist/cli/{skills-OK6IZA5B.mjs → skills-YRGVE2TH.mjs} +5 -5
- package/dist/cli/tools-2X5ZZDT3.js +44 -0
- package/dist/cli/{tools-KNTK3ORX.mjs → tools-FJ4O7OFR.mjs} +12 -12
- package/dist/cli/{update-C36Q2GCK.mjs → update-ISWK43K2.mjs} +7 -7
- package/dist/cli/update-OSTL25HV.js +31 -0
- package/dist/cli/{workflow-TF5JGNEE.mjs → workflow-N4CTCDSS.mjs} +5 -5
- package/dist/cli/{workflow-5QUJOFPN.js → workflow-U2U5NA4B.js} +15 -15
- package/dist/{client-DH-fmT69.d.ts → client---03YXeB.d.ts} +9 -0
- package/dist/{client-BcfFWD4Z.d.mts → client-ChLTwy9x.d.mts} +9 -0
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +6 -6
- package/dist/index.mjs +3 -3
- package/dist/install-integrity.json +82 -82
- 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 +1 -1
- package/dist/cli/auth-MK7F2EYA.js +0 -40
- package/dist/cli/git-JGXSEUCH.js +0 -24
- package/dist/cli/search-QETWAC7F.js +0 -30
- package/dist/cli/skills-LNQA7Y64.js +0 -29
- package/dist/cli/tools-ZSJRG6TM.js +0 -44
- package/dist/cli/update-JVAQVWYF.js +0 -31
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _chunkEU2VT52Ljs = require('./chunk-EU2VT52L.js');
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunkXQY5BDGYjs = require('./chunk-XQY5BDGY.js');
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
@@ -22,7 +22,7 @@ var _chunkWWOUGKO6js = require('./chunk-WWOUGKO6.js');
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var _chunkPA6TQR75js = require('./chunk-PA6TQR75.js');
|
|
26
26
|
|
|
27
27
|
// src/cli/commands/skills.ts
|
|
28
28
|
var _child_process = require('child_process');
|
|
@@ -75,7 +75,7 @@ function inferActiveSkillsScope(entrypoint = _nullishCoalesce(process.argv[1], (
|
|
|
75
75
|
return /[\\/]\.deepline[\\/]runtime[\\/]/.test(entrypoint) ? "local" : "global";
|
|
76
76
|
}
|
|
77
77
|
function resolveLocalRoot() {
|
|
78
|
-
const target =
|
|
78
|
+
const target = _chunkPA6TQR75js.resolveProjectPinTarget.call(void 0, );
|
|
79
79
|
if (!target.ok) {
|
|
80
80
|
throw new Error(
|
|
81
81
|
`Cowork project folder is ambiguous. Candidate folders: ${target.candidates.join(
|
|
@@ -86,7 +86,7 @@ function resolveLocalRoot() {
|
|
|
86
86
|
return target.dir;
|
|
87
87
|
}
|
|
88
88
|
function detectSkillsAgents(input) {
|
|
89
|
-
const runtime = _nullishCoalesce(input.runtime, () => (
|
|
89
|
+
const runtime = _nullishCoalesce(input.runtime, () => ( _chunkPA6TQR75js.detectAgentRuntime.call(void 0, )));
|
|
90
90
|
const knownAgent = RUNTIME_TO_SKILLS_AGENT[runtime];
|
|
91
91
|
if (knownAgent) return [knownAgent];
|
|
92
92
|
const roots = [
|
|
@@ -101,11 +101,11 @@ function detectSkillsAgents(input) {
|
|
|
101
101
|
return detected.length > 0 ? detected : ["*"];
|
|
102
102
|
}
|
|
103
103
|
function skillsStatePathForScope(baseUrl, scope, root) {
|
|
104
|
-
return scope === "local" && root ? _path.join.call(void 0, root, ".deepline", "setup", "skills.json") : _path.join.call(void 0,
|
|
104
|
+
return scope === "local" && root ? _path.join.call(void 0, root, ".deepline", "setup", "skills.json") : _path.join.call(void 0, _chunkPA6TQR75js.sdkCliStateDirPath.call(void 0, baseUrl), "skills-install.json");
|
|
105
105
|
}
|
|
106
106
|
function buildSkillsPlan(input) {
|
|
107
107
|
const scopeArgs = input.scope === "global" ? ["--global"] : [];
|
|
108
|
-
const legacyNames = [...
|
|
108
|
+
const legacyNames = [..._chunkEU2VT52Ljs.LEGACY_SKILL_NAMES_TO_REMOVE].sort(
|
|
109
109
|
(a, b) => a.localeCompare(b)
|
|
110
110
|
);
|
|
111
111
|
return {
|
|
@@ -119,7 +119,7 @@ function buildSkillsPlan(input) {
|
|
|
119
119
|
args: [
|
|
120
120
|
"exec",
|
|
121
121
|
"--yes",
|
|
122
|
-
`--package=${
|
|
122
|
+
`--package=${_chunkEU2VT52Ljs.SKILLS_NPX_PACKAGE}`,
|
|
123
123
|
"--",
|
|
124
124
|
"skills",
|
|
125
125
|
"remove",
|
|
@@ -135,11 +135,11 @@ function buildSkillsPlan(input) {
|
|
|
135
135
|
args: [
|
|
136
136
|
"exec",
|
|
137
137
|
"--yes",
|
|
138
|
-
`--package=${
|
|
138
|
+
`--package=${_chunkEU2VT52Ljs.SKILLS_NPX_PACKAGE}`,
|
|
139
139
|
"--",
|
|
140
140
|
"skills",
|
|
141
141
|
"add",
|
|
142
|
-
|
|
142
|
+
_chunkEU2VT52Ljs.skillsSourceUrl.call(void 0, input.baseUrl),
|
|
143
143
|
"--agent",
|
|
144
144
|
...input.agents,
|
|
145
145
|
...scopeArgs,
|
|
@@ -176,7 +176,7 @@ function readSkillsInstallState(path) {
|
|
|
176
176
|
}
|
|
177
177
|
function runProcess(command, args, cwd) {
|
|
178
178
|
return new Promise((resolve, reject) => {
|
|
179
|
-
const plan =
|
|
179
|
+
const plan = _chunkEU2VT52Ljs.resolveShellSpawn.call(void 0,
|
|
180
180
|
command,
|
|
181
181
|
args,
|
|
182
182
|
process.platform,
|
|
@@ -198,7 +198,7 @@ function runProcess(command, args, cwd) {
|
|
|
198
198
|
child.kill("SIGTERM");
|
|
199
199
|
reject(
|
|
200
200
|
new Error(
|
|
201
|
-
`${
|
|
201
|
+
`${_chunkEU2VT52Ljs.SKILLS_NPX_PACKAGE} timed out after ${SKILLS_PROCESS_TIMEOUT_MS}ms.`
|
|
202
202
|
)
|
|
203
203
|
);
|
|
204
204
|
}, SKILLS_PROCESS_TIMEOUT_MS);
|
|
@@ -209,7 +209,7 @@ function runProcess(command, args, cwd) {
|
|
|
209
209
|
child.once("close", (code) => {
|
|
210
210
|
clearTimeout(timeout);
|
|
211
211
|
if (code && stderr.trim()) {
|
|
212
|
-
process.stderr.write(`${
|
|
212
|
+
process.stderr.write(`${_chunkEU2VT52Ljs.SKILLS_NPX_PACKAGE} exited ${code}.
|
|
213
213
|
`);
|
|
214
214
|
}
|
|
215
215
|
resolve(_nullishCoalesce(code, () => ( 1)));
|
|
@@ -223,7 +223,7 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
223
223
|
scope = normalizeScope(options.scope);
|
|
224
224
|
root = scope === "local" ? resolveLocalRoot() : null;
|
|
225
225
|
} catch (error) {
|
|
226
|
-
|
|
226
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
227
227
|
{
|
|
228
228
|
ok: false,
|
|
229
229
|
status: "failed",
|
|
@@ -235,22 +235,22 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
235
235
|
);
|
|
236
236
|
return 2;
|
|
237
237
|
}
|
|
238
|
-
const baseUrl =
|
|
238
|
+
const baseUrl = _chunkPA6TQR75js.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, "");
|
|
239
239
|
const catalog = {
|
|
240
|
-
skillNames: [...
|
|
241
|
-
version:
|
|
240
|
+
skillNames: [..._chunkEU2VT52Ljs.DEFAULT_SDK_SKILL_NAMES],
|
|
241
|
+
version: _chunkPA6TQR75js.SDK_VERSION
|
|
242
242
|
};
|
|
243
243
|
const agents = options.agent ? [options.agent] : detectSkillsAgents({ scope, root });
|
|
244
244
|
const plan = buildSkillsPlan({ baseUrl, scope, root, agents, ...catalog });
|
|
245
245
|
if (options.dryRun) {
|
|
246
|
-
|
|
246
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
247
247
|
{ ok: true, status: "planned", dryRun: true, ...plan },
|
|
248
248
|
{ json: options.json }
|
|
249
249
|
);
|
|
250
250
|
return 0;
|
|
251
251
|
}
|
|
252
|
-
if (isSkillsPlanCurrent(plan, readSkillsInstallState(plan.statePath)) && !
|
|
253
|
-
|
|
252
|
+
if (isSkillsPlanCurrent(plan, readSkillsInstallState(plan.statePath)) && !_chunkEU2VT52Ljs.hasFailedAutomaticSkillsSync.call(void 0, baseUrl, agents)) {
|
|
253
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
254
254
|
{
|
|
255
255
|
ok: true,
|
|
256
256
|
status: "current",
|
|
@@ -282,10 +282,10 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
282
282
|
}
|
|
283
283
|
if (scope === "local" && root) {
|
|
284
284
|
const managedNames = [
|
|
285
|
-
.../* @__PURE__ */ new Set([...plan.skillNames, ...
|
|
285
|
+
.../* @__PURE__ */ new Set([...plan.skillNames, ..._chunkEU2VT52Ljs.LEGACY_SKILL_NAMES_TO_REMOVE])
|
|
286
286
|
];
|
|
287
287
|
const agentRoots = workspaceSkillRootsForAgents(plan.agents);
|
|
288
|
-
|
|
288
|
+
_chunkPA6TQR75js.ensureProjectPrivatePathsIgnored.call(void 0, root, [
|
|
289
289
|
".deepline/",
|
|
290
290
|
...agentRoots.flatMap(
|
|
291
291
|
(agentRoot) => managedNames.map((name) => `${agentRoot}/skills/${name}/`)
|
|
@@ -294,7 +294,7 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
294
294
|
}
|
|
295
295
|
let lease;
|
|
296
296
|
try {
|
|
297
|
-
lease = scope === "global" ? await
|
|
297
|
+
lease = scope === "global" ? await _chunkEU2VT52Ljs.acquireSkillsInstallLease.call(void 0, baseUrl, agents, plan.version, {
|
|
298
298
|
waitMs: _nullishCoalesce(dependencies.installLeaseWaitMs, () => ( SKILLS_INSTALL_LEASE_WAIT_MS)),
|
|
299
299
|
onWait: () => process.stderr.write(
|
|
300
300
|
"Waiting for a background Deepline skills refresh to finish...\n"
|
|
@@ -302,8 +302,8 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
302
302
|
}) : { release: () => {
|
|
303
303
|
} };
|
|
304
304
|
} catch (error) {
|
|
305
|
-
if (!(error instanceof
|
|
306
|
-
|
|
305
|
+
if (!(error instanceof _chunkEU2VT52Ljs.SkillsStateUnavailableError)) throw error;
|
|
306
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
307
307
|
{
|
|
308
308
|
ok: false,
|
|
309
309
|
status: "failed",
|
|
@@ -319,7 +319,7 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
319
319
|
return 5;
|
|
320
320
|
}
|
|
321
321
|
if (!lease) {
|
|
322
|
-
|
|
322
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
323
323
|
{
|
|
324
324
|
ok: false,
|
|
325
325
|
status: "failed",
|
|
@@ -328,7 +328,7 @@ async function runSkillsCommand(options, dependencies = {}) {
|
|
|
328
328
|
scope,
|
|
329
329
|
agents,
|
|
330
330
|
message: "A background Deepline skills refresh is still running for these agents.",
|
|
331
|
-
next: `Retry in a moment: deepline skills --scope ${scope}. If no refresh is running, remove ${
|
|
331
|
+
next: `Retry in a moment: deepline skills --scope ${scope}. If no refresh is running, remove ${_chunkEU2VT52Ljs.skillsInstallLeasePath.call(void 0, baseUrl, agents)}`
|
|
332
332
|
},
|
|
333
333
|
{ json: options.json }
|
|
334
334
|
);
|
|
@@ -365,7 +365,7 @@ async function runSkillsInstallWithLease(input) {
|
|
|
365
365
|
throw new Error("Could not install the current Deepline skills.");
|
|
366
366
|
}
|
|
367
367
|
} catch (error) {
|
|
368
|
-
|
|
368
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
369
369
|
{
|
|
370
370
|
ok: false,
|
|
371
371
|
status: "failed",
|
|
@@ -404,7 +404,7 @@ async function runSkillsInstallWithLease(input) {
|
|
|
404
404
|
{
|
|
405
405
|
schemaVersion: 1,
|
|
406
406
|
installedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
407
|
-
cliVersion:
|
|
407
|
+
cliVersion: _chunkPA6TQR75js.SDK_VERSION,
|
|
408
408
|
scope,
|
|
409
409
|
agents,
|
|
410
410
|
skillsVersion: plan.version,
|
|
@@ -417,9 +417,9 @@ async function runSkillsInstallWithLease(input) {
|
|
|
417
417
|
"utf8"
|
|
418
418
|
);
|
|
419
419
|
if (scope === "global") {
|
|
420
|
-
|
|
420
|
+
_chunkEU2VT52Ljs.clearFailedAutomaticSkillsSync.call(void 0, baseUrl, agents);
|
|
421
421
|
}
|
|
422
|
-
|
|
422
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
423
423
|
{
|
|
424
424
|
ok: true,
|
|
425
425
|
status: "complete",
|
|
@@ -450,7 +450,7 @@ function registerSkillsCommand(program) {
|
|
|
450
450
|
"after",
|
|
451
451
|
`
|
|
452
452
|
Notes:
|
|
453
|
-
This command reinstalls current Deepline-managed skills using ${
|
|
453
|
+
This command reinstalls current Deepline-managed skills using ${_chunkEU2VT52Ljs.SKILLS_NPX_PACKAGE},
|
|
454
454
|
then removes legacy Deepline skill names. Local scope writes into the resolved
|
|
455
455
|
persistent project.
|
|
456
456
|
|
|
@@ -462,13 +462,13 @@ Examples:
|
|
|
462
462
|
).action(async (options) => {
|
|
463
463
|
process.exitCode = await runSkillsCommand(options);
|
|
464
464
|
});
|
|
465
|
-
program.command(
|
|
465
|
+
program.command(_chunkEU2VT52Ljs.SKILLS_AUTO_SYNC_COMMAND, { hidden: true }).description("Refresh Deepline agent skills in the background.").option(
|
|
466
466
|
"--claim <token>",
|
|
467
467
|
"Owner token of the leases this child was started for."
|
|
468
468
|
).action(async (options) => {
|
|
469
469
|
const claim = _optionalChain([options, 'access', _ => _.claim, 'optionalAccess', _2 => _2.trim, 'call', _3 => _3()]);
|
|
470
470
|
if (!claim) {
|
|
471
|
-
|
|
471
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
472
472
|
{
|
|
473
473
|
ok: false,
|
|
474
474
|
status: "failed",
|
|
@@ -481,7 +481,7 @@ Examples:
|
|
|
481
481
|
process.exitCode = 2;
|
|
482
482
|
return;
|
|
483
483
|
}
|
|
484
|
-
await
|
|
484
|
+
await _chunkEU2VT52Ljs.syncSdkSkillsIfNeeded.call(void 0, _chunkPA6TQR75js.autoDetectBaseUrl.call(void 0, ).replace(/\/$/, ""), {
|
|
485
485
|
mode: "inline",
|
|
486
486
|
notices: "defer",
|
|
487
487
|
claim
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
var _chunkZM2YPJQJjs = require('./chunk-ZM2YPJQJ.js');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkDLCQIK5Hjs = require('./chunk-DLCQIK5H.js');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkXQY5BDGYjs = require('./chunk-XQY5BDGY.js');
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _chunkPA6TQR75js = require('./chunk-PA6TQR75.js');
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
|
|
@@ -5713,7 +5713,7 @@ var _fs = require('fs');
|
|
|
5713
5713
|
var _path = require('path');
|
|
5714
5714
|
var SEARCH_REF_TTL_MS = 15 * 6e4;
|
|
5715
5715
|
function lastSearchPath() {
|
|
5716
|
-
return _path.join.call(void 0,
|
|
5716
|
+
return _path.join.call(void 0, _chunkPA6TQR75js.sdkCliStateDirPath.call(void 0, _chunkPA6TQR75js.resolveConfig.call(void 0, ).baseUrl), "last-search.json");
|
|
5717
5717
|
}
|
|
5718
5718
|
function rememberSearchRef(searchRef) {
|
|
5719
5719
|
try {
|
|
@@ -5772,7 +5772,10 @@ function pricingDisplay(item, noteWidth) {
|
|
|
5772
5772
|
cost: `${observedCost.avgCredits}/${observedCost.unit} (observed)`,
|
|
5773
5773
|
// Unclipped: the sample size at the end is what qualifies the figure.
|
|
5774
5774
|
notes: [`Cost: ${observedCost.displayText}`]
|
|
5775
|
-
} : {
|
|
5775
|
+
} : {
|
|
5776
|
+
cost: observedCost.typical ? `${observedCost.typical.lowCredits}\u2013${observedCost.typical.highCredits}/${observedCost.typical.unit} (typical)` : "no data yet",
|
|
5777
|
+
notes: [`Cost: ${observedCost.displayText}`]
|
|
5778
|
+
};
|
|
5776
5779
|
}
|
|
5777
5780
|
if (!pricing)
|
|
5778
5781
|
return { cost: item.kind === "tool" ? "unknown" : "\u2014", notes: [] };
|
|
@@ -5873,7 +5876,7 @@ var OPTIONAL_COLUMNS = [
|
|
|
5873
5876
|
];
|
|
5874
5877
|
function renderSearchResults(result, summaryWidth = DEFAULT_SUMMARY_WIDTH) {
|
|
5875
5878
|
if (result.results.length === 0)
|
|
5876
|
-
return
|
|
5879
|
+
return _chunkXQY5BDGYjs.renderCommandEnvelopeText.call(void 0, result);
|
|
5877
5880
|
const rows = result.results.map((item) => searchRow(item, summaryWidth));
|
|
5878
5881
|
const kinds = new Set(rows.map((row) => row.kind));
|
|
5879
5882
|
const onlyTools = kinds.size === 1 && kinds.has("tool");
|
|
@@ -5898,7 +5901,7 @@ function renderSearchResults(result, summaryWidth = DEFAULT_SUMMARY_WIDTH) {
|
|
|
5898
5901
|
actions: _optionalChain([render, 'optionalAccess', _12 => _12.actions])
|
|
5899
5902
|
};
|
|
5900
5903
|
const followUps = _optionalChain([remaining, 'access', _13 => _13.sections, 'optionalAccess', _14 => _14.length]) || _optionalChain([remaining, 'access', _15 => _15.actions, 'optionalAccess', _16 => _16.length]) ? `
|
|
5901
|
-
${
|
|
5904
|
+
${_chunkXQY5BDGYjs.renderCommandEnvelopeText.call(void 0, { render: remaining })}` : "";
|
|
5902
5905
|
const notes = rows.flatMap(
|
|
5903
5906
|
(row) => row.notes.map((note) => ` ${row.id}: ${note}`)
|
|
5904
5907
|
);
|
|
@@ -5983,7 +5986,7 @@ async function runSearch(queryInput, options, types, exclude = []) {
|
|
|
5983
5986
|
console.error("--summary-width must be an integer of at least 2.");
|
|
5984
5987
|
return 1;
|
|
5985
5988
|
}
|
|
5986
|
-
const { search_ref: searchRef, ...result } = await new (0,
|
|
5989
|
+
const { search_ref: searchRef, ...result } = await new (0, _chunkDLCQIK5Hjs.DeeplineClient)().search({
|
|
5987
5990
|
query,
|
|
5988
5991
|
types,
|
|
5989
5992
|
exclude,
|
|
@@ -5997,7 +6000,7 @@ async function runSearch(queryInput, options, types, exclude = []) {
|
|
|
5997
6000
|
});
|
|
5998
6001
|
if (searchRef) rememberSearchRef(searchRef);
|
|
5999
6002
|
pointAtDescribe(result);
|
|
6000
|
-
|
|
6003
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0, result, {
|
|
6001
6004
|
json: options.json === true,
|
|
6002
6005
|
text: renderSearchResults(result, summaryWidth)
|
|
6003
6006
|
});
|
|
@@ -784,7 +784,8 @@ Purpose:
|
|
|
784
784
|
When:
|
|
785
785
|
[[cli:
|
|
786
786
|
To price a play before running it: plays list --show-cost, then read the
|
|
787
|
-
cost estimate line for the play, or
|
|
787
|
+
cost estimate line for the play, or in JSON observedCost (prebuilts) or
|
|
788
|
+
costEstimate.
|
|
788
789
|
]]
|
|
789
790
|
[[mcp:
|
|
790
791
|
To find a saved or prebuilt play by name. It carries no cost estimate; price
|
|
@@ -798,9 +799,10 @@ Input:
|
|
|
798
799
|
[[cli:
|
|
799
800
|
Output (JSON):
|
|
800
801
|
plays[] with playKey, reference, displayName, description, origin,
|
|
801
|
-
runCount, lastRun, and with --show-cost costEstimate {status, unit
|
|
802
|
-
or "run"), lowCredits, highCredits, source, sampleRunCount} or
|
|
803
|
-
{status: "unavailable", reason, message}
|
|
802
|
+
runCount, lastRun, and with --show-cost: costEstimate {status, unit
|
|
803
|
+
("row" or "run"), lowCredits, highCredits, source, sampleRunCount} or
|
|
804
|
+
{status: "unavailable", reason, message}, and for prebuilts also
|
|
805
|
+
observedCost, the same object search returns; count, has_more, next_cursor,
|
|
804
806
|
next (the next-page command), render.sections with a "cost estimate:"
|
|
805
807
|
line per play.
|
|
806
808
|
]]
|
|
@@ -814,13 +816,15 @@ Cost:
|
|
|
814
816
|
Free.
|
|
815
817
|
[[cli:
|
|
816
818
|
Avoid:
|
|
817
|
-
|
|
819
|
+
For a prebuilt, search and describe show the same observedCost; for your
|
|
820
|
+
own plays only this command estimates cost.
|
|
818
821
|
]]
|
|
819
822
|
`,
|
|
820
823
|
verbose: `
|
|
821
824
|
[[cli:
|
|
822
825
|
Pricing a run:
|
|
823
|
-
Multiply lowCredits..highCredits
|
|
826
|
+
Multiply lowCredits..highCredits (observedCost: avgCredits, or the typical
|
|
827
|
+
range before runs are observed) by the row count when unit is "row", or
|
|
824
828
|
use it directly when unit is "run". Compare with the billing balance.
|
|
825
829
|
When the estimate is unavailable, run a two-row slice first and
|
|
826
830
|
read its actual spend with billing usage --run-id <run-id>.
|
|
@@ -830,6 +834,9 @@ Output fields:
|
|
|
830
834
|
costEstimate.source "observed" (from past runs; shown with ~) or
|
|
831
835
|
"static" (from the play's declared tools).
|
|
832
836
|
costEstimate.sampleRunCount how many runs the observation is based on.
|
|
837
|
+
observedCost avgCredits, medianCredits, maxCredits per unit across
|
|
838
|
+
all workspaces' runs, or status "unavailable" with
|
|
839
|
+
typical {lowCredits, highCredits, unit}.
|
|
833
840
|
has_more / next_cursor the page is bounded; pass --cursor to continue.
|
|
834
841
|
is_truncated true when the page was cut for size.
|
|
835
842
|
]]
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
argsWantJson,
|
|
3
3
|
openInBrowser,
|
|
4
4
|
printCommandEnvelope
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-Z7URKNIZ.mjs";
|
|
6
6
|
import {
|
|
7
7
|
ACTIVE_ORG_ID_ENV,
|
|
8
8
|
ACTIVE_ORG_NAME_ENV,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
saveHostEnvValues,
|
|
26
26
|
saveProjectDeeplineEnvValues,
|
|
27
27
|
storedHostApiKey
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-IQUHUR72.mjs";
|
|
29
29
|
|
|
30
30
|
// src/cli/commands/auth.ts
|
|
31
31
|
import {
|
|
@@ -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(); } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkXQY5BDGYjs = require('./chunk-XQY5BDGY.js');
|
|
4
4
|
|
|
5
5
|
// src/cli/maintenance-policy.ts
|
|
6
6
|
var _commander = require('commander');
|
|
@@ -33,7 +33,7 @@ function recordCliTrace(event) {
|
|
|
33
33
|
sinceStartMs: now - cliTraceStartedAt,
|
|
34
34
|
...event
|
|
35
35
|
};
|
|
36
|
-
|
|
36
|
+
_chunkXQY5BDGYjs.writeRawStderr.call(void 0, `[cli-trace] ${JSON.stringify(payload)}
|
|
37
37
|
`);
|
|
38
38
|
}
|
|
39
39
|
async function traceCliSpan(phase, fields, run) {
|
|
@@ -11,10 +11,10 @@ import {
|
|
|
11
11
|
skillsInstallLeasePath,
|
|
12
12
|
skillsSourceUrl,
|
|
13
13
|
syncSdkSkillsIfNeeded
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-S5M6ZEKW.mjs";
|
|
15
15
|
import {
|
|
16
16
|
printCommandEnvelope
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-Z7URKNIZ.mjs";
|
|
18
18
|
import {
|
|
19
19
|
SDK_VERSION,
|
|
20
20
|
autoDetectBaseUrl,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
ensureProjectPrivatePathsIgnored,
|
|
23
23
|
resolveProjectPinTarget,
|
|
24
24
|
sdkCliStateDirPath
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-IQUHUR72.mjs";
|
|
26
26
|
|
|
27
27
|
// src/cli/commands/skills.ts
|
|
28
28
|
import { spawn } from "child_process";
|
|
@@ -17,7 +17,7 @@ var _chunkXNYIZMNQjs = require('./chunk-XNYIZMNQ.js');
|
|
|
17
17
|
var _chunkPPDBRJRWjs = require('./chunk-PPDBRJRW.js');
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunk6S6WXN63js = require('./chunk-6S6WXN63.js');
|
|
21
21
|
|
|
22
22
|
// src/config.ts
|
|
23
23
|
|
|
@@ -649,9 +649,9 @@ function resolveCliCommandContext(inputConfig, requestedScope) {
|
|
|
649
649
|
}
|
|
650
650
|
|
|
651
651
|
// src/version.ts
|
|
652
|
-
var SDK_VERSION =
|
|
653
|
-
var SDK_API_MAJOR =
|
|
654
|
-
var SDK_API_CONTRACT = _nullishCoalesce(
|
|
652
|
+
var SDK_VERSION = _chunk6S6WXN63js.SDK_RELEASE.version;
|
|
653
|
+
var SDK_API_MAJOR = _chunk6S6WXN63js.SDK_RELEASE.contracts.api.currentMajor;
|
|
654
|
+
var SDK_API_CONTRACT = _nullishCoalesce(_chunk6S6WXN63js.SDK_RELEASE.contracts.api.legacyWireIds[0], () => ( `api-v${SDK_API_MAJOR}`));
|
|
655
655
|
|
|
656
656
|
// src/agent-runtime.ts
|
|
657
657
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAuthedHttpClient,
|
|
3
3
|
printCommandEnvelope
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-Z7URKNIZ.mjs";
|
|
5
5
|
import {
|
|
6
6
|
agentSessionIdFromEnvironment
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-IQUHUR72.mjs";
|
|
8
8
|
|
|
9
9
|
// src/cli/commands/sessions.ts
|
|
10
10
|
import {
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunk4QNMO7DKjs = require('./chunk-4QNMO7DK.js');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkF5HARRY4js = require('./chunk-F5HARRY4.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkEU2VT52Ljs = require('./chunk-EU2VT52L.js');
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _chunkXQY5BDGYjs = require('./chunk-XQY5BDGY.js');
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _chunkPA6TQR75js = require('./chunk-PA6TQR75.js');
|
|
17
17
|
|
|
18
18
|
// src/cli/commands/update.ts
|
|
19
19
|
var _child_process = require('child_process');
|
|
@@ -495,7 +495,7 @@ function normalizedNpmPrefix(value) {
|
|
|
495
495
|
}
|
|
496
496
|
function resolveNpmGlobalPrefix(env) {
|
|
497
497
|
try {
|
|
498
|
-
const plan =
|
|
498
|
+
const plan = _chunkEU2VT52Ljs.resolveShellSpawn.call(void 0,
|
|
499
499
|
"npm",
|
|
500
500
|
["prefix", "-g"],
|
|
501
501
|
process.platform,
|
|
@@ -556,8 +556,8 @@ function resolveUpdatePlan(options = {}) {
|
|
|
556
556
|
const npmGlobalPrefix = options.npmGlobalPrefix !== void 0 ? options.npmGlobalPrefix : resolveNpmGlobalPrefix(env);
|
|
557
557
|
const hasVerifiedNpmOwnership = inferredInstallPrefix !== null && normalizedNpmPrefix(inferredInstallPrefix) === normalizedNpmPrefix(npmGlobalPrefix);
|
|
558
558
|
const installPrefix = options.requireVerifiedNpmOwnership ? hasVerifiedNpmOwnership ? inferredInstallPrefix : null : inferredInstallPrefix;
|
|
559
|
-
const npmVersion = options.npmVersion === void 0 ?
|
|
560
|
-
const npmGlobalInstallFlags =
|
|
559
|
+
const npmVersion = options.npmVersion === void 0 ? _chunk4QNMO7DKjs.readNpmVersion.call(void 0, env) : options.npmVersion;
|
|
560
|
+
const npmGlobalInstallFlags = _chunk4QNMO7DKjs.npmSupportsAllowScripts.call(void 0, npmVersion) ? [...NPM_SDK_INSTALL_COMMON_FLAGS, "--allow-scripts=esbuild"] : NPM_SDK_INSTALL_COMMON_FLAGS;
|
|
561
561
|
const args = installPrefix ? [
|
|
562
562
|
"install",
|
|
563
563
|
"-g",
|
|
@@ -567,7 +567,7 @@ function resolveUpdatePlan(options = {}) {
|
|
|
567
567
|
packageSpec
|
|
568
568
|
] : ["install", "-g", ...npmGlobalInstallFlags, packageSpec];
|
|
569
569
|
const fallbackRegistryUrl = options.npmFallbackRegistryUrl !== void 0 ? options.npmFallbackRegistryUrl : publicNpmFallbackRegistryUrl(
|
|
570
|
-
_optionalChain([env, 'access', _22 => _22.DEEPLINE_HOST_URL, 'optionalAccess', _23 => _23.trim, 'call', _24 => _24()]) ||
|
|
570
|
+
_optionalChain([env, 'access', _22 => _22.DEEPLINE_HOST_URL, 'optionalAccess', _23 => _23.trim, 'call', _24 => _24()]) || _chunkPA6TQR75js.autoDetectBaseUrl.call(void 0, )
|
|
571
571
|
);
|
|
572
572
|
return {
|
|
573
573
|
kind: "npm-global",
|
|
@@ -816,7 +816,7 @@ function sidecarInstallFailure(versionDir) {
|
|
|
816
816
|
function runCommand(command, args, env = process.env) {
|
|
817
817
|
return new Promise((resolveResult) => {
|
|
818
818
|
let output = "";
|
|
819
|
-
const plan =
|
|
819
|
+
const plan = _chunkEU2VT52Ljs.resolveShellSpawn.call(void 0, command, args, process.platform, env);
|
|
820
820
|
const child = _child_process.spawn.call(void 0, plan.command, plan.args, {
|
|
821
821
|
stdio: ["inherit", "pipe", "pipe"],
|
|
822
822
|
shell: plan.shell,
|
|
@@ -1199,14 +1199,14 @@ async function publishedVersionSupportsPin(version, fallbackRegistryUrl) {
|
|
|
1199
1199
|
throw _nullishCoalesce(lastError, () => ( new Error("No npm registry was available")));
|
|
1200
1200
|
}
|
|
1201
1201
|
async function runUpdateCommand(options, dependencies = {}) {
|
|
1202
|
-
const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => (
|
|
1202
|
+
const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => ( _chunkPA6TQR75js.autoDetectBaseUrl));
|
|
1203
1203
|
const resolvePlan = _nullishCoalesce(dependencies.resolvePlan, () => ( resolveUpdatePlan));
|
|
1204
1204
|
const runPlan = _nullishCoalesce(dependencies.runPlan, () => ( runUpdatePlan));
|
|
1205
1205
|
const syncSkills = _nullishCoalesce(dependencies.syncSkillsIfNeeded, () => ( (async () => {
|
|
1206
1206
|
const originalWrite = process.stdout.write.bind(process.stdout);
|
|
1207
1207
|
process.stdout.write = (() => true);
|
|
1208
1208
|
try {
|
|
1209
|
-
const exitCode = await
|
|
1209
|
+
const exitCode = await _chunkF5HARRY4js.runSkillsCommand.call(void 0, { json: true });
|
|
1210
1210
|
if (exitCode !== 0) {
|
|
1211
1211
|
throw new Error(
|
|
1212
1212
|
`Deepline skills update failed with exit ${exitCode}.`
|
|
@@ -1277,11 +1277,11 @@ async function runUpdateCommand(options, dependencies = {}) {
|
|
|
1277
1277
|
]
|
|
1278
1278
|
};
|
|
1279
1279
|
if (options.json && !options.executeWithJson) {
|
|
1280
|
-
|
|
1280
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: true });
|
|
1281
1281
|
return 0;
|
|
1282
1282
|
}
|
|
1283
1283
|
if (options.printCommand) {
|
|
1284
|
-
|
|
1284
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
1285
1285
|
{
|
|
1286
1286
|
...plan,
|
|
1287
1287
|
render: {
|
|
@@ -1294,7 +1294,7 @@ async function runUpdateCommand(options, dependencies = {}) {
|
|
|
1294
1294
|
return 0;
|
|
1295
1295
|
}
|
|
1296
1296
|
if (plan.kind === "source" || plan.kind === "homebrew") {
|
|
1297
|
-
|
|
1297
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: false });
|
|
1298
1298
|
return 0;
|
|
1299
1299
|
}
|
|
1300
1300
|
stderr.write(`Updating Deepline SDK/CLI with: ${plan.manualCommand}
|
|
@@ -1324,7 +1324,7 @@ To retry with full installer output, run: deepline skills
|
|
|
1324
1324
|
);
|
|
1325
1325
|
}
|
|
1326
1326
|
if (options.executeWithJson && options.json) {
|
|
1327
|
-
|
|
1327
|
+
_chunkXQY5BDGYjs.printCommandEnvelope.call(void 0,
|
|
1328
1328
|
{
|
|
1329
1329
|
ok: true,
|
|
1330
1330
|
pinnedVersion
|
|
@@ -784,7 +784,8 @@ Purpose:
|
|
|
784
784
|
When:
|
|
785
785
|
[[cli:
|
|
786
786
|
To price a play before running it: plays list --show-cost, then read the
|
|
787
|
-
cost estimate line for the play, or
|
|
787
|
+
cost estimate line for the play, or in JSON observedCost (prebuilts) or
|
|
788
|
+
costEstimate.
|
|
788
789
|
]]
|
|
789
790
|
[[mcp:
|
|
790
791
|
To find a saved or prebuilt play by name. It carries no cost estimate; price
|
|
@@ -798,9 +799,10 @@ Input:
|
|
|
798
799
|
[[cli:
|
|
799
800
|
Output (JSON):
|
|
800
801
|
plays[] with playKey, reference, displayName, description, origin,
|
|
801
|
-
runCount, lastRun, and with --show-cost costEstimate {status, unit
|
|
802
|
-
or "run"), lowCredits, highCredits, source, sampleRunCount} or
|
|
803
|
-
{status: "unavailable", reason, message}
|
|
802
|
+
runCount, lastRun, and with --show-cost: costEstimate {status, unit
|
|
803
|
+
("row" or "run"), lowCredits, highCredits, source, sampleRunCount} or
|
|
804
|
+
{status: "unavailable", reason, message}, and for prebuilts also
|
|
805
|
+
observedCost, the same object search returns; count, has_more, next_cursor,
|
|
804
806
|
next (the next-page command), render.sections with a "cost estimate:"
|
|
805
807
|
line per play.
|
|
806
808
|
]]
|
|
@@ -814,13 +816,15 @@ Cost:
|
|
|
814
816
|
Free.
|
|
815
817
|
[[cli:
|
|
816
818
|
Avoid:
|
|
817
|
-
|
|
819
|
+
For a prebuilt, search and describe show the same observedCost; for your
|
|
820
|
+
own plays only this command estimates cost.
|
|
818
821
|
]]
|
|
819
822
|
`,
|
|
820
823
|
verbose: `
|
|
821
824
|
[[cli:
|
|
822
825
|
Pricing a run:
|
|
823
|
-
Multiply lowCredits..highCredits
|
|
826
|
+
Multiply lowCredits..highCredits (observedCost: avgCredits, or the typical
|
|
827
|
+
range before runs are observed) by the row count when unit is "row", or
|
|
824
828
|
use it directly when unit is "run". Compare with the billing balance.
|
|
825
829
|
When the estimate is unavailable, run a two-row slice first and
|
|
826
830
|
read its actual spend with billing usage --run-id <run-id>.
|
|
@@ -830,6 +834,9 @@ Output fields:
|
|
|
830
834
|
costEstimate.source "observed" (from past runs; shown with ~) or
|
|
831
835
|
"static" (from the play's declared tools).
|
|
832
836
|
costEstimate.sampleRunCount how many runs the observation is based on.
|
|
837
|
+
observedCost avgCredits, medianCredits, maxCredits per unit across
|
|
838
|
+
all workspaces' runs, or status "unavailable" with
|
|
839
|
+
typical {lowCredits, highCredits, unit}.
|
|
833
840
|
has_more / next_cursor the page is bounded; pass --cursor to continue.
|
|
834
841
|
is_truncated true when the page was cut for size.
|
|
835
842
|
]]
|