@skrr-ai/cli 0.1.28 → 0.1.30

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 (66) hide show
  1. package/dist/base-command.d.ts +15 -0
  2. package/dist/base-command.js +49 -0
  3. package/dist/commands/agents/chat.d.ts +2 -0
  4. package/dist/commands/agents/chat.js +40 -2
  5. package/dist/commands/balance/show.d.ts +2 -3
  6. package/dist/commands/balance/show.js +2 -3
  7. package/dist/commands/balance/usage.d.ts +3 -11
  8. package/dist/commands/balance/usage.js +19 -72
  9. package/dist/commands/code/index.d.ts +4 -0
  10. package/dist/commands/code/index.js +9 -0
  11. package/dist/commands/code/install.d.ts +10 -2
  12. package/dist/commands/code/install.js +38 -28
  13. package/dist/commands/harnesses/leases/show.js +7 -4
  14. package/dist/commands/inbox/index.d.ts +15 -0
  15. package/dist/commands/inbox/index.js +52 -20
  16. package/dist/commands/instructions/install.d.ts +12 -0
  17. package/dist/commands/instructions/install.js +59 -14
  18. package/dist/commands/login.js +6 -0
  19. package/dist/commands/machines/dedicated/attach.js +1 -1
  20. package/dist/commands/machines/dedicated/cp.d.ts +1 -0
  21. package/dist/commands/machines/dedicated/cp.js +63 -9
  22. package/dist/commands/machines/dedicated/create.d.ts +1 -1
  23. package/dist/commands/machines/dedicated/create.js +7 -2
  24. package/dist/commands/machines/dedicated/exec.d.ts +23 -1
  25. package/dist/commands/machines/dedicated/exec.js +67 -7
  26. package/dist/commands/machines/dedicated/index.js +2 -0
  27. package/dist/commands/machines/dedicated/restore.d.ts +6 -0
  28. package/dist/commands/machines/dedicated/restore.js +7 -1
  29. package/dist/commands/machines/dedicated/sign-in.d.ts +4 -3
  30. package/dist/commands/machines/dedicated/sign-in.js +4 -3
  31. package/dist/commands/machines/dedicated/terminal.js +1 -1
  32. package/dist/commands/machines/dedicated/update-image.d.ts +15 -0
  33. package/dist/commands/machines/dedicated/update-image.js +38 -0
  34. package/dist/lib/balance.d.ts +2 -2
  35. package/dist/lib/balance.js +6 -4
  36. package/dist/lib/daemon-target.d.ts +103 -0
  37. package/dist/lib/daemon-target.js +110 -0
  38. package/dist/lib/dedicated-copy.d.ts +92 -2
  39. package/dist/lib/dedicated-copy.js +223 -18
  40. package/dist/lib/dedicated-lease-command.d.ts +7 -1
  41. package/dist/lib/dedicated-lease-command.js +16 -3
  42. package/dist/lib/dedicated-machines.d.ts +130 -8
  43. package/dist/lib/dedicated-machines.js +274 -15
  44. package/dist/lib/dedicated-terminal.d.ts +5 -25
  45. package/dist/lib/dedicated-terminal.js +45 -73
  46. package/dist/lib/dedicated-wait.d.ts +10 -0
  47. package/dist/lib/dedicated-wait.js +52 -0
  48. package/dist/lib/device-code.d.ts +12 -1
  49. package/dist/lib/device-code.js +44 -9
  50. package/dist/lib/harnesses.d.ts +13 -0
  51. package/dist/lib/harnesses.js +24 -0
  52. package/dist/lib/login.js +8 -7
  53. package/dist/lib/sky-code-broker.d.ts +46 -5
  54. package/dist/lib/sky-code-broker.js +96 -26
  55. package/dist/lib/sky-code.d.ts +33 -0
  56. package/dist/lib/sky-code.js +45 -7
  57. package/dist/lib/task-instruction-offer.js +12 -0
  58. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.d.ts +67 -1
  59. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.js +124 -12
  60. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.d.ts +67 -1
  61. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.js +123 -11
  62. package/dist/node_modules/@skrr-ai/auth-core/package.json +1 -1
  63. package/dist/node_modules/@skrr-ai/data-provider/index.js +3061 -2876
  64. package/dist/node_modules/@skrr-ai/data-provider/package.json +1 -1
  65. package/oclif.manifest.json +1429 -1327
  66. package/package.json +1 -1
@@ -3327,324 +3327,6 @@
3327
3327
  "with.js"
3328
3328
  ]
3329
3329
  },
3330
- "api-keys:create": {
3331
- "aliases": [],
3332
- "args": {
3333
- "name": {
3334
- "description": "Human label for the key (also settable with --name)",
3335
- "name": "name"
3336
- }
3337
- },
3338
- "description": "Mint a Managed Agents API key (osk_*) for a Space. The secret is shown once and never again.",
3339
- "examples": [
3340
- "<%= config.bin %> api-keys create --space <space-id> --name \"ci\"",
3341
- "<%= config.bin %> api-keys create --space <space-id> --name \"probe\" --env test --scope environments:write"
3342
- ],
3343
- "flags": {
3344
- "bare": {
3345
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
3346
- "name": "bare",
3347
- "allowNo": false,
3348
- "type": "boolean"
3349
- },
3350
- "token": {
3351
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
3352
- "name": "token",
3353
- "hasDynamicHelp": false,
3354
- "multiple": false,
3355
- "type": "option"
3356
- },
3357
- "workspace": {
3358
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
3359
- "name": "workspace",
3360
- "hasDynamicHelp": false,
3361
- "multiple": false,
3362
- "type": "option"
3363
- },
3364
- "profile": {
3365
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
3366
- "name": "profile",
3367
- "hasDynamicHelp": false,
3368
- "multiple": false,
3369
- "type": "option"
3370
- },
3371
- "space": {
3372
- "description": "Space that owns the key",
3373
- "name": "space",
3374
- "required": true,
3375
- "hasDynamicHelp": false,
3376
- "multiple": false,
3377
- "type": "option"
3378
- },
3379
- "name": {
3380
- "description": "Human label for the key (≤200 chars)",
3381
- "name": "name",
3382
- "hasDynamicHelp": false,
3383
- "multiple": false,
3384
- "type": "option"
3385
- },
3386
- "env": {
3387
- "description": "Key environment",
3388
- "name": "env",
3389
- "hasDynamicHelp": false,
3390
- "multiple": false,
3391
- "options": [
3392
- "live",
3393
- "test"
3394
- ],
3395
- "type": "option"
3396
- },
3397
- "scope": {
3398
- "description": "Scope to grant (repeatable, e.g. environments:write)",
3399
- "name": "scope",
3400
- "hasDynamicHelp": false,
3401
- "multiple": true,
3402
- "type": "option"
3403
- },
3404
- "expires-at": {
3405
- "description": "ISO 8601 expiry; must be in the future",
3406
- "name": "expires-at",
3407
- "hasDynamicHelp": false,
3408
- "multiple": false,
3409
- "type": "option"
3410
- },
3411
- "json": {
3412
- "description": "Output as JSON",
3413
- "name": "json",
3414
- "allowNo": false,
3415
- "type": "boolean"
3416
- }
3417
- },
3418
- "hasDynamicHelp": false,
3419
- "hiddenAliases": [],
3420
- "id": "api-keys:create",
3421
- "pluginAlias": "@skrr-ai/cli",
3422
- "pluginName": "@skrr-ai/cli",
3423
- "pluginType": "core",
3424
- "strict": true,
3425
- "enableJsonFlag": false,
3426
- "resolveSpaceFlag": true,
3427
- "isESM": false,
3428
- "relativePath": [
3429
- "dist",
3430
- "commands",
3431
- "api-keys",
3432
- "create.js"
3433
- ]
3434
- },
3435
- "api-keys:list": {
3436
- "aliases": [],
3437
- "args": {},
3438
- "description": "List a Space's Managed Agents API keys. Secrets are never shown — only prefixes.",
3439
- "examples": [
3440
- "<%= config.bin %> api-keys list --space <space-id>"
3441
- ],
3442
- "flags": {
3443
- "bare": {
3444
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
3445
- "name": "bare",
3446
- "allowNo": false,
3447
- "type": "boolean"
3448
- },
3449
- "token": {
3450
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
3451
- "name": "token",
3452
- "hasDynamicHelp": false,
3453
- "multiple": false,
3454
- "type": "option"
3455
- },
3456
- "workspace": {
3457
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
3458
- "name": "workspace",
3459
- "hasDynamicHelp": false,
3460
- "multiple": false,
3461
- "type": "option"
3462
- },
3463
- "profile": {
3464
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
3465
- "name": "profile",
3466
- "hasDynamicHelp": false,
3467
- "multiple": false,
3468
- "type": "option"
3469
- },
3470
- "space": {
3471
- "description": "Space that owns the keys",
3472
- "name": "space",
3473
- "required": true,
3474
- "hasDynamicHelp": false,
3475
- "multiple": false,
3476
- "type": "option"
3477
- },
3478
- "json": {
3479
- "description": "Output as JSON",
3480
- "name": "json",
3481
- "allowNo": false,
3482
- "type": "boolean"
3483
- }
3484
- },
3485
- "hasDynamicHelp": false,
3486
- "hiddenAliases": [],
3487
- "id": "api-keys:list",
3488
- "pluginAlias": "@skrr-ai/cli",
3489
- "pluginName": "@skrr-ai/cli",
3490
- "pluginType": "core",
3491
- "strict": true,
3492
- "enableJsonFlag": false,
3493
- "resolveSpaceFlag": true,
3494
- "isESM": false,
3495
- "relativePath": [
3496
- "dist",
3497
- "commands",
3498
- "api-keys",
3499
- "list.js"
3500
- ]
3501
- },
3502
- "api-keys:revoke": {
3503
- "aliases": [],
3504
- "args": {
3505
- "id": {
3506
- "description": "Key id",
3507
- "name": "id",
3508
- "required": true
3509
- }
3510
- },
3511
- "description": "Revoke a Managed Agents API key. Irreversible — mint a replacement rather than expecting to undo this.",
3512
- "examples": [
3513
- "<%= config.bin %> api-keys revoke <key-id> --space <space-id>"
3514
- ],
3515
- "flags": {
3516
- "bare": {
3517
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
3518
- "name": "bare",
3519
- "allowNo": false,
3520
- "type": "boolean"
3521
- },
3522
- "token": {
3523
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
3524
- "name": "token",
3525
- "hasDynamicHelp": false,
3526
- "multiple": false,
3527
- "type": "option"
3528
- },
3529
- "workspace": {
3530
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
3531
- "name": "workspace",
3532
- "hasDynamicHelp": false,
3533
- "multiple": false,
3534
- "type": "option"
3535
- },
3536
- "profile": {
3537
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
3538
- "name": "profile",
3539
- "hasDynamicHelp": false,
3540
- "multiple": false,
3541
- "type": "option"
3542
- },
3543
- "space": {
3544
- "description": "Space that owns the key",
3545
- "name": "space",
3546
- "required": true,
3547
- "hasDynamicHelp": false,
3548
- "multiple": false,
3549
- "type": "option"
3550
- },
3551
- "json": {
3552
- "description": "Output as JSON",
3553
- "name": "json",
3554
- "allowNo": false,
3555
- "type": "boolean"
3556
- }
3557
- },
3558
- "hasDynamicHelp": false,
3559
- "hiddenAliases": [],
3560
- "id": "api-keys:revoke",
3561
- "pluginAlias": "@skrr-ai/cli",
3562
- "pluginName": "@skrr-ai/cli",
3563
- "pluginType": "core",
3564
- "strict": true,
3565
- "enableJsonFlag": false,
3566
- "resolveSpaceFlag": true,
3567
- "isESM": false,
3568
- "relativePath": [
3569
- "dist",
3570
- "commands",
3571
- "api-keys",
3572
- "revoke.js"
3573
- ]
3574
- },
3575
- "api-keys:rotate": {
3576
- "aliases": [],
3577
- "args": {
3578
- "id": {
3579
- "description": "Key id",
3580
- "name": "id",
3581
- "required": true
3582
- }
3583
- },
3584
- "description": "Rotate a Managed Agents API key. The new secret is shown once; the old one stops working.",
3585
- "examples": [
3586
- "<%= config.bin %> api-keys rotate <key-id> --space <space-id>"
3587
- ],
3588
- "flags": {
3589
- "bare": {
3590
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
3591
- "name": "bare",
3592
- "allowNo": false,
3593
- "type": "boolean"
3594
- },
3595
- "token": {
3596
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
3597
- "name": "token",
3598
- "hasDynamicHelp": false,
3599
- "multiple": false,
3600
- "type": "option"
3601
- },
3602
- "workspace": {
3603
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
3604
- "name": "workspace",
3605
- "hasDynamicHelp": false,
3606
- "multiple": false,
3607
- "type": "option"
3608
- },
3609
- "profile": {
3610
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
3611
- "name": "profile",
3612
- "hasDynamicHelp": false,
3613
- "multiple": false,
3614
- "type": "option"
3615
- },
3616
- "space": {
3617
- "description": "Space that owns the key",
3618
- "name": "space",
3619
- "required": true,
3620
- "hasDynamicHelp": false,
3621
- "multiple": false,
3622
- "type": "option"
3623
- },
3624
- "json": {
3625
- "description": "Output as JSON",
3626
- "name": "json",
3627
- "allowNo": false,
3628
- "type": "boolean"
3629
- }
3630
- },
3631
- "hasDynamicHelp": false,
3632
- "hiddenAliases": [],
3633
- "id": "api-keys:rotate",
3634
- "pluginAlias": "@skrr-ai/cli",
3635
- "pluginName": "@skrr-ai/cli",
3636
- "pluginType": "core",
3637
- "strict": true,
3638
- "enableJsonFlag": false,
3639
- "resolveSpaceFlag": true,
3640
- "isESM": false,
3641
- "relativePath": [
3642
- "dist",
3643
- "commands",
3644
- "api-keys",
3645
- "rotate.js"
3646
- ]
3647
- },
3648
3330
  "agents:activity": {
3649
3331
  "aliases": [],
3650
3332
  "args": {
@@ -6367,6 +6049,324 @@
6367
6049
  "visibility.js"
6368
6050
  ]
6369
6051
  },
6052
+ "api-keys:create": {
6053
+ "aliases": [],
6054
+ "args": {
6055
+ "name": {
6056
+ "description": "Human label for the key (also settable with --name)",
6057
+ "name": "name"
6058
+ }
6059
+ },
6060
+ "description": "Mint a Managed Agents API key (osk_*) for a Space. The secret is shown once and never again.",
6061
+ "examples": [
6062
+ "<%= config.bin %> api-keys create --space <space-id> --name \"ci\"",
6063
+ "<%= config.bin %> api-keys create --space <space-id> --name \"probe\" --env test --scope environments:write"
6064
+ ],
6065
+ "flags": {
6066
+ "bare": {
6067
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
6068
+ "name": "bare",
6069
+ "allowNo": false,
6070
+ "type": "boolean"
6071
+ },
6072
+ "token": {
6073
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
6074
+ "name": "token",
6075
+ "hasDynamicHelp": false,
6076
+ "multiple": false,
6077
+ "type": "option"
6078
+ },
6079
+ "workspace": {
6080
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
6081
+ "name": "workspace",
6082
+ "hasDynamicHelp": false,
6083
+ "multiple": false,
6084
+ "type": "option"
6085
+ },
6086
+ "profile": {
6087
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
6088
+ "name": "profile",
6089
+ "hasDynamicHelp": false,
6090
+ "multiple": false,
6091
+ "type": "option"
6092
+ },
6093
+ "space": {
6094
+ "description": "Space that owns the key",
6095
+ "name": "space",
6096
+ "required": true,
6097
+ "hasDynamicHelp": false,
6098
+ "multiple": false,
6099
+ "type": "option"
6100
+ },
6101
+ "name": {
6102
+ "description": "Human label for the key (≤200 chars)",
6103
+ "name": "name",
6104
+ "hasDynamicHelp": false,
6105
+ "multiple": false,
6106
+ "type": "option"
6107
+ },
6108
+ "env": {
6109
+ "description": "Key environment",
6110
+ "name": "env",
6111
+ "hasDynamicHelp": false,
6112
+ "multiple": false,
6113
+ "options": [
6114
+ "live",
6115
+ "test"
6116
+ ],
6117
+ "type": "option"
6118
+ },
6119
+ "scope": {
6120
+ "description": "Scope to grant (repeatable, e.g. environments:write)",
6121
+ "name": "scope",
6122
+ "hasDynamicHelp": false,
6123
+ "multiple": true,
6124
+ "type": "option"
6125
+ },
6126
+ "expires-at": {
6127
+ "description": "ISO 8601 expiry; must be in the future",
6128
+ "name": "expires-at",
6129
+ "hasDynamicHelp": false,
6130
+ "multiple": false,
6131
+ "type": "option"
6132
+ },
6133
+ "json": {
6134
+ "description": "Output as JSON",
6135
+ "name": "json",
6136
+ "allowNo": false,
6137
+ "type": "boolean"
6138
+ }
6139
+ },
6140
+ "hasDynamicHelp": false,
6141
+ "hiddenAliases": [],
6142
+ "id": "api-keys:create",
6143
+ "pluginAlias": "@skrr-ai/cli",
6144
+ "pluginName": "@skrr-ai/cli",
6145
+ "pluginType": "core",
6146
+ "strict": true,
6147
+ "enableJsonFlag": false,
6148
+ "resolveSpaceFlag": true,
6149
+ "isESM": false,
6150
+ "relativePath": [
6151
+ "dist",
6152
+ "commands",
6153
+ "api-keys",
6154
+ "create.js"
6155
+ ]
6156
+ },
6157
+ "api-keys:list": {
6158
+ "aliases": [],
6159
+ "args": {},
6160
+ "description": "List a Space's Managed Agents API keys. Secrets are never shown — only prefixes.",
6161
+ "examples": [
6162
+ "<%= config.bin %> api-keys list --space <space-id>"
6163
+ ],
6164
+ "flags": {
6165
+ "bare": {
6166
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
6167
+ "name": "bare",
6168
+ "allowNo": false,
6169
+ "type": "boolean"
6170
+ },
6171
+ "token": {
6172
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
6173
+ "name": "token",
6174
+ "hasDynamicHelp": false,
6175
+ "multiple": false,
6176
+ "type": "option"
6177
+ },
6178
+ "workspace": {
6179
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
6180
+ "name": "workspace",
6181
+ "hasDynamicHelp": false,
6182
+ "multiple": false,
6183
+ "type": "option"
6184
+ },
6185
+ "profile": {
6186
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
6187
+ "name": "profile",
6188
+ "hasDynamicHelp": false,
6189
+ "multiple": false,
6190
+ "type": "option"
6191
+ },
6192
+ "space": {
6193
+ "description": "Space that owns the keys",
6194
+ "name": "space",
6195
+ "required": true,
6196
+ "hasDynamicHelp": false,
6197
+ "multiple": false,
6198
+ "type": "option"
6199
+ },
6200
+ "json": {
6201
+ "description": "Output as JSON",
6202
+ "name": "json",
6203
+ "allowNo": false,
6204
+ "type": "boolean"
6205
+ }
6206
+ },
6207
+ "hasDynamicHelp": false,
6208
+ "hiddenAliases": [],
6209
+ "id": "api-keys:list",
6210
+ "pluginAlias": "@skrr-ai/cli",
6211
+ "pluginName": "@skrr-ai/cli",
6212
+ "pluginType": "core",
6213
+ "strict": true,
6214
+ "enableJsonFlag": false,
6215
+ "resolveSpaceFlag": true,
6216
+ "isESM": false,
6217
+ "relativePath": [
6218
+ "dist",
6219
+ "commands",
6220
+ "api-keys",
6221
+ "list.js"
6222
+ ]
6223
+ },
6224
+ "api-keys:revoke": {
6225
+ "aliases": [],
6226
+ "args": {
6227
+ "id": {
6228
+ "description": "Key id",
6229
+ "name": "id",
6230
+ "required": true
6231
+ }
6232
+ },
6233
+ "description": "Revoke a Managed Agents API key. Irreversible — mint a replacement rather than expecting to undo this.",
6234
+ "examples": [
6235
+ "<%= config.bin %> api-keys revoke <key-id> --space <space-id>"
6236
+ ],
6237
+ "flags": {
6238
+ "bare": {
6239
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
6240
+ "name": "bare",
6241
+ "allowNo": false,
6242
+ "type": "boolean"
6243
+ },
6244
+ "token": {
6245
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
6246
+ "name": "token",
6247
+ "hasDynamicHelp": false,
6248
+ "multiple": false,
6249
+ "type": "option"
6250
+ },
6251
+ "workspace": {
6252
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
6253
+ "name": "workspace",
6254
+ "hasDynamicHelp": false,
6255
+ "multiple": false,
6256
+ "type": "option"
6257
+ },
6258
+ "profile": {
6259
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
6260
+ "name": "profile",
6261
+ "hasDynamicHelp": false,
6262
+ "multiple": false,
6263
+ "type": "option"
6264
+ },
6265
+ "space": {
6266
+ "description": "Space that owns the key",
6267
+ "name": "space",
6268
+ "required": true,
6269
+ "hasDynamicHelp": false,
6270
+ "multiple": false,
6271
+ "type": "option"
6272
+ },
6273
+ "json": {
6274
+ "description": "Output as JSON",
6275
+ "name": "json",
6276
+ "allowNo": false,
6277
+ "type": "boolean"
6278
+ }
6279
+ },
6280
+ "hasDynamicHelp": false,
6281
+ "hiddenAliases": [],
6282
+ "id": "api-keys:revoke",
6283
+ "pluginAlias": "@skrr-ai/cli",
6284
+ "pluginName": "@skrr-ai/cli",
6285
+ "pluginType": "core",
6286
+ "strict": true,
6287
+ "enableJsonFlag": false,
6288
+ "resolveSpaceFlag": true,
6289
+ "isESM": false,
6290
+ "relativePath": [
6291
+ "dist",
6292
+ "commands",
6293
+ "api-keys",
6294
+ "revoke.js"
6295
+ ]
6296
+ },
6297
+ "api-keys:rotate": {
6298
+ "aliases": [],
6299
+ "args": {
6300
+ "id": {
6301
+ "description": "Key id",
6302
+ "name": "id",
6303
+ "required": true
6304
+ }
6305
+ },
6306
+ "description": "Rotate a Managed Agents API key. The new secret is shown once; the old one stops working.",
6307
+ "examples": [
6308
+ "<%= config.bin %> api-keys rotate <key-id> --space <space-id>"
6309
+ ],
6310
+ "flags": {
6311
+ "bare": {
6312
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
6313
+ "name": "bare",
6314
+ "allowNo": false,
6315
+ "type": "boolean"
6316
+ },
6317
+ "token": {
6318
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
6319
+ "name": "token",
6320
+ "hasDynamicHelp": false,
6321
+ "multiple": false,
6322
+ "type": "option"
6323
+ },
6324
+ "workspace": {
6325
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
6326
+ "name": "workspace",
6327
+ "hasDynamicHelp": false,
6328
+ "multiple": false,
6329
+ "type": "option"
6330
+ },
6331
+ "profile": {
6332
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
6333
+ "name": "profile",
6334
+ "hasDynamicHelp": false,
6335
+ "multiple": false,
6336
+ "type": "option"
6337
+ },
6338
+ "space": {
6339
+ "description": "Space that owns the key",
6340
+ "name": "space",
6341
+ "required": true,
6342
+ "hasDynamicHelp": false,
6343
+ "multiple": false,
6344
+ "type": "option"
6345
+ },
6346
+ "json": {
6347
+ "description": "Output as JSON",
6348
+ "name": "json",
6349
+ "allowNo": false,
6350
+ "type": "boolean"
6351
+ }
6352
+ },
6353
+ "hasDynamicHelp": false,
6354
+ "hiddenAliases": [],
6355
+ "id": "api-keys:rotate",
6356
+ "pluginAlias": "@skrr-ai/cli",
6357
+ "pluginName": "@skrr-ai/cli",
6358
+ "pluginType": "core",
6359
+ "strict": true,
6360
+ "enableJsonFlag": false,
6361
+ "resolveSpaceFlag": true,
6362
+ "isESM": false,
6363
+ "relativePath": [
6364
+ "dist",
6365
+ "commands",
6366
+ "api-keys",
6367
+ "rotate.js"
6368
+ ]
6369
+ },
6370
6370
  "balance:history": {
6371
6371
  "aliases": [],
6372
6372
  "args": {},
@@ -6889,79 +6889,6 @@
6889
6889
  "uninstall.js"
6890
6890
  ]
6891
6891
  },
6892
- "characters:list": {
6893
- "aliases": [],
6894
- "args": {},
6895
- "description": "List the 3D characters you can use — the ids `spaces live scene --character` takes",
6896
- "examples": [
6897
- "<%= config.bin %> characters list",
6898
- "<%= config.bin %> characters list --json"
6899
- ],
6900
- "flags": {
6901
- "bare": {
6902
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
6903
- "name": "bare",
6904
- "allowNo": false,
6905
- "type": "boolean"
6906
- },
6907
- "token": {
6908
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
6909
- "name": "token",
6910
- "hasDynamicHelp": false,
6911
- "multiple": false,
6912
- "type": "option"
6913
- },
6914
- "workspace": {
6915
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
6916
- "name": "workspace",
6917
- "hasDynamicHelp": false,
6918
- "multiple": false,
6919
- "type": "option"
6920
- },
6921
- "profile": {
6922
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
6923
- "name": "profile",
6924
- "hasDynamicHelp": false,
6925
- "multiple": false,
6926
- "type": "option"
6927
- },
6928
- "json": {
6929
- "description": "Output as JSON",
6930
- "name": "json",
6931
- "allowNo": false,
6932
- "type": "boolean"
6933
- },
6934
- "details": {
6935
- "description": "Include renderer-only inline image placeholders in JSON (may be large)",
6936
- "name": "details",
6937
- "allowNo": false,
6938
- "type": "boolean"
6939
- },
6940
- "limit": {
6941
- "description": "Maximum characters to return",
6942
- "name": "limit",
6943
- "hasDynamicHelp": false,
6944
- "multiple": false,
6945
- "type": "option"
6946
- }
6947
- },
6948
- "hasDynamicHelp": false,
6949
- "hiddenAliases": [],
6950
- "id": "characters:list",
6951
- "pluginAlias": "@skrr-ai/cli",
6952
- "pluginName": "@skrr-ai/cli",
6953
- "pluginType": "core",
6954
- "strict": true,
6955
- "enableJsonFlag": false,
6956
- "resolveSpaceFlag": true,
6957
- "isESM": false,
6958
- "relativePath": [
6959
- "dist",
6960
- "commands",
6961
- "characters",
6962
- "list.js"
6963
- ]
6964
- },
6965
6892
  "chats:create": {
6966
6893
  "aliases": [],
6967
6894
  "args": {},
@@ -7867,7 +7794,7 @@
7867
7794
  "type": "option"
7868
7795
  },
7869
7796
  "daemon": {
7870
- "description": "Which daemon installs it. Defaults to the only active one; required when you have several.",
7797
+ "description": "Which daemon installs it. Defaults to this machine on a Dedicated Runtime, otherwise to the only active one; required when you have several.",
7871
7798
  "name": "daemon",
7872
7799
  "hasDynamicHelp": false,
7873
7800
  "multiple": false,
@@ -21820,7 +21747,7 @@
21820
21747
  "type": "option"
21821
21748
  },
21822
21749
  "daemon": {
21823
- "description": "Daemon ID; inferred when exactly one daemon is online",
21750
+ "description": "Daemon ID; defaults to this machine on a Dedicated Runtime, otherwise inferred when exactly one daemon is online",
21824
21751
  "name": "daemon",
21825
21752
  "hasDynamicHelp": false,
21826
21753
  "multiple": false,
@@ -64518,9 +64445,325 @@
64518
64445
  "allowNo": false,
64519
64446
  "type": "boolean"
64520
64447
  },
64521
- "agent": {
64522
- "description": "Filter by agent ID",
64523
- "name": "agent",
64448
+ "agent": {
64449
+ "description": "Filter by agent ID",
64450
+ "name": "agent",
64451
+ "hasDynamicHelp": false,
64452
+ "multiple": false,
64453
+ "type": "option"
64454
+ }
64455
+ },
64456
+ "hasDynamicHelp": false,
64457
+ "hiddenAliases": [],
64458
+ "id": "commitments:endpoints:list",
64459
+ "pluginAlias": "@skrr-ai/cli",
64460
+ "pluginName": "@skrr-ai/cli",
64461
+ "pluginType": "core",
64462
+ "strict": true,
64463
+ "enableJsonFlag": false,
64464
+ "resolveSpaceFlag": true,
64465
+ "isESM": false,
64466
+ "relativePath": [
64467
+ "dist",
64468
+ "commands",
64469
+ "commitments",
64470
+ "endpoints",
64471
+ "list.js"
64472
+ ]
64473
+ },
64474
+ "commitments:endpoints:revoke": {
64475
+ "aliases": [],
64476
+ "args": {
64477
+ "endpointId": {
64478
+ "description": "Endpoint ID",
64479
+ "name": "endpointId",
64480
+ "required": true
64481
+ }
64482
+ },
64483
+ "description": "Revoke a commitment endpoint’s connection (the record stays)",
64484
+ "examples": [
64485
+ "<%= config.bin %> commitments endpoints revoke ep_abc123",
64486
+ "<%= config.bin %> commitments endpoints revoke ep_abc123 --yes"
64487
+ ],
64488
+ "flags": {
64489
+ "bare": {
64490
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
64491
+ "name": "bare",
64492
+ "allowNo": false,
64493
+ "type": "boolean"
64494
+ },
64495
+ "token": {
64496
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
64497
+ "name": "token",
64498
+ "hasDynamicHelp": false,
64499
+ "multiple": false,
64500
+ "type": "option"
64501
+ },
64502
+ "workspace": {
64503
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
64504
+ "name": "workspace",
64505
+ "hasDynamicHelp": false,
64506
+ "multiple": false,
64507
+ "type": "option"
64508
+ },
64509
+ "profile": {
64510
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
64511
+ "name": "profile",
64512
+ "hasDynamicHelp": false,
64513
+ "multiple": false,
64514
+ "type": "option"
64515
+ },
64516
+ "json": {
64517
+ "description": "Output as JSON",
64518
+ "name": "json",
64519
+ "allowNo": false,
64520
+ "type": "boolean"
64521
+ },
64522
+ "yes": {
64523
+ "char": "y",
64524
+ "description": "Skip confirmation prompt",
64525
+ "name": "yes",
64526
+ "allowNo": false,
64527
+ "type": "boolean"
64528
+ }
64529
+ },
64530
+ "hasDynamicHelp": false,
64531
+ "hiddenAliases": [],
64532
+ "id": "commitments:endpoints:revoke",
64533
+ "pluginAlias": "@skrr-ai/cli",
64534
+ "pluginName": "@skrr-ai/cli",
64535
+ "pluginType": "core",
64536
+ "strict": true,
64537
+ "enableJsonFlag": false,
64538
+ "resolveSpaceFlag": true,
64539
+ "isESM": false,
64540
+ "relativePath": [
64541
+ "dist",
64542
+ "commands",
64543
+ "commitments",
64544
+ "endpoints",
64545
+ "revoke.js"
64546
+ ]
64547
+ },
64548
+ "commitments:goals:link": {
64549
+ "aliases": [],
64550
+ "args": {
64551
+ "commitmentId": {
64552
+ "description": "Commitment ID",
64553
+ "name": "commitmentId",
64554
+ "required": true
64555
+ },
64556
+ "goalId": {
64557
+ "description": "Goal ID",
64558
+ "name": "goalId",
64559
+ "required": true
64560
+ }
64561
+ },
64562
+ "description": "Link a goal to a commitment (the commitment watches it)",
64563
+ "examples": [
64564
+ "<%= config.bin %> commitments goals link obj_abc123 goal_xyz789"
64565
+ ],
64566
+ "flags": {
64567
+ "bare": {
64568
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
64569
+ "name": "bare",
64570
+ "allowNo": false,
64571
+ "type": "boolean"
64572
+ },
64573
+ "token": {
64574
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
64575
+ "name": "token",
64576
+ "hasDynamicHelp": false,
64577
+ "multiple": false,
64578
+ "type": "option"
64579
+ },
64580
+ "workspace": {
64581
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
64582
+ "name": "workspace",
64583
+ "hasDynamicHelp": false,
64584
+ "multiple": false,
64585
+ "type": "option"
64586
+ },
64587
+ "profile": {
64588
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
64589
+ "name": "profile",
64590
+ "hasDynamicHelp": false,
64591
+ "multiple": false,
64592
+ "type": "option"
64593
+ },
64594
+ "json": {
64595
+ "description": "Output as JSON",
64596
+ "name": "json",
64597
+ "allowNo": false,
64598
+ "type": "boolean"
64599
+ }
64600
+ },
64601
+ "hasDynamicHelp": false,
64602
+ "hiddenAliases": [],
64603
+ "id": "commitments:goals:link",
64604
+ "pluginAlias": "@skrr-ai/cli",
64605
+ "pluginName": "@skrr-ai/cli",
64606
+ "pluginType": "core",
64607
+ "strict": true,
64608
+ "enableJsonFlag": false,
64609
+ "resolveSpaceFlag": true,
64610
+ "isESM": false,
64611
+ "relativePath": [
64612
+ "dist",
64613
+ "commands",
64614
+ "commitments",
64615
+ "goals",
64616
+ "link.js"
64617
+ ]
64618
+ },
64619
+ "commitments:goals:unlink": {
64620
+ "aliases": [],
64621
+ "args": {
64622
+ "commitmentId": {
64623
+ "description": "Commitment ID",
64624
+ "name": "commitmentId",
64625
+ "required": true
64626
+ },
64627
+ "goalId": {
64628
+ "description": "Goal ID",
64629
+ "name": "goalId",
64630
+ "required": true
64631
+ }
64632
+ },
64633
+ "description": "Unlink a goal from a commitment (both keep existing)",
64634
+ "examples": [
64635
+ "<%= config.bin %> commitments goals unlink obj_abc123 goal_xyz789"
64636
+ ],
64637
+ "flags": {
64638
+ "bare": {
64639
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
64640
+ "name": "bare",
64641
+ "allowNo": false,
64642
+ "type": "boolean"
64643
+ },
64644
+ "token": {
64645
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
64646
+ "name": "token",
64647
+ "hasDynamicHelp": false,
64648
+ "multiple": false,
64649
+ "type": "option"
64650
+ },
64651
+ "workspace": {
64652
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
64653
+ "name": "workspace",
64654
+ "hasDynamicHelp": false,
64655
+ "multiple": false,
64656
+ "type": "option"
64657
+ },
64658
+ "profile": {
64659
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
64660
+ "name": "profile",
64661
+ "hasDynamicHelp": false,
64662
+ "multiple": false,
64663
+ "type": "option"
64664
+ },
64665
+ "json": {
64666
+ "description": "Output as JSON",
64667
+ "name": "json",
64668
+ "allowNo": false,
64669
+ "type": "boolean"
64670
+ }
64671
+ },
64672
+ "hasDynamicHelp": false,
64673
+ "hiddenAliases": [],
64674
+ "id": "commitments:goals:unlink",
64675
+ "pluginAlias": "@skrr-ai/cli",
64676
+ "pluginName": "@skrr-ai/cli",
64677
+ "pluginType": "core",
64678
+ "strict": true,
64679
+ "enableJsonFlag": false,
64680
+ "resolveSpaceFlag": true,
64681
+ "isESM": false,
64682
+ "relativePath": [
64683
+ "dist",
64684
+ "commands",
64685
+ "commitments",
64686
+ "goals",
64687
+ "unlink.js"
64688
+ ]
64689
+ },
64690
+ "commitments:links:create": {
64691
+ "aliases": [],
64692
+ "args": {
64693
+ "commitmentId": {
64694
+ "description": "Commitment ID",
64695
+ "name": "commitmentId",
64696
+ "required": true
64697
+ },
64698
+ "targetType": {
64699
+ "description": "Work object type",
64700
+ "name": "targetType",
64701
+ "options": [
64702
+ "space",
64703
+ "project",
64704
+ "goal",
64705
+ "task"
64706
+ ],
64707
+ "required": true
64708
+ },
64709
+ "targetId": {
64710
+ "description": "Accessible work object ID",
64711
+ "name": "targetId",
64712
+ "required": true
64713
+ }
64714
+ },
64715
+ "description": "Link a work object to a commitment with its current responsibility roles",
64716
+ "flags": {
64717
+ "bare": {
64718
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
64719
+ "name": "bare",
64720
+ "allowNo": false,
64721
+ "type": "boolean"
64722
+ },
64723
+ "token": {
64724
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
64725
+ "name": "token",
64726
+ "hasDynamicHelp": false,
64727
+ "multiple": false,
64728
+ "type": "option"
64729
+ },
64730
+ "workspace": {
64731
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
64732
+ "name": "workspace",
64733
+ "hasDynamicHelp": false,
64734
+ "multiple": false,
64735
+ "type": "option"
64736
+ },
64737
+ "profile": {
64738
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
64739
+ "name": "profile",
64740
+ "hasDynamicHelp": false,
64741
+ "multiple": false,
64742
+ "type": "option"
64743
+ },
64744
+ "json": {
64745
+ "description": "Output as JSON",
64746
+ "name": "json",
64747
+ "allowNo": false,
64748
+ "type": "boolean"
64749
+ },
64750
+ "role": {
64751
+ "description": "Responsibility role (repeat for more than one)",
64752
+ "name": "role",
64753
+ "required": true,
64754
+ "hasDynamicHelp": false,
64755
+ "multiple": true,
64756
+ "options": [
64757
+ "home",
64758
+ "watch",
64759
+ "advance",
64760
+ "delivery"
64761
+ ],
64762
+ "type": "option"
64763
+ },
64764
+ "rationale": {
64765
+ "description": "Why this work object belongs in the commitment scope",
64766
+ "name": "rationale",
64524
64767
  "hasDynamicHelp": false,
64525
64768
  "multiple": false,
64526
64769
  "type": "option"
@@ -64528,7 +64771,7 @@
64528
64771
  },
64529
64772
  "hasDynamicHelp": false,
64530
64773
  "hiddenAliases": [],
64531
- "id": "commitments:endpoints:list",
64774
+ "id": "commitments:links:create",
64532
64775
  "pluginAlias": "@skrr-ai/cli",
64533
64776
  "pluginName": "@skrr-ai/cli",
64534
64777
  "pluginType": "core",
@@ -64540,24 +64783,25 @@
64540
64783
  "dist",
64541
64784
  "commands",
64542
64785
  "commitments",
64543
- "endpoints",
64544
- "list.js"
64786
+ "links",
64787
+ "create.js"
64545
64788
  ]
64546
64789
  },
64547
- "commitments:endpoints:revoke": {
64790
+ "commitments:links:detach": {
64548
64791
  "aliases": [],
64549
64792
  "args": {
64550
- "endpointId": {
64551
- "description": "Endpoint ID",
64552
- "name": "endpointId",
64793
+ "commitmentId": {
64794
+ "description": "Commitment ID",
64795
+ "name": "commitmentId",
64796
+ "required": true
64797
+ },
64798
+ "linkId": {
64799
+ "description": "Work link ID",
64800
+ "name": "linkId",
64553
64801
  "required": true
64554
64802
  }
64555
64803
  },
64556
- "description": "Revoke a commitment endpoint’s connection (the record stays)",
64557
- "examples": [
64558
- "<%= config.bin %> commitments endpoints revoke ep_abc123",
64559
- "<%= config.bin %> commitments endpoints revoke ep_abc123 --yes"
64560
- ],
64804
+ "description": "Detach a work object from a commitment without changing the work object",
64561
64805
  "flags": {
64562
64806
  "bare": {
64563
64807
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -64591,18 +64835,11 @@
64591
64835
  "name": "json",
64592
64836
  "allowNo": false,
64593
64837
  "type": "boolean"
64594
- },
64595
- "yes": {
64596
- "char": "y",
64597
- "description": "Skip confirmation prompt",
64598
- "name": "yes",
64599
- "allowNo": false,
64600
- "type": "boolean"
64601
64838
  }
64602
64839
  },
64603
64840
  "hasDynamicHelp": false,
64604
64841
  "hiddenAliases": [],
64605
- "id": "commitments:endpoints:revoke",
64842
+ "id": "commitments:links:detach",
64606
64843
  "pluginAlias": "@skrr-ai/cli",
64607
64844
  "pluginName": "@skrr-ai/cli",
64608
64845
  "pluginType": "core",
@@ -64614,28 +64851,20 @@
64614
64851
  "dist",
64615
64852
  "commands",
64616
64853
  "commitments",
64617
- "endpoints",
64618
- "revoke.js"
64854
+ "links",
64855
+ "detach.js"
64619
64856
  ]
64620
64857
  },
64621
- "commitments:goals:link": {
64858
+ "commitments:links:list": {
64622
64859
  "aliases": [],
64623
64860
  "args": {
64624
64861
  "commitmentId": {
64625
64862
  "description": "Commitment ID",
64626
64863
  "name": "commitmentId",
64627
64864
  "required": true
64628
- },
64629
- "goalId": {
64630
- "description": "Goal ID",
64631
- "name": "goalId",
64632
- "required": true
64633
64865
  }
64634
64866
  },
64635
- "description": "Link a goal to a commitment (the commitment watches it)",
64636
- "examples": [
64637
- "<%= config.bin %> commitments goals link obj_abc123 goal_xyz789"
64638
- ],
64867
+ "description": "List the current work objects a commitment watches, advances, or delivers into",
64639
64868
  "flags": {
64640
64869
  "bare": {
64641
64870
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -64669,11 +64898,17 @@
64669
64898
  "name": "json",
64670
64899
  "allowNo": false,
64671
64900
  "type": "boolean"
64901
+ },
64902
+ "inactive": {
64903
+ "description": "Include detached, archived, and access-revoked links",
64904
+ "name": "inactive",
64905
+ "allowNo": false,
64906
+ "type": "boolean"
64672
64907
  }
64673
64908
  },
64674
64909
  "hasDynamicHelp": false,
64675
64910
  "hiddenAliases": [],
64676
- "id": "commitments:goals:link",
64911
+ "id": "commitments:links:list",
64677
64912
  "pluginAlias": "@skrr-ai/cli",
64678
64913
  "pluginName": "@skrr-ai/cli",
64679
64914
  "pluginType": "core",
@@ -64685,11 +64920,11 @@
64685
64920
  "dist",
64686
64921
  "commands",
64687
64922
  "commitments",
64688
- "goals",
64689
- "link.js"
64923
+ "links",
64924
+ "list.js"
64690
64925
  ]
64691
64926
  },
64692
- "commitments:goals:unlink": {
64927
+ "commitments:links:update": {
64693
64928
  "aliases": [],
64694
64929
  "args": {
64695
64930
  "commitmentId": {
@@ -64697,16 +64932,13 @@
64697
64932
  "name": "commitmentId",
64698
64933
  "required": true
64699
64934
  },
64700
- "goalId": {
64701
- "description": "Goal ID",
64702
- "name": "goalId",
64935
+ "linkId": {
64936
+ "description": "Work link ID",
64937
+ "name": "linkId",
64703
64938
  "required": true
64704
64939
  }
64705
64940
  },
64706
- "description": "Unlink a goal from a commitment (both keep existing)",
64707
- "examples": [
64708
- "<%= config.bin %> commitments goals unlink obj_abc123 goal_xyz789"
64709
- ],
64941
+ "description": "Update the roles or rationale on an existing commitment work link",
64710
64942
  "flags": {
64711
64943
  "bare": {
64712
64944
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -64740,11 +64972,31 @@
64740
64972
  "name": "json",
64741
64973
  "allowNo": false,
64742
64974
  "type": "boolean"
64975
+ },
64976
+ "role": {
64977
+ "description": "Replacement responsibility role set (repeat for more than one)",
64978
+ "name": "role",
64979
+ "hasDynamicHelp": false,
64980
+ "multiple": true,
64981
+ "options": [
64982
+ "home",
64983
+ "watch",
64984
+ "advance",
64985
+ "delivery"
64986
+ ],
64987
+ "type": "option"
64988
+ },
64989
+ "rationale": {
64990
+ "description": "Replacement rationale",
64991
+ "name": "rationale",
64992
+ "hasDynamicHelp": false,
64993
+ "multiple": false,
64994
+ "type": "option"
64743
64995
  }
64744
64996
  },
64745
64997
  "hasDynamicHelp": false,
64746
64998
  "hiddenAliases": [],
64747
- "id": "commitments:goals:unlink",
64999
+ "id": "commitments:links:update",
64748
65000
  "pluginAlias": "@skrr-ai/cli",
64749
65001
  "pluginName": "@skrr-ai/cli",
64750
65002
  "pluginType": "core",
@@ -64756,8 +65008,8 @@
64756
65008
  "dist",
64757
65009
  "commands",
64758
65010
  "commitments",
64759
- "goals",
64760
- "unlink.js"
65011
+ "links",
65012
+ "update.js"
64761
65013
  ]
64762
65014
  },
64763
65015
  "commitments:pack:bind": {
@@ -65167,173 +65419,7 @@
65167
65419
  },
65168
65420
  "hasDynamicHelp": false,
65169
65421
  "hiddenAliases": [],
65170
- "id": "commitments:pack:promote",
65171
- "pluginAlias": "@skrr-ai/cli",
65172
- "pluginName": "@skrr-ai/cli",
65173
- "pluginType": "core",
65174
- "strict": true,
65175
- "enableJsonFlag": false,
65176
- "resolveSpaceFlag": true,
65177
- "isESM": false,
65178
- "relativePath": [
65179
- "dist",
65180
- "commands",
65181
- "commitments",
65182
- "pack",
65183
- "promote.js"
65184
- ]
65185
- },
65186
- "commitments:pack:shadow": {
65187
- "aliases": [],
65188
- "args": {
65189
- "id": {
65190
- "description": "Commitment ID",
65191
- "name": "id",
65192
- "required": true
65193
- }
65194
- },
65195
- "description": "Activate shadow: run the Pack in Monitor while saving its Mode and delivery promotion target",
65196
- "examples": [
65197
- "<%= config.bin %> commitments pack shadow <commitment-id>"
65198
- ],
65199
- "flags": {
65200
- "bare": {
65201
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
65202
- "name": "bare",
65203
- "allowNo": false,
65204
- "type": "boolean"
65205
- },
65206
- "token": {
65207
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
65208
- "name": "token",
65209
- "hasDynamicHelp": false,
65210
- "multiple": false,
65211
- "type": "option"
65212
- },
65213
- "workspace": {
65214
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
65215
- "name": "workspace",
65216
- "hasDynamicHelp": false,
65217
- "multiple": false,
65218
- "type": "option"
65219
- },
65220
- "profile": {
65221
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
65222
- "name": "profile",
65223
- "hasDynamicHelp": false,
65224
- "multiple": false,
65225
- "type": "option"
65226
- },
65227
- "json": {
65228
- "description": "Output as JSON",
65229
- "name": "json",
65230
- "allowNo": false,
65231
- "type": "boolean"
65232
- }
65233
- },
65234
- "hasDynamicHelp": false,
65235
- "hiddenAliases": [],
65236
- "id": "commitments:pack:shadow",
65237
- "pluginAlias": "@skrr-ai/cli",
65238
- "pluginName": "@skrr-ai/cli",
65239
- "pluginType": "core",
65240
- "strict": true,
65241
- "enableJsonFlag": false,
65242
- "resolveSpaceFlag": true,
65243
- "isESM": false,
65244
- "relativePath": [
65245
- "dist",
65246
- "commands",
65247
- "commitments",
65248
- "pack",
65249
- "shadow.js"
65250
- ]
65251
- },
65252
- "commitments:links:create": {
65253
- "aliases": [],
65254
- "args": {
65255
- "commitmentId": {
65256
- "description": "Commitment ID",
65257
- "name": "commitmentId",
65258
- "required": true
65259
- },
65260
- "targetType": {
65261
- "description": "Work object type",
65262
- "name": "targetType",
65263
- "options": [
65264
- "space",
65265
- "project",
65266
- "goal",
65267
- "task"
65268
- ],
65269
- "required": true
65270
- },
65271
- "targetId": {
65272
- "description": "Accessible work object ID",
65273
- "name": "targetId",
65274
- "required": true
65275
- }
65276
- },
65277
- "description": "Link a work object to a commitment with its current responsibility roles",
65278
- "flags": {
65279
- "bare": {
65280
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
65281
- "name": "bare",
65282
- "allowNo": false,
65283
- "type": "boolean"
65284
- },
65285
- "token": {
65286
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
65287
- "name": "token",
65288
- "hasDynamicHelp": false,
65289
- "multiple": false,
65290
- "type": "option"
65291
- },
65292
- "workspace": {
65293
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
65294
- "name": "workspace",
65295
- "hasDynamicHelp": false,
65296
- "multiple": false,
65297
- "type": "option"
65298
- },
65299
- "profile": {
65300
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
65301
- "name": "profile",
65302
- "hasDynamicHelp": false,
65303
- "multiple": false,
65304
- "type": "option"
65305
- },
65306
- "json": {
65307
- "description": "Output as JSON",
65308
- "name": "json",
65309
- "allowNo": false,
65310
- "type": "boolean"
65311
- },
65312
- "role": {
65313
- "description": "Responsibility role (repeat for more than one)",
65314
- "name": "role",
65315
- "required": true,
65316
- "hasDynamicHelp": false,
65317
- "multiple": true,
65318
- "options": [
65319
- "home",
65320
- "watch",
65321
- "advance",
65322
- "delivery"
65323
- ],
65324
- "type": "option"
65325
- },
65326
- "rationale": {
65327
- "description": "Why this work object belongs in the commitment scope",
65328
- "name": "rationale",
65329
- "hasDynamicHelp": false,
65330
- "multiple": false,
65331
- "type": "option"
65332
- }
65333
- },
65334
- "hasDynamicHelp": false,
65335
- "hiddenAliases": [],
65336
- "id": "commitments:links:create",
65422
+ "id": "commitments:pack:promote",
65337
65423
  "pluginAlias": "@skrr-ai/cli",
65338
65424
  "pluginName": "@skrr-ai/cli",
65339
65425
  "pluginType": "core",
@@ -65345,25 +65431,23 @@
65345
65431
  "dist",
65346
65432
  "commands",
65347
65433
  "commitments",
65348
- "links",
65349
- "create.js"
65434
+ "pack",
65435
+ "promote.js"
65350
65436
  ]
65351
65437
  },
65352
- "commitments:links:detach": {
65438
+ "commitments:pack:shadow": {
65353
65439
  "aliases": [],
65354
65440
  "args": {
65355
- "commitmentId": {
65441
+ "id": {
65356
65442
  "description": "Commitment ID",
65357
- "name": "commitmentId",
65358
- "required": true
65359
- },
65360
- "linkId": {
65361
- "description": "Work link ID",
65362
- "name": "linkId",
65443
+ "name": "id",
65363
65444
  "required": true
65364
65445
  }
65365
65446
  },
65366
- "description": "Detach a work object from a commitment without changing the work object",
65447
+ "description": "Activate shadow: run the Pack in Monitor while saving its Mode and delivery promotion target",
65448
+ "examples": [
65449
+ "<%= config.bin %> commitments pack shadow <commitment-id>"
65450
+ ],
65367
65451
  "flags": {
65368
65452
  "bare": {
65369
65453
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -65401,7 +65485,7 @@
65401
65485
  },
65402
65486
  "hasDynamicHelp": false,
65403
65487
  "hiddenAliases": [],
65404
- "id": "commitments:links:detach",
65488
+ "id": "commitments:pack:shadow",
65405
65489
  "pluginAlias": "@skrr-ai/cli",
65406
65490
  "pluginName": "@skrr-ai/cli",
65407
65491
  "pluginType": "core",
@@ -65413,20 +65497,18 @@
65413
65497
  "dist",
65414
65498
  "commands",
65415
65499
  "commitments",
65416
- "links",
65417
- "detach.js"
65500
+ "pack",
65501
+ "shadow.js"
65418
65502
  ]
65419
65503
  },
65420
- "commitments:links:list": {
65504
+ "characters:list": {
65421
65505
  "aliases": [],
65422
- "args": {
65423
- "commitmentId": {
65424
- "description": "Commitment ID",
65425
- "name": "commitmentId",
65426
- "required": true
65427
- }
65428
- },
65429
- "description": "List the current work objects a commitment watches, advances, or delivers into",
65506
+ "args": {},
65507
+ "description": "List the 3D characters you can use — the ids `spaces live scene --character` takes",
65508
+ "examples": [
65509
+ "<%= config.bin %> characters list",
65510
+ "<%= config.bin %> characters list --json"
65511
+ ],
65430
65512
  "flags": {
65431
65513
  "bare": {
65432
65514
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -65461,96 +65543,15 @@
65461
65543
  "allowNo": false,
65462
65544
  "type": "boolean"
65463
65545
  },
65464
- "inactive": {
65465
- "description": "Include detached, archived, and access-revoked links",
65466
- "name": "inactive",
65467
- "allowNo": false,
65468
- "type": "boolean"
65469
- }
65470
- },
65471
- "hasDynamicHelp": false,
65472
- "hiddenAliases": [],
65473
- "id": "commitments:links:list",
65474
- "pluginAlias": "@skrr-ai/cli",
65475
- "pluginName": "@skrr-ai/cli",
65476
- "pluginType": "core",
65477
- "strict": true,
65478
- "enableJsonFlag": false,
65479
- "resolveSpaceFlag": true,
65480
- "isESM": false,
65481
- "relativePath": [
65482
- "dist",
65483
- "commands",
65484
- "commitments",
65485
- "links",
65486
- "list.js"
65487
- ]
65488
- },
65489
- "commitments:links:update": {
65490
- "aliases": [],
65491
- "args": {
65492
- "commitmentId": {
65493
- "description": "Commitment ID",
65494
- "name": "commitmentId",
65495
- "required": true
65496
- },
65497
- "linkId": {
65498
- "description": "Work link ID",
65499
- "name": "linkId",
65500
- "required": true
65501
- }
65502
- },
65503
- "description": "Update the roles or rationale on an existing commitment work link",
65504
- "flags": {
65505
- "bare": {
65506
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
65507
- "name": "bare",
65508
- "allowNo": false,
65509
- "type": "boolean"
65510
- },
65511
- "token": {
65512
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
65513
- "name": "token",
65514
- "hasDynamicHelp": false,
65515
- "multiple": false,
65516
- "type": "option"
65517
- },
65518
- "workspace": {
65519
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
65520
- "name": "workspace",
65521
- "hasDynamicHelp": false,
65522
- "multiple": false,
65523
- "type": "option"
65524
- },
65525
- "profile": {
65526
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
65527
- "name": "profile",
65528
- "hasDynamicHelp": false,
65529
- "multiple": false,
65530
- "type": "option"
65531
- },
65532
- "json": {
65533
- "description": "Output as JSON",
65534
- "name": "json",
65546
+ "details": {
65547
+ "description": "Include renderer-only inline image placeholders in JSON (may be large)",
65548
+ "name": "details",
65535
65549
  "allowNo": false,
65536
65550
  "type": "boolean"
65537
65551
  },
65538
- "role": {
65539
- "description": "Replacement responsibility role set (repeat for more than one)",
65540
- "name": "role",
65541
- "hasDynamicHelp": false,
65542
- "multiple": true,
65543
- "options": [
65544
- "home",
65545
- "watch",
65546
- "advance",
65547
- "delivery"
65548
- ],
65549
- "type": "option"
65550
- },
65551
- "rationale": {
65552
- "description": "Replacement rationale",
65553
- "name": "rationale",
65552
+ "limit": {
65553
+ "description": "Maximum characters to return",
65554
+ "name": "limit",
65554
65555
  "hasDynamicHelp": false,
65555
65556
  "multiple": false,
65556
65557
  "type": "option"
@@ -65558,7 +65559,7 @@
65558
65559
  },
65559
65560
  "hasDynamicHelp": false,
65560
65561
  "hiddenAliases": [],
65561
- "id": "commitments:links:update",
65562
+ "id": "characters:list",
65562
65563
  "pluginAlias": "@skrr-ai/cli",
65563
65564
  "pluginName": "@skrr-ai/cli",
65564
65565
  "pluginType": "core",
@@ -65569,9 +65570,8 @@
65569
65570
  "relativePath": [
65570
65571
  "dist",
65571
65572
  "commands",
65572
- "commitments",
65573
- "links",
65574
- "update.js"
65573
+ "characters",
65574
+ "list.js"
65575
65575
  ]
65576
65576
  },
65577
65577
  "dm:thread:broadcast": {
@@ -69367,7 +69367,7 @@
69367
69367
  "type": "option"
69368
69368
  },
69369
69369
  "engine": {
69370
- "description": "Which engine row to attach when the machine registered several (claude, codex, sky-code, oversky). Required only when it is ambiguous.",
69370
+ "description": "Which engine row to attach when the machine registered several (claude, codex, sky-code). Required only when it is ambiguous.",
69371
69371
  "name": "engine",
69372
69372
  "hasDynamicHelp": false,
69373
69373
  "multiple": false,
@@ -69465,19 +69465,20 @@
69465
69465
  "aliases": [],
69466
69466
  "args": {
69467
69467
  "source": {
69468
- "description": "Local path, or <lease-id>:<path> on the machine",
69468
+ "description": "Local path, or <lease-id>:<path> on the machine (relative to /workspace, inside repos/ or user-data/)",
69469
69469
  "name": "source",
69470
69470
  "required": true
69471
69471
  },
69472
69472
  "destination": {
69473
- "description": "Local path, or <lease-id>:<path> on the machine",
69473
+ "description": "Local path, or <lease-id>:<path> on the machine; a directory (or a path ending in /) receives the file under its own name",
69474
69474
  "name": "destination",
69475
69475
  "required": true
69476
69476
  }
69477
69477
  },
69478
- "description": "Copy a file to or from a Dedicated Runtime machine",
69478
+ "description": "One file of at most 64 MiB, in either direction; exactly one side is <lease-id>:<path>. Push anything larger through Git or object storage.\n\nOn the machine a path is relative to /workspace (/workspace/... works too) and must be inside repos/ or user-data/: the rest of the workspace belongs to the runtime. A path that leads outside the workspace through a symbolic link is refused, and so is a name that holds credentials (.env, keys, .ssh/, .npmrc, .git/config and the like). A missing directory on the machine is created.\n\nAs with cp and scp, a destination that ends in / or is an existing directory receives the file under its source name.\n\nNeither side is left half-written: the file is staged beside its destination and renamed into place at the end. A file that changes while it is copied is refused, not spliced. Ctrl-C removes the partial copy and exits 130 (143 for SIGTERM, 129 when the terminal closes). Progress is shown on a terminal, but not with --json or under CI.",
69479
69479
  "examples": [
69480
69480
  "<%= config.bin %> machines dedicated cp ./dist/app.tar.gz rtl_abc123:repos/app/app.tar.gz",
69481
+ "<%= config.bin %> machines dedicated cp ./notes.md rtl_abc123:user-data/",
69481
69482
  "<%= config.bin %> machines dedicated cp rtl_abc123:repos/app/coverage/report.html ./report.html"
69482
69483
  ],
69483
69484
  "flags": {
@@ -69522,6 +69523,7 @@
69522
69523
  "pluginName": "@skrr-ai/cli",
69523
69524
  "pluginType": "core",
69524
69525
  "strict": true,
69526
+ "summary": "Copy a file to or from a Dedicated Runtime machine",
69525
69527
  "enableJsonFlag": false,
69526
69528
  "resolveSpaceFlag": true,
69527
69529
  "isESM": false,
@@ -69538,6 +69540,7 @@
69538
69540
  "args": {},
69539
69541
  "description": "Request a Dedicated Runtime lease. See `machines dedicated catalog` for sizes, storage bounds and prices.",
69540
69542
  "examples": [
69543
+ "<%= config.bin %> machines dedicated create --name dev-box --size-preset standard",
69541
69544
  "<%= config.bin %> machines dedicated create --name dev-box --size-preset standard --spending-limit-cents 20000",
69542
69545
  "<%= config.bin %> machines dedicated create --name dev-box --size-preset standard --spending-limit-cents 20000 --repository acme/app --wait --json"
69543
69546
  ],
@@ -69614,9 +69617,8 @@
69614
69617
  "type": "option"
69615
69618
  },
69616
69619
  "spending-limit-cents": {
69617
- "description": "Monthly spending limit in cents. Required; change it later with `machines dedicated spending-limit`.",
69620
+ "description": "Monthly spending cap in cents. Omit it to take the product's default cap (see `machines dedicated catalog`); change it later with `machines dedicated spending-limit`.",
69618
69621
  "name": "spending-limit-cents",
69619
- "required": true,
69620
69622
  "hasDynamicHelp": false,
69621
69623
  "multiple": false,
69622
69624
  "type": "option"
@@ -69877,9 +69879,15 @@
69877
69879
  "description": "Dedicated Runtime lease id",
69878
69880
  "name": "id",
69879
69881
  "required": true
69882
+ },
69883
+ "command": {
69884
+ "description": "The command and its arguments, after --",
69885
+ "multiple": true,
69886
+ "name": "command",
69887
+ "required": false
69880
69888
  }
69881
69889
  },
69882
- "description": "Run one command on a Dedicated Runtime machine and return its output and exit code",
69890
+ "description": "Runs the command once, as the workload user, in /workspace or --cwd, through a shell with no TTY. Give it after -- as words (each one quoted for you), or as one shell string with --command; not both. The agent shell policy does not apply. A start whose answer is lost is followed up under the same request id, never run a second time.\n\nExit status: the command's own exit code, and 124 when --timeout passes (its process group is killed; what it printed before then is still shown). When skrr refuses or cannot reach the machine it exits 1 (2 for a usage mistake) and prints a Code: line on stderr.\n\nOutput: stdout and stderr together. Each keeps its own order, but they are read as two streams, so a line from one can land before a line the other printed first; use --command '{ ...; } 2>&1' when that order matters. The machine returns at most 1 MB and the last 256 KiB of it is kept; when output was cut, stderr says how much.",
69883
69891
  "examples": [
69884
69892
  "<%= config.bin %> machines dedicated exec <lease-id> -- git -C repos/app status",
69885
69893
  "<%= config.bin %> machines dedicated exec <lease-id> --cwd repos/app --timeout 5m -- npm test",
@@ -69915,7 +69923,7 @@
69915
69923
  "type": "option"
69916
69924
  },
69917
69925
  "command": {
69918
- "description": "Command to run as one shell string, instead of trailing argv",
69926
+ "description": "Command to run as one shell string, instead of the words after --",
69919
69927
  "name": "command",
69920
69928
  "hasDynamicHelp": false,
69921
69929
  "multiple": false,
@@ -69955,7 +69963,8 @@
69955
69963
  "pluginAlias": "@skrr-ai/cli",
69956
69964
  "pluginName": "@skrr-ai/cli",
69957
69965
  "pluginType": "core",
69958
- "strict": false,
69966
+ "strict": true,
69967
+ "summary": "Run one command on a Dedicated Runtime machine and return its output and exit code",
69959
69968
  "usage": "machines dedicated exec <lease-id> [flags] -- <command...>",
69960
69969
  "enableJsonFlag": false,
69961
69970
  "resolveSpaceFlag": true,
@@ -70229,6 +70238,7 @@
70229
70238
  "<%= config.bin %> machines dedicated stop <lease-id> --wait",
70230
70239
  "<%= config.bin %> machines dedicated start <lease-id> --wait",
70231
70240
  "<%= config.bin %> machines dedicated restart <lease-id>",
70241
+ "<%= config.bin %> machines dedicated update-image <lease-id> --wait",
70232
70242
  "<%= config.bin %> machines dedicated snapshot <lease-id> --wait",
70233
70243
  "<%= config.bin %> machines dedicated grow <lease-id> --storage-gb 200",
70234
70244
  "<%= config.bin %> machines dedicated spending-limit <lease-id> --cents 30000",
@@ -70430,7 +70440,7 @@
70430
70440
  "required": true
70431
70441
  }
70432
70442
  },
70433
- "description": "Restore a deleted Dedicated Runtime into a new machine, from the recovery point its deletion kept. Only inside the recovery window, and once.",
70443
+ "description": "Restore a deleted Dedicated Runtime into a new machine, from the recovery point its deletion kept: inside the recovery window, or at any time for one whose deletion was stopped after its machine was shut down. Once.",
70434
70444
  "examples": [
70435
70445
  "<%= config.bin %> machines dedicated restore <deleted-lease-id>",
70436
70446
  "<%= config.bin %> machines dedicated restore <deleted-lease-id> --name research-box --wait"
@@ -71068,7 +71078,7 @@
71068
71078
  "type": "option"
71069
71079
  },
71070
71080
  "command": {
71071
- "description": "A command to type into the shell once it is ready, as if you typed it. The shell stays open after it.",
71081
+ "description": "A command to type into the shell once it shows its prompt, as if you typed it. Not typed if you type first. The shell stays open after it.",
71072
71082
  "name": "command",
71073
71083
  "hasDynamicHelp": false,
71074
71084
  "multiple": false,
@@ -71091,6 +71101,98 @@
71091
71101
  "terminal.js"
71092
71102
  ]
71093
71103
  },
71104
+ "machines:dedicated:update-image": {
71105
+ "aliases": [],
71106
+ "args": {
71107
+ "lease": {
71108
+ "description": "Dedicated Runtime lease id, or `self` when running on the machine itself",
71109
+ "name": "lease",
71110
+ "required": true
71111
+ }
71112
+ },
71113
+ "description": "Move a Dedicated Runtime onto the current root image now, instead of at its next start or restart. The machine is replaced: files under the workspace are kept; memory, shells and background jobs are not. If the new image does not come back healthy, the machine returns to its previous image. With --wait, succeeds only once the move is judged healthy.",
71114
+ "examples": [
71115
+ "<%= config.bin %> machines dedicated update-image <lease-id>",
71116
+ "<%= config.bin %> machines dedicated update-image <lease-id> --wait",
71117
+ "<%= config.bin %> machines dedicated update-image <lease-id> --wait --timeout 20m --json"
71118
+ ],
71119
+ "flags": {
71120
+ "bare": {
71121
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
71122
+ "name": "bare",
71123
+ "allowNo": false,
71124
+ "type": "boolean"
71125
+ },
71126
+ "token": {
71127
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
71128
+ "name": "token",
71129
+ "hasDynamicHelp": false,
71130
+ "multiple": false,
71131
+ "type": "option"
71132
+ },
71133
+ "workspace": {
71134
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
71135
+ "name": "workspace",
71136
+ "hasDynamicHelp": false,
71137
+ "multiple": false,
71138
+ "type": "option"
71139
+ },
71140
+ "profile": {
71141
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
71142
+ "name": "profile",
71143
+ "hasDynamicHelp": false,
71144
+ "multiple": false,
71145
+ "type": "option"
71146
+ },
71147
+ "json": {
71148
+ "description": "Output as JSON",
71149
+ "name": "json",
71150
+ "allowNo": false,
71151
+ "type": "boolean"
71152
+ },
71153
+ "wait": {
71154
+ "description": "Wait until the operation has finished. Exits 124 if --timeout passes first; the operation keeps running.",
71155
+ "name": "wait",
71156
+ "allowNo": false,
71157
+ "type": "boolean"
71158
+ },
71159
+ "timeout": {
71160
+ "dependsOn": [
71161
+ "wait"
71162
+ ],
71163
+ "description": "How long --wait watches, such as 10m (default 15m)",
71164
+ "name": "timeout",
71165
+ "hasDynamicHelp": false,
71166
+ "multiple": false,
71167
+ "type": "option"
71168
+ },
71169
+ "interval": {
71170
+ "dependsOn": [
71171
+ "wait"
71172
+ ],
71173
+ "description": "Seconds between checks while waiting (default 5)",
71174
+ "name": "interval",
71175
+ "hasDynamicHelp": false,
71176
+ "multiple": false,
71177
+ "type": "option"
71178
+ }
71179
+ },
71180
+ "hasDynamicHelp": false,
71181
+ "hiddenAliases": [],
71182
+ "id": "machines:dedicated:update-image",
71183
+ "pluginAlias": "@skrr-ai/cli",
71184
+ "pluginName": "@skrr-ai/cli",
71185
+ "pluginType": "core",
71186
+ "strict": true,
71187
+ "isESM": false,
71188
+ "relativePath": [
71189
+ "dist",
71190
+ "commands",
71191
+ "machines",
71192
+ "dedicated",
71193
+ "update-image.js"
71194
+ ]
71195
+ },
71094
71196
  "memory:approvals:issue": {
71095
71197
  "aliases": [],
71096
71198
  "args": {},
@@ -74641,21 +74743,23 @@
74641
74743
  "list.js"
74642
74744
  ]
74643
74745
  },
74644
- "northstars:governance:configure": {
74746
+ "northstars:recommendations:apply": {
74645
74747
  "aliases": [],
74646
74748
  "args": {
74647
74749
  "northstarId": {
74648
74750
  "description": "Northstar ID",
74649
74751
  "name": "northstarId",
74650
74752
  "required": true
74753
+ },
74754
+ "recommendationId": {
74755
+ "description": "Recommendation ID",
74756
+ "name": "recommendationId",
74757
+ "required": true
74651
74758
  }
74652
74759
  },
74653
- "description": "Configure a northstar's portfolio governance policy",
74760
+ "description": "Apply a northstar recommendation through CommitmentControl",
74654
74761
  "examples": [
74655
- "<%= config.bin %> northstars governance configure nst_abc123 --analysis agent_assisted --reviewer-agent agent_xyz",
74656
- "<%= config.bin %> northstars governance configure nst_abc123 --execution approval",
74657
- "<%= config.bin %> northstars governance configure nst_abc123 --execution bounded_auto --allow request_commitment_check --max-auto-per-day 3",
74658
- "<%= config.bin %> northstars governance configure nst_abc123 --protect cmt_1 --protect cmt_2"
74762
+ "<%= config.bin %> northstars recommendations apply nst_abc123 a1b2c3d4"
74659
74763
  ],
74660
74764
  "flags": {
74661
74765
  "bare": {
@@ -74690,157 +74794,11 @@
74690
74794
  "name": "json",
74691
74795
  "allowNo": false,
74692
74796
  "type": "boolean"
74693
- },
74694
- "analysis": {
74695
- "description": "Does an Agent reason about this portfolio?",
74696
- "name": "analysis",
74697
- "hasDynamicHelp": false,
74698
- "multiple": false,
74699
- "options": [
74700
- "deterministic",
74701
- "agent_assisted"
74702
- ],
74703
- "type": "option"
74704
- },
74705
- "execution": {
74706
- "description": "How much write authority a review outcome carries",
74707
- "name": "execution",
74708
- "hasDynamicHelp": false,
74709
- "multiple": false,
74710
- "options": [
74711
- "advisory",
74712
- "approval",
74713
- "bounded_auto"
74714
- ],
74715
- "type": "option"
74716
- },
74717
- "reviewer-agent": {
74718
- "description": "Agent that performs an agent_assisted review (required for that mode)",
74719
- "name": "reviewer-agent",
74720
- "hasDynamicHelp": false,
74721
- "multiple": false,
74722
- "type": "option"
74723
- },
74724
- "clear-reviewer-agent": {
74725
- "description": "Unset the reviewer agent",
74726
- "name": "clear-reviewer-agent",
74727
- "allowNo": false,
74728
- "type": "boolean"
74729
- },
74730
- "allow": {
74731
- "description": "Intent kind the governor may emit (repeatable; replaces the current list)",
74732
- "name": "allow",
74733
- "hasDynamicHelp": false,
74734
- "multiple": true,
74735
- "options": [
74736
- "pause_commitment",
74737
- "resume_commitment",
74738
- "reprioritize_commitment",
74739
- "request_commitment_check",
74740
- "set_execution_bounds",
74741
- "create_commitment_proposal",
74742
- "reassign_commitment_proposal"
74743
- ],
74744
- "type": "option"
74745
- },
74746
- "require-approval-for": {
74747
- "description": "Change class that always needs a human (repeatable; replaces the current list)",
74748
- "name": "require-approval-for",
74749
- "hasDynamicHelp": false,
74750
- "multiple": true,
74751
- "options": [
74752
- "resume",
74753
- "complete",
74754
- "cancel",
74755
- "archive",
74756
- "create",
74757
- "reassign",
74758
- "critical_commitment",
74759
- "compute_increase"
74760
- ],
74761
- "type": "option"
74762
- },
74763
- "protect": {
74764
- "description": "Commitment the governor may never touch (repeatable; replaces the current list)",
74765
- "name": "protect",
74766
- "hasDynamicHelp": false,
74767
- "multiple": true,
74768
- "type": "option"
74769
- },
74770
- "max-intents-per-review": {
74771
- "description": "Cap on intents per review",
74772
- "name": "max-intents-per-review",
74773
- "hasDynamicHelp": false,
74774
- "multiple": false,
74775
- "type": "option"
74776
- },
74777
- "max-auto-per-review": {
74778
- "description": "Cap on automatic mutations per review",
74779
- "name": "max-auto-per-review",
74780
- "hasDynamicHelp": false,
74781
- "multiple": false,
74782
- "type": "option"
74783
- },
74784
- "max-auto-per-day": {
74785
- "description": "Hard daily cap on automatic mutations",
74786
- "name": "max-auto-per-day",
74787
- "hasDynamicHelp": false,
74788
- "multiple": false,
74789
- "type": "option"
74790
- },
74791
- "cooldown-hours": {
74792
- "description": "Minimum hours between automatic mutations on ONE commitment",
74793
- "name": "cooldown-hours",
74794
- "hasDynamicHelp": false,
74795
- "multiple": false,
74796
- "type": "option"
74797
- },
74798
- "min-interval-hours": {
74799
- "description": "Floor of the cadence band commitments may be tuned inside",
74800
- "name": "min-interval-hours",
74801
- "hasDynamicHelp": false,
74802
- "multiple": false,
74803
- "type": "option"
74804
- },
74805
- "max-interval-hours": {
74806
- "description": "Ceiling of the cadence band commitments may be tuned inside",
74807
- "name": "max-interval-hours",
74808
- "hasDynamicHelp": false,
74809
- "multiple": false,
74810
- "type": "option"
74811
- },
74812
- "max-relative-change": {
74813
- "description": "Largest single-step relative change a bounded-auto adjustment may make (0..1)",
74814
- "name": "max-relative-change",
74815
- "hasDynamicHelp": false,
74816
- "multiple": false,
74817
- "type": "option"
74818
- },
74819
- "max-runs-per-day": {
74820
- "description": "Portfolio-wide observation budget (execution, NOT attention)",
74821
- "name": "max-runs-per-day",
74822
- "hasDynamicHelp": false,
74823
- "multiple": false,
74824
- "type": "option"
74825
- },
74826
- "max-concurrent-runs": {
74827
- "description": "Portfolio concurrency cap",
74828
- "name": "max-concurrent-runs",
74829
- "hasDynamicHelp": false,
74830
- "multiple": false,
74831
- "type": "option"
74832
- },
74833
- "critical-reserve": {
74834
- "description": "Fraction of the execution budget held for critical commitments (0..1)",
74835
- "name": "critical-reserve",
74836
- "hasDynamicHelp": false,
74837
- "multiple": false,
74838
- "type": "option"
74839
74797
  }
74840
74798
  },
74841
74799
  "hasDynamicHelp": false,
74842
74800
  "hiddenAliases": [],
74843
- "id": "northstars:governance:configure",
74801
+ "id": "northstars:recommendations:apply",
74844
74802
  "pluginAlias": "@skrr-ai/cli",
74845
74803
  "pluginName": "@skrr-ai/cli",
74846
74804
  "pluginType": "core",
@@ -74852,23 +74810,27 @@
74852
74810
  "dist",
74853
74811
  "commands",
74854
74812
  "northstars",
74855
- "governance",
74856
- "configure.js"
74813
+ "recommendations",
74814
+ "apply.js"
74857
74815
  ]
74858
74816
  },
74859
- "northstars:governance:show": {
74817
+ "northstars:recommendations:dismiss": {
74860
74818
  "aliases": [],
74861
74819
  "args": {
74862
74820
  "northstarId": {
74863
74821
  "description": "Northstar ID",
74864
74822
  "name": "northstarId",
74865
74823
  "required": true
74824
+ },
74825
+ "recommendationId": {
74826
+ "description": "Recommendation ID",
74827
+ "name": "recommendationId",
74828
+ "required": true
74866
74829
  }
74867
74830
  },
74868
- "description": "Show a northstar's portfolio governance policy and state",
74831
+ "description": "Dismiss a northstar recommendation (sticks across re-reviews)",
74869
74832
  "examples": [
74870
- "<%= config.bin %> northstars governance show nst_abc123",
74871
- "<%= config.bin %> northstars governance show nst_abc123 --json"
74833
+ "<%= config.bin %> northstars recommendations dismiss nst_abc123 a1b2c3d4"
74872
74834
  ],
74873
74835
  "flags": {
74874
74836
  "bare": {
@@ -74907,7 +74869,7 @@
74907
74869
  },
74908
74870
  "hasDynamicHelp": false,
74909
74871
  "hiddenAliases": [],
74910
- "id": "northstars:governance:show",
74872
+ "id": "northstars:recommendations:dismiss",
74911
74873
  "pluginAlias": "@skrr-ai/cli",
74912
74874
  "pluginName": "@skrr-ai/cli",
74913
74875
  "pluginType": "core",
@@ -74919,27 +74881,23 @@
74919
74881
  "dist",
74920
74882
  "commands",
74921
74883
  "northstars",
74922
- "governance",
74923
- "show.js"
74884
+ "recommendations",
74885
+ "dismiss.js"
74924
74886
  ]
74925
74887
  },
74926
- "northstars:recommendations:apply": {
74888
+ "northstars:recommendations:list": {
74927
74889
  "aliases": [],
74928
74890
  "args": {
74929
74891
  "northstarId": {
74930
74892
  "description": "Northstar ID",
74931
74893
  "name": "northstarId",
74932
74894
  "required": true
74933
- },
74934
- "recommendationId": {
74935
- "description": "Recommendation ID",
74936
- "name": "recommendationId",
74937
- "required": true
74938
74895
  }
74939
74896
  },
74940
- "description": "Apply a northstar recommendation through CommitmentControl",
74897
+ "description": "List a northstar's deterministic portfolio recommendations",
74941
74898
  "examples": [
74942
- "<%= config.bin %> northstars recommendations apply nst_abc123 a1b2c3d4"
74899
+ "<%= config.bin %> northstars recommendations nst_abc123",
74900
+ "<%= config.bin %> northstars recommendations nst_abc123 --status open"
74943
74901
  ],
74944
74902
  "flags": {
74945
74903
  "bare": {
@@ -74974,11 +74932,23 @@
74974
74932
  "name": "json",
74975
74933
  "allowNo": false,
74976
74934
  "type": "boolean"
74935
+ },
74936
+ "status": {
74937
+ "description": "Filter by status (default: all)",
74938
+ "name": "status",
74939
+ "hasDynamicHelp": false,
74940
+ "multiple": false,
74941
+ "options": [
74942
+ "open",
74943
+ "applied",
74944
+ "dismissed"
74945
+ ],
74946
+ "type": "option"
74977
74947
  }
74978
74948
  },
74979
74949
  "hasDynamicHelp": false,
74980
74950
  "hiddenAliases": [],
74981
- "id": "northstars:recommendations:apply",
74951
+ "id": "northstars:recommendations:list",
74982
74952
  "pluginAlias": "@skrr-ai/cli",
74983
74953
  "pluginName": "@skrr-ai/cli",
74984
74954
  "pluginType": "core",
@@ -74991,26 +74961,24 @@
74991
74961
  "commands",
74992
74962
  "northstars",
74993
74963
  "recommendations",
74994
- "apply.js"
74964
+ "list.js"
74995
74965
  ]
74996
74966
  },
74997
- "northstars:recommendations:dismiss": {
74967
+ "northstars:governance:configure": {
74998
74968
  "aliases": [],
74999
74969
  "args": {
75000
74970
  "northstarId": {
75001
74971
  "description": "Northstar ID",
75002
74972
  "name": "northstarId",
75003
74973
  "required": true
75004
- },
75005
- "recommendationId": {
75006
- "description": "Recommendation ID",
75007
- "name": "recommendationId",
75008
- "required": true
75009
74974
  }
75010
74975
  },
75011
- "description": "Dismiss a northstar recommendation (sticks across re-reviews)",
74976
+ "description": "Configure a northstar's portfolio governance policy",
75012
74977
  "examples": [
75013
- "<%= config.bin %> northstars recommendations dismiss nst_abc123 a1b2c3d4"
74978
+ "<%= config.bin %> northstars governance configure nst_abc123 --analysis agent_assisted --reviewer-agent agent_xyz",
74979
+ "<%= config.bin %> northstars governance configure nst_abc123 --execution approval",
74980
+ "<%= config.bin %> northstars governance configure nst_abc123 --execution bounded_auto --allow request_commitment_check --max-auto-per-day 3",
74981
+ "<%= config.bin %> northstars governance configure nst_abc123 --protect cmt_1 --protect cmt_2"
75014
74982
  ],
75015
74983
  "flags": {
75016
74984
  "bare": {
@@ -75045,11 +75013,157 @@
75045
75013
  "name": "json",
75046
75014
  "allowNo": false,
75047
75015
  "type": "boolean"
75016
+ },
75017
+ "analysis": {
75018
+ "description": "Does an Agent reason about this portfolio?",
75019
+ "name": "analysis",
75020
+ "hasDynamicHelp": false,
75021
+ "multiple": false,
75022
+ "options": [
75023
+ "deterministic",
75024
+ "agent_assisted"
75025
+ ],
75026
+ "type": "option"
75027
+ },
75028
+ "execution": {
75029
+ "description": "How much write authority a review outcome carries",
75030
+ "name": "execution",
75031
+ "hasDynamicHelp": false,
75032
+ "multiple": false,
75033
+ "options": [
75034
+ "advisory",
75035
+ "approval",
75036
+ "bounded_auto"
75037
+ ],
75038
+ "type": "option"
75039
+ },
75040
+ "reviewer-agent": {
75041
+ "description": "Agent that performs an agent_assisted review (required for that mode)",
75042
+ "name": "reviewer-agent",
75043
+ "hasDynamicHelp": false,
75044
+ "multiple": false,
75045
+ "type": "option"
75046
+ },
75047
+ "clear-reviewer-agent": {
75048
+ "description": "Unset the reviewer agent",
75049
+ "name": "clear-reviewer-agent",
75050
+ "allowNo": false,
75051
+ "type": "boolean"
75052
+ },
75053
+ "allow": {
75054
+ "description": "Intent kind the governor may emit (repeatable; replaces the current list)",
75055
+ "name": "allow",
75056
+ "hasDynamicHelp": false,
75057
+ "multiple": true,
75058
+ "options": [
75059
+ "pause_commitment",
75060
+ "resume_commitment",
75061
+ "reprioritize_commitment",
75062
+ "request_commitment_check",
75063
+ "set_execution_bounds",
75064
+ "create_commitment_proposal",
75065
+ "reassign_commitment_proposal"
75066
+ ],
75067
+ "type": "option"
75068
+ },
75069
+ "require-approval-for": {
75070
+ "description": "Change class that always needs a human (repeatable; replaces the current list)",
75071
+ "name": "require-approval-for",
75072
+ "hasDynamicHelp": false,
75073
+ "multiple": true,
75074
+ "options": [
75075
+ "resume",
75076
+ "complete",
75077
+ "cancel",
75078
+ "archive",
75079
+ "create",
75080
+ "reassign",
75081
+ "critical_commitment",
75082
+ "compute_increase"
75083
+ ],
75084
+ "type": "option"
75085
+ },
75086
+ "protect": {
75087
+ "description": "Commitment the governor may never touch (repeatable; replaces the current list)",
75088
+ "name": "protect",
75089
+ "hasDynamicHelp": false,
75090
+ "multiple": true,
75091
+ "type": "option"
75092
+ },
75093
+ "max-intents-per-review": {
75094
+ "description": "Cap on intents per review",
75095
+ "name": "max-intents-per-review",
75096
+ "hasDynamicHelp": false,
75097
+ "multiple": false,
75098
+ "type": "option"
75099
+ },
75100
+ "max-auto-per-review": {
75101
+ "description": "Cap on automatic mutations per review",
75102
+ "name": "max-auto-per-review",
75103
+ "hasDynamicHelp": false,
75104
+ "multiple": false,
75105
+ "type": "option"
75106
+ },
75107
+ "max-auto-per-day": {
75108
+ "description": "Hard daily cap on automatic mutations",
75109
+ "name": "max-auto-per-day",
75110
+ "hasDynamicHelp": false,
75111
+ "multiple": false,
75112
+ "type": "option"
75113
+ },
75114
+ "cooldown-hours": {
75115
+ "description": "Minimum hours between automatic mutations on ONE commitment",
75116
+ "name": "cooldown-hours",
75117
+ "hasDynamicHelp": false,
75118
+ "multiple": false,
75119
+ "type": "option"
75120
+ },
75121
+ "min-interval-hours": {
75122
+ "description": "Floor of the cadence band commitments may be tuned inside",
75123
+ "name": "min-interval-hours",
75124
+ "hasDynamicHelp": false,
75125
+ "multiple": false,
75126
+ "type": "option"
75127
+ },
75128
+ "max-interval-hours": {
75129
+ "description": "Ceiling of the cadence band commitments may be tuned inside",
75130
+ "name": "max-interval-hours",
75131
+ "hasDynamicHelp": false,
75132
+ "multiple": false,
75133
+ "type": "option"
75134
+ },
75135
+ "max-relative-change": {
75136
+ "description": "Largest single-step relative change a bounded-auto adjustment may make (0..1)",
75137
+ "name": "max-relative-change",
75138
+ "hasDynamicHelp": false,
75139
+ "multiple": false,
75140
+ "type": "option"
75141
+ },
75142
+ "max-runs-per-day": {
75143
+ "description": "Portfolio-wide observation budget (execution, NOT attention)",
75144
+ "name": "max-runs-per-day",
75145
+ "hasDynamicHelp": false,
75146
+ "multiple": false,
75147
+ "type": "option"
75148
+ },
75149
+ "max-concurrent-runs": {
75150
+ "description": "Portfolio concurrency cap",
75151
+ "name": "max-concurrent-runs",
75152
+ "hasDynamicHelp": false,
75153
+ "multiple": false,
75154
+ "type": "option"
75155
+ },
75156
+ "critical-reserve": {
75157
+ "description": "Fraction of the execution budget held for critical commitments (0..1)",
75158
+ "name": "critical-reserve",
75159
+ "hasDynamicHelp": false,
75160
+ "multiple": false,
75161
+ "type": "option"
75048
75162
  }
75049
75163
  },
75050
75164
  "hasDynamicHelp": false,
75051
75165
  "hiddenAliases": [],
75052
- "id": "northstars:recommendations:dismiss",
75166
+ "id": "northstars:governance:configure",
75053
75167
  "pluginAlias": "@skrr-ai/cli",
75054
75168
  "pluginName": "@skrr-ai/cli",
75055
75169
  "pluginType": "core",
@@ -75061,11 +75175,11 @@
75061
75175
  "dist",
75062
75176
  "commands",
75063
75177
  "northstars",
75064
- "recommendations",
75065
- "dismiss.js"
75178
+ "governance",
75179
+ "configure.js"
75066
75180
  ]
75067
75181
  },
75068
- "northstars:recommendations:list": {
75182
+ "northstars:governance:show": {
75069
75183
  "aliases": [],
75070
75184
  "args": {
75071
75185
  "northstarId": {
@@ -75074,10 +75188,10 @@
75074
75188
  "required": true
75075
75189
  }
75076
75190
  },
75077
- "description": "List a northstar's deterministic portfolio recommendations",
75191
+ "description": "Show a northstar's portfolio governance policy and state",
75078
75192
  "examples": [
75079
- "<%= config.bin %> northstars recommendations nst_abc123",
75080
- "<%= config.bin %> northstars recommendations nst_abc123 --status open"
75193
+ "<%= config.bin %> northstars governance show nst_abc123",
75194
+ "<%= config.bin %> northstars governance show nst_abc123 --json"
75081
75195
  ],
75082
75196
  "flags": {
75083
75197
  "bare": {
@@ -75112,23 +75226,11 @@
75112
75226
  "name": "json",
75113
75227
  "allowNo": false,
75114
75228
  "type": "boolean"
75115
- },
75116
- "status": {
75117
- "description": "Filter by status (default: all)",
75118
- "name": "status",
75119
- "hasDynamicHelp": false,
75120
- "multiple": false,
75121
- "options": [
75122
- "open",
75123
- "applied",
75124
- "dismissed"
75125
- ],
75126
- "type": "option"
75127
75229
  }
75128
75230
  },
75129
75231
  "hasDynamicHelp": false,
75130
75232
  "hiddenAliases": [],
75131
- "id": "northstars:recommendations:list",
75233
+ "id": "northstars:governance:show",
75132
75234
  "pluginAlias": "@skrr-ai/cli",
75133
75235
  "pluginName": "@skrr-ai/cli",
75134
75236
  "pluginType": "core",
@@ -75140,8 +75242,8 @@
75140
75242
  "dist",
75141
75243
  "commands",
75142
75244
  "northstars",
75143
- "recommendations",
75144
- "list.js"
75245
+ "governance",
75246
+ "show.js"
75145
75247
  ]
75146
75248
  },
75147
75249
  "projects:docs:attach": {
@@ -79869,7 +79971,7 @@
79869
79971
  "tabs.js"
79870
79972
  ]
79871
79973
  },
79872
- "spaces:room:ensure": {
79974
+ "spaces:skills:add": {
79873
79975
  "aliases": [],
79874
79976
  "args": {
79875
79977
  "id": {
@@ -79878,10 +79980,10 @@
79878
79980
  "required": true
79879
79981
  }
79880
79982
  },
79881
- "description": "Create a space's Room if it does not exist, and sync its members from the space",
79983
+ "description": "Add a skill to a space",
79882
79984
  "examples": [
79883
- "<%= config.bin %> spaces room ensure <space-id>",
79884
- "<%= config.bin %> spaces room ensure <space-id> --json"
79985
+ "<%= config.bin %> spaces skills add <space-id> --skill <skill-id>",
79986
+ "<%= config.bin %> spaces skills add <space-id> --skill <skill-id> --json"
79885
79987
  ],
79886
79988
  "flags": {
79887
79989
  "bare": {
@@ -79916,25 +80018,35 @@
79916
80018
  "name": "json",
79917
80019
  "allowNo": false,
79918
80020
  "type": "boolean"
80021
+ },
80022
+ "skill": {
80023
+ "description": "Skill ID",
80024
+ "name": "skill",
80025
+ "required": true,
80026
+ "hasDynamicHelp": false,
80027
+ "multiple": false,
80028
+ "type": "option"
79919
80029
  }
79920
80030
  },
79921
80031
  "hasDynamicHelp": false,
79922
80032
  "hiddenAliases": [],
79923
- "id": "spaces:room:ensure",
80033
+ "id": "spaces:skills:add",
79924
80034
  "pluginAlias": "@skrr-ai/cli",
79925
80035
  "pluginName": "@skrr-ai/cli",
79926
80036
  "pluginType": "core",
79927
80037
  "strict": true,
80038
+ "enableJsonFlag": false,
80039
+ "resolveSpaceFlag": true,
79928
80040
  "isESM": false,
79929
80041
  "relativePath": [
79930
80042
  "dist",
79931
80043
  "commands",
79932
80044
  "spaces",
79933
- "room",
79934
- "ensure.js"
80045
+ "skills",
80046
+ "add.js"
79935
80047
  ]
79936
80048
  },
79937
- "spaces:room:messages": {
80049
+ "spaces:skills:list": {
79938
80050
  "aliases": [],
79939
80051
  "args": {
79940
80052
  "id": {
@@ -79943,13 +80055,10 @@
79943
80055
  "required": true
79944
80056
  }
79945
80057
  },
79946
- "description": "List messages in a space's Room",
80058
+ "description": "List skills for a space",
79947
80059
  "examples": [
79948
- "<%= config.bin %> spaces room messages <space-id>",
79949
- "<%= config.bin %> spaces room messages <space-id> --limit 50",
79950
- "<%= config.bin %> spaces room messages <space-id> --cursor <cursor>",
79951
- "<%= config.bin %> spaces room messages <space-id> --thread <message-id>",
79952
- "<%= config.bin %> spaces room messages <space-id> --json"
80060
+ "<%= config.bin %> spaces skills list <space-id>",
80061
+ "<%= config.bin %> spaces skills list <space-id> --json"
79953
80062
  ],
79954
80063
  "flags": {
79955
80064
  "bare": {
@@ -79984,47 +80093,27 @@
79984
80093
  "name": "json",
79985
80094
  "allowNo": false,
79986
80095
  "type": "boolean"
79987
- },
79988
- "limit": {
79989
- "description": "Maximum number of messages to return",
79990
- "name": "limit",
79991
- "default": 20,
79992
- "hasDynamicHelp": false,
79993
- "multiple": false,
79994
- "type": "option"
79995
- },
79996
- "cursor": {
79997
- "description": "Pagination cursor from a previous page",
79998
- "name": "cursor",
79999
- "hasDynamicHelp": false,
80000
- "multiple": false,
80001
- "type": "option"
80002
- },
80003
- "thread": {
80004
- "description": "Only return replies in this thread (the root message ID)",
80005
- "name": "thread",
80006
- "hasDynamicHelp": false,
80007
- "multiple": false,
80008
- "type": "option"
80009
80096
  }
80010
80097
  },
80011
80098
  "hasDynamicHelp": false,
80012
80099
  "hiddenAliases": [],
80013
- "id": "spaces:room:messages",
80100
+ "id": "spaces:skills:list",
80014
80101
  "pluginAlias": "@skrr-ai/cli",
80015
80102
  "pluginName": "@skrr-ai/cli",
80016
80103
  "pluginType": "core",
80017
80104
  "strict": true,
80105
+ "enableJsonFlag": false,
80106
+ "resolveSpaceFlag": true,
80018
80107
  "isESM": false,
80019
80108
  "relativePath": [
80020
80109
  "dist",
80021
80110
  "commands",
80022
80111
  "spaces",
80023
- "room",
80024
- "messages.js"
80112
+ "skills",
80113
+ "list.js"
80025
80114
  ]
80026
80115
  },
80027
- "spaces:room:send": {
80116
+ "spaces:skills:pin": {
80028
80117
  "aliases": [],
80029
80118
  "args": {
80030
80119
  "id": {
@@ -80033,13 +80122,11 @@
80033
80122
  "required": true
80034
80123
  }
80035
80124
  },
80036
- "description": "Send a message to a space's Room",
80125
+ "description": "Pin or unpin a skill in a space",
80037
80126
  "examples": [
80038
- "<%= config.bin %> spaces room send <space-id> --message \"Standup in 5\"",
80039
- "<%= config.bin %> spaces room send <space-id> -m \"Take a look?\" --mention agent:<agent-id>",
80040
- "<%= config.bin %> spaces room send <space-id> -m \"Shipped\" --mention all",
80041
- "<%= config.bin %> spaces room send <space-id> -m \"On it\" --thread <message-id>",
80042
- "<%= config.bin %> spaces room send <space-id> -m \"Kickoff\" --ensure"
80127
+ "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned true",
80128
+ "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned false",
80129
+ "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned true --json"
80043
80130
  ],
80044
80131
  "flags": {
80045
80132
  "bare": {
@@ -80070,72 +80157,126 @@
80070
80157
  "type": "option"
80071
80158
  },
80072
80159
  "json": {
80073
- "description": "Output the sent message as JSON",
80160
+ "description": "Output as JSON",
80074
80161
  "name": "json",
80075
80162
  "allowNo": false,
80076
80163
  "type": "boolean"
80077
80164
  },
80078
- "message": {
80079
- "char": "m",
80080
- "description": "Message text to send",
80081
- "name": "message",
80165
+ "skill": {
80166
+ "description": "Skill ID",
80167
+ "name": "skill",
80082
80168
  "required": true,
80083
80169
  "hasDynamicHelp": false,
80084
80170
  "multiple": false,
80085
80171
  "type": "option"
80086
80172
  },
80087
- "mention": {
80088
- "description": "Mention a participant: agent:<id>, user:<id>, or all. Repeatable. Agents whose trigger mode is \"mention\" only respond when mentioned.",
80089
- "name": "mention",
80173
+ "pinned": {
80174
+ "description": "Whether to pin the skill",
80175
+ "name": "pinned",
80176
+ "required": true,
80090
80177
  "hasDynamicHelp": false,
80091
- "multiple": true,
80178
+ "multiple": false,
80179
+ "options": [
80180
+ "true",
80181
+ "false"
80182
+ ],
80092
80183
  "type": "option"
80184
+ }
80185
+ },
80186
+ "hasDynamicHelp": false,
80187
+ "hiddenAliases": [],
80188
+ "id": "spaces:skills:pin",
80189
+ "pluginAlias": "@skrr-ai/cli",
80190
+ "pluginName": "@skrr-ai/cli",
80191
+ "pluginType": "core",
80192
+ "strict": true,
80193
+ "enableJsonFlag": false,
80194
+ "resolveSpaceFlag": true,
80195
+ "isESM": false,
80196
+ "relativePath": [
80197
+ "dist",
80198
+ "commands",
80199
+ "spaces",
80200
+ "skills",
80201
+ "pin.js"
80202
+ ]
80203
+ },
80204
+ "spaces:skills:remove": {
80205
+ "aliases": [],
80206
+ "args": {
80207
+ "id": {
80208
+ "description": "Space ID",
80209
+ "name": "id",
80210
+ "required": true
80211
+ }
80212
+ },
80213
+ "description": "Remove a skill from a space",
80214
+ "examples": [
80215
+ "<%= config.bin %> spaces skills remove <space-id> --skill <skill-id>",
80216
+ "<%= config.bin %> spaces skills remove <space-id> --skill <skill-id> --json"
80217
+ ],
80218
+ "flags": {
80219
+ "bare": {
80220
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
80221
+ "name": "bare",
80222
+ "allowNo": false,
80223
+ "type": "boolean"
80093
80224
  },
80094
- "thread": {
80095
- "description": "Post as a reply in this thread (the root message ID)",
80096
- "name": "thread",
80225
+ "token": {
80226
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
80227
+ "name": "token",
80097
80228
  "hasDynamicHelp": false,
80098
80229
  "multiple": false,
80099
80230
  "type": "option"
80100
80231
  },
80101
- "embed": {
80102
- "description": "Embed an entity reference as <kind>:<ref>[@<space>]. Kinds: task, agent, view, space_view, space, project, goal, wiki_page, folder. <ref> accepts an id, a ref (OSK-2423), or a title. These kinds are space-scoped and need @<space> (or --space): space_view, project, wiki_page, folder.",
80103
- "name": "embed",
80232
+ "workspace": {
80233
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
80234
+ "name": "workspace",
80104
80235
  "hasDynamicHelp": false,
80105
- "multiple": true,
80236
+ "multiple": false,
80106
80237
  "type": "option"
80107
80238
  },
80108
- "reply-to": {
80109
- "description": "Message ID this message replies to",
80110
- "name": "reply-to",
80239
+ "profile": {
80240
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
80241
+ "name": "profile",
80111
80242
  "hasDynamicHelp": false,
80112
80243
  "multiple": false,
80113
80244
  "type": "option"
80114
80245
  },
80115
- "ensure": {
80116
- "description": "Create the Room first if the space does not have one yet",
80117
- "name": "ensure",
80246
+ "json": {
80247
+ "description": "Output as JSON",
80248
+ "name": "json",
80118
80249
  "allowNo": false,
80119
80250
  "type": "boolean"
80251
+ },
80252
+ "skill": {
80253
+ "description": "Skill ID",
80254
+ "name": "skill",
80255
+ "required": true,
80256
+ "hasDynamicHelp": false,
80257
+ "multiple": false,
80258
+ "type": "option"
80120
80259
  }
80121
80260
  },
80122
80261
  "hasDynamicHelp": false,
80123
80262
  "hiddenAliases": [],
80124
- "id": "spaces:room:send",
80263
+ "id": "spaces:skills:remove",
80125
80264
  "pluginAlias": "@skrr-ai/cli",
80126
80265
  "pluginName": "@skrr-ai/cli",
80127
80266
  "pluginType": "core",
80128
80267
  "strict": true,
80268
+ "enableJsonFlag": false,
80269
+ "resolveSpaceFlag": true,
80129
80270
  "isESM": false,
80130
80271
  "relativePath": [
80131
80272
  "dist",
80132
80273
  "commands",
80133
80274
  "spaces",
80134
- "room",
80135
- "send.js"
80275
+ "skills",
80276
+ "remove.js"
80136
80277
  ]
80137
80278
  },
80138
- "spaces:room:show": {
80279
+ "spaces:room:ensure": {
80139
80280
  "aliases": [],
80140
80281
  "args": {
80141
80282
  "id": {
@@ -80144,10 +80285,10 @@
80144
80285
  "required": true
80145
80286
  }
80146
80287
  },
80147
- "description": "Show a space's Room — the group chat behind the space detail page's Room tab",
80288
+ "description": "Create a space's Room if it does not exist, and sync its members from the space",
80148
80289
  "examples": [
80149
- "<%= config.bin %> spaces room show <space-id>",
80150
- "<%= config.bin %> spaces room show <space-id> --json"
80290
+ "<%= config.bin %> spaces room ensure <space-id>",
80291
+ "<%= config.bin %> spaces room ensure <space-id> --json"
80151
80292
  ],
80152
80293
  "flags": {
80153
80294
  "bare": {
@@ -80186,7 +80327,7 @@
80186
80327
  },
80187
80328
  "hasDynamicHelp": false,
80188
80329
  "hiddenAliases": [],
80189
- "id": "spaces:room:show",
80330
+ "id": "spaces:room:ensure",
80190
80331
  "pluginAlias": "@skrr-ai/cli",
80191
80332
  "pluginName": "@skrr-ai/cli",
80192
80333
  "pluginType": "core",
@@ -80197,10 +80338,10 @@
80197
80338
  "commands",
80198
80339
  "spaces",
80199
80340
  "room",
80200
- "show.js"
80341
+ "ensure.js"
80201
80342
  ]
80202
80343
  },
80203
- "spaces:skills:add": {
80344
+ "spaces:room:messages": {
80204
80345
  "aliases": [],
80205
80346
  "args": {
80206
80347
  "id": {
@@ -80209,10 +80350,13 @@
80209
80350
  "required": true
80210
80351
  }
80211
80352
  },
80212
- "description": "Add a skill to a space",
80353
+ "description": "List messages in a space's Room",
80213
80354
  "examples": [
80214
- "<%= config.bin %> spaces skills add <space-id> --skill <skill-id>",
80215
- "<%= config.bin %> spaces skills add <space-id> --skill <skill-id> --json"
80355
+ "<%= config.bin %> spaces room messages <space-id>",
80356
+ "<%= config.bin %> spaces room messages <space-id> --limit 50",
80357
+ "<%= config.bin %> spaces room messages <space-id> --cursor <cursor>",
80358
+ "<%= config.bin %> spaces room messages <space-id> --thread <message-id>",
80359
+ "<%= config.bin %> spaces room messages <space-id> --json"
80216
80360
  ],
80217
80361
  "flags": {
80218
80362
  "bare": {
@@ -80248,10 +80392,24 @@
80248
80392
  "allowNo": false,
80249
80393
  "type": "boolean"
80250
80394
  },
80251
- "skill": {
80252
- "description": "Skill ID",
80253
- "name": "skill",
80254
- "required": true,
80395
+ "limit": {
80396
+ "description": "Maximum number of messages to return",
80397
+ "name": "limit",
80398
+ "default": 20,
80399
+ "hasDynamicHelp": false,
80400
+ "multiple": false,
80401
+ "type": "option"
80402
+ },
80403
+ "cursor": {
80404
+ "description": "Pagination cursor from a previous page",
80405
+ "name": "cursor",
80406
+ "hasDynamicHelp": false,
80407
+ "multiple": false,
80408
+ "type": "option"
80409
+ },
80410
+ "thread": {
80411
+ "description": "Only return replies in this thread (the root message ID)",
80412
+ "name": "thread",
80255
80413
  "hasDynamicHelp": false,
80256
80414
  "multiple": false,
80257
80415
  "type": "option"
@@ -80259,23 +80417,21 @@
80259
80417
  },
80260
80418
  "hasDynamicHelp": false,
80261
80419
  "hiddenAliases": [],
80262
- "id": "spaces:skills:add",
80420
+ "id": "spaces:room:messages",
80263
80421
  "pluginAlias": "@skrr-ai/cli",
80264
80422
  "pluginName": "@skrr-ai/cli",
80265
80423
  "pluginType": "core",
80266
80424
  "strict": true,
80267
- "enableJsonFlag": false,
80268
- "resolveSpaceFlag": true,
80269
80425
  "isESM": false,
80270
80426
  "relativePath": [
80271
80427
  "dist",
80272
80428
  "commands",
80273
80429
  "spaces",
80274
- "skills",
80275
- "add.js"
80430
+ "room",
80431
+ "messages.js"
80276
80432
  ]
80277
80433
  },
80278
- "spaces:skills:list": {
80434
+ "spaces:room:send": {
80279
80435
  "aliases": [],
80280
80436
  "args": {
80281
80437
  "id": {
@@ -80284,10 +80440,13 @@
80284
80440
  "required": true
80285
80441
  }
80286
80442
  },
80287
- "description": "List skills for a space",
80443
+ "description": "Send a message to a space's Room",
80288
80444
  "examples": [
80289
- "<%= config.bin %> spaces skills list <space-id>",
80290
- "<%= config.bin %> spaces skills list <space-id> --json"
80445
+ "<%= config.bin %> spaces room send <space-id> --message \"Standup in 5\"",
80446
+ "<%= config.bin %> spaces room send <space-id> -m \"Take a look?\" --mention agent:<agent-id>",
80447
+ "<%= config.bin %> spaces room send <space-id> -m \"Shipped\" --mention all",
80448
+ "<%= config.bin %> spaces room send <space-id> -m \"On it\" --thread <message-id>",
80449
+ "<%= config.bin %> spaces room send <space-id> -m \"Kickoff\" --ensure"
80291
80450
  ],
80292
80451
  "flags": {
80293
80452
  "bare": {
@@ -80318,119 +80477,72 @@
80318
80477
  "type": "option"
80319
80478
  },
80320
80479
  "json": {
80321
- "description": "Output as JSON",
80480
+ "description": "Output the sent message as JSON",
80322
80481
  "name": "json",
80323
80482
  "allowNo": false,
80324
80483
  "type": "boolean"
80325
- }
80326
- },
80327
- "hasDynamicHelp": false,
80328
- "hiddenAliases": [],
80329
- "id": "spaces:skills:list",
80330
- "pluginAlias": "@skrr-ai/cli",
80331
- "pluginName": "@skrr-ai/cli",
80332
- "pluginType": "core",
80333
- "strict": true,
80334
- "enableJsonFlag": false,
80335
- "resolveSpaceFlag": true,
80336
- "isESM": false,
80337
- "relativePath": [
80338
- "dist",
80339
- "commands",
80340
- "spaces",
80341
- "skills",
80342
- "list.js"
80343
- ]
80344
- },
80345
- "spaces:skills:pin": {
80346
- "aliases": [],
80347
- "args": {
80348
- "id": {
80349
- "description": "Space ID",
80350
- "name": "id",
80351
- "required": true
80352
- }
80353
- },
80354
- "description": "Pin or unpin a skill in a space",
80355
- "examples": [
80356
- "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned true",
80357
- "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned false",
80358
- "<%= config.bin %> spaces skills pin <space-id> --skill <skill-id> --pinned true --json"
80359
- ],
80360
- "flags": {
80361
- "bare": {
80362
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
80363
- "name": "bare",
80364
- "allowNo": false,
80365
- "type": "boolean"
80366
80484
  },
80367
- "token": {
80368
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
80369
- "name": "token",
80485
+ "message": {
80486
+ "char": "m",
80487
+ "description": "Message text to send",
80488
+ "name": "message",
80489
+ "required": true,
80370
80490
  "hasDynamicHelp": false,
80371
80491
  "multiple": false,
80372
80492
  "type": "option"
80373
80493
  },
80374
- "workspace": {
80375
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
80376
- "name": "workspace",
80494
+ "mention": {
80495
+ "description": "Mention a participant: agent:<id>, user:<id>, or all. Repeatable. Agents whose trigger mode is \"mention\" only respond when mentioned.",
80496
+ "name": "mention",
80377
80497
  "hasDynamicHelp": false,
80378
- "multiple": false,
80498
+ "multiple": true,
80379
80499
  "type": "option"
80380
80500
  },
80381
- "profile": {
80382
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
80383
- "name": "profile",
80501
+ "thread": {
80502
+ "description": "Post as a reply in this thread (the root message ID)",
80503
+ "name": "thread",
80384
80504
  "hasDynamicHelp": false,
80385
80505
  "multiple": false,
80386
80506
  "type": "option"
80387
80507
  },
80388
- "json": {
80389
- "description": "Output as JSON",
80390
- "name": "json",
80391
- "allowNo": false,
80392
- "type": "boolean"
80393
- },
80394
- "skill": {
80395
- "description": "Skill ID",
80396
- "name": "skill",
80397
- "required": true,
80508
+ "embed": {
80509
+ "description": "Embed an entity reference as <kind>:<ref>[@<space>]. Kinds: task, agent, view, space_view, space, project, goal, wiki_page, folder. <ref> accepts an id, a ref (OSK-2423), or a title. These kinds are space-scoped and need @<space> (or --space): space_view, project, wiki_page, folder.",
80510
+ "name": "embed",
80398
80511
  "hasDynamicHelp": false,
80399
- "multiple": false,
80512
+ "multiple": true,
80400
80513
  "type": "option"
80401
80514
  },
80402
- "pinned": {
80403
- "description": "Whether to pin the skill",
80404
- "name": "pinned",
80405
- "required": true,
80515
+ "reply-to": {
80516
+ "description": "Message ID this message replies to",
80517
+ "name": "reply-to",
80406
80518
  "hasDynamicHelp": false,
80407
80519
  "multiple": false,
80408
- "options": [
80409
- "true",
80410
- "false"
80411
- ],
80412
80520
  "type": "option"
80521
+ },
80522
+ "ensure": {
80523
+ "description": "Create the Room first if the space does not have one yet",
80524
+ "name": "ensure",
80525
+ "allowNo": false,
80526
+ "type": "boolean"
80413
80527
  }
80414
80528
  },
80415
80529
  "hasDynamicHelp": false,
80416
80530
  "hiddenAliases": [],
80417
- "id": "spaces:skills:pin",
80531
+ "id": "spaces:room:send",
80418
80532
  "pluginAlias": "@skrr-ai/cli",
80419
80533
  "pluginName": "@skrr-ai/cli",
80420
80534
  "pluginType": "core",
80421
80535
  "strict": true,
80422
- "enableJsonFlag": false,
80423
- "resolveSpaceFlag": true,
80424
80536
  "isESM": false,
80425
80537
  "relativePath": [
80426
80538
  "dist",
80427
80539
  "commands",
80428
80540
  "spaces",
80429
- "skills",
80430
- "pin.js"
80541
+ "room",
80542
+ "send.js"
80431
80543
  ]
80432
80544
  },
80433
- "spaces:skills:remove": {
80545
+ "spaces:room:show": {
80434
80546
  "aliases": [],
80435
80547
  "args": {
80436
80548
  "id": {
@@ -80439,10 +80551,10 @@
80439
80551
  "required": true
80440
80552
  }
80441
80553
  },
80442
- "description": "Remove a skill from a space",
80554
+ "description": "Show a space's Room — the group chat behind the space detail page's Room tab",
80443
80555
  "examples": [
80444
- "<%= config.bin %> spaces skills remove <space-id> --skill <skill-id>",
80445
- "<%= config.bin %> spaces skills remove <space-id> --skill <skill-id> --json"
80556
+ "<%= config.bin %> spaces room show <space-id>",
80557
+ "<%= config.bin %> spaces room show <space-id> --json"
80446
80558
  ],
80447
80559
  "flags": {
80448
80560
  "bare": {
@@ -80477,32 +80589,22 @@
80477
80589
  "name": "json",
80478
80590
  "allowNo": false,
80479
80591
  "type": "boolean"
80480
- },
80481
- "skill": {
80482
- "description": "Skill ID",
80483
- "name": "skill",
80484
- "required": true,
80485
- "hasDynamicHelp": false,
80486
- "multiple": false,
80487
- "type": "option"
80488
80592
  }
80489
80593
  },
80490
80594
  "hasDynamicHelp": false,
80491
80595
  "hiddenAliases": [],
80492
- "id": "spaces:skills:remove",
80596
+ "id": "spaces:room:show",
80493
80597
  "pluginAlias": "@skrr-ai/cli",
80494
80598
  "pluginName": "@skrr-ai/cli",
80495
80599
  "pluginType": "core",
80496
80600
  "strict": true,
80497
- "enableJsonFlag": false,
80498
- "resolveSpaceFlag": true,
80499
80601
  "isESM": false,
80500
80602
  "relativePath": [
80501
80603
  "dist",
80502
80604
  "commands",
80503
80605
  "spaces",
80504
- "skills",
80505
- "remove.js"
80606
+ "room",
80607
+ "show.js"
80506
80608
  ]
80507
80609
  },
80508
80610
  "spaces:states:archive": {
@@ -90092,9 +90194,141 @@
90092
90194
  "multiple": false,
90093
90195
  "type": "option"
90094
90196
  },
90095
- "start-identity": {
90096
- "description": "Idempotency identity for this logical start",
90097
- "name": "start-identity",
90197
+ "start-identity": {
90198
+ "description": "Idempotency identity for this logical start",
90199
+ "name": "start-identity",
90200
+ "hasDynamicHelp": false,
90201
+ "multiple": false,
90202
+ "type": "option"
90203
+ },
90204
+ "json": {
90205
+ "description": "Output JSON",
90206
+ "name": "json",
90207
+ "allowNo": false,
90208
+ "type": "boolean"
90209
+ }
90210
+ },
90211
+ "hasDynamicHelp": false,
90212
+ "hiddenAliases": [],
90213
+ "id": "tasks:plan:start",
90214
+ "pluginAlias": "@skrr-ai/cli",
90215
+ "pluginName": "@skrr-ai/cli",
90216
+ "pluginType": "core",
90217
+ "strict": true,
90218
+ "enableJsonFlag": false,
90219
+ "resolveSpaceFlag": true,
90220
+ "isESM": false,
90221
+ "relativePath": [
90222
+ "dist",
90223
+ "commands",
90224
+ "tasks",
90225
+ "plan",
90226
+ "start.js"
90227
+ ]
90228
+ },
90229
+ "tasks:plan:sync": {
90230
+ "aliases": [],
90231
+ "args": {
90232
+ "id": {
90233
+ "name": "id",
90234
+ "required": true
90235
+ }
90236
+ },
90237
+ "description": "Reconcile a Task's direct subtasks into its Implementation Plan",
90238
+ "flags": {
90239
+ "bare": {
90240
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
90241
+ "name": "bare",
90242
+ "allowNo": false,
90243
+ "type": "boolean"
90244
+ },
90245
+ "token": {
90246
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
90247
+ "name": "token",
90248
+ "hasDynamicHelp": false,
90249
+ "multiple": false,
90250
+ "type": "option"
90251
+ },
90252
+ "workspace": {
90253
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
90254
+ "name": "workspace",
90255
+ "hasDynamicHelp": false,
90256
+ "multiple": false,
90257
+ "type": "option"
90258
+ },
90259
+ "profile": {
90260
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
90261
+ "name": "profile",
90262
+ "hasDynamicHelp": false,
90263
+ "multiple": false,
90264
+ "type": "option"
90265
+ },
90266
+ "json": {
90267
+ "description": "Output JSON",
90268
+ "name": "json",
90269
+ "allowNo": false,
90270
+ "type": "boolean"
90271
+ }
90272
+ },
90273
+ "hasDynamicHelp": false,
90274
+ "hiddenAliases": [],
90275
+ "id": "tasks:plan:sync",
90276
+ "pluginAlias": "@skrr-ai/cli",
90277
+ "pluginName": "@skrr-ai/cli",
90278
+ "pluginType": "core",
90279
+ "strict": true,
90280
+ "enableJsonFlag": false,
90281
+ "resolveSpaceFlag": true,
90282
+ "isESM": false,
90283
+ "relativePath": [
90284
+ "dist",
90285
+ "commands",
90286
+ "tasks",
90287
+ "plan",
90288
+ "sync.js"
90289
+ ]
90290
+ },
90291
+ "tasks:plan:update": {
90292
+ "aliases": [],
90293
+ "args": {
90294
+ "id": {
90295
+ "name": "id",
90296
+ "required": true
90297
+ }
90298
+ },
90299
+ "description": "Replace a Task Implementation Plan draft with revision guards",
90300
+ "flags": {
90301
+ "bare": {
90302
+ "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
90303
+ "name": "bare",
90304
+ "allowNo": false,
90305
+ "type": "boolean"
90306
+ },
90307
+ "token": {
90308
+ "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
90309
+ "name": "token",
90310
+ "hasDynamicHelp": false,
90311
+ "multiple": false,
90312
+ "type": "option"
90313
+ },
90314
+ "workspace": {
90315
+ "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
90316
+ "name": "workspace",
90317
+ "hasDynamicHelp": false,
90318
+ "multiple": false,
90319
+ "type": "option"
90320
+ },
90321
+ "profile": {
90322
+ "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
90323
+ "name": "profile",
90324
+ "hasDynamicHelp": false,
90325
+ "multiple": false,
90326
+ "type": "option"
90327
+ },
90328
+ "from-json": {
90329
+ "description": "JSON file, inline JSON, or - for stdin; contains draft and revisions",
90330
+ "name": "from-json",
90331
+ "required": true,
90098
90332
  "hasDynamicHelp": false,
90099
90333
  "multiple": false,
90100
90334
  "type": "option"
@@ -90108,7 +90342,7 @@
90108
90342
  },
90109
90343
  "hasDynamicHelp": false,
90110
90344
  "hiddenAliases": [],
90111
- "id": "tasks:plan:start",
90345
+ "id": "tasks:plan:update",
90112
90346
  "pluginAlias": "@skrr-ai/cli",
90113
90347
  "pluginName": "@skrr-ai/cli",
90114
90348
  "pluginType": "core",
@@ -90121,18 +90355,19 @@
90121
90355
  "commands",
90122
90356
  "tasks",
90123
90357
  "plan",
90124
- "start.js"
90358
+ "update.js"
90125
90359
  ]
90126
90360
  },
90127
- "tasks:plan:sync": {
90361
+ "tasks:resume:save": {
90128
90362
  "aliases": [],
90129
90363
  "args": {
90130
- "id": {
90131
- "name": "id",
90132
- "required": true
90364
+ "task": {
90365
+ "description": "Task id or ref",
90366
+ "name": "task",
90367
+ "required": false
90133
90368
  }
90134
90369
  },
90135
- "description": "Reconcile a Task's direct subtasks into its Implementation Plan",
90370
+ "description": "Save recovery state without publishing a visible Task Update",
90136
90371
  "flags": {
90137
90372
  "bare": {
90138
90373
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -90161,6 +90396,43 @@
90161
90396
  "multiple": false,
90162
90397
  "type": "option"
90163
90398
  },
90399
+ "task": {
90400
+ "description": "Task id; overrides runtime context",
90401
+ "name": "task",
90402
+ "hasDynamicHelp": false,
90403
+ "multiple": false,
90404
+ "type": "option"
90405
+ },
90406
+ "run-id": {
90407
+ "description": "Canonical Task Run",
90408
+ "name": "run-id",
90409
+ "required": true,
90410
+ "hasDynamicHelp": false,
90411
+ "multiple": false,
90412
+ "type": "option"
90413
+ },
90414
+ "snapshot": {
90415
+ "description": "Resume Point JSON snapshot. Every field is optional. `completed`, `nextActions` and `currentFocus` accept either a plain sentence or {summary,sourceRefs} — the object form is canonical and a bare string is lifted into it, so the same sentence you put in an Update’s nextActions works here unchanged. Shape: {completed:[], currentFocus, nextActions:[], openQuestions:[{question,sourceRef?}], relevantUpdateIds:[], evidenceRefs:[], deliverableRefs:[], childHeads:[{runId,resumePointId,status}], workspaceStateRef}. Never put a credential, token or lease in a snapshot — the server refuses one.",
90416
+ "name": "snapshot",
90417
+ "required": true,
90418
+ "hasDynamicHelp": false,
90419
+ "multiple": false,
90420
+ "type": "option"
90421
+ },
90422
+ "spec-version": {
90423
+ "description": "Task specification version",
90424
+ "name": "spec-version",
90425
+ "hasDynamicHelp": false,
90426
+ "multiple": false,
90427
+ "type": "option"
90428
+ },
90429
+ "idempotency-key": {
90430
+ "description": "Stable retry key",
90431
+ "name": "idempotency-key",
90432
+ "hasDynamicHelp": false,
90433
+ "multiple": false,
90434
+ "type": "option"
90435
+ },
90164
90436
  "json": {
90165
90437
  "description": "Output JSON",
90166
90438
  "name": "json",
@@ -90170,7 +90442,7 @@
90170
90442
  },
90171
90443
  "hasDynamicHelp": false,
90172
90444
  "hiddenAliases": [],
90173
- "id": "tasks:plan:sync",
90445
+ "id": "tasks:resume:save",
90174
90446
  "pluginAlias": "@skrr-ai/cli",
90175
90447
  "pluginName": "@skrr-ai/cli",
90176
90448
  "pluginType": "core",
@@ -90182,19 +90454,20 @@
90182
90454
  "dist",
90183
90455
  "commands",
90184
90456
  "tasks",
90185
- "plan",
90186
- "sync.js"
90457
+ "resume",
90458
+ "save.js"
90187
90459
  ]
90188
90460
  },
90189
- "tasks:plan:update": {
90461
+ "tasks:resume:show": {
90190
90462
  "aliases": [],
90191
90463
  "args": {
90192
- "id": {
90193
- "name": "id",
90194
- "required": true
90464
+ "task": {
90465
+ "description": "Task id or ref",
90466
+ "name": "task",
90467
+ "required": false
90195
90468
  }
90196
90469
  },
90197
- "description": "Replace a Task Implementation Plan draft with revision guards",
90470
+ "description": "Build the bounded context needed to resume one Task Run",
90198
90471
  "flags": {
90199
90472
  "bare": {
90200
90473
  "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
@@ -90223,16 +90496,23 @@
90223
90496
  "multiple": false,
90224
90497
  "type": "option"
90225
90498
  },
90226
- "from-json": {
90227
- "description": "JSON file, inline JSON, or - for stdin; contains draft and revisions",
90228
- "name": "from-json",
90499
+ "task": {
90500
+ "description": "Task id; overrides runtime context",
90501
+ "name": "task",
90502
+ "hasDynamicHelp": false,
90503
+ "multiple": false,
90504
+ "type": "option"
90505
+ },
90506
+ "run-id": {
90507
+ "description": "Canonical Task Run",
90508
+ "name": "run-id",
90229
90509
  "required": true,
90230
90510
  "hasDynamicHelp": false,
90231
90511
  "multiple": false,
90232
90512
  "type": "option"
90233
90513
  },
90234
90514
  "json": {
90235
- "description": "Output JSON",
90515
+ "description": "Output the Resume Context as JSON",
90236
90516
  "name": "json",
90237
90517
  "allowNo": false,
90238
90518
  "type": "boolean"
@@ -90240,7 +90520,7 @@
90240
90520
  },
90241
90521
  "hasDynamicHelp": false,
90242
90522
  "hiddenAliases": [],
90243
- "id": "tasks:plan:update",
90523
+ "id": "tasks:resume:show",
90244
90524
  "pluginAlias": "@skrr-ai/cli",
90245
90525
  "pluginName": "@skrr-ai/cli",
90246
90526
  "pluginType": "core",
@@ -90252,8 +90532,8 @@
90252
90532
  "dist",
90253
90533
  "commands",
90254
90534
  "tasks",
90255
- "plan",
90256
- "update.js"
90535
+ "resume",
90536
+ "show.js"
90257
90537
  ]
90258
90538
  },
90259
90539
  "tasks:resource:add": {
@@ -90736,184 +91016,6 @@
90736
91016
  "submit.js"
90737
91017
  ]
90738
91018
  },
90739
- "tasks:resume:save": {
90740
- "aliases": [],
90741
- "args": {
90742
- "task": {
90743
- "description": "Task id or ref",
90744
- "name": "task",
90745
- "required": false
90746
- }
90747
- },
90748
- "description": "Save recovery state without publishing a visible Task Update",
90749
- "flags": {
90750
- "bare": {
90751
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
90752
- "name": "bare",
90753
- "allowNo": false,
90754
- "type": "boolean"
90755
- },
90756
- "token": {
90757
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
90758
- "name": "token",
90759
- "hasDynamicHelp": false,
90760
- "multiple": false,
90761
- "type": "option"
90762
- },
90763
- "workspace": {
90764
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
90765
- "name": "workspace",
90766
- "hasDynamicHelp": false,
90767
- "multiple": false,
90768
- "type": "option"
90769
- },
90770
- "profile": {
90771
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
90772
- "name": "profile",
90773
- "hasDynamicHelp": false,
90774
- "multiple": false,
90775
- "type": "option"
90776
- },
90777
- "task": {
90778
- "description": "Task id; overrides runtime context",
90779
- "name": "task",
90780
- "hasDynamicHelp": false,
90781
- "multiple": false,
90782
- "type": "option"
90783
- },
90784
- "run-id": {
90785
- "description": "Canonical Task Run",
90786
- "name": "run-id",
90787
- "required": true,
90788
- "hasDynamicHelp": false,
90789
- "multiple": false,
90790
- "type": "option"
90791
- },
90792
- "snapshot": {
90793
- "description": "Resume Point JSON snapshot. Every field is optional. `completed`, `nextActions` and `currentFocus` accept either a plain sentence or {summary,sourceRefs} — the object form is canonical and a bare string is lifted into it, so the same sentence you put in an Update’s nextActions works here unchanged. Shape: {completed:[], currentFocus, nextActions:[], openQuestions:[{question,sourceRef?}], relevantUpdateIds:[], evidenceRefs:[], deliverableRefs:[], childHeads:[{runId,resumePointId,status}], workspaceStateRef}. Never put a credential, token or lease in a snapshot — the server refuses one.",
90794
- "name": "snapshot",
90795
- "required": true,
90796
- "hasDynamicHelp": false,
90797
- "multiple": false,
90798
- "type": "option"
90799
- },
90800
- "spec-version": {
90801
- "description": "Task specification version",
90802
- "name": "spec-version",
90803
- "hasDynamicHelp": false,
90804
- "multiple": false,
90805
- "type": "option"
90806
- },
90807
- "idempotency-key": {
90808
- "description": "Stable retry key",
90809
- "name": "idempotency-key",
90810
- "hasDynamicHelp": false,
90811
- "multiple": false,
90812
- "type": "option"
90813
- },
90814
- "json": {
90815
- "description": "Output JSON",
90816
- "name": "json",
90817
- "allowNo": false,
90818
- "type": "boolean"
90819
- }
90820
- },
90821
- "hasDynamicHelp": false,
90822
- "hiddenAliases": [],
90823
- "id": "tasks:resume:save",
90824
- "pluginAlias": "@skrr-ai/cli",
90825
- "pluginName": "@skrr-ai/cli",
90826
- "pluginType": "core",
90827
- "strict": true,
90828
- "enableJsonFlag": false,
90829
- "resolveSpaceFlag": true,
90830
- "isESM": false,
90831
- "relativePath": [
90832
- "dist",
90833
- "commands",
90834
- "tasks",
90835
- "resume",
90836
- "save.js"
90837
- ]
90838
- },
90839
- "tasks:resume:show": {
90840
- "aliases": [],
90841
- "args": {
90842
- "task": {
90843
- "description": "Task id or ref",
90844
- "name": "task",
90845
- "required": false
90846
- }
90847
- },
90848
- "description": "Build the bounded context needed to resume one Task Run",
90849
- "flags": {
90850
- "bare": {
90851
- "description": "Bare mode — ignore keychain/file credential sources. Token must come from env or --token.",
90852
- "name": "bare",
90853
- "allowNo": false,
90854
- "type": "boolean"
90855
- },
90856
- "token": {
90857
- "description": "Bearer token for this invocation (debugging/impersonation). Overrides env and stored creds.",
90858
- "name": "token",
90859
- "hasDynamicHelp": false,
90860
- "multiple": false,
90861
- "type": "option"
90862
- },
90863
- "workspace": {
90864
- "description": "Workspace ID for workspace-scoped requests (also sets X-Workspace-Id).",
90865
- "name": "workspace",
90866
- "hasDynamicHelp": false,
90867
- "multiple": false,
90868
- "type": "option"
90869
- },
90870
- "profile": {
90871
- "description": "Which stored session to use. Each profile keeps its own credential and deployment, so signing into one does not sign you out of another. Also OVERSKY_PROFILE.",
90872
- "name": "profile",
90873
- "hasDynamicHelp": false,
90874
- "multiple": false,
90875
- "type": "option"
90876
- },
90877
- "task": {
90878
- "description": "Task id; overrides runtime context",
90879
- "name": "task",
90880
- "hasDynamicHelp": false,
90881
- "multiple": false,
90882
- "type": "option"
90883
- },
90884
- "run-id": {
90885
- "description": "Canonical Task Run",
90886
- "name": "run-id",
90887
- "required": true,
90888
- "hasDynamicHelp": false,
90889
- "multiple": false,
90890
- "type": "option"
90891
- },
90892
- "json": {
90893
- "description": "Output the Resume Context as JSON",
90894
- "name": "json",
90895
- "allowNo": false,
90896
- "type": "boolean"
90897
- }
90898
- },
90899
- "hasDynamicHelp": false,
90900
- "hiddenAliases": [],
90901
- "id": "tasks:resume:show",
90902
- "pluginAlias": "@skrr-ai/cli",
90903
- "pluginName": "@skrr-ai/cli",
90904
- "pluginType": "core",
90905
- "strict": true,
90906
- "enableJsonFlag": false,
90907
- "resolveSpaceFlag": true,
90908
- "isESM": false,
90909
- "relativePath": [
90910
- "dist",
90911
- "commands",
90912
- "tasks",
90913
- "resume",
90914
- "show.js"
90915
- ]
90916
- },
90917
91019
  "tasks:skills:pin": {
90918
91020
  "aliases": [],
90919
91021
  "args": {
@@ -94686,5 +94788,5 @@
94686
94788
  ]
94687
94789
  }
94688
94790
  },
94689
- "version": "0.1.28"
94791
+ "version": "0.1.30"
94690
94792
  }