@quonfig/cli 0.0.64 → 0.0.66

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.
@@ -1491,6 +1491,12 @@
1491
1491
  "allowNo": false,
1492
1492
  "type": "boolean"
1493
1493
  },
1494
+ "strict-keys": {
1495
+ "description": "Refuse to migrate if any source key would need rewriting to satisfy Quonfig key rules (Policy A), instead of rewriting it. Use when you require byte-identical keys.",
1496
+ "name": "strict-keys",
1497
+ "allowNo": false,
1498
+ "type": "boolean"
1499
+ },
1494
1500
  "workspace": {
1495
1501
  "description": "Quonfig cloud workspace slug to push to. Requires `qfg login` and is typically combined with --push.",
1496
1502
  "name": "workspace",
@@ -3417,15 +3423,13 @@
3417
3423
  "verify.js"
3418
3424
  ]
3419
3425
  },
3420
- "migrate:doctor": {
3426
+ "sdk-key:create": {
3421
3427
  "aliases": [],
3422
3428
  "args": {},
3423
- "description": "Preflight health checks for `qfg migrate`. Verifies auth, workspace provisioning, working tree, and identifier collisions.",
3429
+ "description": "Create a new SDK key",
3424
3430
  "examples": [
3425
- "<%= config.bin %> <%= command.id %>",
3426
- "<%= config.bin %> <%= command.id %> --from launch --api-key $LAUNCH_API_KEY",
3427
- "<%= config.bin %> <%= command.id %> --dir ./my-workspace --language node",
3428
- "<%= config.bin %> <%= command.id %> --json"
3431
+ "<%= config.bin %> <%= command.id %> --environment production --type server",
3432
+ "<%= config.bin %> <%= command.id %> --environment staging --type browser"
3429
3433
  ],
3430
3434
  "flags": {
3431
3435
  "json": {
@@ -3457,45 +3461,53 @@
3457
3461
  "allowNo": false,
3458
3462
  "type": "boolean"
3459
3463
  },
3460
- "api-key": {
3461
- "description": "Legacy SDK API key to validate against the source",
3462
- "name": "api-key",
3464
+ "workspace": {
3465
+ "char": "w",
3466
+ "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3467
+ "helpGroup": "GLOBAL",
3468
+ "name": "workspace",
3463
3469
  "required": false,
3464
3470
  "hasDynamicHelp": false,
3465
3471
  "multiple": false,
3466
3472
  "type": "option"
3467
3473
  },
3468
- "dir": {
3469
- "description": "Workspace directory to check (git clean / identifier map)",
3470
- "name": "dir",
3471
- "default": ".",
3474
+ "profile": {
3475
+ "char": "p",
3476
+ "description": "Deprecated: use --workspace instead",
3477
+ "helpGroup": "GLOBAL",
3478
+ "hidden": true,
3479
+ "name": "profile",
3480
+ "required": false,
3472
3481
  "hasDynamicHelp": false,
3473
3482
  "multiple": false,
3474
3483
  "type": "option"
3475
3484
  },
3476
- "from": {
3477
- "description": "Legacy SDK to migrate from",
3478
- "name": "from",
3479
- "default": "launch",
3485
+ "environment": {
3486
+ "char": "e",
3487
+ "description": "Environment name (e.g. production, staging)",
3488
+ "name": "environment",
3489
+ "required": false,
3480
3490
  "hasDynamicHelp": false,
3481
3491
  "multiple": false,
3482
- "options": [
3483
- "launch"
3484
- ],
3485
3492
  "type": "option"
3486
3493
  },
3487
- "language": {
3488
- "description": "Customer SDK language — used to warn when datadir mode is unavailable (e.g. javascript-browser)",
3489
- "name": "language",
3494
+ "type": {
3495
+ "char": "t",
3496
+ "description": "Key type: server (backend) or browser (frontend)",
3497
+ "name": "type",
3490
3498
  "required": false,
3491
3499
  "hasDynamicHelp": false,
3492
3500
  "multiple": false,
3501
+ "options": [
3502
+ "server",
3503
+ "browser"
3504
+ ],
3493
3505
  "type": "option"
3494
3506
  }
3495
3507
  },
3496
3508
  "hasDynamicHelp": false,
3497
3509
  "hiddenAliases": [],
3498
- "id": "migrate:doctor",
3510
+ "id": "sdk-key:create",
3499
3511
  "pluginAlias": "@quonfig/cli",
3500
3512
  "pluginName": "@quonfig/cli",
3501
3513
  "pluginType": "core",
@@ -3505,18 +3517,17 @@
3505
3517
  "relativePath": [
3506
3518
  "dist",
3507
3519
  "commands",
3508
- "migrate",
3509
- "doctor.js"
3520
+ "sdk-key",
3521
+ "create.js"
3510
3522
  ]
3511
3523
  },
3512
- "migrate:my-code": {
3524
+ "sdk-key:list": {
3513
3525
  "aliases": [],
3514
3526
  "args": {},
3515
- "description": "Migrate Launch SDK call sites in your codebase to Quonfig SDK call sites (invokes the qfg-migrate-code Claude skill)",
3527
+ "description": "List SDK keys for your workspace",
3516
3528
  "examples": [
3517
3529
  "<%= config.bin %> <%= command.id %>",
3518
- "<%= config.bin %> <%= command.id %> --from launch",
3519
- "<%= config.bin %> <%= command.id %> --dry-run"
3530
+ "<%= config.bin %> <%= command.id %> --environment production"
3520
3531
  ],
3521
3532
  "flags": {
3522
3533
  "json": {
@@ -3548,27 +3559,40 @@
3548
3559
  "allowNo": false,
3549
3560
  "type": "boolean"
3550
3561
  },
3551
- "dry-run": {
3552
- "description": "Show what would be migrated without editing any files",
3553
- "name": "dry-run",
3554
- "allowNo": false,
3555
- "type": "boolean"
3562
+ "workspace": {
3563
+ "char": "w",
3564
+ "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3565
+ "helpGroup": "GLOBAL",
3566
+ "name": "workspace",
3567
+ "required": false,
3568
+ "hasDynamicHelp": false,
3569
+ "multiple": false,
3570
+ "type": "option"
3556
3571
  },
3557
- "from": {
3558
- "description": "Legacy SDK to migrate from",
3559
- "name": "from",
3560
- "default": "launch",
3572
+ "profile": {
3573
+ "char": "p",
3574
+ "description": "Deprecated: use --workspace instead",
3575
+ "helpGroup": "GLOBAL",
3576
+ "hidden": true,
3577
+ "name": "profile",
3578
+ "required": false,
3579
+ "hasDynamicHelp": false,
3580
+ "multiple": false,
3581
+ "type": "option"
3582
+ },
3583
+ "environment": {
3584
+ "char": "e",
3585
+ "description": "Filter by environment name",
3586
+ "name": "environment",
3587
+ "required": false,
3561
3588
  "hasDynamicHelp": false,
3562
3589
  "multiple": false,
3563
- "options": [
3564
- "launch"
3565
- ],
3566
3590
  "type": "option"
3567
3591
  }
3568
3592
  },
3569
3593
  "hasDynamicHelp": false,
3570
3594
  "hiddenAliases": [],
3571
- "id": "migrate:my-code",
3595
+ "id": "sdk-key:list",
3572
3596
  "pluginAlias": "@quonfig/cli",
3573
3597
  "pluginName": "@quonfig/cli",
3574
3598
  "pluginType": "core",
@@ -3578,18 +3602,22 @@
3578
3602
  "relativePath": [
3579
3603
  "dist",
3580
3604
  "commands",
3581
- "migrate",
3582
- "my-code.js"
3605
+ "sdk-key",
3606
+ "list.js"
3583
3607
  ]
3584
3608
  },
3585
- "migrate:status": {
3609
+ "sdk-key:revoke": {
3586
3610
  "aliases": [],
3587
- "args": {},
3588
- "description": "Show the status of a workspace migrated with `qfg migrate`. Reads .qf/import-state.json and summarizes source, counts, and next steps.",
3611
+ "args": {
3612
+ "keyId": {
3613
+ "description": "ID of the SDK key to revoke",
3614
+ "name": "keyId",
3615
+ "required": true
3616
+ }
3617
+ },
3618
+ "description": "Revoke an SDK key by its ID",
3589
3619
  "examples": [
3590
- "<%= config.bin %> <%= command.id %>",
3591
- "<%= config.bin %> <%= command.id %> --dir ./my-workspace",
3592
- "<%= config.bin %> <%= command.id %> --json"
3620
+ "<%= config.bin %> <%= command.id %> a1b2c3d4-e5f6-7890-abcd-ef1234567890"
3593
3621
  ],
3594
3622
  "flags": {
3595
3623
  "json": {
@@ -3621,10 +3649,23 @@
3621
3649
  "allowNo": false,
3622
3650
  "type": "boolean"
3623
3651
  },
3624
- "dir": {
3625
- "description": "Workspace directory to inspect",
3626
- "name": "dir",
3627
- "default": ".",
3652
+ "workspace": {
3653
+ "char": "w",
3654
+ "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3655
+ "helpGroup": "GLOBAL",
3656
+ "name": "workspace",
3657
+ "required": false,
3658
+ "hasDynamicHelp": false,
3659
+ "multiple": false,
3660
+ "type": "option"
3661
+ },
3662
+ "profile": {
3663
+ "char": "p",
3664
+ "description": "Deprecated: use --workspace instead",
3665
+ "helpGroup": "GLOBAL",
3666
+ "hidden": true,
3667
+ "name": "profile",
3668
+ "required": false,
3628
3669
  "hasDynamicHelp": false,
3629
3670
  "multiple": false,
3630
3671
  "type": "option"
@@ -3632,7 +3673,7 @@
3632
3673
  },
3633
3674
  "hasDynamicHelp": false,
3634
3675
  "hiddenAliases": [],
3635
- "id": "migrate:status",
3676
+ "id": "sdk-key:revoke",
3636
3677
  "pluginAlias": "@quonfig/cli",
3637
3678
  "pluginName": "@quonfig/cli",
3638
3679
  "pluginType": "core",
@@ -3642,17 +3683,19 @@
3642
3683
  "relativePath": [
3643
3684
  "dist",
3644
3685
  "commands",
3645
- "migrate",
3646
- "status.js"
3686
+ "sdk-key",
3687
+ "revoke.js"
3647
3688
  ]
3648
3689
  },
3649
- "sdk-key:create": {
3690
+ "migrate:doctor": {
3650
3691
  "aliases": [],
3651
3692
  "args": {},
3652
- "description": "Create a new SDK key",
3693
+ "description": "Preflight health checks for `qfg migrate`. Verifies auth, workspace provisioning, working tree, and identifier collisions.",
3653
3694
  "examples": [
3654
- "<%= config.bin %> <%= command.id %> --environment production --type server",
3655
- "<%= config.bin %> <%= command.id %> --environment staging --type browser"
3695
+ "<%= config.bin %> <%= command.id %>",
3696
+ "<%= config.bin %> <%= command.id %> --from launch --api-key $LAUNCH_API_KEY",
3697
+ "<%= config.bin %> <%= command.id %> --dir ./my-workspace --language node",
3698
+ "<%= config.bin %> <%= command.id %> --json"
3656
3699
  ],
3657
3700
  "flags": {
3658
3701
  "json": {
@@ -3684,53 +3727,45 @@
3684
3727
  "allowNo": false,
3685
3728
  "type": "boolean"
3686
3729
  },
3687
- "workspace": {
3688
- "char": "w",
3689
- "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3690
- "helpGroup": "GLOBAL",
3691
- "name": "workspace",
3730
+ "api-key": {
3731
+ "description": "Legacy SDK API key to validate against the source",
3732
+ "name": "api-key",
3692
3733
  "required": false,
3693
3734
  "hasDynamicHelp": false,
3694
3735
  "multiple": false,
3695
3736
  "type": "option"
3696
3737
  },
3697
- "profile": {
3698
- "char": "p",
3699
- "description": "Deprecated: use --workspace instead",
3700
- "helpGroup": "GLOBAL",
3701
- "hidden": true,
3702
- "name": "profile",
3703
- "required": false,
3738
+ "dir": {
3739
+ "description": "Workspace directory to check (git clean / identifier map)",
3740
+ "name": "dir",
3741
+ "default": ".",
3704
3742
  "hasDynamicHelp": false,
3705
3743
  "multiple": false,
3706
3744
  "type": "option"
3707
3745
  },
3708
- "environment": {
3709
- "char": "e",
3710
- "description": "Environment name (e.g. production, staging)",
3711
- "name": "environment",
3712
- "required": false,
3746
+ "from": {
3747
+ "description": "Legacy SDK to migrate from",
3748
+ "name": "from",
3749
+ "default": "launch",
3713
3750
  "hasDynamicHelp": false,
3714
3751
  "multiple": false,
3752
+ "options": [
3753
+ "launch"
3754
+ ],
3715
3755
  "type": "option"
3716
3756
  },
3717
- "type": {
3718
- "char": "t",
3719
- "description": "Key type: server (backend) or browser (frontend)",
3720
- "name": "type",
3757
+ "language": {
3758
+ "description": "Customer SDK language — used to warn when datadir mode is unavailable (e.g. javascript-browser)",
3759
+ "name": "language",
3721
3760
  "required": false,
3722
3761
  "hasDynamicHelp": false,
3723
3762
  "multiple": false,
3724
- "options": [
3725
- "server",
3726
- "browser"
3727
- ],
3728
3763
  "type": "option"
3729
3764
  }
3730
3765
  },
3731
3766
  "hasDynamicHelp": false,
3732
3767
  "hiddenAliases": [],
3733
- "id": "sdk-key:create",
3768
+ "id": "migrate:doctor",
3734
3769
  "pluginAlias": "@quonfig/cli",
3735
3770
  "pluginName": "@quonfig/cli",
3736
3771
  "pluginType": "core",
@@ -3740,17 +3775,18 @@
3740
3775
  "relativePath": [
3741
3776
  "dist",
3742
3777
  "commands",
3743
- "sdk-key",
3744
- "create.js"
3778
+ "migrate",
3779
+ "doctor.js"
3745
3780
  ]
3746
3781
  },
3747
- "sdk-key:list": {
3782
+ "migrate:my-code": {
3748
3783
  "aliases": [],
3749
3784
  "args": {},
3750
- "description": "List SDK keys for your workspace",
3785
+ "description": "Migrate Launch SDK call sites in your codebase to Quonfig SDK call sites (invokes the qfg-migrate-code Claude skill)",
3751
3786
  "examples": [
3752
3787
  "<%= config.bin %> <%= command.id %>",
3753
- "<%= config.bin %> <%= command.id %> --environment production"
3788
+ "<%= config.bin %> <%= command.id %> --from launch",
3789
+ "<%= config.bin %> <%= command.id %> --dry-run"
3754
3790
  ],
3755
3791
  "flags": {
3756
3792
  "json": {
@@ -3782,40 +3818,27 @@
3782
3818
  "allowNo": false,
3783
3819
  "type": "boolean"
3784
3820
  },
3785
- "workspace": {
3786
- "char": "w",
3787
- "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3788
- "helpGroup": "GLOBAL",
3789
- "name": "workspace",
3790
- "required": false,
3791
- "hasDynamicHelp": false,
3792
- "multiple": false,
3793
- "type": "option"
3794
- },
3795
- "profile": {
3796
- "char": "p",
3797
- "description": "Deprecated: use --workspace instead",
3798
- "helpGroup": "GLOBAL",
3799
- "hidden": true,
3800
- "name": "profile",
3801
- "required": false,
3802
- "hasDynamicHelp": false,
3803
- "multiple": false,
3804
- "type": "option"
3821
+ "dry-run": {
3822
+ "description": "Show what would be migrated without editing any files",
3823
+ "name": "dry-run",
3824
+ "allowNo": false,
3825
+ "type": "boolean"
3805
3826
  },
3806
- "environment": {
3807
- "char": "e",
3808
- "description": "Filter by environment name",
3809
- "name": "environment",
3810
- "required": false,
3827
+ "from": {
3828
+ "description": "Legacy SDK to migrate from",
3829
+ "name": "from",
3830
+ "default": "launch",
3811
3831
  "hasDynamicHelp": false,
3812
3832
  "multiple": false,
3833
+ "options": [
3834
+ "launch"
3835
+ ],
3813
3836
  "type": "option"
3814
3837
  }
3815
3838
  },
3816
3839
  "hasDynamicHelp": false,
3817
3840
  "hiddenAliases": [],
3818
- "id": "sdk-key:list",
3841
+ "id": "migrate:my-code",
3819
3842
  "pluginAlias": "@quonfig/cli",
3820
3843
  "pluginName": "@quonfig/cli",
3821
3844
  "pluginType": "core",
@@ -3825,22 +3848,18 @@
3825
3848
  "relativePath": [
3826
3849
  "dist",
3827
3850
  "commands",
3828
- "sdk-key",
3829
- "list.js"
3851
+ "migrate",
3852
+ "my-code.js"
3830
3853
  ]
3831
3854
  },
3832
- "sdk-key:revoke": {
3855
+ "migrate:status": {
3833
3856
  "aliases": [],
3834
- "args": {
3835
- "keyId": {
3836
- "description": "ID of the SDK key to revoke",
3837
- "name": "keyId",
3838
- "required": true
3839
- }
3840
- },
3841
- "description": "Revoke an SDK key by its ID",
3857
+ "args": {},
3858
+ "description": "Show the status of a workspace migrated with `qfg migrate`. Reads .qf/import-state.json and summarizes source, counts, and next steps.",
3842
3859
  "examples": [
3843
- "<%= config.bin %> <%= command.id %> a1b2c3d4-e5f6-7890-abcd-ef1234567890"
3860
+ "<%= config.bin %> <%= command.id %>",
3861
+ "<%= config.bin %> <%= command.id %> --dir ./my-workspace",
3862
+ "<%= config.bin %> <%= command.id %> --json"
3844
3863
  ],
3845
3864
  "flags": {
3846
3865
  "json": {
@@ -3872,23 +3891,10 @@
3872
3891
  "allowNo": false,
3873
3892
  "type": "boolean"
3874
3893
  },
3875
- "workspace": {
3876
- "char": "w",
3877
- "description": "Workspace slug to use (overrides QUONFIG_WORKSPACE env var and saved default)",
3878
- "helpGroup": "GLOBAL",
3879
- "name": "workspace",
3880
- "required": false,
3881
- "hasDynamicHelp": false,
3882
- "multiple": false,
3883
- "type": "option"
3884
- },
3885
- "profile": {
3886
- "char": "p",
3887
- "description": "Deprecated: use --workspace instead",
3888
- "helpGroup": "GLOBAL",
3889
- "hidden": true,
3890
- "name": "profile",
3891
- "required": false,
3894
+ "dir": {
3895
+ "description": "Workspace directory to inspect",
3896
+ "name": "dir",
3897
+ "default": ".",
3892
3898
  "hasDynamicHelp": false,
3893
3899
  "multiple": false,
3894
3900
  "type": "option"
@@ -3896,7 +3902,7 @@
3896
3902
  },
3897
3903
  "hasDynamicHelp": false,
3898
3904
  "hiddenAliases": [],
3899
- "id": "sdk-key:revoke",
3905
+ "id": "migrate:status",
3900
3906
  "pluginAlias": "@quonfig/cli",
3901
3907
  "pluginName": "@quonfig/cli",
3902
3908
  "pluginType": "core",
@@ -3906,8 +3912,8 @@
3906
3912
  "relativePath": [
3907
3913
  "dist",
3908
3914
  "commands",
3909
- "sdk-key",
3910
- "revoke.js"
3915
+ "migrate",
3916
+ "status.js"
3911
3917
  ]
3912
3918
  },
3913
3919
  "workspace:bootstrap": {
@@ -4126,5 +4132,5 @@
4126
4132
  ]
4127
4133
  }
4128
4134
  },
4129
- "version": "0.0.64"
4135
+ "version": "0.0.66"
4130
4136
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "packageManager": "yarn@4.11.0+sha512.4e54aeace9141df2f0177c266b05ec50dc044638157dae128c471ba65994ac802122d7ab35bcd9e81641228b7dcf24867d28e750e0bcae8a05277d600008ad54",
3
3
  "name": "@quonfig/cli",
4
- "version": "0.0.64",
4
+ "version": "0.0.66",
5
5
  "bugs": {
6
6
  "url": "https://github.com/quonfig/cli/issues"
7
7
  },
@@ -21,6 +21,7 @@
21
21
  "@oclif/core": "^3.18.2",
22
22
  "@oclif/plugin-help": "^6",
23
23
  "@oclif/plugin-plugins": "^4",
24
+ "@oclif/plugin-warn-if-update-available": "3.0.16",
24
25
  "@quonfig/node": "^1.0.0",
25
26
  "acorn": "^8.10.0",
26
27
  "acorn-walk": "^8.3.5",
@@ -77,7 +78,12 @@
77
78
  "bin": "qfg",
78
79
  "dirname": "qfg",
79
80
  "commands": "./dist/commands",
80
- "plugins": [],
81
+ "plugins": [
82
+ "@oclif/plugin-warn-if-update-available"
83
+ ],
84
+ "warn-if-update-available": {
85
+ "message": "<%= config.name %> update available from <%= chalk.greenBright(config.version) %> to <%= chalk.greenBright(latest) %>.\nRun <%= chalk.cyan('npm i -g ' + config.name) %> to upgrade."
86
+ },
81
87
  "topicSeparator": " ",
82
88
  "helpClass": "./dist/help",
83
89
  "stacktrace": false,