veto-sdk 1.15.1 → 1.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +34 -21
  2. package/dist/cli/bin.js +2 -506
  3. package/dist/cli/bin.js.map +1 -1
  4. package/dist/cli/headless.d.ts +110 -0
  5. package/dist/cli/headless.d.ts.map +1 -0
  6. package/dist/cli/headless.js +665 -0
  7. package/dist/cli/headless.js.map +1 -0
  8. package/dist/cli/index.d.ts +2 -0
  9. package/dist/cli/index.d.ts.map +1 -1
  10. package/dist/cli/index.js +2 -0
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/cli/repl-generate.d.ts.map +1 -1
  13. package/dist/cli/repl-generate.js +40 -2
  14. package/dist/cli/repl-generate.js.map +1 -1
  15. package/dist/cli/runner.d.ts +3 -0
  16. package/dist/cli/runner.d.ts.map +1 -0
  17. package/dist/cli/runner.js +629 -0
  18. package/dist/cli/runner.js.map +1 -0
  19. package/dist/cli/studio/actions.d.ts.map +1 -1
  20. package/dist/cli/studio/actions.js +1 -0
  21. package/dist/cli/studio/actions.js.map +1 -1
  22. package/dist/cli/studio/renderers/ink.d.ts +19 -0
  23. package/dist/cli/studio/renderers/ink.d.ts.map +1 -0
  24. package/dist/cli/studio/renderers/ink.js +202 -0
  25. package/dist/cli/studio/renderers/ink.js.map +1 -0
  26. package/dist/cli/studio/start.d.ts +2 -1
  27. package/dist/cli/studio/start.d.ts.map +1 -1
  28. package/dist/cli/studio/start.js +42 -11
  29. package/dist/cli/studio/start.js.map +1 -1
  30. package/dist/cli/studio/state.d.ts +6 -2
  31. package/dist/cli/studio/state.d.ts.map +1 -1
  32. package/dist/cli/studio/state.js +1 -0
  33. package/dist/cli/studio/state.js.map +1 -1
  34. package/dist/cli/templates.d.ts +1 -1
  35. package/dist/cli/templates.d.ts.map +1 -1
  36. package/dist/cli/templates.js +1 -1
  37. package/dist/cli/version.d.ts.map +1 -1
  38. package/dist/cli/version.js +6 -2
  39. package/dist/cli/version.js.map +1 -1
  40. package/package.json +8 -1
package/README.md CHANGED
@@ -175,46 +175,59 @@ const csvAudit = veto.exportDecisions("csv");
175
175
 
176
176
  ## CLI Commands
177
177
 
178
- | Command | Description |
179
- | ------------------------ | ----------------------------------------------------- |
180
- | `npx veto` | Start Veto Studio (full-screen TUI) |
181
- | `npx veto --repl` | Start Veto Studio (explicit flag) |
182
- | `npx veto repl` | Start Veto Studio |
183
- | `npx veto repl --legacy` | Start legacy line-based REPL |
184
- | `npx veto init` | Initialize Veto in current directory |
185
- | `npx veto learn` | Observe tool calls and generate starter policies |
186
- | `npx veto compile` | Compile natural-language policy text into YAML |
187
- | `npx veto test` | Run adversarial policy gap analysis |
188
- | `npx veto scan` | Audit discovered tools vs loaded rule coverage |
189
- | `npx veto diff` | Diff policy snapshots and replay deterministic impact |
190
- | `npx veto version` | Show version |
178
+ Canonical package:
179
+
180
+ ```bash
181
+ npx veto-cli@latest
182
+ ```
183
+
184
+ Compatibility package (still supported):
185
+
186
+ ```bash
187
+ npx veto-sdk@latest
188
+ ```
189
+
190
+ | Command | Description |
191
+ | ------------------------------------------------------------------------------------- | ----------------------------------------------- |
192
+ | `veto` | Start Veto Studio (default interactive mode) |
193
+ | `veto studio` | Start Veto Studio explicitly |
194
+ | `veto repl --legacy` | Start legacy line-based REPL |
195
+ | `veto policy generate --tool <name> --prompt <text> [--target local\|cloud] [--json]` | Generate policy YAML (interactive-independent) |
196
+ | `veto policy apply --file <path> [--target local\|cloud] [--json]` | Apply policy file locally or create cloud draft |
197
+ | `veto guard check --tool <name> --args <json> [--mode ...] [--json]` | Run a deterministic guard check for a tool call |
198
+ | `veto cloud login` | Start cloud device login |
199
+ | `veto cloud whoami` | Show cloud CLI context |
200
+ | `veto doctor` | Runtime/auth/connectivity diagnostics |
201
+ | `veto init`, `veto learn`, `veto compile`, `veto test`, `veto scan`, `veto diff` | Existing core workflows |
202
+ | `veto version` | Show version |
191
203
 
192
204
  Migration notes:
193
205
 
194
- - Legacy REPL is still available via `npx veto repl --legacy`.
206
+ - Legacy REPL is still available via `veto repl --legacy`.
207
+ - `veto-cli` is the canonical package. `veto-sdk` CLI path remains compatibility-first.
195
208
  - Studio template fallback is opt-in (`--demo-template` or `studio.generation.allowTemplateFallback: true`).
196
- - OpenTUI currently requires Bun runtime APIs. On Node.js, Studio auto-falls back to ANSI renderer.
209
+ - Studio defaults to Ink on Node.js. OpenTUI remains optional (`--renderer opentui`) for Bun runtimes.
197
210
 
198
211
  Veto Studio examples:
199
212
 
200
213
  ```bash
201
214
  # Start full-screen Veto Studio
202
- npx veto
215
+ npx veto-cli@latest
203
216
 
204
217
  # Start Studio with explicit flag
205
- npx veto --repl
218
+ npx veto-cli@latest studio
206
219
 
207
220
  # Force ANSI renderer
208
- npx veto repl --renderer ansi
221
+ npx veto-cli@latest studio --renderer ansi
209
222
 
210
223
  # Open a specific workspace from multi-repo root
211
- npx veto repl --directory ./packages/sdk
224
+ npx veto-cli@latest studio --directory ./packages/sdk
212
225
 
213
226
  # Enable explicit template demo mode (otherwise no silent fallback in Studio)
214
- npx veto repl --demo-template
227
+ npx veto-cli@latest studio --demo-template
215
228
 
216
229
  # Legacy line-based REPL remains available
217
- npx veto repl --legacy
230
+ npx veto-cli@latest repl --legacy
218
231
  ```
219
232
 
220
233
  Legacy REPL slash-command examples:
package/dist/cli/bin.js CHANGED
@@ -1,508 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { init } from './init.js';
3
- import { Observer, PolicyGenerator, parseDuration, policiesToYaml } from './learn.js';
4
- import { compile } from './compile.js';
5
- import { test } from './test.js';
6
- import { scan } from './scan.js';
7
- import { diff } from './diff.js';
8
- import { startRepl } from './repl.js';
9
- import { startStudio } from './studio/start.js';
10
- import { agentInit, agentPolicyList, agentPolicyAdd, agentScan, agentConfig } from './agent.js';
11
- import { getCliVersion } from './version.js';
12
- import { mkdirSync, writeFileSync } from 'node:fs';
13
- import { dirname, resolve } from 'node:path';
14
- const VERSION = getCliVersion();
15
- const VALID_PROVIDERS = new Set(['openai', 'anthropic', 'gemini', 'openrouter']);
16
- function printHelp() {
17
- console.log(`
18
- Veto - AI Agent Tool Call Guardrail
19
-
20
- Usage:
21
- veto [command] [options]
22
-
23
- Commands:
24
- repl Start Veto Studio (full-screen TUI)
25
- init Initialize Veto in the current directory
26
- agent Agent-native commands (policy add, list, scan, config)
27
- learn Observe tool calls and generate policies
28
- compile Compile natural language policies to deterministic YAML rules
29
- test Run adversarial policy gap analysis
30
- scan Audit tool coverage against loaded rules
31
- diff Compare policy snapshots and optional log impact replay
32
- version Show version information
33
- help Show this help message
34
-
35
- Agent Commands:
36
- agent init Initialize Veto in agent mode (no prompts)
37
- agent policy add "..." Add a policy from natural language
38
- agent policy list List all policies in the project
39
- agent scan Scan tools and show coverage
40
- agent config Show current Veto configuration
41
-
42
- No command:
43
- Starts Veto Studio (same as "veto repl")
44
-
45
- Options:
46
- --repl Force Studio mode (same as "veto repl")
47
- --legacy Use legacy line-based REPL instead of Studio
48
- --directory <path> Set workspace directory for Studio/scan
49
- --renderer <mode> Renderer: auto, opentui, ansi (Studio)
50
- --include-examples Include examples/** when scanning workspace
51
- --include-tests Include test/**, tests/**, __tests__/** when scanning
52
- --demo-template Allow template-only generation when endpoints are unavailable
53
- --force, -f Force overwrite existing files (init)
54
- --pack <name> Scaffold with a built-in policy pack (init)
55
- --mode <mode> Validation mode: local, cloud, kernel, custom (init)
56
- --approval Enable human approval webhook (init)
57
- --agent Agent mode - no interactive prompts (init)
58
- --yes, -y Skip confirmation prompts (init)
59
- --quiet, -q Suppress output
60
- --help, -h Show help
61
-
62
- REPL Slash Commands:
63
- /scan Rescan tools and pack suggestions
64
- /test <tool>({args}) Local-only policy evaluation (no network)
65
- /test-suite Run generated scenarios against current rules
66
- /explain <ruleId> Explain a rule in plain language
67
- /list Show loaded session rules
68
- /load <file> Merge a YAML rule file into session
69
- /export [file] Export merged session rules
70
- /clear Reload baseline rules, drop session additions
71
- /quit Exit REPL
72
- Aliases: /q /? /s /t /ts /e /ls /x /c
73
-
74
- Learn Options:
75
- --runs <n> Stop after n tool calls
76
- --duration <time> Stop after duration (e.g., 30s, 10m, 1h)
77
- --output <path> Output YAML file path (default: ./veto/rules/learned.yaml)
78
- --margin <n> Numeric range margin as decimal (default: 0.1)
79
-
80
- Compile Options:
81
- --input <text> Policy description as inline text
82
- --file <path> Path to a text file containing policy descriptions
83
- --output <path> Output file (.yaml) or directory for generated rules
84
- --provider <name> LLM provider: openai, anthropic, gemini, openrouter
85
- --model <name> Model identifier (e.g. gpt-4o, claude-sonnet-4-5-20250929)
86
-
87
- Test Options:
88
- --policy <path> Policy directory (default: ./veto/rules/)
89
- --output <file> Write JSON report to file
90
- --format <fmt> Output format: text or json (default: text)
91
-
92
- Scan Options:
93
- --directory <path> Project directory to scan
94
- --include-examples Include examples/** in discovery scope
95
- --include-tests Include test directories in discovery scope
96
- --fail-uncovered Exit with code 1 when uncovered tools are found
97
- --suggest Include inline YAML starter snippets for uncovered tools
98
- --format <fmt> Output format: text or json (default: text)
99
-
100
- Diff Options:
101
- <policy-path> Compare working file with HEAD snapshot (git mode)
102
- --old <path> Explicit old policy file or directory
103
- --new <path> Explicit new policy file or directory
104
- --log <path> JSONL tool-call log for deterministic impact replay
105
- --format <fmt> Output format: text or json (default: text)
106
-
107
- Examples:
108
- veto init Initialize Veto in current directory (interactive wizard)
109
- veto init --agent Initialize in agent mode (no prompts)
110
- veto init --agent --pack @veto/financial --mode local
111
- veto Start Veto Studio
112
- veto --repl Start Veto Studio (explicit flag)
113
- veto repl Start Veto Studio
114
- veto repl --legacy Start legacy line-based REPL
115
- veto repl --renderer ansi Force ANSI renderer
116
- veto repl --directory ./packages/sdk
117
- veto repl --demo-template Enable explicit template demo mode
118
- veto init --pack coding-agent Initialize with extends: "@veto/coding-agent"
119
- veto init --mode cloud --approval Initialize with cloud mode + human approval
120
- veto init --force Reinitialize, overwriting existing files
121
- veto learn --runs 10 Observe 10 tool calls then generate policies
122
- veto learn --duration 30m Observe for 30 minutes
123
- veto compile --input 'Block emails outside company domain' --output ./veto/rules/email.yaml
124
- veto compile --file policies.txt --output ./veto/rules/
125
- veto test Analyze policies for gaps
126
- veto test --policy ./rules Analyze specific policy directory
127
- veto test --output report.json Save JSON report
128
- veto scan Audit tool coverage in current project
129
- veto scan --directory ./packages/sdk
130
- veto scan --suggest Show inline YAML snippets for uncovered tools
131
- veto scan --fail-uncovered Fail CI when uncovered tools are detected
132
- veto diff financial.yaml Compare veto/rules/financial.yaml vs HEAD
133
- veto diff --old v1 --new v2 Compare two policy directories
134
- veto diff financial.yaml --log calls.jsonl
135
- `);
136
- }
137
- function printVersion() {
138
- console.log(`veto v${VERSION}`);
139
- }
140
- function parseArgs(args) {
141
- const flags = {};
142
- const values = {};
143
- const positionals = [];
144
- let command = '';
145
- const valueFlags = new Set([
146
- 'runs', 'duration', 'output', 'margin',
147
- 'input', 'file', 'provider', 'model',
148
- 'policy', 'format', 'pack',
149
- 'old', 'new', 'log', 'mode',
150
- 'directory', 'prompt', 'renderer',
151
- ]);
152
- for (let i = 0; i < args.length; i++) {
153
- const arg = args[i];
154
- if (arg.startsWith('--')) {
155
- const flag = arg.slice(2);
156
- if (valueFlags.has(flag) && i + 1 < args.length) {
157
- values[flag] = args[++i];
158
- }
159
- else {
160
- flags[flag] = true;
161
- }
162
- }
163
- else if (arg.startsWith('-')) {
164
- const shortFlags = arg.slice(1).split('');
165
- for (const f of shortFlags) {
166
- switch (f) {
167
- case 'f':
168
- flags['force'] = true;
169
- break;
170
- case 'q':
171
- flags['quiet'] = true;
172
- break;
173
- case 'y':
174
- flags['yes'] = true;
175
- break;
176
- case 'h':
177
- flags['help'] = true;
178
- break;
179
- }
180
- }
181
- }
182
- else if (!command) {
183
- command = arg;
184
- }
185
- else {
186
- positionals.push(arg);
187
- }
188
- }
189
- return { command, positionals, flags, values };
190
- }
191
- function parseRendererPreference(rawValue) {
192
- if (!rawValue) {
193
- return 'auto';
194
- }
195
- if (rawValue === 'auto' || rawValue === 'opentui' || rawValue === 'ansi') {
196
- return rawValue;
197
- }
198
- console.error(`Error: invalid --renderer value "${rawValue}". Expected auto|opentui|ansi.`);
199
- process.exit(1);
200
- }
201
- async function runStudio(flags, values) {
202
- if (flags['legacy']) {
203
- await startRepl({
204
- cwd: values['directory'],
205
- version: VERSION,
206
- });
207
- return;
208
- }
209
- await startStudio({
210
- cwd: process.cwd(),
211
- directory: values['directory'],
212
- renderer: parseRendererPreference(values['renderer']),
213
- includeExamples: flags['include-examples'],
214
- includeTests: flags['include-tests'],
215
- demoTemplate: flags['demo-template'],
216
- version: VERSION,
217
- });
218
- }
219
- async function runLearn(flags, values) {
220
- const quiet = flags['quiet'] ?? false;
221
- const stopCondition = {};
222
- if (values['runs']) {
223
- const runs = parseInt(values['runs'], 10);
224
- if (isNaN(runs) || runs <= 0) {
225
- console.error('--runs must be a positive integer');
226
- process.exit(1);
227
- }
228
- stopCondition.runs = runs;
229
- }
230
- if (values['duration']) {
231
- stopCondition.durationMs = parseDuration(values['duration']);
232
- }
233
- if (!stopCondition.runs && !stopCondition.durationMs) {
234
- console.error('veto learn requires --runs or --duration');
235
- console.error('Example: veto learn --runs 10');
236
- process.exit(1);
237
- }
238
- const margin = values['margin'] ? parseFloat(values['margin']) : 0.1;
239
- if (values['margin'] && (isNaN(margin) || margin < 0 || margin > 1)) {
240
- console.error('--margin must be a number between 0 and 1');
241
- process.exit(1);
242
- }
243
- const outputPath = resolve(values['output'] ?? './veto/rules/learned.yaml');
244
- const observer = new Observer(stopCondition);
245
- observer.start();
246
- if (!quiet) {
247
- console.log('');
248
- console.log('Veto Learn - Observing tool calls...');
249
- if (stopCondition.runs)
250
- console.log(` Stop after: ${stopCondition.runs} calls`);
251
- if (stopCondition.durationMs)
252
- console.log(` Stop after: ${values['duration']}`);
253
- console.log(` Output: ${outputPath}`);
254
- console.log(` Margin: ${margin}`);
255
- console.log('');
256
- console.log('Reading tool calls from stdin (one JSON object per line)...');
257
- console.log('Format: {"tool": "tool_name", "args": {...}}');
258
- console.log('');
259
- }
260
- const readline = await import('node:readline');
261
- const rl = readline.createInterface({ input: process.stdin });
262
- for await (const line of rl) {
263
- if (observer.stopped)
264
- break;
265
- const trimmed = line.trim();
266
- if (!trimmed)
267
- continue;
268
- try {
269
- const parsed = JSON.parse(trimmed);
270
- const toolName = parsed.tool ?? parsed.name;
271
- const args = parsed.args ?? parsed.arguments ?? {};
272
- if (!toolName || typeof toolName !== 'string') {
273
- if (!quiet)
274
- console.error(' Skipping line: missing "tool" or "name" field');
275
- continue;
276
- }
277
- observer.recordRaw(toolName, args);
278
- if (!quiet)
279
- console.log(` [${observer.callCount}] ${toolName}(${JSON.stringify(args).slice(0, 60)})`);
280
- }
281
- catch {
282
- if (!quiet)
283
- console.error(` Skipping invalid JSON: ${trimmed.slice(0, 50)}`);
284
- }
285
- if (observer.shouldStop())
286
- break;
287
- }
288
- rl.close();
289
- const observations = observer.getObservations();
290
- const generator = new PolicyGenerator(margin);
291
- const policies = generator.generate(observations);
292
- if (policies.length === 0) {
293
- if (!quiet)
294
- console.log('No tool calls observed. No policies generated.');
295
- process.exit(0);
296
- }
297
- const yaml = policiesToYaml(policies);
298
- mkdirSync(dirname(outputPath), { recursive: true });
299
- writeFileSync(outputPath, yaml, 'utf-8');
300
- if (!quiet) {
301
- console.log('');
302
- console.log(`Generated ${policies.length} policies from ${observer.callCount} observations.`);
303
- console.log(`Output: ${outputPath}`);
304
- console.log('');
305
- for (const p of policies) {
306
- console.log(` ${p.toolName}: ${p.constraints.length} constraints`);
307
- }
308
- console.log('');
309
- }
310
- }
311
- async function main() {
312
- const args = process.argv.slice(2);
313
- const { command, positionals, flags, values } = parseArgs(args);
314
- if (flags['help'] || command === 'help') {
315
- printHelp();
316
- process.exit(0);
317
- }
318
- if (flags['version'] || command === 'version') {
319
- printVersion();
320
- process.exit(0);
321
- }
322
- if (flags['repl']) {
323
- if (command && command !== '') {
324
- console.error('Error: --repl cannot be combined with another command');
325
- process.exit(1);
326
- }
327
- await runStudio(flags, values);
328
- process.exit(0);
329
- }
330
- switch (command) {
331
- case 'repl': {
332
- await runStudio(flags, values);
333
- process.exit(0);
334
- break;
335
- }
336
- case 'init': {
337
- const result = await init({
338
- force: flags['force'],
339
- pack: values['pack'],
340
- quiet: flags['quiet'],
341
- agent: flags['agent'],
342
- yes: flags['yes'],
343
- mode: values['mode'],
344
- approval: flags['approval'],
345
- });
346
- process.exit(result.success ? 0 : 1);
347
- break;
348
- }
349
- case 'agent': {
350
- const subCommand = positionals[0] ?? 'help';
351
- const subArgs = positionals.slice(1);
352
- switch (subCommand) {
353
- case 'init': {
354
- await agentInit({
355
- directory: values['directory'],
356
- format: values['format'],
357
- });
358
- process.exit(0);
359
- break;
360
- }
361
- case 'policy': {
362
- const policyCmd = subArgs[0] ?? 'help';
363
- switch (policyCmd) {
364
- case 'add': {
365
- const prompt = values['prompt'] ?? subArgs.slice(1).join(' ');
366
- if (!prompt) {
367
- console.error('Error: policy add requires a prompt');
368
- console.error('Usage: veto agent policy add "block external API calls"');
369
- process.exit(1);
370
- }
371
- await agentPolicyAdd(prompt, {
372
- directory: values['directory'],
373
- format: values['format'],
374
- });
375
- process.exit(0);
376
- break;
377
- }
378
- case 'list': {
379
- await agentPolicyList({
380
- directory: values['directory'],
381
- format: values['format'],
382
- });
383
- process.exit(0);
384
- break;
385
- }
386
- default: {
387
- console.error(`Unknown agent policy command: ${policyCmd}`);
388
- console.error('Usage: veto agent policy [add|list]');
389
- process.exit(1);
390
- }
391
- }
392
- break;
393
- }
394
- case 'scan': {
395
- await agentScan({
396
- directory: values['directory'],
397
- format: values['format'],
398
- });
399
- process.exit(0);
400
- break;
401
- }
402
- case 'config': {
403
- await agentConfig({
404
- directory: values['directory'],
405
- format: values['format'],
406
- });
407
- process.exit(0);
408
- break;
409
- }
410
- case 'help':
411
- default: {
412
- console.log('Agent commands:');
413
- console.log(' veto agent init Initialize Veto in agent mode');
414
- console.log(' veto agent policy add "..." Add a policy from natural language');
415
- console.log(' veto agent policy list List all policies');
416
- console.log(' veto agent scan Scan tools and show coverage');
417
- console.log(' veto agent config Show current configuration');
418
- console.log('');
419
- console.log('Options:');
420
- console.log(' --directory <path> Project directory');
421
- console.log(' --format json|yaml Output format (default: json)');
422
- process.exit(0);
423
- break;
424
- }
425
- }
426
- break;
427
- }
428
- case 'learn': {
429
- await runLearn(flags, values);
430
- process.exit(0);
431
- break;
432
- }
433
- case 'compile': {
434
- if (!values['output']) {
435
- console.error('Error: --output is required for compile command');
436
- process.exit(1);
437
- }
438
- if (values['provider'] && !VALID_PROVIDERS.has(values['provider'])) {
439
- console.error(`Error: Invalid provider "${values['provider']}". Must be one of: openai, anthropic, gemini, openrouter`);
440
- process.exit(1);
441
- }
442
- const result = await compile({
443
- input: values['input'],
444
- file: values['file'],
445
- output: values['output'],
446
- provider: values['provider'],
447
- model: values['model'],
448
- quiet: flags['quiet'],
449
- });
450
- process.exit(result.success ? 0 : 1);
451
- break;
452
- }
453
- case 'test': {
454
- const testResult = await test({
455
- policy: values['policy'],
456
- output: values['output'],
457
- quiet: flags['quiet'],
458
- format: values['format'] ?? undefined,
459
- });
460
- process.exit(testResult.success ? 0 : 1);
461
- break;
462
- }
463
- case 'scan': {
464
- const scanResult = await scan({
465
- directory: values['directory'],
466
- quiet: flags['quiet'],
467
- failUncovered: flags['fail-uncovered'],
468
- suggest: flags['suggest'],
469
- includeExamples: flags['include-examples'],
470
- includeTests: flags['include-tests'],
471
- format: values['format'] ?? undefined,
472
- });
473
- process.exit(scanResult.success ? 0 : 1);
474
- break;
475
- }
476
- case 'diff': {
477
- if (positionals.length > 1) {
478
- console.error('Error: diff command accepts at most one <policy-path> positional argument');
479
- process.exit(1);
480
- }
481
- const diffResult = await diff({
482
- quiet: flags['quiet'],
483
- policyPath: positionals[0],
484
- old: values['old'],
485
- new: values['new'],
486
- log: values['log'],
487
- format: values['format'] ?? undefined,
488
- });
489
- process.exit(diffResult.success ? 0 : 1);
490
- break;
491
- }
492
- case '': {
493
- await runStudio(flags, values);
494
- process.exit(0);
495
- break;
496
- }
497
- default: {
498
- console.error(`Unknown command: ${command}`);
499
- console.error('Run "veto help" for usage information.');
500
- process.exit(1);
501
- }
502
- }
503
- }
504
- main().catch((error) => {
505
- console.error('Error:', error.message);
506
- process.exit(1);
507
- });
2
+ import { runCliOrExit } from './runner.js';
3
+ void runCliOrExit();
508
4
  //# sourceMappingURL=bin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,KAAK,YAAY,EAAE,CAAC"}