@quonfig/cli 0.0.5 → 0.0.7
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 +209 -161
- package/dist/codegen/local-config-reader.d.ts +6 -0
- package/dist/codegen/local-config-reader.js +113 -0
- package/dist/commands/create.js +3 -0
- package/dist/commands/generate.d.ts +3 -2
- package/dist/commands/generate.js +18 -10
- package/dist/commands/login.js +22 -15
- package/dist/commands/profile.d.ts +1 -0
- package/dist/commands/profile.js +6 -42
- package/dist/commands/sdk-key/create.d.ts +11 -0
- package/dist/commands/sdk-key/create.js +100 -0
- package/dist/commands/sdk-key/list.d.ts +10 -0
- package/dist/commands/sdk-key/list.js +48 -0
- package/dist/commands/sdk-key/revoke.d.ts +10 -0
- package/dist/commands/sdk-key/revoke.js +30 -0
- package/dist/commands/sdk-key.d.ts +6 -0
- package/dist/commands/sdk-key.js +15 -0
- package/dist/commands/whoami.js +8 -8
- package/dist/commands/workspace/switch.d.ts +7 -0
- package/dist/commands/workspace/switch.js +90 -0
- package/dist/commands/workspace.js +14 -23
- package/dist/index.d.ts +1 -0
- package/dist/index.js +9 -2
- package/dist/interactive-prompt.js +0 -4
- package/dist/ui/get-value.js +4 -1
- package/dist/util/get-client.js +34 -11
- package/dist/util/token-storage.d.ts +6 -0
- package/dist/util/token-storage.js +17 -0
- package/dist/verify/validate.js +28 -8
- package/oclif.manifest.json +433 -118
- package/package.json +1 -1
- package/dist/codegen/config-downloader.d.ts +0 -7
- package/dist/codegen/config-downloader.js +0 -26
- package/dist/commands/download.d.ts +0 -13
- package/dist/commands/download.js +0 -63
- package/dist/commands/serve.d.ts +0 -13
- package/dist/commands/serve.js +0 -101
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ $ npm install -g @quonfig/cli
|
|
|
14
14
|
$ qfg COMMAND
|
|
15
15
|
running command...
|
|
16
16
|
$ qfg (--version)
|
|
17
|
-
@quonfig/cli/0.0.
|
|
17
|
+
@quonfig/cli/0.0.7 linux-x64 node-v24.4.1
|
|
18
18
|
$ qfg --help [COMMAND]
|
|
19
19
|
USAGE
|
|
20
20
|
$ qfg COMMAND
|
|
@@ -27,7 +27,6 @@ USAGE
|
|
|
27
27
|
<!-- commands -->
|
|
28
28
|
* [`qfg config-schema`](#qfg-config-schema)
|
|
29
29
|
* [`qfg create NAME`](#qfg-create-name)
|
|
30
|
-
* [`qfg download`](#qfg-download)
|
|
31
30
|
* [`qfg generate`](#qfg-generate)
|
|
32
31
|
* [`qfg generate-new-hex-key`](#qfg-generate-new-hex-key)
|
|
33
32
|
* [`qfg get [NAME]`](#qfg-get-name)
|
|
@@ -39,10 +38,12 @@ USAGE
|
|
|
39
38
|
* [`qfg logout`](#qfg-logout)
|
|
40
39
|
* [`qfg mcp`](#qfg-mcp)
|
|
41
40
|
* [`qfg override [NAME]`](#qfg-override-name)
|
|
42
|
-
* [`qfg profile`](#qfg-profile)
|
|
43
41
|
* [`qfg pull`](#qfg-pull)
|
|
44
42
|
* [`qfg schema NAME`](#qfg-schema-name)
|
|
45
|
-
* [`qfg
|
|
43
|
+
* [`qfg sdk-key`](#qfg-sdk-key)
|
|
44
|
+
* [`qfg sdk-key create`](#qfg-sdk-key-create)
|
|
45
|
+
* [`qfg sdk-key list`](#qfg-sdk-key-list)
|
|
46
|
+
* [`qfg sdk-key revoke KEYID`](#qfg-sdk-key-revoke-keyid)
|
|
46
47
|
* [`qfg set-default [NAME]`](#qfg-set-default-name)
|
|
47
48
|
* [`qfg set-rollout [NAME]`](#qfg-set-rollout-name)
|
|
48
49
|
* [`qfg sync`](#qfg-sync)
|
|
@@ -50,6 +51,7 @@ USAGE
|
|
|
50
51
|
* [`qfg whoami`](#qfg-whoami)
|
|
51
52
|
* [`qfg workspace`](#qfg-workspace)
|
|
52
53
|
* [`qfg workspace bootstrap`](#qfg-workspace-bootstrap)
|
|
54
|
+
* [`qfg workspace switch`](#qfg-workspace-switch)
|
|
53
55
|
|
|
54
56
|
## `qfg config-schema`
|
|
55
57
|
|
|
@@ -78,7 +80,7 @@ EXAMPLES
|
|
|
78
80
|
$ qfg config-schema --json-schema # full JSON Schema document (copy into your editor)
|
|
79
81
|
```
|
|
80
82
|
|
|
81
|
-
_See code: [src/commands/config-schema.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
83
|
+
_See code: [src/commands/config-schema.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/config-schema.ts)_
|
|
82
84
|
|
|
83
85
|
## `qfg create NAME`
|
|
84
86
|
|
|
@@ -87,7 +89,7 @@ Create a new feature flag, config value, or other item.
|
|
|
87
89
|
```
|
|
88
90
|
USAGE
|
|
89
91
|
$ qfg create NAME --type boolean-flag|boolean|string|double|int|string-list|json [--json] [--interactive]
|
|
90
|
-
[--no-color] [--verbose] [-
|
|
92
|
+
[--no-color] [--verbose] [-w <value>] [--confidential] [--env-var <value>] [--value <value>] [--secret]
|
|
91
93
|
[--secret-key-name <value>]
|
|
92
94
|
|
|
93
95
|
ARGUMENTS
|
|
@@ -104,11 +106,11 @@ FLAGS
|
|
|
104
106
|
--value=<value> default value for your new item
|
|
105
107
|
|
|
106
108
|
GLOBAL FLAGS
|
|
107
|
-
-
|
|
108
|
-
--[no-]interactive
|
|
109
|
-
--json
|
|
110
|
-
--no-color
|
|
111
|
-
--verbose
|
|
109
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
110
|
+
--[no-]interactive Force interactive mode
|
|
111
|
+
--json Format output as json.
|
|
112
|
+
--no-color Do not colorize output
|
|
113
|
+
--verbose Verbose output
|
|
112
114
|
|
|
113
115
|
DESCRIPTION
|
|
114
116
|
Create a new feature flag, config value, or other item.
|
|
@@ -150,40 +152,7 @@ EXAMPLES
|
|
|
150
152
|
$ qfg set-rollout my.new.flag --environment production --true-percent 20
|
|
151
153
|
```
|
|
152
154
|
|
|
153
|
-
_See code: [src/commands/create.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
154
|
-
|
|
155
|
-
## `qfg download`
|
|
156
|
-
|
|
157
|
-
Download a Datafile for a given environment
|
|
158
|
-
|
|
159
|
-
```
|
|
160
|
-
USAGE
|
|
161
|
-
$ qfg download [--json] [--interactive] [--no-color] [--verbose] [-p <value>] [--environment <value>]
|
|
162
|
-
[--sdk-key <value>]
|
|
163
|
-
|
|
164
|
-
FLAGS
|
|
165
|
-
--environment=<value> environment to download
|
|
166
|
-
--sdk-key=<value> SDK key for authentication (uses legacy download endpoint)
|
|
167
|
-
|
|
168
|
-
GLOBAL FLAGS
|
|
169
|
-
-p, --profile=<value> Profile to use (defaults to ENV var QUONFIG_PROFILE or "default")
|
|
170
|
-
--[no-]interactive Force interactive mode
|
|
171
|
-
--json Format output as json.
|
|
172
|
-
--no-color Do not colorize output
|
|
173
|
-
--verbose Verbose output
|
|
174
|
-
|
|
175
|
-
DESCRIPTION
|
|
176
|
-
Download a Datafile for a given environment
|
|
177
|
-
|
|
178
|
-
You can serve a datafile using the `serve` command.
|
|
179
|
-
|
|
180
|
-
EXAMPLES
|
|
181
|
-
$ qfg download --environment=test
|
|
182
|
-
|
|
183
|
-
$ qfg download --environment=test --sdk-key=YOUR_SDK_KEY
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
_See code: [src/commands/download.ts](https://github.com/quonfig/cli/blob/v0.0.5/src/commands/download.ts)_
|
|
155
|
+
_See code: [src/commands/create.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/create.ts)_
|
|
187
156
|
|
|
188
157
|
## `qfg generate`
|
|
189
158
|
|
|
@@ -191,20 +160,20 @@ Generate type definitions for your Quonfig configuration
|
|
|
191
160
|
|
|
192
161
|
```
|
|
193
162
|
USAGE
|
|
194
|
-
$ qfg generate [--json] [--interactive] [--no-color] [--verbose] [
|
|
163
|
+
$ qfg generate [--json] [--interactive] [--no-color] [--verbose] [--dir <value>] [-o <value>] [--targets
|
|
195
164
|
<value>]
|
|
196
165
|
|
|
197
166
|
FLAGS
|
|
198
167
|
-o, --output-directory=<value> Override the output directory for generated files
|
|
168
|
+
--dir=<value> Path to local QUONFIG_DIR (defaults to QUONFIG_DIR env var)
|
|
199
169
|
--targets=<value> [default: react-ts] Determines for language/framework to generate code for (node-ts,
|
|
200
170
|
react-ts)
|
|
201
171
|
|
|
202
172
|
GLOBAL FLAGS
|
|
203
|
-
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
--verbose Verbose output
|
|
173
|
+
--[no-]interactive Force interactive mode
|
|
174
|
+
--json Format output as json.
|
|
175
|
+
--no-color Do not colorize output
|
|
176
|
+
--verbose Verbose output
|
|
208
177
|
|
|
209
178
|
DESCRIPTION
|
|
210
179
|
Generate type definitions for your Quonfig configuration
|
|
@@ -253,7 +222,7 @@ EXAMPLES
|
|
|
253
222
|
$ qfg generate --targets node-ts -o ./dist # combine with targets
|
|
254
223
|
```
|
|
255
224
|
|
|
256
|
-
_See code: [src/commands/generate.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
225
|
+
_See code: [src/commands/generate.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/generate.ts)_
|
|
257
226
|
|
|
258
227
|
## `qfg generate-new-hex-key`
|
|
259
228
|
|
|
@@ -276,7 +245,7 @@ EXAMPLES
|
|
|
276
245
|
$ qfg generate-new-hex-key
|
|
277
246
|
```
|
|
278
247
|
|
|
279
|
-
_See code: [src/commands/generate-new-hex-key.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
248
|
+
_See code: [src/commands/generate-new-hex-key.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/generate-new-hex-key.ts)_
|
|
280
249
|
|
|
281
250
|
## `qfg get [NAME]`
|
|
282
251
|
|
|
@@ -284,7 +253,7 @@ Get the value of a config/feature-flag/etc.
|
|
|
284
253
|
|
|
285
254
|
```
|
|
286
255
|
USAGE
|
|
287
|
-
$ qfg get [NAME] [--json] [--interactive] [--no-color] [--verbose] [-
|
|
256
|
+
$ qfg get [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--environment <value>]
|
|
288
257
|
|
|
289
258
|
ARGUMENTS
|
|
290
259
|
NAME config/feature-flag/etc. name
|
|
@@ -293,11 +262,11 @@ FLAGS
|
|
|
293
262
|
--environment=<value> environment to evaluate in
|
|
294
263
|
|
|
295
264
|
GLOBAL FLAGS
|
|
296
|
-
-
|
|
297
|
-
--[no-]interactive
|
|
298
|
-
--json
|
|
299
|
-
--no-color
|
|
300
|
-
--verbose
|
|
265
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
266
|
+
--[no-]interactive Force interactive mode
|
|
267
|
+
--json Format output as json.
|
|
268
|
+
--no-color Do not colorize output
|
|
269
|
+
--verbose Verbose output
|
|
301
270
|
|
|
302
271
|
DESCRIPTION
|
|
303
272
|
Get the value of a config/feature-flag/etc.
|
|
@@ -308,7 +277,7 @@ EXAMPLES
|
|
|
308
277
|
$ qfg get my.config.name --environment=production
|
|
309
278
|
```
|
|
310
279
|
|
|
311
|
-
_See code: [src/commands/get.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
280
|
+
_See code: [src/commands/get.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/get.ts)_
|
|
312
281
|
|
|
313
282
|
## `qfg info [NAME]`
|
|
314
283
|
|
|
@@ -316,7 +285,7 @@ Show current values, rules, and evaluation stats for a flag or config.
|
|
|
316
285
|
|
|
317
286
|
```
|
|
318
287
|
USAGE
|
|
319
|
-
$ qfg info [NAME] [--json] [--interactive] [--no-color] [--verbose] [-
|
|
288
|
+
$ qfg info [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--exclude-evaluations]
|
|
320
289
|
|
|
321
290
|
ARGUMENTS
|
|
322
291
|
NAME config/feature-flag/etc. name
|
|
@@ -325,11 +294,11 @@ FLAGS
|
|
|
325
294
|
--exclude-evaluations Exclude evaluation data
|
|
326
295
|
|
|
327
296
|
GLOBAL FLAGS
|
|
328
|
-
-
|
|
329
|
-
--[no-]interactive
|
|
330
|
-
--json
|
|
331
|
-
--no-color
|
|
332
|
-
--verbose
|
|
297
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
298
|
+
--[no-]interactive Force interactive mode
|
|
299
|
+
--json Format output as json.
|
|
300
|
+
--no-color Do not colorize output
|
|
301
|
+
--verbose Verbose output
|
|
333
302
|
|
|
334
303
|
DESCRIPTION
|
|
335
304
|
Show current values, rules, and evaluation stats for a flag or config.
|
|
@@ -352,7 +321,7 @@ EXAMPLES
|
|
|
352
321
|
$ qfg info my.config.name --exclude-evaluations # skip 24h stats
|
|
353
322
|
```
|
|
354
323
|
|
|
355
|
-
_See code: [src/commands/info.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
324
|
+
_See code: [src/commands/info.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/info.ts)_
|
|
356
325
|
|
|
357
326
|
## `qfg init [DIRECTORY]`
|
|
358
327
|
|
|
@@ -390,7 +359,7 @@ EXAMPLES
|
|
|
390
359
|
$ qfg init --dry-run
|
|
391
360
|
```
|
|
392
361
|
|
|
393
|
-
_See code: [src/commands/init.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
362
|
+
_See code: [src/commands/init.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/init.ts)_
|
|
394
363
|
|
|
395
364
|
## `qfg interactive`
|
|
396
365
|
|
|
@@ -408,7 +377,7 @@ EXAMPLES
|
|
|
408
377
|
$ qfg
|
|
409
378
|
```
|
|
410
379
|
|
|
411
|
-
_See code: [src/commands/interactive.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
380
|
+
_See code: [src/commands/interactive.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/interactive.ts)_
|
|
412
381
|
|
|
413
382
|
## `qfg list`
|
|
414
383
|
|
|
@@ -416,7 +385,7 @@ Show keys for your config/feature flags/etc.
|
|
|
416
385
|
|
|
417
386
|
```
|
|
418
387
|
USAGE
|
|
419
|
-
$ qfg list [--json] [--interactive] [--no-color] [--verbose] [-
|
|
388
|
+
$ qfg list [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--configs] [--feature-flags]
|
|
420
389
|
[--log-levels] [--schemas] [--segments]
|
|
421
390
|
|
|
422
391
|
FLAGS
|
|
@@ -427,11 +396,11 @@ FLAGS
|
|
|
427
396
|
--segments include segments
|
|
428
397
|
|
|
429
398
|
GLOBAL FLAGS
|
|
430
|
-
-
|
|
431
|
-
--[no-]interactive
|
|
432
|
-
--json
|
|
433
|
-
--no-color
|
|
434
|
-
--verbose
|
|
399
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
400
|
+
--[no-]interactive Force interactive mode
|
|
401
|
+
--json Format output as json.
|
|
402
|
+
--no-color Do not colorize output
|
|
403
|
+
--verbose Verbose output
|
|
435
404
|
|
|
436
405
|
DESCRIPTION
|
|
437
406
|
Show keys for your config/feature flags/etc.
|
|
@@ -445,7 +414,7 @@ EXAMPLES
|
|
|
445
414
|
$ qfg list --feature-flags
|
|
446
415
|
```
|
|
447
416
|
|
|
448
|
-
_See code: [src/commands/list.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
417
|
+
_See code: [src/commands/list.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/list.ts)_
|
|
449
418
|
|
|
450
419
|
## `qfg login`
|
|
451
420
|
|
|
@@ -453,10 +422,7 @@ Log in to Quonfig via WorkOS device authorization
|
|
|
453
422
|
|
|
454
423
|
```
|
|
455
424
|
USAGE
|
|
456
|
-
$ qfg login [--json] [--interactive] [--no-color] [--verbose]
|
|
457
|
-
|
|
458
|
-
FLAGS
|
|
459
|
-
-p, --profile=<value> Profile name to create or update (defaults to "default")
|
|
425
|
+
$ qfg login [--json] [--interactive] [--no-color] [--verbose]
|
|
460
426
|
|
|
461
427
|
GLOBAL FLAGS
|
|
462
428
|
--[no-]interactive Force interactive mode
|
|
@@ -473,7 +439,7 @@ EXAMPLES
|
|
|
473
439
|
$ qfg login --profile myprofile
|
|
474
440
|
```
|
|
475
441
|
|
|
476
|
-
_See code: [src/commands/login.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
442
|
+
_See code: [src/commands/login.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/login.ts)_
|
|
477
443
|
|
|
478
444
|
## `qfg logout`
|
|
479
445
|
|
|
@@ -496,7 +462,7 @@ EXAMPLES
|
|
|
496
462
|
$ qfg logout
|
|
497
463
|
```
|
|
498
464
|
|
|
499
|
-
_See code: [src/commands/logout.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
465
|
+
_See code: [src/commands/logout.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/logout.ts)_
|
|
500
466
|
|
|
501
467
|
## `qfg mcp`
|
|
502
468
|
|
|
@@ -529,7 +495,7 @@ EXAMPLES
|
|
|
529
495
|
$ qfg mcp --url http://local-app.quonfig-staging.com:3003/api/v1/mcp
|
|
530
496
|
```
|
|
531
497
|
|
|
532
|
-
_See code: [src/commands/mcp.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
498
|
+
_See code: [src/commands/mcp.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/mcp.ts)_
|
|
533
499
|
|
|
534
500
|
## `qfg override [NAME]`
|
|
535
501
|
|
|
@@ -537,7 +503,7 @@ Override the value of an item for your user/SDK key combo
|
|
|
537
503
|
|
|
538
504
|
```
|
|
539
505
|
USAGE
|
|
540
|
-
$ qfg override [NAME] [--json] [--interactive] [--no-color] [--verbose] [-
|
|
506
|
+
$ qfg override [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--environment <value>]
|
|
541
507
|
[--remove] [--value <value>]
|
|
542
508
|
|
|
543
509
|
ARGUMENTS
|
|
@@ -549,11 +515,11 @@ FLAGS
|
|
|
549
515
|
--value=<value> value to use for your override
|
|
550
516
|
|
|
551
517
|
GLOBAL FLAGS
|
|
552
|
-
-
|
|
553
|
-
--[no-]interactive
|
|
554
|
-
--json
|
|
555
|
-
--no-color
|
|
556
|
-
--verbose
|
|
518
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
519
|
+
--[no-]interactive Force interactive mode
|
|
520
|
+
--json Format output as json.
|
|
521
|
+
--no-color Do not colorize output
|
|
522
|
+
--verbose Verbose output
|
|
557
523
|
|
|
558
524
|
DESCRIPTION
|
|
559
525
|
Override the value of an item for your user/SDK key combo
|
|
@@ -568,30 +534,7 @@ EXAMPLES
|
|
|
568
534
|
$ qfg override my.double.config --value=3.14159
|
|
569
535
|
```
|
|
570
536
|
|
|
571
|
-
_See code: [src/commands/override.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
572
|
-
|
|
573
|
-
## `qfg profile`
|
|
574
|
-
|
|
575
|
-
Manage profiles and set default profile
|
|
576
|
-
|
|
577
|
-
```
|
|
578
|
-
USAGE
|
|
579
|
-
$ qfg profile [--json] [--interactive] [--no-color] [--verbose]
|
|
580
|
-
|
|
581
|
-
GLOBAL FLAGS
|
|
582
|
-
--[no-]interactive Force interactive mode
|
|
583
|
-
--json Format output as json.
|
|
584
|
-
--no-color Do not colorize output
|
|
585
|
-
--verbose Verbose output
|
|
586
|
-
|
|
587
|
-
DESCRIPTION
|
|
588
|
-
Manage profiles and set default profile
|
|
589
|
-
|
|
590
|
-
EXAMPLES
|
|
591
|
-
$ qfg profile
|
|
592
|
-
```
|
|
593
|
-
|
|
594
|
-
_See code: [src/commands/profile.ts](https://github.com/quonfig/cli/blob/v0.0.5/src/commands/profile.ts)_
|
|
537
|
+
_See code: [src/commands/override.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/override.ts)_
|
|
595
538
|
|
|
596
539
|
## `qfg pull`
|
|
597
540
|
|
|
@@ -635,7 +578,7 @@ EXAMPLES
|
|
|
635
578
|
$ qfg pull # uses QUONFIG_DIR env var
|
|
636
579
|
```
|
|
637
580
|
|
|
638
|
-
_See code: [src/commands/pull.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
581
|
+
_See code: [src/commands/pull.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/pull.ts)_
|
|
639
582
|
|
|
640
583
|
## `qfg schema NAME`
|
|
641
584
|
|
|
@@ -643,7 +586,7 @@ Get or update first-class schema documents
|
|
|
643
586
|
|
|
644
587
|
```
|
|
645
588
|
USAGE
|
|
646
|
-
$ qfg schema NAME [--json] [--interactive] [--no-color] [--verbose] [-
|
|
589
|
+
$ qfg schema NAME [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--get] [--protected]
|
|
647
590
|
[--set-json-schema <value>] [--set-zod <value>]
|
|
648
591
|
|
|
649
592
|
ARGUMENTS
|
|
@@ -656,11 +599,11 @@ FLAGS
|
|
|
656
599
|
--set-zod=<value> compatibility alias for --set-json-schema; now expects plain JSON Schema
|
|
657
600
|
|
|
658
601
|
GLOBAL FLAGS
|
|
659
|
-
-
|
|
660
|
-
--[no-]interactive
|
|
661
|
-
--json
|
|
662
|
-
--no-color
|
|
663
|
-
--verbose
|
|
602
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
603
|
+
--[no-]interactive Force interactive mode
|
|
604
|
+
--json Format output as json.
|
|
605
|
+
--no-color Do not colorize output
|
|
606
|
+
--verbose Verbose output
|
|
664
607
|
|
|
665
608
|
DESCRIPTION
|
|
666
609
|
Get or update first-class schema documents
|
|
@@ -673,21 +616,15 @@ EXAMPLES
|
|
|
673
616
|
$ qfg schema my-schema --set-json-schema=@schemas/my-schema.json --protected
|
|
674
617
|
```
|
|
675
618
|
|
|
676
|
-
_See code: [src/commands/schema.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
619
|
+
_See code: [src/commands/schema.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/schema.ts)_
|
|
677
620
|
|
|
678
|
-
## `qfg
|
|
621
|
+
## `qfg sdk-key`
|
|
679
622
|
|
|
680
|
-
|
|
623
|
+
Manage SDK keys for your workspace
|
|
681
624
|
|
|
682
625
|
```
|
|
683
626
|
USAGE
|
|
684
|
-
$ qfg
|
|
685
|
-
|
|
686
|
-
ARGUMENTS
|
|
687
|
-
DATA-FILE file to read
|
|
688
|
-
|
|
689
|
-
FLAGS
|
|
690
|
-
--port=<value> [default: 3099] port to serve on
|
|
627
|
+
$ qfg sdk-key [--json] [--interactive] [--no-color] [--verbose]
|
|
691
628
|
|
|
692
629
|
GLOBAL FLAGS
|
|
693
630
|
--[no-]interactive Force interactive mode
|
|
@@ -696,20 +633,105 @@ GLOBAL FLAGS
|
|
|
696
633
|
--verbose Verbose output
|
|
697
634
|
|
|
698
635
|
DESCRIPTION
|
|
699
|
-
|
|
636
|
+
Manage SDK keys for your workspace
|
|
637
|
+
|
|
638
|
+
EXAMPLES
|
|
639
|
+
$ qfg sdk-key list
|
|
640
|
+
|
|
641
|
+
$ qfg sdk-key create --environment production --type server
|
|
642
|
+
|
|
643
|
+
$ qfg sdk-key revoke <key-id>
|
|
644
|
+
```
|
|
645
|
+
|
|
646
|
+
_See code: [src/commands/sdk-key.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/sdk-key.ts)_
|
|
647
|
+
|
|
648
|
+
## `qfg sdk-key create`
|
|
649
|
+
|
|
650
|
+
Create a new SDK key
|
|
651
|
+
|
|
652
|
+
```
|
|
653
|
+
USAGE
|
|
654
|
+
$ qfg sdk-key create [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [-e <value>] [-t
|
|
655
|
+
server|browser]
|
|
656
|
+
|
|
657
|
+
FLAGS
|
|
658
|
+
-e, --environment=<value> Environment name (e.g. production, staging)
|
|
659
|
+
-t, --type=<option> Key type: server (backend) or browser (frontend)
|
|
660
|
+
<options: server|browser>
|
|
661
|
+
|
|
662
|
+
GLOBAL FLAGS
|
|
663
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
664
|
+
--[no-]interactive Force interactive mode
|
|
665
|
+
--json Format output as json.
|
|
666
|
+
--no-color Do not colorize output
|
|
667
|
+
--verbose Verbose output
|
|
668
|
+
|
|
669
|
+
DESCRIPTION
|
|
670
|
+
Create a new SDK key
|
|
671
|
+
|
|
672
|
+
EXAMPLES
|
|
673
|
+
$ qfg sdk-key create --environment production --type server
|
|
674
|
+
|
|
675
|
+
$ qfg sdk-key create --environment staging --type browser
|
|
676
|
+
```
|
|
677
|
+
|
|
678
|
+
_See code: [src/commands/sdk-key/create.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/sdk-key/create.ts)_
|
|
700
679
|
|
|
701
|
-
|
|
680
|
+
## `qfg sdk-key list`
|
|
681
|
+
|
|
682
|
+
List SDK keys for your workspace
|
|
683
|
+
|
|
684
|
+
```
|
|
685
|
+
USAGE
|
|
686
|
+
$ qfg sdk-key list [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [-e <value>]
|
|
702
687
|
|
|
703
|
-
|
|
688
|
+
FLAGS
|
|
689
|
+
-e, --environment=<value> Filter by environment name
|
|
704
690
|
|
|
705
|
-
|
|
691
|
+
GLOBAL FLAGS
|
|
692
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
693
|
+
--[no-]interactive Force interactive mode
|
|
694
|
+
--json Format output as json.
|
|
695
|
+
--no-color Do not colorize output
|
|
696
|
+
--verbose Verbose output
|
|
706
697
|
|
|
698
|
+
DESCRIPTION
|
|
699
|
+
List SDK keys for your workspace
|
|
707
700
|
|
|
708
701
|
EXAMPLES
|
|
709
|
-
$ qfg
|
|
702
|
+
$ qfg sdk-key list
|
|
703
|
+
|
|
704
|
+
$ qfg sdk-key list --environment production
|
|
705
|
+
```
|
|
706
|
+
|
|
707
|
+
_See code: [src/commands/sdk-key/list.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/sdk-key/list.ts)_
|
|
708
|
+
|
|
709
|
+
## `qfg sdk-key revoke KEYID`
|
|
710
|
+
|
|
711
|
+
Revoke an SDK key by its ID
|
|
712
|
+
|
|
710
713
|
```
|
|
714
|
+
USAGE
|
|
715
|
+
$ qfg sdk-key revoke KEYID [--json] [--interactive] [--no-color] [--verbose] [-w <value>]
|
|
711
716
|
|
|
712
|
-
|
|
717
|
+
ARGUMENTS
|
|
718
|
+
KEYID ID of the SDK key to revoke
|
|
719
|
+
|
|
720
|
+
GLOBAL FLAGS
|
|
721
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
722
|
+
--[no-]interactive Force interactive mode
|
|
723
|
+
--json Format output as json.
|
|
724
|
+
--no-color Do not colorize output
|
|
725
|
+
--verbose Verbose output
|
|
726
|
+
|
|
727
|
+
DESCRIPTION
|
|
728
|
+
Revoke an SDK key by its ID
|
|
729
|
+
|
|
730
|
+
EXAMPLES
|
|
731
|
+
$ qfg sdk-key revoke a1b2c3d4-e5f6-7890-abcd-ef1234567890
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
_See code: [src/commands/sdk-key/revoke.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/sdk-key/revoke.ts)_
|
|
713
735
|
|
|
714
736
|
## `qfg set-default [NAME]`
|
|
715
737
|
|
|
@@ -717,7 +739,7 @@ Set the unconditional fallback value for a flag or config in a specific environm
|
|
|
717
739
|
|
|
718
740
|
```
|
|
719
741
|
USAGE
|
|
720
|
-
$ qfg set-default [NAME] [--json] [--interactive] [--no-color] [--verbose] [-
|
|
742
|
+
$ qfg set-default [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--confidential]
|
|
721
743
|
[--env-var <value>] [--environment <value>] [--value <value>] [--confirm] [--secret] [--secret-key-name <value>]
|
|
722
744
|
|
|
723
745
|
ARGUMENTS
|
|
@@ -734,11 +756,11 @@ FLAGS
|
|
|
734
756
|
--value=<value> new default value
|
|
735
757
|
|
|
736
758
|
GLOBAL FLAGS
|
|
737
|
-
-
|
|
738
|
-
--[no-]interactive
|
|
739
|
-
--json
|
|
740
|
-
--no-color
|
|
741
|
-
--verbose
|
|
759
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
760
|
+
--[no-]interactive Force interactive mode
|
|
761
|
+
--json Format output as json.
|
|
762
|
+
--no-color Do not colorize output
|
|
763
|
+
--verbose Verbose output
|
|
742
764
|
|
|
743
765
|
DESCRIPTION
|
|
744
766
|
Set the unconditional fallback value for a flag or config in a specific environment.
|
|
@@ -773,7 +795,7 @@ EXAMPLES
|
|
|
773
795
|
$ qfg set-rollout my.flag.name --environment production --true-percent 20
|
|
774
796
|
```
|
|
775
797
|
|
|
776
|
-
_See code: [src/commands/set-default.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
798
|
+
_See code: [src/commands/set-default.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/set-default.ts)_
|
|
777
799
|
|
|
778
800
|
## `qfg set-rollout [NAME]`
|
|
779
801
|
|
|
@@ -781,7 +803,7 @@ Configure a percentage rollout (gradual rollout / A/B test / canary deploy) for
|
|
|
781
803
|
|
|
782
804
|
```
|
|
783
805
|
USAGE
|
|
784
|
-
$ qfg set-rollout [NAME] [--json] [--interactive] [--no-color] [--verbose] [-
|
|
806
|
+
$ qfg set-rollout [NAME] [--json] [--interactive] [--no-color] [--verbose] [-w <value>] [--environment <value>]
|
|
785
807
|
[--hash-by <value>] [--true-percent <value>] [--weights <value>] [--confirm]
|
|
786
808
|
|
|
787
809
|
ARGUMENTS
|
|
@@ -797,11 +819,11 @@ FLAGS
|
|
|
797
819
|
"red:33,green:33,blue:34")
|
|
798
820
|
|
|
799
821
|
GLOBAL FLAGS
|
|
800
|
-
-
|
|
801
|
-
--[no-]interactive
|
|
802
|
-
--json
|
|
803
|
-
--no-color
|
|
804
|
-
--verbose
|
|
822
|
+
-w, --workspace=<value> Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)
|
|
823
|
+
--[no-]interactive Force interactive mode
|
|
824
|
+
--json Format output as json.
|
|
825
|
+
--no-color Do not colorize output
|
|
826
|
+
--verbose Verbose output
|
|
805
827
|
|
|
806
828
|
DESCRIPTION
|
|
807
829
|
Configure a percentage rollout (gradual rollout / A/B test / canary deploy) for a flag.
|
|
@@ -850,7 +872,7 @@ EXAMPLES
|
|
|
850
872
|
$ qfg set-rollout my.variant.flag --environment production --weights "a:33,b:33,c:34" --hash-by user.id
|
|
851
873
|
```
|
|
852
874
|
|
|
853
|
-
_See code: [src/commands/set-rollout.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
875
|
+
_See code: [src/commands/set-rollout.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/set-rollout.ts)_
|
|
854
876
|
|
|
855
877
|
## `qfg sync`
|
|
856
878
|
|
|
@@ -882,7 +904,7 @@ EXAMPLES
|
|
|
882
904
|
$ qfg sync --watch --dir ./our-config --interval 30
|
|
883
905
|
```
|
|
884
906
|
|
|
885
|
-
_See code: [src/commands/sync.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
907
|
+
_See code: [src/commands/sync.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/sync.ts)_
|
|
886
908
|
|
|
887
909
|
## `qfg verify [PATH]`
|
|
888
910
|
|
|
@@ -915,7 +937,7 @@ EXAMPLES
|
|
|
915
937
|
$ qfg verify --json
|
|
916
938
|
```
|
|
917
939
|
|
|
918
|
-
_See code: [src/commands/verify.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
940
|
+
_See code: [src/commands/verify.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/verify.ts)_
|
|
919
941
|
|
|
920
942
|
## `qfg whoami`
|
|
921
943
|
|
|
@@ -938,11 +960,11 @@ EXAMPLES
|
|
|
938
960
|
$ qfg whoami
|
|
939
961
|
```
|
|
940
962
|
|
|
941
|
-
_See code: [src/commands/whoami.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
963
|
+
_See code: [src/commands/whoami.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/whoami.ts)_
|
|
942
964
|
|
|
943
965
|
## `qfg workspace`
|
|
944
966
|
|
|
945
|
-
|
|
967
|
+
Show the current workspace
|
|
946
968
|
|
|
947
969
|
```
|
|
948
970
|
USAGE
|
|
@@ -955,13 +977,13 @@ GLOBAL FLAGS
|
|
|
955
977
|
--verbose Verbose output
|
|
956
978
|
|
|
957
979
|
DESCRIPTION
|
|
958
|
-
|
|
980
|
+
Show the current workspace
|
|
959
981
|
|
|
960
982
|
EXAMPLES
|
|
961
983
|
$ qfg workspace
|
|
962
984
|
```
|
|
963
985
|
|
|
964
|
-
_See code: [src/commands/workspace.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
986
|
+
_See code: [src/commands/workspace.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/workspace.ts)_
|
|
965
987
|
|
|
966
988
|
## `qfg workspace bootstrap`
|
|
967
989
|
|
|
@@ -994,7 +1016,30 @@ EXAMPLES
|
|
|
994
1016
|
$ qfg workspace bootstrap --dir ./our-config --skip-validate
|
|
995
1017
|
```
|
|
996
1018
|
|
|
997
|
-
_See code: [src/commands/workspace/bootstrap.ts](https://github.com/quonfig/cli/blob/v0.0.
|
|
1019
|
+
_See code: [src/commands/workspace/bootstrap.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/workspace/bootstrap.ts)_
|
|
1020
|
+
|
|
1021
|
+
## `qfg workspace switch`
|
|
1022
|
+
|
|
1023
|
+
Switch to a different workspace
|
|
1024
|
+
|
|
1025
|
+
```
|
|
1026
|
+
USAGE
|
|
1027
|
+
$ qfg workspace switch [--json] [--interactive] [--no-color] [--verbose]
|
|
1028
|
+
|
|
1029
|
+
GLOBAL FLAGS
|
|
1030
|
+
--[no-]interactive Force interactive mode
|
|
1031
|
+
--json Format output as json.
|
|
1032
|
+
--no-color Do not colorize output
|
|
1033
|
+
--verbose Verbose output
|
|
1034
|
+
|
|
1035
|
+
DESCRIPTION
|
|
1036
|
+
Switch to a different workspace
|
|
1037
|
+
|
|
1038
|
+
EXAMPLES
|
|
1039
|
+
$ qfg workspace switch
|
|
1040
|
+
```
|
|
1041
|
+
|
|
1042
|
+
_See code: [src/commands/workspace/switch.ts](https://github.com/quonfig/cli/blob/v0.0.7/src/commands/workspace/switch.ts)_
|
|
998
1043
|
<!-- commandsstop -->
|
|
999
1044
|
|
|
1000
1045
|
## Local Development
|
|
@@ -1011,10 +1056,13 @@ fish -c "cd ../../quonfig/cli;bin/dev.js"
|
|
|
1011
1056
|
|
|
1012
1057
|
## Releasing
|
|
1013
1058
|
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1059
|
+
Publishing is fully automated via CI. To ship a new version:
|
|
1060
|
+
|
|
1061
|
+
1. Bump the version in `package.json`
|
|
1062
|
+
2. Add an entry to `CHANGELOG.md`
|
|
1063
|
+
3. Commit and push to `main`
|
|
1064
|
+
|
|
1065
|
+
The [release workflow](.github/workflows/release.yaml) detects that the version in `package.json` is not yet on npm and publishes automatically using GitHub OIDC (no npm token or OTP needed locally).
|
|
1018
1066
|
|
|
1019
1067
|
## Contributing
|
|
1020
1068
|
|