@bytevion/cli 0.1.0 → 0.2.0
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/README.md +66 -0
- package/dist/commands/compare.d.ts +12 -0
- package/dist/commands/compare.js +104 -0
- package/dist/commands/integrate.d.ts +1 -0
- package/dist/commands/integrate.js +76 -28
- package/dist/commands/login.js +40 -59
- package/dist/commands/providers/add.d.ts +3 -1
- package/dist/commands/providers/add.js +102 -20
- package/dist/commands/providers/rotate.js +39 -4
- package/dist/commands/setup.d.ts +19 -0
- package/dist/commands/setup.js +201 -0
- package/dist/hooks/init/home.d.ts +3 -0
- package/dist/hooks/init/home.js +95 -0
- package/dist/lib/api.d.ts +1 -0
- package/dist/lib/api.js +60 -0
- package/dist/lib/auth.d.ts +9 -0
- package/dist/lib/auth.js +100 -0
- package/dist/lib/integrations.d.ts +1 -0
- package/dist/lib/integrations.js +198 -61
- package/dist/lib/providers.d.ts +13 -0
- package/dist/lib/providers.js +39 -0
- package/dist/lib/tty.d.ts +1 -0
- package/dist/lib/tty.js +11 -0
- package/dist/lib/ui.d.ts +60 -0
- package/dist/lib/ui.js +110 -0
- package/dist/lib/util.d.ts +1 -2
- package/dist/lib/util.js +11 -79
- package/oclif.manifest.json +305 -108
- package/package.json +76 -59
package/dist/lib/util.js
CHANGED
|
@@ -1,44 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.sleep = sleep;
|
|
37
4
|
exports.openBrowser = openBrowser;
|
|
38
|
-
exports.
|
|
39
|
-
exports.promptHidden = promptHidden;
|
|
5
|
+
exports.withTimeout = withTimeout;
|
|
40
6
|
const node_child_process_1 = require("node:child_process");
|
|
41
|
-
const readline = __importStar(require("node:readline/promises"));
|
|
42
7
|
function sleep(ms) {
|
|
43
8
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
44
9
|
}
|
|
@@ -51,51 +16,18 @@ async function openBrowser(url) {
|
|
|
51
16
|
const cmd = platform === 'darwin' ? 'open' : 'xdg-open';
|
|
52
17
|
(0, node_child_process_1.spawn)(cmd, [url], { stdio: 'ignore', detached: true }).unref();
|
|
53
18
|
}
|
|
54
|
-
|
|
55
|
-
|
|
19
|
+
// Resolve to `fallback` if the promise does not settle within `ms` — used so network
|
|
20
|
+
// probes (e.g. integrate --list) never hang the UI.
|
|
21
|
+
async function withTimeout(promise, ms, fallback) {
|
|
22
|
+
let timer;
|
|
23
|
+
const timeout = new Promise((resolve) => {
|
|
24
|
+
timer = setTimeout(() => resolve(fallback), ms);
|
|
25
|
+
});
|
|
56
26
|
try {
|
|
57
|
-
|
|
58
|
-
return answer.trim();
|
|
27
|
+
return await Promise.race([promise, timeout]);
|
|
59
28
|
}
|
|
60
29
|
finally {
|
|
61
|
-
|
|
30
|
+
if (timer)
|
|
31
|
+
clearTimeout(timer);
|
|
62
32
|
}
|
|
63
33
|
}
|
|
64
|
-
// Byte codes for control keys (avoids embedding raw control characters).
|
|
65
|
-
const CR = 13;
|
|
66
|
-
const LF = 10;
|
|
67
|
-
const CTRL_C = 3;
|
|
68
|
-
const BACKSPACE = 8;
|
|
69
|
-
const DEL = 127;
|
|
70
|
-
async function promptHidden(question) {
|
|
71
|
-
const stdin = process.stdin;
|
|
72
|
-
if (!stdin.isTTY)
|
|
73
|
-
return prompt(question);
|
|
74
|
-
process.stdout.write(question);
|
|
75
|
-
return new Promise((resolve) => {
|
|
76
|
-
let input = '';
|
|
77
|
-
stdin.resume();
|
|
78
|
-
stdin.setRawMode(true);
|
|
79
|
-
const onData = (chunk) => {
|
|
80
|
-
const code = chunk[0];
|
|
81
|
-
if (code === CR || code === LF) {
|
|
82
|
-
stdin.setRawMode(false);
|
|
83
|
-
stdin.pause();
|
|
84
|
-
stdin.removeListener('data', onData);
|
|
85
|
-
process.stdout.write('\n');
|
|
86
|
-
resolve(input.trim());
|
|
87
|
-
}
|
|
88
|
-
else if (code === CTRL_C) {
|
|
89
|
-
process.stdout.write('\n');
|
|
90
|
-
process.exit(130);
|
|
91
|
-
}
|
|
92
|
-
else if (code === BACKSPACE || code === DEL) {
|
|
93
|
-
input = input.slice(0, -1);
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
input += chunk.toString('utf8');
|
|
97
|
-
}
|
|
98
|
-
};
|
|
99
|
-
stdin.on('data', onData);
|
|
100
|
-
});
|
|
101
|
-
}
|
package/oclif.manifest.json
CHANGED
|
@@ -1,5 +1,67 @@
|
|
|
1
1
|
{
|
|
2
2
|
"commands": {
|
|
3
|
+
"compare": {
|
|
4
|
+
"aliases": [],
|
|
5
|
+
"args": {
|
|
6
|
+
"prompt": {
|
|
7
|
+
"description": "Prompt to run on both lanes",
|
|
8
|
+
"name": "prompt",
|
|
9
|
+
"required": true
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"description": "Prove the win: run a prompt direct vs through Byte and compare cost, latency, and quality.",
|
|
13
|
+
"examples": [
|
|
14
|
+
"<%= config.bin %> compare \"Summarize the latest release notes\"",
|
|
15
|
+
"<%= config.bin %> compare \"Refactor this function\" --model byte-2-deepseek-chat"
|
|
16
|
+
],
|
|
17
|
+
"flags": {
|
|
18
|
+
"json": {
|
|
19
|
+
"description": "Format output as json.",
|
|
20
|
+
"helpGroup": "GLOBAL",
|
|
21
|
+
"name": "json",
|
|
22
|
+
"allowNo": false,
|
|
23
|
+
"type": "boolean"
|
|
24
|
+
},
|
|
25
|
+
"profile": {
|
|
26
|
+
"description": "Configuration profile to use",
|
|
27
|
+
"env": "BYTE_PROFILE",
|
|
28
|
+
"name": "profile",
|
|
29
|
+
"hasDynamicHelp": false,
|
|
30
|
+
"multiple": false,
|
|
31
|
+
"type": "option"
|
|
32
|
+
},
|
|
33
|
+
"base-url": {
|
|
34
|
+
"description": "Override the API base URL",
|
|
35
|
+
"env": "BYTE_BASE_URL",
|
|
36
|
+
"name": "base-url",
|
|
37
|
+
"hasDynamicHelp": false,
|
|
38
|
+
"multiple": false,
|
|
39
|
+
"type": "option"
|
|
40
|
+
},
|
|
41
|
+
"model": {
|
|
42
|
+
"description": "Model id (byte alias) or \"auto\"",
|
|
43
|
+
"name": "model",
|
|
44
|
+
"default": "auto",
|
|
45
|
+
"hasDynamicHelp": false,
|
|
46
|
+
"multiple": false,
|
|
47
|
+
"type": "option"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"hasDynamicHelp": false,
|
|
51
|
+
"hiddenAliases": [],
|
|
52
|
+
"id": "compare",
|
|
53
|
+
"pluginAlias": "@bytevion/cli",
|
|
54
|
+
"pluginName": "@bytevion/cli",
|
|
55
|
+
"pluginType": "core",
|
|
56
|
+
"strict": true,
|
|
57
|
+
"enableJsonFlag": true,
|
|
58
|
+
"isESM": false,
|
|
59
|
+
"relativePath": [
|
|
60
|
+
"dist",
|
|
61
|
+
"commands",
|
|
62
|
+
"compare.js"
|
|
63
|
+
]
|
|
64
|
+
},
|
|
3
65
|
"doctor": {
|
|
4
66
|
"aliases": [],
|
|
5
67
|
"args": {},
|
|
@@ -209,11 +271,11 @@
|
|
|
209
271
|
"required": false
|
|
210
272
|
}
|
|
211
273
|
},
|
|
212
|
-
"description": "Wire a coding harness or SDK to Byte (Claude Code, Codex, Cursor, Cline, Aider,
|
|
274
|
+
"description": "Wire a coding harness or SDK to Byte (Claude Code, Codex, opencode, Cursor, Cline, Aider, …).",
|
|
213
275
|
"examples": [
|
|
214
276
|
"<%= config.bin %> integrate --list",
|
|
215
|
-
"<%= config.bin %> integrate
|
|
216
|
-
"<%= config.bin %> integrate claude-code --write --
|
|
277
|
+
"<%= config.bin %> integrate opencode --write",
|
|
278
|
+
"<%= config.bin %> integrate claude-code --write --model byte-2-deepseek-chat"
|
|
217
279
|
],
|
|
218
280
|
"flags": {
|
|
219
281
|
"json": {
|
|
@@ -279,6 +341,13 @@
|
|
|
279
341
|
"multiple": false,
|
|
280
342
|
"type": "option"
|
|
281
343
|
},
|
|
344
|
+
"model": {
|
|
345
|
+
"description": "Model id (byte alias) to wire (default byte-default)",
|
|
346
|
+
"name": "model",
|
|
347
|
+
"hasDynamicHelp": false,
|
|
348
|
+
"multiple": false,
|
|
349
|
+
"type": "option"
|
|
350
|
+
},
|
|
282
351
|
"preset": {
|
|
283
352
|
"description": "Apply this optimization preset to the org before wiring",
|
|
284
353
|
"name": "preset",
|
|
@@ -341,7 +410,7 @@
|
|
|
341
410
|
"type": "option"
|
|
342
411
|
},
|
|
343
412
|
"no-browser": {
|
|
344
|
-
"description": "Do not
|
|
413
|
+
"description": "Do not open the browser automatically",
|
|
345
414
|
"name": "no-browser",
|
|
346
415
|
"allowNo": false,
|
|
347
416
|
"type": "boolean"
|
|
@@ -475,6 +544,121 @@
|
|
|
475
544
|
"run.js"
|
|
476
545
|
]
|
|
477
546
|
},
|
|
547
|
+
"setup": {
|
|
548
|
+
"aliases": [
|
|
549
|
+
"init",
|
|
550
|
+
"onboard"
|
|
551
|
+
],
|
|
552
|
+
"args": {},
|
|
553
|
+
"description": "Guided setup: sign in, connect a provider, create a Byte key, and wire a tool.",
|
|
554
|
+
"examples": [
|
|
555
|
+
"<%= config.bin %> setup",
|
|
556
|
+
"<%= config.bin %> setup --provider deepseek --provider-key sk-... --connect opencode --json"
|
|
557
|
+
],
|
|
558
|
+
"flags": {
|
|
559
|
+
"json": {
|
|
560
|
+
"description": "Format output as json.",
|
|
561
|
+
"helpGroup": "GLOBAL",
|
|
562
|
+
"name": "json",
|
|
563
|
+
"allowNo": false,
|
|
564
|
+
"type": "boolean"
|
|
565
|
+
},
|
|
566
|
+
"profile": {
|
|
567
|
+
"description": "Configuration profile to use",
|
|
568
|
+
"env": "BYTE_PROFILE",
|
|
569
|
+
"name": "profile",
|
|
570
|
+
"hasDynamicHelp": false,
|
|
571
|
+
"multiple": false,
|
|
572
|
+
"type": "option"
|
|
573
|
+
},
|
|
574
|
+
"base-url": {
|
|
575
|
+
"description": "Override the API base URL",
|
|
576
|
+
"env": "BYTE_BASE_URL",
|
|
577
|
+
"name": "base-url",
|
|
578
|
+
"hasDynamicHelp": false,
|
|
579
|
+
"multiple": false,
|
|
580
|
+
"type": "option"
|
|
581
|
+
},
|
|
582
|
+
"provider": {
|
|
583
|
+
"description": "Provider preset id (openai, deepseek, anthropic, …)",
|
|
584
|
+
"name": "provider",
|
|
585
|
+
"hasDynamicHelp": false,
|
|
586
|
+
"multiple": false,
|
|
587
|
+
"type": "option"
|
|
588
|
+
},
|
|
589
|
+
"provider-key": {
|
|
590
|
+
"description": "Upstream provider API key",
|
|
591
|
+
"env": "BYTE_PROVIDER_KEY",
|
|
592
|
+
"name": "provider-key",
|
|
593
|
+
"hasDynamicHelp": false,
|
|
594
|
+
"multiple": false,
|
|
595
|
+
"type": "option"
|
|
596
|
+
},
|
|
597
|
+
"provider-base-url": {
|
|
598
|
+
"description": "Custom provider base URL (for --provider custom)",
|
|
599
|
+
"name": "provider-base-url",
|
|
600
|
+
"hasDynamicHelp": false,
|
|
601
|
+
"multiple": false,
|
|
602
|
+
"type": "option"
|
|
603
|
+
},
|
|
604
|
+
"mode": {
|
|
605
|
+
"description": "Gateway mode override (byte_compatible/byte_messages/byte_generative)",
|
|
606
|
+
"name": "mode",
|
|
607
|
+
"hasDynamicHelp": false,
|
|
608
|
+
"multiple": false,
|
|
609
|
+
"type": "option"
|
|
610
|
+
},
|
|
611
|
+
"preset": {
|
|
612
|
+
"description": "Optimization preset",
|
|
613
|
+
"name": "preset",
|
|
614
|
+
"default": "balanced",
|
|
615
|
+
"hasDynamicHelp": false,
|
|
616
|
+
"multiple": false,
|
|
617
|
+
"options": [
|
|
618
|
+
"balanced",
|
|
619
|
+
"max_savings",
|
|
620
|
+
"lowest_latency",
|
|
621
|
+
"reliability_first"
|
|
622
|
+
],
|
|
623
|
+
"type": "option"
|
|
624
|
+
},
|
|
625
|
+
"key-name": {
|
|
626
|
+
"description": "Name for the Byte key",
|
|
627
|
+
"name": "key-name",
|
|
628
|
+
"default": "cli",
|
|
629
|
+
"hasDynamicHelp": false,
|
|
630
|
+
"multiple": false,
|
|
631
|
+
"type": "option"
|
|
632
|
+
},
|
|
633
|
+
"skip-provider": {
|
|
634
|
+
"description": "Skip connecting a provider",
|
|
635
|
+
"name": "skip-provider",
|
|
636
|
+
"allowNo": false,
|
|
637
|
+
"type": "boolean"
|
|
638
|
+
},
|
|
639
|
+
"connect": {
|
|
640
|
+
"description": "Tool to wire after setup (e.g. opencode, codex)",
|
|
641
|
+
"name": "connect",
|
|
642
|
+
"hasDynamicHelp": false,
|
|
643
|
+
"multiple": false,
|
|
644
|
+
"type": "option"
|
|
645
|
+
}
|
|
646
|
+
},
|
|
647
|
+
"hasDynamicHelp": false,
|
|
648
|
+
"hiddenAliases": [],
|
|
649
|
+
"id": "setup",
|
|
650
|
+
"pluginAlias": "@bytevion/cli",
|
|
651
|
+
"pluginName": "@bytevion/cli",
|
|
652
|
+
"pluginType": "core",
|
|
653
|
+
"strict": true,
|
|
654
|
+
"enableJsonFlag": true,
|
|
655
|
+
"isESM": false,
|
|
656
|
+
"relativePath": [
|
|
657
|
+
"dist",
|
|
658
|
+
"commands",
|
|
659
|
+
"setup.js"
|
|
660
|
+
]
|
|
661
|
+
},
|
|
478
662
|
"stats": {
|
|
479
663
|
"aliases": [],
|
|
480
664
|
"args": {},
|
|
@@ -1014,6 +1198,102 @@
|
|
|
1014
1198
|
"rotate.js"
|
|
1015
1199
|
]
|
|
1016
1200
|
},
|
|
1201
|
+
"sessions": {
|
|
1202
|
+
"aliases": [],
|
|
1203
|
+
"args": {},
|
|
1204
|
+
"description": "List active terminal sessions (CLI tokens) for the org.",
|
|
1205
|
+
"flags": {
|
|
1206
|
+
"json": {
|
|
1207
|
+
"description": "Format output as json.",
|
|
1208
|
+
"helpGroup": "GLOBAL",
|
|
1209
|
+
"name": "json",
|
|
1210
|
+
"allowNo": false,
|
|
1211
|
+
"type": "boolean"
|
|
1212
|
+
},
|
|
1213
|
+
"profile": {
|
|
1214
|
+
"description": "Configuration profile to use",
|
|
1215
|
+
"env": "BYTE_PROFILE",
|
|
1216
|
+
"name": "profile",
|
|
1217
|
+
"hasDynamicHelp": false,
|
|
1218
|
+
"multiple": false,
|
|
1219
|
+
"type": "option"
|
|
1220
|
+
},
|
|
1221
|
+
"base-url": {
|
|
1222
|
+
"description": "Override the API base URL",
|
|
1223
|
+
"env": "BYTE_BASE_URL",
|
|
1224
|
+
"name": "base-url",
|
|
1225
|
+
"hasDynamicHelp": false,
|
|
1226
|
+
"multiple": false,
|
|
1227
|
+
"type": "option"
|
|
1228
|
+
}
|
|
1229
|
+
},
|
|
1230
|
+
"hasDynamicHelp": false,
|
|
1231
|
+
"hiddenAliases": [],
|
|
1232
|
+
"id": "sessions",
|
|
1233
|
+
"pluginAlias": "@bytevion/cli",
|
|
1234
|
+
"pluginName": "@bytevion/cli",
|
|
1235
|
+
"pluginType": "core",
|
|
1236
|
+
"strict": true,
|
|
1237
|
+
"enableJsonFlag": true,
|
|
1238
|
+
"isESM": false,
|
|
1239
|
+
"relativePath": [
|
|
1240
|
+
"dist",
|
|
1241
|
+
"commands",
|
|
1242
|
+
"sessions",
|
|
1243
|
+
"index.js"
|
|
1244
|
+
]
|
|
1245
|
+
},
|
|
1246
|
+
"sessions:revoke": {
|
|
1247
|
+
"aliases": [],
|
|
1248
|
+
"args": {
|
|
1249
|
+
"id": {
|
|
1250
|
+
"description": "Session id (see `byte sessions`)",
|
|
1251
|
+
"name": "id",
|
|
1252
|
+
"required": true
|
|
1253
|
+
}
|
|
1254
|
+
},
|
|
1255
|
+
"description": "Revoke a terminal session (CLI token) by id.",
|
|
1256
|
+
"flags": {
|
|
1257
|
+
"json": {
|
|
1258
|
+
"description": "Format output as json.",
|
|
1259
|
+
"helpGroup": "GLOBAL",
|
|
1260
|
+
"name": "json",
|
|
1261
|
+
"allowNo": false,
|
|
1262
|
+
"type": "boolean"
|
|
1263
|
+
},
|
|
1264
|
+
"profile": {
|
|
1265
|
+
"description": "Configuration profile to use",
|
|
1266
|
+
"env": "BYTE_PROFILE",
|
|
1267
|
+
"name": "profile",
|
|
1268
|
+
"hasDynamicHelp": false,
|
|
1269
|
+
"multiple": false,
|
|
1270
|
+
"type": "option"
|
|
1271
|
+
},
|
|
1272
|
+
"base-url": {
|
|
1273
|
+
"description": "Override the API base URL",
|
|
1274
|
+
"env": "BYTE_BASE_URL",
|
|
1275
|
+
"name": "base-url",
|
|
1276
|
+
"hasDynamicHelp": false,
|
|
1277
|
+
"multiple": false,
|
|
1278
|
+
"type": "option"
|
|
1279
|
+
}
|
|
1280
|
+
},
|
|
1281
|
+
"hasDynamicHelp": false,
|
|
1282
|
+
"hiddenAliases": [],
|
|
1283
|
+
"id": "sessions:revoke",
|
|
1284
|
+
"pluginAlias": "@bytevion/cli",
|
|
1285
|
+
"pluginName": "@bytevion/cli",
|
|
1286
|
+
"pluginType": "core",
|
|
1287
|
+
"strict": true,
|
|
1288
|
+
"enableJsonFlag": true,
|
|
1289
|
+
"isESM": false,
|
|
1290
|
+
"relativePath": [
|
|
1291
|
+
"dist",
|
|
1292
|
+
"commands",
|
|
1293
|
+
"sessions",
|
|
1294
|
+
"revoke.js"
|
|
1295
|
+
]
|
|
1296
|
+
},
|
|
1017
1297
|
"opt:preset": {
|
|
1018
1298
|
"aliases": [],
|
|
1019
1299
|
"args": {
|
|
@@ -1185,10 +1465,10 @@
|
|
|
1185
1465
|
"providers:add": {
|
|
1186
1466
|
"aliases": [],
|
|
1187
1467
|
"args": {},
|
|
1188
|
-
"description": "
|
|
1468
|
+
"description": "Connect an upstream provider key (BYOK). Byte stores it encrypted and imports models.",
|
|
1189
1469
|
"examples": [
|
|
1190
|
-
"<%= config.bin %> providers add",
|
|
1191
|
-
"<%= config.bin %> providers add --
|
|
1470
|
+
"<%= config.bin %> providers add --provider deepseek --api-key sk-...",
|
|
1471
|
+
"<%= config.bin %> providers add --provider custom --provider-base-url https://api.example.com/v1 --api-key ..."
|
|
1192
1472
|
],
|
|
1193
1473
|
"flags": {
|
|
1194
1474
|
"json": {
|
|
@@ -1214,6 +1494,13 @@
|
|
|
1214
1494
|
"multiple": false,
|
|
1215
1495
|
"type": "option"
|
|
1216
1496
|
},
|
|
1497
|
+
"provider": {
|
|
1498
|
+
"description": "Provider preset id (openai, deepseek, anthropic, …)",
|
|
1499
|
+
"name": "provider",
|
|
1500
|
+
"hasDynamicHelp": false,
|
|
1501
|
+
"multiple": false,
|
|
1502
|
+
"type": "option"
|
|
1503
|
+
},
|
|
1217
1504
|
"api-key": {
|
|
1218
1505
|
"description": "Upstream provider API key",
|
|
1219
1506
|
"env": "BYTE_PROVIDER_KEY",
|
|
@@ -1222,23 +1509,29 @@
|
|
|
1222
1509
|
"multiple": false,
|
|
1223
1510
|
"type": "option"
|
|
1224
1511
|
},
|
|
1512
|
+
"provider-base-url": {
|
|
1513
|
+
"description": "Custom base URL (for --provider custom or to override)",
|
|
1514
|
+
"name": "provider-base-url",
|
|
1515
|
+
"hasDynamicHelp": false,
|
|
1516
|
+
"multiple": false,
|
|
1517
|
+
"type": "option"
|
|
1518
|
+
},
|
|
1225
1519
|
"mode": {
|
|
1226
|
-
"description": "Gateway mode
|
|
1520
|
+
"description": "Gateway mode (byte_compatible/byte_messages/byte_generative)",
|
|
1227
1521
|
"name": "mode",
|
|
1228
|
-
"default": "byte_auto",
|
|
1229
1522
|
"hasDynamicHelp": false,
|
|
1230
1523
|
"multiple": false,
|
|
1231
1524
|
"type": "option"
|
|
1232
1525
|
},
|
|
1233
1526
|
"label": {
|
|
1234
|
-
"description": "
|
|
1527
|
+
"description": "Label for this connection",
|
|
1235
1528
|
"name": "label",
|
|
1236
1529
|
"hasDynamicHelp": false,
|
|
1237
1530
|
"multiple": false,
|
|
1238
1531
|
"type": "option"
|
|
1239
1532
|
},
|
|
1240
1533
|
"no-fetch": {
|
|
1241
|
-
"description": "Skip auto-importing the
|
|
1534
|
+
"description": "Skip auto-importing the model list",
|
|
1242
1535
|
"name": "no-fetch",
|
|
1243
1536
|
"allowNo": false,
|
|
1244
1537
|
"type": "boolean"
|
|
@@ -1414,103 +1707,7 @@
|
|
|
1414
1707
|
"providers",
|
|
1415
1708
|
"test.js"
|
|
1416
1709
|
]
|
|
1417
|
-
},
|
|
1418
|
-
"sessions": {
|
|
1419
|
-
"aliases": [],
|
|
1420
|
-
"args": {},
|
|
1421
|
-
"description": "List active terminal sessions (CLI tokens) for the org.",
|
|
1422
|
-
"flags": {
|
|
1423
|
-
"json": {
|
|
1424
|
-
"description": "Format output as json.",
|
|
1425
|
-
"helpGroup": "GLOBAL",
|
|
1426
|
-
"name": "json",
|
|
1427
|
-
"allowNo": false,
|
|
1428
|
-
"type": "boolean"
|
|
1429
|
-
},
|
|
1430
|
-
"profile": {
|
|
1431
|
-
"description": "Configuration profile to use",
|
|
1432
|
-
"env": "BYTE_PROFILE",
|
|
1433
|
-
"name": "profile",
|
|
1434
|
-
"hasDynamicHelp": false,
|
|
1435
|
-
"multiple": false,
|
|
1436
|
-
"type": "option"
|
|
1437
|
-
},
|
|
1438
|
-
"base-url": {
|
|
1439
|
-
"description": "Override the API base URL",
|
|
1440
|
-
"env": "BYTE_BASE_URL",
|
|
1441
|
-
"name": "base-url",
|
|
1442
|
-
"hasDynamicHelp": false,
|
|
1443
|
-
"multiple": false,
|
|
1444
|
-
"type": "option"
|
|
1445
|
-
}
|
|
1446
|
-
},
|
|
1447
|
-
"hasDynamicHelp": false,
|
|
1448
|
-
"hiddenAliases": [],
|
|
1449
|
-
"id": "sessions",
|
|
1450
|
-
"pluginAlias": "@bytevion/cli",
|
|
1451
|
-
"pluginName": "@bytevion/cli",
|
|
1452
|
-
"pluginType": "core",
|
|
1453
|
-
"strict": true,
|
|
1454
|
-
"enableJsonFlag": true,
|
|
1455
|
-
"isESM": false,
|
|
1456
|
-
"relativePath": [
|
|
1457
|
-
"dist",
|
|
1458
|
-
"commands",
|
|
1459
|
-
"sessions",
|
|
1460
|
-
"index.js"
|
|
1461
|
-
]
|
|
1462
|
-
},
|
|
1463
|
-
"sessions:revoke": {
|
|
1464
|
-
"aliases": [],
|
|
1465
|
-
"args": {
|
|
1466
|
-
"id": {
|
|
1467
|
-
"description": "Session id (see `byte sessions`)",
|
|
1468
|
-
"name": "id",
|
|
1469
|
-
"required": true
|
|
1470
|
-
}
|
|
1471
|
-
},
|
|
1472
|
-
"description": "Revoke a terminal session (CLI token) by id.",
|
|
1473
|
-
"flags": {
|
|
1474
|
-
"json": {
|
|
1475
|
-
"description": "Format output as json.",
|
|
1476
|
-
"helpGroup": "GLOBAL",
|
|
1477
|
-
"name": "json",
|
|
1478
|
-
"allowNo": false,
|
|
1479
|
-
"type": "boolean"
|
|
1480
|
-
},
|
|
1481
|
-
"profile": {
|
|
1482
|
-
"description": "Configuration profile to use",
|
|
1483
|
-
"env": "BYTE_PROFILE",
|
|
1484
|
-
"name": "profile",
|
|
1485
|
-
"hasDynamicHelp": false,
|
|
1486
|
-
"multiple": false,
|
|
1487
|
-
"type": "option"
|
|
1488
|
-
},
|
|
1489
|
-
"base-url": {
|
|
1490
|
-
"description": "Override the API base URL",
|
|
1491
|
-
"env": "BYTE_BASE_URL",
|
|
1492
|
-
"name": "base-url",
|
|
1493
|
-
"hasDynamicHelp": false,
|
|
1494
|
-
"multiple": false,
|
|
1495
|
-
"type": "option"
|
|
1496
|
-
}
|
|
1497
|
-
},
|
|
1498
|
-
"hasDynamicHelp": false,
|
|
1499
|
-
"hiddenAliases": [],
|
|
1500
|
-
"id": "sessions:revoke",
|
|
1501
|
-
"pluginAlias": "@bytevion/cli",
|
|
1502
|
-
"pluginName": "@bytevion/cli",
|
|
1503
|
-
"pluginType": "core",
|
|
1504
|
-
"strict": true,
|
|
1505
|
-
"enableJsonFlag": true,
|
|
1506
|
-
"isESM": false,
|
|
1507
|
-
"relativePath": [
|
|
1508
|
-
"dist",
|
|
1509
|
-
"commands",
|
|
1510
|
-
"sessions",
|
|
1511
|
-
"revoke.js"
|
|
1512
|
-
]
|
|
1513
1710
|
}
|
|
1514
1711
|
},
|
|
1515
|
-
"version": "0.
|
|
1712
|
+
"version": "0.2.0"
|
|
1516
1713
|
}
|