@kosuke-ai/kosuke 1.0.4 → 1.0.5

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 (131) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/generated/commands/crons/delete.js +2 -1
  3. package/dist/generated/commands/crons/runs-diagnostics.js +1 -3
  4. package/dist/generated/commands/deploy/queue-delete.js +2 -1
  5. package/dist/generated/commands/files/delete.js +2 -1
  6. package/dist/generated/commands/mac/browser-connection-check.js +1 -3
  7. package/dist/generated/commands/mac/browser-connections.js +1 -3
  8. package/dist/generated/commands/mac/browser-profiles.js +1 -3
  9. package/dist/generated/commands/mac/browser-sign-in.js +1 -3
  10. package/dist/generated/commands/mac/browser.js +1 -3
  11. package/dist/generated/commands/mac/tools.js +1 -3
  12. package/dist/generated/commands/personal-tasks/create.js +1 -3
  13. package/dist/generated/commands/personal-tasks/delete.js +2 -1
  14. package/dist/generated/commands/personal-tasks/get.js +1 -3
  15. package/dist/generated/commands/personal-tasks/list.js +1 -3
  16. package/dist/generated/commands/personal-tasks/move.js +1 -3
  17. package/dist/generated/commands/personal-tasks/start.js +1 -3
  18. package/dist/generated/commands/personal-tasks/update.js +1 -3
  19. package/dist/generated/commands/preview/share-delete.js +2 -1
  20. package/dist/generated/commands/projects/backlog-items-delete.js +2 -1
  21. package/dist/generated/commands/projects/batch-merging-set.js +1 -3
  22. package/dist/generated/commands/projects/delete.js +2 -1
  23. package/dist/generated/commands/projects/env-vars-remove.js +2 -1
  24. package/dist/generated/commands/projects/labels-delete.js +2 -1
  25. package/dist/generated/commands/projects/qa-guide-set.js +1 -4
  26. package/dist/generated/commands/projects/services-remove.js +2 -1
  27. package/dist/generated/commands/projects/switch-workflow.js +1 -3
  28. package/dist/generated/commands/sensei/cards-close.js +1 -3
  29. package/dist/generated/commands/sensei/cards-mark-read.js +1 -3
  30. package/dist/generated/commands/sensei/cards-put.js +1 -3
  31. package/dist/generated/commands/sensei/cards-send-reply.js +1 -3
  32. package/dist/generated/commands/sensei/chat.js +2 -1
  33. package/dist/generated/commands/sensei/connect.js +1 -3
  34. package/dist/generated/commands/sensei/delegates-get.js +1 -3
  35. package/dist/generated/commands/sensei/delegates-note.js +1 -3
  36. package/dist/generated/commands/sensei/delegates-start.js +1 -3
  37. package/dist/generated/commands/sensei/delegates-stop.js +1 -3
  38. package/dist/generated/commands/sensei/describe.js +1 -3
  39. package/dist/generated/commands/sensei/device-requests-decide.js +1 -3
  40. package/dist/generated/commands/sensei/device-requests-list.js +1 -3
  41. package/dist/generated/commands/sensei/memory-get.js +1 -3
  42. package/dist/generated/commands/sensei/memory-put.js +1 -3
  43. package/dist/generated/commands/sensei/merge-rule.js +1 -3
  44. package/dist/generated/commands/sensei/merge.js +1 -3
  45. package/dist/generated/commands/sensei/messages-reply.js +1 -3
  46. package/dist/generated/commands/sensei/messages-reroute.js +1 -3
  47. package/dist/generated/commands/sensei/reels-activity.js +2 -1
  48. package/dist/generated/commands/sensei/reels-proposals.js +2 -1
  49. package/dist/generated/commands/sensei/reels-ranks.js +2 -1
  50. package/dist/generated/commands/sensei/reels-skips.js +2 -1
  51. package/dist/generated/commands/sensei/repository.js +1 -3
  52. package/dist/generated/commands/sensei/review-approve.js +1 -3
  53. package/dist/generated/commands/sensei/review-ask.js +1 -3
  54. package/dist/generated/commands/sensei/review-context.js +1 -3
  55. package/dist/generated/commands/sensei/sessions-assess.js +1 -3
  56. package/dist/generated/commands/sensei/sessions-facts.js +1 -3
  57. package/dist/generated/commands/sensei/suggest.js +1 -3
  58. package/dist/generated/commands/sensei/thread-done.js +1 -3
  59. package/dist/generated/commands/sensei/thread-move.js +1 -3
  60. package/dist/generated/commands/sensei/thread-split.js +1 -3
  61. package/dist/generated/commands/sensei/threads.js +1 -3
  62. package/dist/generated/commands/sensei/tickets-merge.js +1 -3
  63. package/dist/generated/commands/sensei/widgets.js +2 -1
  64. package/dist/generated/commands/sessions/delete.js +1 -3
  65. package/dist/generated/commands/sessions/desktop-control.js +1 -3
  66. package/dist/generated/commands/sessions/diff-comments-delete.js +2 -1
  67. package/dist/generated/commands/sessions/go-ahead-clear.js +1 -3
  68. package/dist/generated/commands/sessions/go-ahead-set.js +1 -3
  69. package/dist/generated/commands/sessions/queue-delete.js +1 -3
  70. package/dist/generated/commands/tasks/delete.js +2 -1
  71. package/dist/generated/commands/tasks/move.js +1 -3
  72. package/dist/generated/commands/user/crons-artifacts-list.js +1 -3
  73. package/dist/generated/commands/user/crons-create.js +1 -3
  74. package/dist/generated/commands/user/crons-get.js +1 -3
  75. package/dist/generated/commands/user/crons-list.js +1 -3
  76. package/dist/generated/commands/user/crons-run.js +1 -3
  77. package/dist/generated/commands/user/crons-runs-artifacts-get.js +1 -3
  78. package/dist/generated/commands/user/crons-runs-artifacts-list.js +1 -3
  79. package/dist/generated/commands/user/crons-runs-get.js +1 -3
  80. package/dist/generated/commands/user/crons-runs-list.js +1 -3
  81. package/dist/generated/commands/user/crons-update.js +1 -3
  82. package/dist/generated/commands/user/files-delete.js +2 -1
  83. package/dist/generated/commands/user/integrations-linkedin-connect.js +2 -1
  84. package/dist/generated/commands/user/integrations-linkedin-list.js +2 -1
  85. package/dist/generated/commands/user/integrations-linkedin-reconnect.js +2 -1
  86. package/dist/generated/commands/user/integrations-list.js +2 -1
  87. package/dist/generated/commands/user/integrations-remove.js +2 -1
  88. package/dist/generated/commands/user/integrations-x-connect.js +2 -1
  89. package/dist/generated/commands/user/integrations-x-list.js +2 -1
  90. package/dist/generated/commands/user/integrations-x-reconnect.js +2 -1
  91. package/dist/generated/commands/user/memory-list.js +2 -1
  92. package/dist/generated/commands/user/memory-put.js +2 -1
  93. package/dist/generated/commands/user/push-devices-register.js +2 -1
  94. package/dist/generated/commands/user/push-devices-remove.js +2 -1
  95. package/dist/generated/commands/user/skills-delete.js +2 -1
  96. package/dist/generated/commands/user/subscriptions-delete.js +2 -1
  97. package/dist/generated/commands/user/subscriptions-grok-change.js +2 -1
  98. package/dist/generated/commands/user/subscriptions-login-antigravity-cancel.js +2 -1
  99. package/dist/generated/commands/user/subscriptions-login-antigravity-complete.js +2 -1
  100. package/dist/generated/commands/user/subscriptions-login-antigravity-start.js +2 -1
  101. package/dist/generated/commands/user/subscriptions-login-claude-complete.js +2 -1
  102. package/dist/generated/commands/user/subscriptions-login-claude-start.js +2 -1
  103. package/dist/generated/commands/user/subscriptions-login-codex-complete.js +2 -1
  104. package/dist/generated/commands/user/subscriptions-login-codex-start.js +2 -1
  105. package/dist/generated/commands/user/subscriptions-login-muse-complete.js +2 -1
  106. package/dist/generated/commands/user/subscriptions-login-muse-start.js +2 -1
  107. package/dist/generated/commands/user/subscriptions-logins-delete.js +2 -1
  108. package/dist/generated/commands/user/subscriptions-logins-recheck.js +2 -1
  109. package/dist/generated/commands/user/subscriptions-set-default-model.js +2 -1
  110. package/dist/generated/commands/user/subscriptions-set-key.js +2 -1
  111. package/dist/generated/commands/workspaces/ai-provider-google-delete-method.js +2 -1
  112. package/dist/generated/commands/workspaces/ai-provider-google-remove.js +2 -1
  113. package/dist/generated/commands/workspaces/ai-provider-google-save.js +2 -1
  114. package/dist/generated/commands/workspaces/ai-provider-google-select-method.js +2 -1
  115. package/dist/generated/commands/workspaces/ai-provider-login-antigravity-cancel.js +2 -1
  116. package/dist/generated/commands/workspaces/ai-provider-login-antigravity-complete.js +2 -1
  117. package/dist/generated/commands/workspaces/ai-provider-login-antigravity-start.js +2 -1
  118. package/dist/generated/commands/workspaces/ai-provider-logins-recheck.js +2 -1
  119. package/dist/generated/commands/workspaces/ai-provider-remove.js +2 -1
  120. package/dist/generated/commands/workspaces/ai-provider-set.js +2 -1
  121. package/dist/generated/commands/workspaces/grok-change.js +2 -1
  122. package/dist/generated/commands/workspaces/integrations-remove.js +2 -1
  123. package/dist/generated/commands/workspaces/provider-login-claude-complete.js +2 -1
  124. package/dist/generated/commands/workspaces/provider-login-claude-start.js +2 -1
  125. package/dist/generated/commands/workspaces/provider-login-codex-complete.js +2 -1
  126. package/dist/generated/commands/workspaces/provider-login-codex-start.js +2 -1
  127. package/dist/generated/commands/workspaces/provider-login-muse-complete.js +2 -1
  128. package/dist/generated/commands/workspaces/provider-login-muse-start.js +2 -1
  129. package/dist/generated/commands/workspaces/skills-delete.js +2 -1
  130. package/openapi.json +321 -0
  131. package/package.json +4 -4
package/openapi.json CHANGED
@@ -881,6 +881,8 @@
881
881
  "summary": "Whether your Mac is online now, with the Kosuke desktop app open and signed in, and the tools it offers: a missing macOS permission or no Google Chrome leaves its tools out. Offline answers online false and nothing else.",
882
882
  "tags": ["mac"],
883
883
  "x-kosuke-command": ["mac", "tools"],
884
+ "x-kosuke-sandbox-token": true,
885
+ "x-kosuke-cron-token": true,
884
886
  "x-kosuke-sensei-token": true,
885
887
  "responses": {
886
888
  "2XX": {
@@ -1074,6 +1076,8 @@
1074
1076
  "summary": "Run agent-browser commands in order, in one headless Google Chrome session on the member's Mac signed in with their cookies, for sites that need their sign-in. On updated desktops each Sensei Thread has its own browser, so threads browse at once, and it closes when the Turn ends, so page state does not carry over to the next Turn; past the Mac's cap on open browsers, with none idle, a call answers BROWSER_LIMIT. Select a Chrome profile by directory ID or exact unambiguous name, and pin its Mac with deviceId. Updated desktops return profile ID/name; the platform returns device ID/name. Unknown or removed profiles fail without fallback, and a profile the member turned off in Settings → Devices fails with PROFILE_DISCONNECTED. Older desktops require an update for explicit selection, and share one browser per profile under the Mac lock. Answers each command's output, the recording's lasting link as recording.url (the recording is posted in the chat too), and the paths of files it downloaded to ~/Downloads. Only Sensei calls it.",
1075
1077
  "tags": ["mac"],
1076
1078
  "x-kosuke-command": ["mac", "browser"],
1079
+ "x-kosuke-sandbox-token": true,
1080
+ "x-kosuke-cron-token": true,
1077
1081
  "x-kosuke-sensei-token": true,
1078
1082
  "requestBody": {
1079
1083
  "required": true,
@@ -1153,6 +1157,8 @@
1153
1157
  "summary": "List the member's LinkedIn and X browser connections, oldest first: each is one account Sensei may act as, with its id, revision, account (null until Sensei fills it in), device (id, name, removed), profile (id, name), the last check (unchecked, connected, signed_out, other_account) with checkedAt, and connectThreadId, the only thread whose Turn may fill the account in. Pass its device id and profile id to every browser call for it. Only Sensei calls it, in a Turn the member's own message started.",
1154
1158
  "tags": ["mac"],
1155
1159
  "x-kosuke-command": ["mac", "browser-connections"],
1160
+ "x-kosuke-sandbox-token": true,
1161
+ "x-kosuke-cron-token": true,
1156
1162
  "x-kosuke-sensei-token": true,
1157
1163
  "parameters": [
1158
1164
  {
@@ -1205,6 +1211,8 @@
1205
1211
  "summary": "Report what one check of the live page saw for a browser connection, with the revision `mac browser-connections` answered: connected with the account's name and handle, signed_out, or other_account with the name found. The first connected fills the account in, only from a Turn of its connectThreadId (else 403 NOT_CONNECT_THREAD); afterwards the handle must match it (else 409 ACCOUNT_MISMATCH). 409 STALE_REVISION after a newer Connect or Reconnect: read again. 404 once the member disconnected it. Only Sensei calls it, in a Turn the member's own message started.",
1206
1212
  "tags": ["mac"],
1207
1213
  "x-kosuke-command": ["mac", "browser-connection-check"],
1214
+ "x-kosuke-sandbox-token": true,
1215
+ "x-kosuke-cron-token": true,
1208
1216
  "x-kosuke-sensei-token": true,
1209
1217
  "requestBody": {
1210
1218
  "required": true,
@@ -1294,6 +1302,8 @@
1294
1302
  "summary": "List Chrome profile IDs and display names on the member's Mac, including the default choice and device ID/name, with access allowed or off on every profile (off: turned off in Settings → Devices, never to be used). With --site, a bare host (Google's sites answer BAD_ARGS), it names the site and whether Kosuke watches it, and every allowed profile carries chromeSignIn: candidate when that profile in their Chrome holds a live cookie for the site (the sign-in cookie for LinkedIn and X), none when it holds none, unknown when it could not be read. An off profile carries none. A candidate is not a sign-in: check the account by browsing. Discovery reads cookie presence only, never a value, never the Keychain, and no history, and opens no browser. An older desktop app answers without access and chromeSignIn: read that as unknown. Only Sensei calls it.",
1295
1303
  "tags": ["mac"],
1296
1304
  "x-kosuke-command": ["mac", "browser-profiles"],
1305
+ "x-kosuke-sandbox-token": true,
1306
+ "x-kosuke-cron-token": true,
1297
1307
  "x-kosuke-sensei-token": true,
1298
1308
  "requestBody": {
1299
1309
  "required": true,
@@ -1360,6 +1370,8 @@
1360
1370
  "tags": ["mac"],
1361
1371
  "x-kosuke-command": ["mac", "browser-sign-in"],
1362
1372
  "x-kosuke-answer-timeout-ms": 590000,
1373
+ "x-kosuke-sandbox-token": true,
1374
+ "x-kosuke-cron-token": true,
1363
1375
  "x-kosuke-sensei-token": true,
1364
1376
  "requestBody": {
1365
1377
  "required": true,
@@ -2771,6 +2783,9 @@
2771
2783
  "summary": "Store or switch workspace credentials. The body is one of the operation variants. Admins only.",
2772
2784
  "tags": ["workspaces"],
2773
2785
  "x-kosuke-command": ["workspaces", "ai-provider", "set"],
2786
+ "x-kosuke-sandbox-token": true,
2787
+ "x-kosuke-cron-token": true,
2788
+ "x-kosuke-sensei-token": true,
2774
2789
  "parameters": [
2775
2790
  {
2776
2791
  "name": "workspaceId",
@@ -2965,6 +2980,9 @@
2965
2980
  "summary": "Remove the credentials of one auth method, or with loginId one login of claude_code, codex or muse_code. Which methods a provider takes is not in the schema. Admins only.",
2966
2981
  "tags": ["workspaces"],
2967
2982
  "x-kosuke-command": ["workspaces", "ai-provider", "remove"],
2983
+ "x-kosuke-sandbox-token": true,
2984
+ "x-kosuke-cron-token": true,
2985
+ "x-kosuke-sensei-token": true,
2968
2986
  "parameters": [
2969
2987
  {
2970
2988
  "name": "workspaceId",
@@ -3393,6 +3411,9 @@
3393
3411
  "summary": "Validate and save a workspace Gemini API key without selecting it. Admins only.",
3394
3412
  "tags": ["workspaces"],
3395
3413
  "x-kosuke-command": ["workspaces", "ai-provider", "google", "save"],
3414
+ "x-kosuke-sandbox-token": true,
3415
+ "x-kosuke-cron-token": true,
3416
+ "x-kosuke-sensei-token": true,
3396
3417
  "parameters": [
3397
3418
  {
3398
3419
  "name": "workspaceId",
@@ -3464,6 +3485,9 @@
3464
3485
  "summary": "Remove both workspace Gemini methods and clear selection. Admins only.",
3465
3486
  "tags": ["workspaces"],
3466
3487
  "x-kosuke-command": ["workspaces", "ai-provider", "google", "remove"],
3488
+ "x-kosuke-sandbox-token": true,
3489
+ "x-kosuke-cron-token": true,
3490
+ "x-kosuke-sensei-token": true,
3467
3491
  "parameters": [
3468
3492
  {
3469
3493
  "name": "workspaceId",
@@ -3515,6 +3539,9 @@
3515
3539
  "summary": "Select a saved workspace Gemini method with its selection revision. Admins only.",
3516
3540
  "tags": ["workspaces"],
3517
3541
  "x-kosuke-command": ["workspaces", "ai-provider", "google", "select-method"],
3542
+ "x-kosuke-sandbox-token": true,
3543
+ "x-kosuke-cron-token": true,
3544
+ "x-kosuke-sensei-token": true,
3518
3545
  "parameters": [
3519
3546
  {
3520
3547
  "name": "workspaceId",
@@ -3585,6 +3612,9 @@
3585
3612
  "summary": "Remove one workspace Gemini method. Removing the selected method leaves none selected. Admins only.",
3586
3613
  "tags": ["workspaces"],
3587
3614
  "x-kosuke-command": ["workspaces", "ai-provider", "google", "delete-method"],
3615
+ "x-kosuke-sandbox-token": true,
3616
+ "x-kosuke-cron-token": true,
3617
+ "x-kosuke-sensei-token": true,
3588
3618
  "parameters": [
3589
3619
  {
3590
3620
  "name": "workspaceId",
@@ -3872,6 +3902,9 @@
3872
3902
  "summary": "Start workspace Antigravity sign-in. Admins only.",
3873
3903
  "tags": ["workspaces"],
3874
3904
  "x-kosuke-command": ["workspaces", "ai-provider", "login", "antigravity", "start"],
3905
+ "x-kosuke-sandbox-token": true,
3906
+ "x-kosuke-cron-token": true,
3907
+ "x-kosuke-sensei-token": true,
3875
3908
  "parameters": [
3876
3909
  {
3877
3910
  "name": "workspaceId",
@@ -3940,6 +3973,9 @@
3940
3973
  "summary": "Cancel workspace Antigravity sign-in. Admins only.",
3941
3974
  "tags": ["workspaces"],
3942
3975
  "x-kosuke-command": ["workspaces", "ai-provider", "login", "antigravity", "cancel"],
3976
+ "x-kosuke-sandbox-token": true,
3977
+ "x-kosuke-cron-token": true,
3978
+ "x-kosuke-sensei-token": true,
3943
3979
  "parameters": [
3944
3980
  {
3945
3981
  "name": "workspaceId",
@@ -4013,6 +4049,9 @@
4013
4049
  "summary": "Complete workspace Antigravity sign-in. Admins only.",
4014
4050
  "tags": ["workspaces"],
4015
4051
  "x-kosuke-command": ["workspaces", "ai-provider", "login", "antigravity", "complete"],
4052
+ "x-kosuke-sandbox-token": true,
4053
+ "x-kosuke-cron-token": true,
4054
+ "x-kosuke-sensei-token": true,
4016
4055
  "parameters": [
4017
4056
  {
4018
4057
  "name": "workspaceId",
@@ -4090,6 +4129,9 @@
4090
4129
  "summary": "Re-check usage for the workspace's logins of one provider (including SuperGrok on xai) at their limit, without waiting for their reset: every login of the provider, or the one loginId names. Admins only. Returns cleared, stillAtLimit and unreadable counts and retryAt, the earliest remaining reset, or null.",
4091
4130
  "tags": ["workspaces"],
4092
4131
  "x-kosuke-command": ["workspaces", "ai-provider", "logins", "recheck"],
4132
+ "x-kosuke-sandbox-token": true,
4133
+ "x-kosuke-cron-token": true,
4134
+ "x-kosuke-sensei-token": true,
4093
4135
  "parameters": [
4094
4136
  {
4095
4137
  "name": "workspaceId",
@@ -4824,6 +4866,9 @@
4824
4866
  "summary": "Delete a cron with its runs, their transcripts and their Artifacts. The sessions its runs filed stay. The creator or a workspace admin only.",
4825
4867
  "tags": ["crons"],
4826
4868
  "x-kosuke-command": ["crons", "delete"],
4869
+ "x-kosuke-sandbox-token": true,
4870
+ "x-kosuke-cron-token": true,
4871
+ "x-kosuke-sensei-token": true,
4827
4872
  "parameters": [
4828
4873
  {
4829
4874
  "name": "workspaceId",
@@ -5595,6 +5640,8 @@
5595
5640
  "summary": "Read why a run of a cron ended as it did: its status, error, error code and stop source (member_stop, host_watch, deadline, replaced, sandbox_abort or runtime_error, with who stopped it), the sandbox it ran in and that sandbox's agent version, when each phase happened (queued, sandbox booted, credentials ready, agent requested, first event, done), the sandbox's own done payload, and the Cron Agent's log lines from the sandbox with secrets redacted. The log is capped at 256 KB and cleared after 30 days. The creator or a workspace admin only.",
5596
5641
  "tags": ["crons"],
5597
5642
  "x-kosuke-command": ["crons", "runs", "diagnostics"],
5643
+ "x-kosuke-sandbox-token": true,
5644
+ "x-kosuke-cron-token": true,
5598
5645
  "x-kosuke-sensei-token": true,
5599
5646
  "parameters": [
5600
5647
  {
@@ -6078,6 +6125,9 @@
6078
6125
  "summary": "Delete a workspace file, or a folder and every item inside it. Agents cannot delete Files.",
6079
6126
  "tags": ["files"],
6080
6127
  "x-kosuke-command": ["files", "delete"],
6128
+ "x-kosuke-sandbox-token": true,
6129
+ "x-kosuke-cron-token": true,
6130
+ "x-kosuke-sensei-token": true,
6081
6131
  "parameters": [
6082
6132
  {
6083
6133
  "name": "workspaceId",
@@ -6262,6 +6312,9 @@
6262
6312
  "summary": "Connect, select, poll, cancel or remove workspace Grok access. Owners and admins only.",
6263
6313
  "tags": ["workspaces"],
6264
6314
  "x-kosuke-command": ["workspaces", "grok", "change"],
6315
+ "x-kosuke-sandbox-token": true,
6316
+ "x-kosuke-cron-token": true,
6317
+ "x-kosuke-sensei-token": true,
6265
6318
  "parameters": [
6266
6319
  {
6267
6320
  "name": "workspaceId",
@@ -6571,6 +6624,9 @@
6571
6624
  "summary": "Disconnect an integration by toolkit slug: agents lose the workspace's access at once, then Kosuke deletes the stored authorization, retrying in the background if needed. Revoking the authorization at the toolkit itself is not part of this. Admins only.",
6572
6625
  "tags": ["workspaces"],
6573
6626
  "x-kosuke-command": ["workspaces", "integrations", "remove"],
6627
+ "x-kosuke-sandbox-token": true,
6628
+ "x-kosuke-cron-token": true,
6629
+ "x-kosuke-sensei-token": true,
6574
6630
  "parameters": [
6575
6631
  {
6576
6632
  "name": "workspaceId",
@@ -6892,6 +6948,9 @@
6892
6948
  "summary": "Start a Claude login for the workspace: open the returned url in a browser, then pass the code it shows and loginToken to complete within 15 minutes. Admins only.",
6893
6949
  "tags": ["workspaces"],
6894
6950
  "x-kosuke-command": ["workspaces", "provider-login", "claude", "start"],
6951
+ "x-kosuke-sandbox-token": true,
6952
+ "x-kosuke-cron-token": true,
6953
+ "x-kosuke-sensei-token": true,
6895
6954
  "parameters": [
6896
6955
  {
6897
6956
  "name": "workspaceId",
@@ -6961,6 +7020,9 @@
6961
7020
  "summary": "Finish a Claude login with the loginToken from start and the code from the browser (code, code#state, or the whole callback URL). A refused code answers 200 with authenticated false. Admins only.",
6962
7021
  "tags": ["workspaces"],
6963
7022
  "x-kosuke-command": ["workspaces", "provider-login", "claude", "complete"],
7023
+ "x-kosuke-sandbox-token": true,
7024
+ "x-kosuke-cron-token": true,
7025
+ "x-kosuke-sensei-token": true,
6964
7026
  "parameters": [
6965
7027
  {
6966
7028
  "name": "workspaceId",
@@ -7033,6 +7095,9 @@
7033
7095
  "summary": "Start a Codex login for the workspace: enter userCode at verificationUrl in a browser, then call complete with loginToken until it answers authenticated. Admins only.",
7034
7096
  "tags": ["workspaces"],
7035
7097
  "x-kosuke-command": ["workspaces", "provider-login", "codex", "start"],
7098
+ "x-kosuke-sandbox-token": true,
7099
+ "x-kosuke-cron-token": true,
7100
+ "x-kosuke-sensei-token": true,
7036
7101
  "parameters": [
7037
7102
  {
7038
7103
  "name": "workspaceId",
@@ -7102,6 +7167,9 @@
7102
7167
  "summary": "Poll a Codex login with the loginToken from start: authenticated false until the code is approved in the browser, so repeat every intervalSeconds; restart true means start again. Admins only.",
7103
7168
  "tags": ["workspaces"],
7104
7169
  "x-kosuke-command": ["workspaces", "provider-login", "codex", "complete"],
7170
+ "x-kosuke-sandbox-token": true,
7171
+ "x-kosuke-cron-token": true,
7172
+ "x-kosuke-sensei-token": true,
7105
7173
  "parameters": [
7106
7174
  {
7107
7175
  "name": "workspaceId",
@@ -7170,6 +7238,9 @@
7170
7238
  "summary": "Start a Muse Code login for the workspace: open verificationUrl in a browser and approve userCode, then call complete with loginToken until it answers authenticated. Admins only.",
7171
7239
  "tags": ["workspaces"],
7172
7240
  "x-kosuke-command": ["workspaces", "provider-login", "muse", "start"],
7241
+ "x-kosuke-sandbox-token": true,
7242
+ "x-kosuke-cron-token": true,
7243
+ "x-kosuke-sensei-token": true,
7173
7244
  "parameters": [
7174
7245
  {
7175
7246
  "name": "workspaceId",
@@ -7239,6 +7310,9 @@
7239
7310
  "summary": "Poll a Muse Code login with the loginToken from start: authenticated false until the code is approved in the browser, so repeat every intervalSeconds; restart true means start again. The first login makes muse_code the active method. Admins only.",
7240
7311
  "tags": ["workspaces"],
7241
7312
  "x-kosuke-command": ["workspaces", "provider-login", "muse", "complete"],
7313
+ "x-kosuke-sandbox-token": true,
7314
+ "x-kosuke-cron-token": true,
7315
+ "x-kosuke-sensei-token": true,
7242
7316
  "parameters": [
7243
7317
  {
7244
7318
  "name": "workspaceId",
@@ -7654,6 +7728,9 @@
7654
7728
  "summary": "Delete a custom skill and its files. Admins only.",
7655
7729
  "tags": ["workspaces"],
7656
7730
  "x-kosuke-command": ["workspaces", "skills", "delete"],
7731
+ "x-kosuke-sandbox-token": true,
7732
+ "x-kosuke-cron-token": true,
7733
+ "x-kosuke-sensei-token": true,
7657
7734
  "parameters": [
7658
7735
  {
7659
7736
  "name": "workspaceId",
@@ -8469,6 +8546,9 @@
8469
8546
  "summary": "Delete a task.",
8470
8547
  "tags": ["tasks"],
8471
8548
  "x-kosuke-command": ["tasks", "delete"],
8549
+ "x-kosuke-sandbox-token": true,
8550
+ "x-kosuke-cron-token": true,
8551
+ "x-kosuke-sensei-token": true,
8472
8552
  "parameters": [
8473
8553
  {
8474
8554
  "name": "workspaceId",
@@ -8530,6 +8610,8 @@
8530
8610
  "summary": "Move a Todo or In progress Personal task into a workspace. Members and Sensei only.",
8531
8611
  "tags": ["tasks"],
8532
8612
  "x-kosuke-command": ["tasks", "move"],
8613
+ "x-kosuke-sandbox-token": true,
8614
+ "x-kosuke-cron-token": true,
8533
8615
  "x-kosuke-sensei-token": true,
8534
8616
  "parameters": [
8535
8617
  {
@@ -8856,6 +8938,8 @@
8856
8938
  "summary": "List your personal tasks, newest first. status is a csv of todo, in_progress, done; includeOpenCount counts Todo and In progress with the same filters, independent of status and cursor.",
8857
8939
  "tags": ["personal-tasks"],
8858
8940
  "x-kosuke-command": ["personal-tasks", "list"],
8941
+ "x-kosuke-sandbox-token": true,
8942
+ "x-kosuke-cron-token": true,
8859
8943
  "x-kosuke-sensei-token": true,
8860
8944
  "parameters": [
8861
8945
  {
@@ -8968,6 +9052,8 @@
8968
9052
  "summary": "File a personal task: yours alone, in no workspace. From a Sensei Turn it joins the Turn’s thread unless threadId names another.",
8969
9053
  "tags": ["personal-tasks"],
8970
9054
  "x-kosuke-command": ["personal-tasks", "create"],
9055
+ "x-kosuke-sandbox-token": true,
9056
+ "x-kosuke-cron-token": true,
8971
9057
  "x-kosuke-sensei-token": true,
8972
9058
  "requestBody": {
8973
9059
  "required": true,
@@ -9050,6 +9136,8 @@
9050
9136
  "summary": "Get one of your personal tasks.",
9051
9137
  "tags": ["personal-tasks"],
9052
9138
  "x-kosuke-command": ["personal-tasks", "get"],
9139
+ "x-kosuke-sandbox-token": true,
9140
+ "x-kosuke-cron-token": true,
9053
9141
  "x-kosuke-sensei-token": true,
9054
9142
  "parameters": [
9055
9143
  {
@@ -9101,6 +9189,8 @@
9101
9189
  "summary": "Edit one of your personal tasks. dueOn or threadId null clears it.",
9102
9190
  "tags": ["personal-tasks"],
9103
9191
  "x-kosuke-command": ["personal-tasks", "update"],
9192
+ "x-kosuke-sandbox-token": true,
9193
+ "x-kosuke-cron-token": true,
9104
9194
  "x-kosuke-sensei-token": true,
9105
9195
  "parameters": [
9106
9196
  {
@@ -9211,6 +9301,9 @@
9211
9301
  "summary": "Delete one of your personal tasks.",
9212
9302
  "tags": ["personal-tasks"],
9213
9303
  "x-kosuke-command": ["personal-tasks", "delete"],
9304
+ "x-kosuke-sandbox-token": true,
9305
+ "x-kosuke-cron-token": true,
9306
+ "x-kosuke-sensei-token": true,
9214
9307
  "parameters": [
9215
9308
  {
9216
9309
  "name": "taskId",
@@ -9263,6 +9356,8 @@
9263
9356
  "summary": "Move a Todo or In progress personal task into a workspace you belong to, as its Todo task assigned to you; the personal task is removed. A due date becomes the description’s last line.",
9264
9357
  "tags": ["personal-tasks"],
9265
9358
  "x-kosuke-command": ["personal-tasks", "move"],
9359
+ "x-kosuke-sandbox-token": true,
9360
+ "x-kosuke-cron-token": true,
9266
9361
  "x-kosuke-sensei-token": true,
9267
9362
  "parameters": [
9268
9363
  {
@@ -9334,6 +9429,8 @@
9334
9429
  "summary": "Start a Todo or In progress Personal task in a deployed Personal Repository.",
9335
9430
  "tags": ["personal-tasks"],
9336
9431
  "x-kosuke-command": ["personal-tasks", "start"],
9432
+ "x-kosuke-sandbox-token": true,
9433
+ "x-kosuke-cron-token": true,
9337
9434
  "x-kosuke-sensei-token": true,
9338
9435
  "parameters": [
9339
9436
  {
@@ -9679,6 +9776,9 @@
9679
9776
  "summary": "Delete a project and everything it owns. Workspace admins only.",
9680
9777
  "tags": ["projects"],
9681
9778
  "x-kosuke-command": ["projects", "delete"],
9779
+ "x-kosuke-sandbox-token": true,
9780
+ "x-kosuke-cron-token": true,
9781
+ "x-kosuke-sensei-token": true,
9682
9782
  "parameters": [
9683
9783
  {
9684
9784
  "name": "projectId",
@@ -9950,6 +10050,9 @@
9950
10050
  "summary": "Delete a Backlog item. One already sent to the chat stays in Up next.",
9951
10051
  "tags": ["projects"],
9952
10052
  "x-kosuke-command": ["projects", "backlog-items", "delete"],
10053
+ "x-kosuke-sandbox-token": true,
10054
+ "x-kosuke-cron-token": true,
10055
+ "x-kosuke-sensei-token": true,
9953
10056
  "parameters": [
9954
10057
  {
9955
10058
  "name": "projectId",
@@ -10130,6 +10233,8 @@
10130
10233
  "summary": "Turn Batch Merging on or off. While it is on, a batch agent merges up to 10 ready pull requests into the Target Branch together, reviews them once and runs a short QA, then opens one pull request for a member to merge. Batches run as the member who turned it on. Refused with MERGE_COMMITS_OFF while the repository or a rule on the Target Branch allows no merge commit.",
10131
10234
  "tags": ["projects"],
10132
10235
  "x-kosuke-command": ["projects", "batch-merging", "set"],
10236
+ "x-kosuke-sandbox-token": true,
10237
+ "x-kosuke-cron-token": true,
10133
10238
  "x-kosuke-sensei-token": true,
10134
10239
  "parameters": [
10135
10240
  {
@@ -11133,6 +11238,8 @@
11133
11238
  "summary": "Delete a chat session. Sensei deletes only a Backlog ticket, refused with 409 NOT_IN_BACKLOG once it started, and only in a Turn its member started.",
11134
11239
  "tags": ["sessions"],
11135
11240
  "x-kosuke-command": ["sessions", "delete"],
11241
+ "x-kosuke-sandbox-token": true,
11242
+ "x-kosuke-cron-token": true,
11136
11243
  "x-kosuke-sensei-token": true,
11137
11244
  "parameters": [
11138
11245
  {
@@ -11628,6 +11735,8 @@
11628
11735
  "summary": "Hand a chat session's desktop to a member, or back to the agent. While a member controls it, the agent's desktop tools refuse. Answers the Desktop as it is after the change. Refused with 409 DESKTOP_NOT_RUNNING while the session's sandbox is not up.",
11629
11736
  "tags": ["sessions"],
11630
11737
  "x-kosuke-command": ["sessions", "desktop-control"],
11738
+ "x-kosuke-sandbox-token": true,
11739
+ "x-kosuke-cron-token": true,
11631
11740
  "x-kosuke-sensei-token": true,
11632
11741
  "parameters": [
11633
11742
  {
@@ -11708,6 +11817,8 @@
11708
11817
  "summary": "Give the session's pull request the go-ahead to merge, as the session's member, on one head: goAheadSha, goAheadBy, goAheadAt and goAheadMerges. A push to another head takes it away. With `merge`, Kosuke merges it on its own; without, it waits for whoever merges it, and Batch Merging is asked to look. Members and their Sensei only.",
11709
11818
  "tags": ["sessions"],
11710
11819
  "x-kosuke-command": ["sessions", "go-ahead", "set"],
11820
+ "x-kosuke-sandbox-token": true,
11821
+ "x-kosuke-cron-token": true,
11711
11822
  "x-kosuke-sensei-token": true,
11712
11823
  "parameters": [
11713
11824
  {
@@ -11792,6 +11903,8 @@
11792
11903
  "summary": "Take the session's go-ahead away, so neither Kosuke nor a Batch merges its pull request until it is given again. The callers of `sessions go-ahead set`.",
11793
11904
  "tags": ["sessions"],
11794
11905
  "x-kosuke-command": ["sessions", "go-ahead", "clear"],
11906
+ "x-kosuke-sandbox-token": true,
11907
+ "x-kosuke-cron-token": true,
11795
11908
  "x-kosuke-sensei-token": true,
11796
11909
  "parameters": [
11797
11910
  {
@@ -13059,6 +13172,9 @@
13059
13172
  "summary": "Delete your own comment.",
13060
13173
  "tags": ["sessions"],
13061
13174
  "x-kosuke-command": ["sessions", "diff", "comments", "delete"],
13175
+ "x-kosuke-sandbox-token": true,
13176
+ "x-kosuke-cron-token": true,
13177
+ "x-kosuke-sensei-token": true,
13062
13178
  "parameters": [
13063
13179
  {
13064
13180
  "name": "projectId",
@@ -14369,6 +14485,8 @@
14369
14485
  "summary": "Delete a queued message: your own, or any as a workspace owner or admin.",
14370
14486
  "tags": ["sessions"],
14371
14487
  "x-kosuke-command": ["sessions", "queue", "delete"],
14488
+ "x-kosuke-sandbox-token": true,
14489
+ "x-kosuke-cron-token": true,
14372
14490
  "x-kosuke-sensei-token": true,
14373
14491
  "parameters": [
14374
14492
  {
@@ -15517,6 +15635,9 @@
15517
15635
  "summary": "Delete a Session Label from the project's catalog. A label sessions still carry is refused with 409 and the list of them unless removeFromSessions is true, which removes it from each of them. Deleting a name the project does not have, including one already deleted, answers 404.",
15518
15636
  "tags": ["projects"],
15519
15637
  "x-kosuke-command": ["projects", "labels", "delete"],
15638
+ "x-kosuke-sandbox-token": true,
15639
+ "x-kosuke-cron-token": true,
15640
+ "x-kosuke-sensei-token": true,
15520
15641
  "parameters": [
15521
15642
  {
15522
15643
  "name": "projectId",
@@ -16401,6 +16522,9 @@
16401
16522
  "summary": "Revoke the public share link of a preview.",
16402
16523
  "tags": ["preview"],
16403
16524
  "x-kosuke-command": ["preview", "share", "delete"],
16525
+ "x-kosuke-sandbox-token": true,
16526
+ "x-kosuke-cron-token": true,
16527
+ "x-kosuke-sensei-token": true,
16404
16528
  "parameters": [
16405
16529
  {
16406
16530
  "name": "projectId",
@@ -17124,6 +17248,9 @@
17124
17248
  "summary": "Delete a queued Deploy Chat message: your own, or any as a workspace owner or admin.",
17125
17249
  "tags": ["deploy"],
17126
17250
  "x-kosuke-command": ["deploy", "queue", "delete"],
17251
+ "x-kosuke-sandbox-token": true,
17252
+ "x-kosuke-cron-token": true,
17253
+ "x-kosuke-sensei-token": true,
17127
17254
  "parameters": [
17128
17255
  {
17129
17256
  "name": "projectId",
@@ -17540,6 +17667,9 @@
17540
17667
  "summary": "Remove environment variables. The body is a JSON array of variable ids.",
17541
17668
  "tags": ["projects"],
17542
17669
  "x-kosuke-command": ["projects", "env-vars", "remove"],
17670
+ "x-kosuke-sandbox-token": true,
17671
+ "x-kosuke-cron-token": true,
17672
+ "x-kosuke-sensei-token": true,
17543
17673
  "parameters": [
17544
17674
  {
17545
17675
  "name": "projectId",
@@ -17942,6 +18072,7 @@
17942
18072
  "summary": "Save the project's Project QA Guide. Chat sessions created after the save get it; running sessions keep the one they started with. With baseRevision it is refused with 409 GUIDE_CHANGED when the saved guide changed since; Sensei must pass it.",
17943
18073
  "tags": ["projects"],
17944
18074
  "x-kosuke-command": ["projects", "qa-guide", "set"],
18075
+ "x-kosuke-sandbox-token": true,
17945
18076
  "x-kosuke-cron-token": true,
17946
18077
  "x-kosuke-sensei-token": true,
17947
18078
  "parameters": [
@@ -18386,6 +18517,9 @@
18386
18517
  "summary": "Remove one service.",
18387
18518
  "tags": ["projects"],
18388
18519
  "x-kosuke-command": ["projects", "services", "remove"],
18520
+ "x-kosuke-sandbox-token": true,
18521
+ "x-kosuke-cron-token": true,
18522
+ "x-kosuke-sensei-token": true,
18389
18523
  "parameters": [
18390
18524
  {
18391
18525
  "name": "projectId",
@@ -18579,6 +18713,8 @@
18579
18713
  "summary": "Switch a project between YOLO mode and Collaboration. YOLO completes every Active and Under Review session and turns Backlog sessions into Backlog items; switching back revives the sessions it closed.",
18580
18714
  "tags": ["projects"],
18581
18715
  "x-kosuke-command": ["projects", "switch-workflow"],
18716
+ "x-kosuke-sandbox-token": true,
18717
+ "x-kosuke-cron-token": true,
18582
18718
  "x-kosuke-sensei-token": true,
18583
18719
  "parameters": [
18584
18720
  {
@@ -18649,6 +18785,9 @@
18649
18785
  "summary": "Register an iPhone or Apple Watch for push notifications with its hex APNs device token, the app bundle id it was issued to and its APNs environment. A token already registered moves to you. The Watch also sends its installationId and a generation it raises on every registration; one older than the registration already held for that installation answers 409. Both apps send their appVersion, which decides the notification categories they are sent. Called by the Kosuke iOS and Watch apps; answers 204.",
18650
18786
  "tags": ["user"],
18651
18787
  "x-kosuke-command": ["user", "push-devices", "register"],
18788
+ "x-kosuke-sandbox-token": true,
18789
+ "x-kosuke-cron-token": true,
18790
+ "x-kosuke-sensei-token": true,
18652
18791
  "requestBody": {
18653
18792
  "required": true,
18654
18793
  "content": {
@@ -18737,6 +18876,9 @@
18737
18876
  "summary": "Stop push notifications to one of your devices, by its APNs device token. A token that is not yours, or not registered, is left alone; answers 204 either way.",
18738
18877
  "tags": ["user"],
18739
18878
  "x-kosuke-command": ["user", "push-devices", "remove"],
18879
+ "x-kosuke-sandbox-token": true,
18880
+ "x-kosuke-cron-token": true,
18881
+ "x-kosuke-sensei-token": true,
18740
18882
  "requestBody": {
18741
18883
  "required": true,
18742
18884
  "content": {
@@ -18794,6 +18936,9 @@
18794
18936
  "summary": "Read your own Sensei Chat as the Sensei page does: its latest page and its Turn, or with `before` the older messages before that message.",
18795
18937
  "tags": ["sensei"],
18796
18938
  "x-kosuke-command": ["sensei", "chat"],
18939
+ "x-kosuke-sandbox-token": true,
18940
+ "x-kosuke-cron-token": true,
18941
+ "x-kosuke-sensei-token": true,
18797
18942
  "parameters": [
18798
18943
  {
18799
18944
  "name": "before",
@@ -18926,6 +19071,8 @@
18926
19071
  "summary": "Open a card in your Turn's own thread, or update its open card with that key by passing the revision you read. Refused when the card moved, closed or is being sent, when your Turn stopped, when the member rejected this key in this stateKey (SKIPPED_STATE), when the session now lives in another thread (SESSION_MOVED), or when an id it names is not in the member's reach.",
18927
19072
  "tags": ["sensei"],
18928
19073
  "x-kosuke-command": ["sensei", "cards", "put"],
19074
+ "x-kosuke-sandbox-token": true,
19075
+ "x-kosuke-cron-token": true,
18929
19076
  "x-kosuke-sensei-token": true,
18930
19077
  "requestBody": {
18931
19078
  "required": true,
@@ -20199,6 +20346,8 @@
20199
20346
  "summary": "Close your Turn's thread's open card with this key, at the revision you read, with one line on why it no longer asks anything of the member. A thread Kosuke opened that holds nothing of the member's then leaves Needs you and Done. Refused when the card moved, closed or is being sent, or when your Turn stopped.",
20200
20347
  "tags": ["sensei"],
20201
20348
  "x-kosuke-command": ["sensei", "cards", "close"],
20349
+ "x-kosuke-sandbox-token": true,
20350
+ "x-kosuke-cron-token": true,
20202
20351
  "x-kosuke-sensei-token": true,
20203
20352
  "requestBody": {
20204
20353
  "required": true,
@@ -20271,6 +20420,8 @@
20271
20420
  "summary": "Execute only the stored mark_read action of the card this member approved",
20272
20421
  "tags": ["sensei"],
20273
20422
  "x-kosuke-command": ["sensei", "cards", "mark-read"],
20423
+ "x-kosuke-sandbox-token": true,
20424
+ "x-kosuke-cron-token": true,
20274
20425
  "x-kosuke-sensei-token": true,
20275
20426
  "requestBody": {
20276
20427
  "required": true,
@@ -20332,6 +20483,8 @@
20332
20483
  "summary": "Execute only the stored reply action of the card this member approved",
20333
20484
  "tags": ["sensei"],
20334
20485
  "x-kosuke-command": ["sensei", "cards", "send-reply"],
20486
+ "x-kosuke-sandbox-token": true,
20487
+ "x-kosuke-cron-token": true,
20335
20488
  "x-kosuke-sensei-token": true,
20336
20489
  "requestBody": {
20337
20490
  "required": true,
@@ -20393,6 +20546,8 @@
20393
20546
  "summary": "Put Connect buttons in a message of your Turn's own thread, under your words, for each connection the request needs: github, toolkit:<slug>, subscription:<claude_code|codex|antigravity>, or notifications (iOS app only, once per member). The member signs in from the message; once it is done, or on Not now, the thread carries on in a Turn of its own. End your Turn after it. Refused when your Turn stopped.",
20394
20547
  "tags": ["sensei"],
20395
20548
  "x-kosuke-command": ["sensei", "connect"],
20549
+ "x-kosuke-sandbox-token": true,
20550
+ "x-kosuke-cron-token": true,
20396
20551
  "x-kosuke-sensei-token": true,
20397
20552
  "requestBody": {
20398
20553
  "required": true,
@@ -20476,6 +20631,8 @@
20476
20631
  "summary": "Hand a long job the member asked for in this Turn's thread to a Job Delegate, which works on it out of the conversation and posts its result in the thread. Kosuke gives it the member's message and its attachments; the brief adds what you know. The same message and key return the first job. Refused with DELEGATES_OUTDATED on an older Sensei container, and with DELEGATE_NOT_STARTED when its first Turn cannot start now, which Kosuke retries.",
20477
20632
  "tags": ["sensei"],
20478
20633
  "x-kosuke-command": ["sensei", "delegates", "start"],
20634
+ "x-kosuke-sandbox-token": true,
20635
+ "x-kosuke-cron-token": true,
20479
20636
  "x-kosuke-sensei-token": true,
20480
20637
  "requestBody": {
20481
20638
  "required": true,
@@ -20555,6 +20712,8 @@
20555
20712
  "summary": "Read one of the member's delegates: its state, Model and Delegate Summary, with the newest job result you have not read, in full.",
20556
20713
  "tags": ["sensei"],
20557
20714
  "x-kosuke-command": ["sensei", "delegates", "get"],
20715
+ "x-kosuke-sandbox-token": true,
20716
+ "x-kosuke-cron-token": true,
20558
20717
  "x-kosuke-sensei-token": true,
20559
20718
  "parameters": [
20560
20719
  {
@@ -20608,6 +20767,8 @@
20608
20767
  "summary": "Deliver a change of the member's intent to one of their delegates as a Note, and wake it. Its Turn that began before the Note can write nothing more, and the next one reads it. The same key writes the Note once.",
20609
20768
  "tags": ["sensei"],
20610
20769
  "x-kosuke-command": ["sensei", "delegates", "note"],
20770
+ "x-kosuke-sandbox-token": true,
20771
+ "x-kosuke-cron-token": true,
20611
20772
  "x-kosuke-sensei-token": true,
20612
20773
  "parameters": [
20613
20774
  {
@@ -20694,6 +20855,8 @@
20694
20855
  "summary": "Stop one of the member's delegates. A job stays stopped until the member redirects it or you note it; a Task Delegate reads its waiting events at its next wake.",
20695
20856
  "tags": ["sensei"],
20696
20857
  "x-kosuke-command": ["sensei", "delegates", "stop"],
20858
+ "x-kosuke-sandbox-token": true,
20859
+ "x-kosuke-cron-token": true,
20697
20860
  "x-kosuke-sensei-token": true,
20698
20861
  "parameters": [
20699
20862
  {
@@ -20747,6 +20910,8 @@
20747
20910
  "summary": "Put the Describe card in a message of your Turn's own thread, under your words: the member writes what the app does and creates it as a YOLO project in the workspace it names. Once created, the thread carries on in a Turn of its own. End your Turn after it. Refused when your Turn stopped.",
20748
20911
  "tags": ["sensei"],
20749
20912
  "x-kosuke-command": ["sensei", "describe"],
20913
+ "x-kosuke-sandbox-token": true,
20914
+ "x-kosuke-cron-token": true,
20750
20915
  "x-kosuke-sensei-token": true,
20751
20916
  "requestBody": {
20752
20917
  "required": true,
@@ -20812,6 +20977,8 @@
20812
20977
  "summary": "List the Device Requests of a Chat Session, oldest first, as you would see them on its cards: id, device, kind, owner, reason, status (pending, approved, declined, expired, withdrawn or closed), who asked and who answered, when, and canApprove, whether you may answer it. A request past its 30 minutes reads expired.",
20813
20978
  "tags": ["sensei"],
20814
20979
  "x-kosuke-command": ["sensei", "device-requests", "list"],
20980
+ "x-kosuke-sandbox-token": true,
20981
+ "x-kosuke-cron-token": true,
20815
20982
  "x-kosuke-sensei-token": true,
20816
20983
  "parameters": [
20817
20984
  {
@@ -20867,6 +21034,8 @@
20867
21034
  "summary": "Approve or decline one Device Request of a Chat Session as you, the Mac’s owner or an admin of the device’s workspace. Answers the stored status. Refused with 403 when you may not answer it, 404 for a request not of this session, and 409 GRANT_ALREADY_DECIDED with its current status when it is no longer pending: already answered, expired, withdrawn, or closed because the session can no longer use the device.",
20868
21035
  "tags": ["sensei"],
20869
21036
  "x-kosuke-command": ["sensei", "device-requests", "decide"],
21037
+ "x-kosuke-sandbox-token": true,
21038
+ "x-kosuke-cron-token": true,
20870
21039
  "x-kosuke-sensei-token": true,
20871
21040
  "requestBody": {
20872
21041
  "required": true,
@@ -20938,6 +21107,8 @@
20938
21107
  "summary": "Read your three private Memory files and their revisions.",
20939
21108
  "tags": ["sensei"],
20940
21109
  "x-kosuke-command": ["sensei", "memory", "get"],
21110
+ "x-kosuke-sandbox-token": true,
21111
+ "x-kosuke-cron-token": true,
20941
21112
  "x-kosuke-sensei-token": true,
20942
21113
  "responses": {
20943
21114
  "2XX": {
@@ -20977,6 +21148,8 @@
20977
21148
  "summary": "Save a Memory file at the revision you read. Sensei must name the card approved to start this Turn.",
20978
21149
  "tags": ["sensei"],
20979
21150
  "x-kosuke-command": ["sensei", "memory", "put"],
21151
+ "x-kosuke-sandbox-token": true,
21152
+ "x-kosuke-cron-token": true,
20980
21153
  "x-kosuke-sensei-token": true,
20981
21154
  "requestBody": {
20982
21155
  "required": true,
@@ -21052,6 +21225,8 @@
21052
21225
  "summary": "Merge the pull request of any Chat Session in a workspace you belong to, as you on GitHub, whenever GitHub allows it: added to GitHub's merge queue where the base has one, updated first where GitHub requires an up-to-date branch, merged otherwise, pinned to the head read. GitHub alone decides: Kosuke adds no hold of its own on approvals, reviews, checks or a working session. Asking is your go-ahead, recorded on the session for its member on the head read with Kosuke merging it, so it merges later when GitHub refuses now. A push to another head takes it away. Answers the outcome, the head it decided on and why. Refused with the reason unless you have GitHub connected and the head is still `headSha` when given, and with GitHub's own reason when GitHub refuses the merge.",
21053
21226
  "tags": ["sensei"],
21054
21227
  "x-kosuke-command": ["sensei", "merge"],
21228
+ "x-kosuke-sandbox-token": true,
21229
+ "x-kosuke-cron-token": true,
21055
21230
  "x-kosuke-sensei-token": true,
21056
21231
  "requestBody": {
21057
21232
  "required": true,
@@ -21117,6 +21292,8 @@
21117
21292
  "summary": "Turn your Merge rule on or off. While it is on, your Sensei gives the go-ahead to merge each pull request of a Chat Session you are the Assignee of once it is approved and its QA passed. Changed only when you ask. Answers whether it is on now.",
21118
21293
  "tags": ["sensei"],
21119
21294
  "x-kosuke-command": ["sensei", "merge-rule"],
21295
+ "x-kosuke-sandbox-token": true,
21296
+ "x-kosuke-cron-token": true,
21120
21297
  "x-kosuke-sensei-token": true,
21121
21298
  "requestBody": {
21122
21299
  "required": true,
@@ -21178,6 +21355,8 @@
21178
21355
  "summary": "Send a message that reached you on to another member: the one the required memberId names. It opens in their Sensei, and the sender's later updates of it go to them. Your own card on it stays yours to close. Refused with 404 when the message is not with you now, with 409 MESSAGE_CHANGED when it changed since you read it, and with 400 when nobody else is named for it.",
21179
21356
  "tags": ["sensei"],
21180
21357
  "x-kosuke-command": ["sensei", "messages", "reroute"],
21358
+ "x-kosuke-sandbox-token": true,
21359
+ "x-kosuke-cron-token": true,
21181
21360
  "x-kosuke-sensei-token": true,
21182
21361
  "requestBody": {
21183
21362
  "required": true,
@@ -21297,6 +21476,9 @@
21297
21476
  "summary": "Read stored activity versions for your Reels cards and Backlog tickets.",
21298
21477
  "tags": ["sensei"],
21299
21478
  "x-kosuke-command": ["sensei", "reels", "activity"],
21479
+ "x-kosuke-sandbox-token": true,
21480
+ "x-kosuke-cron-token": true,
21481
+ "x-kosuke-sensei-token": true,
21300
21482
  "responses": {
21301
21483
  "2XX": {
21302
21484
  "description": "Success envelope",
@@ -21337,6 +21519,9 @@
21337
21519
  "summary": "Read your Backlog proposals newest first by ticket creation or edit, ten per page, excluding the ones you skipped at the current ticket version.",
21338
21520
  "tags": ["sensei"],
21339
21521
  "x-kosuke-command": ["sensei", "reels", "proposals"],
21522
+ "x-kosuke-sandbox-token": true,
21523
+ "x-kosuke-cron-token": true,
21524
+ "x-kosuke-sensei-token": true,
21340
21525
  "parameters": [
21341
21526
  {
21342
21527
  "name": "cursor",
@@ -21390,6 +21575,9 @@
21390
21575
  "summary": "Read Jev ranks for your open Sensei Cards, valid only at each card revision.",
21391
21576
  "tags": ["sensei"],
21392
21577
  "x-kosuke-command": ["sensei", "reels", "ranks"],
21578
+ "x-kosuke-sandbox-token": true,
21579
+ "x-kosuke-cron-token": true,
21580
+ "x-kosuke-sensei-token": true,
21393
21581
  "responses": {
21394
21582
  "2XX": {
21395
21583
  "description": "Success envelope",
@@ -21430,6 +21618,9 @@
21430
21618
  "summary": "Skip your Backlog proposal on every device until its ticket version changes.",
21431
21619
  "tags": ["sensei"],
21432
21620
  "x-kosuke-command": ["sensei", "reels", "skips"],
21621
+ "x-kosuke-sandbox-token": true,
21622
+ "x-kosuke-cron-token": true,
21623
+ "x-kosuke-sensei-token": true,
21433
21624
  "requestBody": {
21434
21625
  "required": true,
21435
21626
  "content": {
@@ -21492,6 +21683,8 @@
21492
21683
  "summary": "Put the Repository card in a message of your Turn's own thread, under your words: it names the workspace and lists the repositories Kosuke can write to, and the member imports one from it. Once imported, the thread carries on in a Turn of its own. End your Turn after it. Refused when your Turn stopped.",
21493
21684
  "tags": ["sensei"],
21494
21685
  "x-kosuke-command": ["sensei", "repository"],
21686
+ "x-kosuke-sandbox-token": true,
21687
+ "x-kosuke-cron-token": true,
21495
21688
  "x-kosuke-sensei-token": true,
21496
21689
  "requestBody": {
21497
21690
  "required": true,
@@ -21557,6 +21750,8 @@
21557
21750
  "summary": "Approve the pull request of a Chat Session as you on GitHub, pinned to headSha: the approval is of that commit. Refused with 409 HEAD_MOVED, naming the new head, when the pull request moved past headSha, with NO_PULL_REQUEST when the session has no open pull request, and with GITHUB_REFUSED and GitHub’s own words when GitHub says no, such as for your own pull request or without GitHub connected in Kosuke.",
21558
21751
  "tags": ["sensei"],
21559
21752
  "x-kosuke-command": ["sensei", "review", "approve"],
21753
+ "x-kosuke-sandbox-token": true,
21754
+ "x-kosuke-cron-token": true,
21560
21755
  "x-kosuke-sensei-token": true,
21561
21756
  "requestBody": {
21562
21757
  "required": true,
@@ -21622,6 +21817,8 @@
21622
21817
  "summary": "Ask members to review the pull request of a Chat Session you are the Assignee of, as you on GitHub, and record who was asked for the merge to count. With again, ask again everyone asked before and whoever requested changes since. A member who never connected GitHub, or whom GitHub refuses, is left out and named; it is refused when nobody could be asked, with 400 when you name yourself, nobody, or there is nobody to ask again, with 403 when you are not the Assignee, and with 409 NO_PULL_REQUEST or GITHUB_REFUSED.",
21623
21818
  "tags": ["sensei"],
21624
21819
  "x-kosuke-command": ["sensei", "review", "ask"],
21820
+ "x-kosuke-sandbox-token": true,
21821
+ "x-kosuke-cron-token": true,
21625
21822
  "x-kosuke-sensei-token": true,
21626
21823
  "requestBody": {
21627
21824
  "required": true,
@@ -21697,6 +21894,8 @@
21697
21894
  "summary": "Read bounded, untrusted GitHub review evidence for a Chat Session using repository-scoped read-only installation access. Pass sessionId and optionally paths, a JSON array of at most three repository-relative helper paths. Returns section completeness, observed head/base, checks, rules, ownership, authorship, associated merged reviews and matched workspace reviewer candidates. Partial evidence never proves all checks or rules passed; stale evidence must be read again. No GitHub action is performed and no GitHub credential is returned.",
21698
21895
  "tags": ["sensei"],
21699
21896
  "x-kosuke-command": ["sensei", "review", "context"],
21897
+ "x-kosuke-sandbox-token": true,
21898
+ "x-kosuke-cron-token": true,
21700
21899
  "x-kosuke-sensei-token": true,
21701
21900
  "parameters": [
21702
21901
  {
@@ -21759,6 +21958,8 @@
21759
21958
  "summary": "Record Sensei’s done or not-done decision from fresh session facts, with its reason. Only a running Sensei Turn in its authorized following thread may decide. Does not send work, archive or complete the session, or write to GitHub.",
21760
21959
  "tags": ["sensei"],
21761
21960
  "x-kosuke-command": ["sensei", "sessions", "assess"],
21961
+ "x-kosuke-sandbox-token": true,
21962
+ "x-kosuke-cron-token": true,
21762
21963
  "x-kosuke-sensei-token": true,
21763
21964
  "requestBody": {
21764
21965
  "required": true,
@@ -21874,6 +22075,8 @@
21874
22075
  "summary": "Read fresh session evidence and the opaque revision needed for an assessment. Requires the running Sensei Turn to follow this session in its own thread.",
21875
22076
  "tags": ["sensei"],
21876
22077
  "x-kosuke-command": ["sensei", "sessions", "facts"],
22078
+ "x-kosuke-sandbox-token": true,
22079
+ "x-kosuke-cron-token": true,
21877
22080
  "x-kosuke-sensei-token": true,
21878
22081
  "parameters": [
21879
22082
  {
@@ -21927,6 +22130,8 @@
21927
22130
  "summary": "Put suggestion pills in a message of your Turn's own thread, under your words. A tap on a pill fills the member's reply and sends nothing; a newThread pill is a new topic, and its tap starts a thread of its own with those words. Refused when your Turn stopped.",
21928
22131
  "tags": ["sensei"],
21929
22132
  "x-kosuke-command": ["sensei", "suggest"],
22133
+ "x-kosuke-sandbox-token": true,
22134
+ "x-kosuke-cron-token": true,
21930
22135
  "x-kosuke-sensei-token": true,
21931
22136
  "requestBody": {
21932
22137
  "required": true,
@@ -22133,6 +22338,8 @@
22133
22338
  "summary": "Pass your member's reply to a teammate's message card back to the teammate who sent it, when the words are meant for them. It updates the answer that teammate already got for the message, so their answer card quotes the words instead of saying your member replied to their Sensei. messageId is the message's identity and replyId the reply's id, as the reply's note names them. The same words again write nothing. Only the Turn of your member's reply sends one, for the card that reply decided. Refused with 404 when this Turn carries no reply with that replyId to the message with that messageId, and with 409 ANSWER_CHANGED when your member decided the message again since the reply. Answers the answer's id, revision, updated and the sender.",
22134
22339
  "tags": ["sensei"],
22135
22340
  "x-kosuke-command": ["sensei", "messages", "reply"],
22341
+ "x-kosuke-sandbox-token": true,
22342
+ "x-kosuke-cron-token": true,
22136
22343
  "x-kosuke-sensei-token": true,
22137
22344
  "requestBody": {
22138
22345
  "required": true,
@@ -22204,6 +22411,8 @@
22204
22411
  "summary": "Move the member’s message that started this Turn’s thread into another of their threads, which it continues. Only Sensei calls it, and only before the Turn has written anything: Kosuke ends this Turn, sends the message into that thread, where it is answered with that thread’s memory, and removes this thread. Write no answer after it.",
22205
22412
  "tags": ["sensei"],
22206
22413
  "x-kosuke-command": ["sensei", "thread", "move"],
22414
+ "x-kosuke-sandbox-token": true,
22415
+ "x-kosuke-cron-token": true,
22207
22416
  "x-kosuke-sensei-token": true,
22208
22417
  "requestBody": {
22209
22418
  "required": true,
@@ -22265,6 +22474,8 @@
22265
22474
  "summary": "Split the member’s message that started this Turn’s thread into one thread per ask. Only Sensei calls it, once per message. The member’s message stays the root of this thread, which does the first ask; each other ask becomes a thread of its own with its own Turn. The reply lists the asks handed off: do not do those here.",
22266
22475
  "tags": ["sensei"],
22267
22476
  "x-kosuke-command": ["sensei", "thread", "split"],
22477
+ "x-kosuke-sandbox-token": true,
22478
+ "x-kosuke-cron-token": true,
22268
22479
  "x-kosuke-sensei-token": true,
22269
22480
  "requestBody": {
22270
22481
  "required": true,
@@ -22337,6 +22548,8 @@
22337
22548
  "summary": "List your Sensei Threads, those that need you first, with the id, title, state, last activity and sessions of each, and the pull request number of every session that has one. `states` and `search` filter; `limit` threads a page, and `cursor` the next page.",
22338
22549
  "tags": ["sensei"],
22339
22550
  "x-kosuke-command": ["sensei", "threads"],
22551
+ "x-kosuke-sandbox-token": true,
22552
+ "x-kosuke-cron-token": true,
22340
22553
  "x-kosuke-sensei-token": true,
22341
22554
  "parameters": [
22342
22555
  {
@@ -22515,6 +22728,8 @@
22515
22728
  "summary": "Mark your Sensei Thread done",
22516
22729
  "tags": ["sensei"],
22517
22730
  "x-kosuke-command": ["sensei", "thread", "done"],
22731
+ "x-kosuke-sandbox-token": true,
22732
+ "x-kosuke-cron-token": true,
22518
22733
  "x-kosuke-sensei-token": true,
22519
22734
  "parameters": [
22520
22735
  {
@@ -22568,6 +22783,8 @@
22568
22783
  "summary": "Fold Backlog tickets of one project into one, in one step: the kept ticket takes content as its prompt and the folded tickets are deleted, or nothing changes. revisions holds the promptRevision `sessions get` gave for every ticket content was written from, the kept one included. Refused with 409 TICKET_EDITED when any of them changed since, with 409 NOT_IN_BACKLOG when any of them started, and with 400 when a revision is missing or a ticket is of another project. Pass the body whole with --body or --body-file.",
22569
22784
  "tags": ["sensei"],
22570
22785
  "x-kosuke-command": ["sensei", "tickets", "merge"],
22786
+ "x-kosuke-sandbox-token": true,
22787
+ "x-kosuke-cron-token": true,
22571
22788
  "x-kosuke-sensei-token": true,
22572
22789
  "requestBody": {
22573
22790
  "required": true,
@@ -22658,6 +22875,9 @@
22658
22875
  "summary": "Read your open Sensei Card count and the first four cards in Reels order for widgets.",
22659
22876
  "tags": ["sensei"],
22660
22877
  "x-kosuke-command": ["sensei", "widgets"],
22878
+ "x-kosuke-sandbox-token": true,
22879
+ "x-kosuke-cron-token": true,
22880
+ "x-kosuke-sensei-token": true,
22661
22881
  "responses": {
22662
22882
  "2XX": {
22663
22883
  "description": "Success envelope",
@@ -23026,6 +23246,8 @@
23026
23246
  "summary": "List your Personal Crons, newest first, with each one's thread and last run status. A Personal Cron belongs to you and no workspace: with Personal Repositories or Apps it runs in its own sandbox; without, in its Sensei Thread. Repository runs use your own Subscriptions; thread runs use your Subscriptions or Kosuke free when you hold none. Among agents, only your Sensei reaches them.",
23027
23247
  "tags": ["user"],
23028
23248
  "x-kosuke-command": ["user", "crons", "list"],
23249
+ "x-kosuke-sandbox-token": true,
23250
+ "x-kosuke-cron-token": true,
23029
23251
  "x-kosuke-sensei-token": true,
23030
23252
  "parameters": [
23031
23253
  {
@@ -23101,6 +23323,8 @@
23101
23323
  "summary": "Create a Personal Cron, enabled, with you as its owner. A Personal Cron belongs to you and no workspace: with Personal Repositories or Apps it runs in its own sandbox; without, in its Sensei Thread. Repository runs use your own Subscriptions; thread runs use your Subscriptions or Kosuke free when you hold none. Kosuke free cannot run a Cron with repositories yet. The crontab is read in the cron's own timezone, and may not fire more often than every 15 minutes. The model is an encoded id such as anthropic:opus__xhigh; repositories require an explicit Model from any released Provider on one of your Subscriptions. Changing to Free while you hold a Subscription, or to a personal Model without one, is refused. Without repositories, null or left out runs on the thread’s model. From your Sensei it is refused with 409 CRON_ALREADY_EXISTS when you have a Personal Cron by that name.",
23102
23324
  "tags": ["user"],
23103
23325
  "x-kosuke-command": ["user", "crons", "create"],
23326
+ "x-kosuke-sandbox-token": true,
23327
+ "x-kosuke-cron-token": true,
23104
23328
  "x-kosuke-sensei-token": true,
23105
23329
  "requestBody": {
23106
23330
  "required": true,
@@ -23206,6 +23430,8 @@
23206
23430
  "summary": "Read one of your Personal Crons: its prompt, schedule, timezone, model, when it runs next, its thread, its last run status, and how many runs in a row failed: five disable it. A Personal Cron belongs to you and no workspace: with Personal Repositories or Apps it runs in its own sandbox; without, in its Sensei Thread. Both use your own Subscription.",
23207
23431
  "tags": ["user"],
23208
23432
  "x-kosuke-command": ["user", "crons", "get"],
23433
+ "x-kosuke-sandbox-token": true,
23434
+ "x-kosuke-cron-token": true,
23209
23435
  "x-kosuke-sensei-token": true,
23210
23436
  "parameters": [
23211
23437
  {
@@ -23257,6 +23483,8 @@
23257
23483
  "summary": "Change one of your Personal Crons; only the fields sent change. Any edit sets the cron's failure count back to zero. enabled=false pauses the cron and enabled=true resumes it. No projects left stays until a save picks at least one repository, and Resume is refused meanwhile. Changing repositories rechecks the Model: a sandbox requires an explicit Model from any released Provider on one of your Subscriptions; Kosuke free cannot run it yet. Changing to Free while you hold a Subscription, or to a personal Model without one, is refused. Re-sending the unchanged stored Model is accepted. Without repositories, model=null goes back to the thread’s model. The crontab is read in the cron's own timezone.",
23258
23484
  "tags": ["user"],
23259
23485
  "x-kosuke-command": ["user", "crons", "update"],
23486
+ "x-kosuke-sandbox-token": true,
23487
+ "x-kosuke-cron-token": true,
23260
23488
  "x-kosuke-sensei-token": true,
23261
23489
  "parameters": [
23262
23490
  {
@@ -23376,6 +23604,8 @@
23376
23604
  "summary": "List the Artifacts a cron's runs published, across all of its runs, most recently changed first: each one's title, kind and version, with the run and the project it came from, and the total the filters keep. One row per Artifact: the same slug published by two runs is two rows. Rows only: a body or a file url comes from crons runs artifacts get, with the row's runId. The project and kind filters each take several values and keep an Artifact matching any of them.",
23377
23605
  "tags": ["user"],
23378
23606
  "x-kosuke-command": ["user", "crons", "artifacts", "list"],
23607
+ "x-kosuke-sandbox-token": true,
23608
+ "x-kosuke-cron-token": true,
23379
23609
  "x-kosuke-sensei-token": true,
23380
23610
  "parameters": [
23381
23611
  {
@@ -23484,6 +23714,8 @@
23484
23714
  "summary": "Fire one of your Personal Crons once now, on your own Subscription: with repositories it runs in its own sandbox; without, in its Sensei Thread. Resume a paused Cron first. Refused for No projects left until a save picks a repository. Answers with runs: [{ runId, status, projectIds, projectId }]. Status may be queued while the fire is pending.",
23485
23715
  "tags": ["user"],
23486
23716
  "x-kosuke-command": ["user", "crons", "run"],
23717
+ "x-kosuke-sandbox-token": true,
23718
+ "x-kosuke-cron-token": true,
23487
23719
  "x-kosuke-sensei-token": true,
23488
23720
  "parameters": [
23489
23721
  {
@@ -23537,6 +23769,8 @@
23537
23769
  "summary": "List the runs of one of your Personal Crons, newest first: each one's status, the first line of its report or its error, and whether it ran in a sandbox or Sensei Thread, with the total and failed counts of the runs the filter keeps. The status filter takes several values and keeps a run matching any of them.",
23538
23770
  "tags": ["user"],
23539
23771
  "x-kosuke-command": ["user", "crons", "runs", "list"],
23772
+ "x-kosuke-sandbox-token": true,
23773
+ "x-kosuke-cron-token": true,
23540
23774
  "x-kosuke-sensei-token": true,
23541
23775
  "parameters": [
23542
23776
  {
@@ -23629,6 +23863,8 @@
23629
23863
  "summary": "Read one Personal Cron run: its kind, status, Model, report, repositories and filed sessions. A sandbox run has its Cron Agent transcript and Artifacts and threadId null. A thread run names the Sensei Thread holding its Turn.",
23630
23864
  "tags": ["user"],
23631
23865
  "x-kosuke-command": ["user", "crons", "runs", "get"],
23866
+ "x-kosuke-sandbox-token": true,
23867
+ "x-kosuke-cron-token": true,
23632
23868
  "x-kosuke-sensei-token": true,
23633
23869
  "parameters": [
23634
23870
  {
@@ -23692,6 +23928,8 @@
23692
23928
  "summary": "List the Artifacts a run of a cron published, most recently changed first. Rows only: a body or a file url comes from reading one.",
23693
23929
  "tags": ["user"],
23694
23930
  "x-kosuke-command": ["user", "crons", "runs", "artifacts", "list"],
23931
+ "x-kosuke-sandbox-token": true,
23932
+ "x-kosuke-cron-token": true,
23695
23933
  "x-kosuke-sensei-token": true,
23696
23934
  "parameters": [
23697
23935
  {
@@ -23755,6 +23993,8 @@
23755
23993
  "summary": "Read one Artifact of a run of a cron, by its id or its slug: a markdown or html one carries its body, an image or a video a presigned url, its media type and its size.",
23756
23994
  "tags": ["user"],
23757
23995
  "x-kosuke-command": ["user", "crons", "runs", "artifacts", "get"],
23996
+ "x-kosuke-sandbox-token": true,
23997
+ "x-kosuke-cron-token": true,
23758
23998
  "x-kosuke-sensei-token": true,
23759
23999
  "parameters": [
23760
24000
  {
@@ -24128,6 +24368,9 @@
24128
24368
  "summary": "Delete a file of your personal Files, or a folder and every item inside it. Agents cannot delete Files.",
24129
24369
  "tags": ["user"],
24130
24370
  "x-kosuke-command": ["user", "files", "delete"],
24371
+ "x-kosuke-sandbox-token": true,
24372
+ "x-kosuke-cron-token": true,
24373
+ "x-kosuke-sensei-token": true,
24131
24374
  "parameters": [
24132
24375
  {
24133
24376
  "name": "fileId",
@@ -24240,6 +24483,9 @@
24240
24483
  "summary": "List personal integrations, including unavailable entries marked availability: restricted with no held connections, such as Gmail or Notion, with your own connections to each: label, status and whether a Reconnect is needed. They belong to you and follow you into every workspace you belong to. Never a credential or a connected-account identifier, and only a signed-in member or their own API key can read them: an agent token, a workspace admin and every other member cannot.",
24241
24484
  "tags": ["user"],
24242
24485
  "x-kosuke-command": ["user", "integrations", "list"],
24486
+ "x-kosuke-sandbox-token": true,
24487
+ "x-kosuke-cron-token": true,
24488
+ "x-kosuke-sensei-token": true,
24243
24489
  "responses": {
24244
24490
  "2XX": {
24245
24491
  "description": "Success envelope",
@@ -24280,6 +24526,9 @@
24280
24526
  "summary": "Disconnect one of your own integration connections by toolkit slug and connection id, such as gmail and the id `user integrations list` returns: agents lose it at once, then Kosuke deletes the stored authorization, retrying in the background if needed. Revoking the authorization at the toolkit itself is not part of this. A connection that is not yours, or is already gone, answers 404.",
24281
24527
  "tags": ["user"],
24282
24528
  "x-kosuke-command": ["user", "integrations", "remove"],
24529
+ "x-kosuke-sandbox-token": true,
24530
+ "x-kosuke-cron-token": true,
24531
+ "x-kosuke-sensei-token": true,
24283
24532
  "parameters": [
24284
24533
  {
24285
24534
  "name": "toolkit",
@@ -24340,6 +24589,9 @@
24340
24589
  "summary": "List your LinkedIn browser connections, oldest first: each is one LinkedIn account Sensei may act as in its browser, in one Chrome profile of one of your Macs, with what Sensei's last check saw. account is null while it waits for Sensei to read it on the page; device.removed is true once that Mac was removed.",
24341
24590
  "tags": ["user"],
24342
24591
  "x-kosuke-command": ["user", "integrations", "linkedin", "list"],
24592
+ "x-kosuke-sandbox-token": true,
24593
+ "x-kosuke-cron-token": true,
24594
+ "x-kosuke-sensei-token": true,
24343
24595
  "responses": {
24344
24596
  "2XX": {
24345
24597
  "description": "Success envelope",
@@ -24378,6 +24630,9 @@
24378
24630
  "summary": "Connect LinkedIn in one allowed Chrome profile of one of your online Macs: creates the connection waiting for Sensei and sends Sensei the request as you, in a new Sensei thread, whose ID it answers. 404 MAC_NOT_FOUND or PROFILE_NOT_FOUND, 409 MAC_OFFLINE, PROFILE_OFF, or ALREADY_CONNECTED with details.connectionId.",
24379
24631
  "tags": ["user"],
24380
24632
  "x-kosuke-command": ["user", "integrations", "linkedin", "connect"],
24633
+ "x-kosuke-sandbox-token": true,
24634
+ "x-kosuke-cron-token": true,
24635
+ "x-kosuke-sensei-token": true,
24381
24636
  "requestBody": {
24382
24637
  "required": true,
24383
24638
  "content": {
@@ -24443,6 +24698,9 @@
24443
24698
  "summary": "Start the LinkedIn connection flow again for the same account, Mac and Chrome profile, in a new Sensei thread, whose ID it answers. The account stays: to use another one, remove the connection and connect again. 409 MAC_REMOVED when its Mac was removed.",
24444
24699
  "tags": ["user"],
24445
24700
  "x-kosuke-command": ["user", "integrations", "linkedin", "reconnect"],
24701
+ "x-kosuke-sandbox-token": true,
24702
+ "x-kosuke-cron-token": true,
24703
+ "x-kosuke-sensei-token": true,
24446
24704
  "parameters": [
24447
24705
  {
24448
24706
  "name": "connectionId",
@@ -24495,6 +24753,9 @@
24495
24753
  "summary": "List your X browser connections, oldest first: each is one X account Sensei may act as in its browser, in one Chrome profile of one of your Macs, with what Sensei's last check saw. account is null while it waits for Sensei to read it on the page; device.removed is true once that Mac was removed.",
24496
24754
  "tags": ["user"],
24497
24755
  "x-kosuke-command": ["user", "integrations", "x", "list"],
24756
+ "x-kosuke-sandbox-token": true,
24757
+ "x-kosuke-cron-token": true,
24758
+ "x-kosuke-sensei-token": true,
24498
24759
  "responses": {
24499
24760
  "2XX": {
24500
24761
  "description": "Success envelope",
@@ -24533,6 +24794,9 @@
24533
24794
  "summary": "Connect X in one allowed Chrome profile of one of your online Macs: creates the connection waiting for Sensei and sends Sensei the request as you, in a new Sensei thread, whose ID it answers. 404 MAC_NOT_FOUND or PROFILE_NOT_FOUND, 409 MAC_OFFLINE, PROFILE_OFF, or ALREADY_CONNECTED with details.connectionId.",
24534
24795
  "tags": ["user"],
24535
24796
  "x-kosuke-command": ["user", "integrations", "x", "connect"],
24797
+ "x-kosuke-sandbox-token": true,
24798
+ "x-kosuke-cron-token": true,
24799
+ "x-kosuke-sensei-token": true,
24536
24800
  "requestBody": {
24537
24801
  "required": true,
24538
24802
  "content": {
@@ -24598,6 +24862,9 @@
24598
24862
  "summary": "Start the X connection flow again for the same account, Mac and Chrome profile, in a new Sensei thread, whose ID it answers. The account stays: to use another one, remove the connection and connect again. 409 MAC_REMOVED when its Mac was removed.",
24599
24863
  "tags": ["user"],
24600
24864
  "x-kosuke-command": ["user", "integrations", "x", "reconnect"],
24865
+ "x-kosuke-sandbox-token": true,
24866
+ "x-kosuke-cron-token": true,
24867
+ "x-kosuke-sensei-token": true,
24601
24868
  "parameters": [
24602
24869
  {
24603
24870
  "name": "connectionId",
@@ -24650,6 +24917,9 @@
24650
24917
  "summary": "Read your private Memory files.",
24651
24918
  "tags": ["user"],
24652
24919
  "x-kosuke-command": ["user", "memory", "list"],
24920
+ "x-kosuke-sandbox-token": true,
24921
+ "x-kosuke-cron-token": true,
24922
+ "x-kosuke-sensei-token": true,
24653
24923
  "responses": {
24654
24924
  "2XX": {
24655
24925
  "description": "Success envelope",
@@ -24690,6 +24960,9 @@
24690
24960
  "summary": "Save a private Memory file at the revision you read.",
24691
24961
  "tags": ["user"],
24692
24962
  "x-kosuke-command": ["user", "memory", "put"],
24963
+ "x-kosuke-sandbox-token": true,
24964
+ "x-kosuke-cron-token": true,
24965
+ "x-kosuke-sensei-token": true,
24693
24966
  "parameters": [
24694
24967
  {
24695
24968
  "name": "file",
@@ -25187,6 +25460,9 @@
25187
25460
  "summary": "Delete one of your personal skills. Running chat sessions drop it at their next turn.",
25188
25461
  "tags": ["user"],
25189
25462
  "x-kosuke-command": ["user", "skills", "delete"],
25463
+ "x-kosuke-sandbox-token": true,
25464
+ "x-kosuke-cron-token": true,
25465
+ "x-kosuke-sensei-token": true,
25190
25466
  "parameters": [
25191
25467
  {
25192
25468
  "name": "skillId",
@@ -25280,6 +25556,9 @@
25280
25556
  "summary": "Save the model new chat sessions start on, as an encoded id such as anthropic:sonnet__medium, or null to let Kosuke choose, kosuke-free to use Auto - Kosuke free, or defaultAuto: true for personal Auto. Answers 204.",
25281
25557
  "tags": ["user"],
25282
25558
  "x-kosuke-command": ["user", "subscriptions", "set-default-model"],
25559
+ "x-kosuke-sandbox-token": true,
25560
+ "x-kosuke-cron-token": true,
25561
+ "x-kosuke-sensei-token": true,
25283
25562
  "requestBody": {
25284
25563
  "required": true,
25285
25564
  "content": {
@@ -25339,6 +25618,9 @@
25339
25618
  "summary": "Save a personal GLM Coding Plan (zai), Kimi Code (moonshot), or DeepSeek API (deepseek) key after one validation call. Providers keep up to 20 keys; loginId replaces one.",
25340
25619
  "tags": ["user"],
25341
25620
  "x-kosuke-command": ["user", "subscriptions", "set-key"],
25621
+ "x-kosuke-sandbox-token": true,
25622
+ "x-kosuke-cron-token": true,
25623
+ "x-kosuke-sensei-token": true,
25342
25624
  "parameters": [
25343
25625
  {
25344
25626
  "name": "provider",
@@ -25411,6 +25693,9 @@
25411
25693
  "summary": "Disconnect all your saved access to one provider. Google disconnects your Antigravity sign-in. Answers 204.",
25412
25694
  "tags": ["user"],
25413
25695
  "x-kosuke-command": ["user", "subscriptions", "delete"],
25696
+ "x-kosuke-sandbox-token": true,
25697
+ "x-kosuke-cron-token": true,
25698
+ "x-kosuke-sensei-token": true,
25414
25699
  "parameters": [
25415
25700
  {
25416
25701
  "name": "provider",
@@ -25462,6 +25747,9 @@
25462
25747
  "summary": "Disconnect one login of your subscription for a provider, by its id under logins. Sessions move to your next login of that provider on their next message, or off the subscription when it was the last. Answers 204.",
25463
25748
  "tags": ["user"],
25464
25749
  "x-kosuke-command": ["user", "subscriptions", "logins", "delete"],
25750
+ "x-kosuke-sandbox-token": true,
25751
+ "x-kosuke-cron-token": true,
25752
+ "x-kosuke-sensei-token": true,
25465
25753
  "parameters": [
25466
25754
  {
25467
25755
  "name": "provider",
@@ -25523,6 +25811,9 @@
25523
25811
  "summary": "Re-check usage for your own Subscriptions of one provider (including SuperGrok on xai) at their limit, without waiting for their reset. Returns cleared, stillAtLimit and unreadable counts and retryAt, the earliest remaining reset, or null.",
25524
25812
  "tags": ["user"],
25525
25813
  "x-kosuke-command": ["user", "subscriptions", "logins", "recheck"],
25814
+ "x-kosuke-sandbox-token": true,
25815
+ "x-kosuke-cron-token": true,
25816
+ "x-kosuke-sensei-token": true,
25526
25817
  "parameters": [
25527
25818
  {
25528
25819
  "name": "provider",
@@ -25574,6 +25865,9 @@
25574
25865
  "summary": "Start your personal Antigravity Subscription sign-in. Poll complete with attemptId and revision until authorizationUrl is ready, then open it and paste the whole loopback return URL into complete. Saving does not select the method.",
25575
25866
  "tags": ["user"],
25576
25867
  "x-kosuke-command": ["user", "subscriptions", "login", "antigravity", "start"],
25868
+ "x-kosuke-sandbox-token": true,
25869
+ "x-kosuke-cron-token": true,
25870
+ "x-kosuke-sensei-token": true,
25577
25871
  "requestBody": {
25578
25872
  "required": false,
25579
25873
  "content": {
@@ -25631,6 +25925,9 @@
25631
25925
  "summary": "Cancel your pending Google sign-in. The isolated login host is removed by the cleanup worker. Saved Google methods and selection stay as they are.",
25632
25926
  "tags": ["user"],
25633
25927
  "x-kosuke-command": ["user", "subscriptions", "login", "antigravity", "cancel"],
25928
+ "x-kosuke-sandbox-token": true,
25929
+ "x-kosuke-cron-token": true,
25930
+ "x-kosuke-sensei-token": true,
25634
25931
  "requestBody": {
25635
25932
  "required": true,
25636
25933
  "content": {
@@ -25693,6 +25990,9 @@
25693
25990
  "summary": "Poll your Antigravity sign-in, or submit the whole http://127.0.0.1 return URL once it is waiting. Repeating completion returns its confirmed receipt. Never pass a return URL from another attempt.",
25694
25991
  "tags": ["user"],
25695
25992
  "x-kosuke-command": ["user", "subscriptions", "login", "antigravity", "complete"],
25993
+ "x-kosuke-sandbox-token": true,
25994
+ "x-kosuke-cron-token": true,
25995
+ "x-kosuke-sensei-token": true,
25696
25996
  "requestBody": {
25697
25997
  "required": true,
25698
25998
  "content": {
@@ -25759,6 +26059,9 @@
25759
26059
  "summary": "Start connecting your Claude subscription: open the returned url in a browser, then pass the code it shows and loginToken to complete within 15 minutes.",
25760
26060
  "tags": ["user"],
25761
26061
  "x-kosuke-command": ["user", "subscriptions", "login", "claude", "start"],
26062
+ "x-kosuke-sandbox-token": true,
26063
+ "x-kosuke-cron-token": true,
26064
+ "x-kosuke-sensei-token": true,
25762
26065
  "requestBody": {
25763
26066
  "required": false,
25764
26067
  "content": {
@@ -25817,6 +26120,9 @@
25817
26120
  "summary": "Finish connecting your Claude subscription with the loginToken from start and the code from the browser (code, code#state, or the whole callback URL). A refused code answers 200 with authenticated false.",
25818
26121
  "tags": ["user"],
25819
26122
  "x-kosuke-command": ["user", "subscriptions", "login", "claude", "complete"],
26123
+ "x-kosuke-sandbox-token": true,
26124
+ "x-kosuke-cron-token": true,
26125
+ "x-kosuke-sensei-token": true,
25820
26126
  "requestBody": {
25821
26127
  "required": true,
25822
26128
  "content": {
@@ -25878,6 +26184,9 @@
25878
26184
  "summary": "Start connecting your Codex subscription: enter userCode at verificationUrl in a browser, then call complete with loginToken until it answers authenticated.",
25879
26185
  "tags": ["user"],
25880
26186
  "x-kosuke-command": ["user", "subscriptions", "login", "codex", "start"],
26187
+ "x-kosuke-sandbox-token": true,
26188
+ "x-kosuke-cron-token": true,
26189
+ "x-kosuke-sensei-token": true,
25881
26190
  "requestBody": {
25882
26191
  "required": false,
25883
26192
  "content": {
@@ -25936,6 +26245,9 @@
25936
26245
  "summary": "Poll your Codex login with the loginToken from start: authenticated false until the code is approved in the browser, so repeat every intervalSeconds; restart true means start again.",
25937
26246
  "tags": ["user"],
25938
26247
  "x-kosuke-command": ["user", "subscriptions", "login", "codex", "complete"],
26248
+ "x-kosuke-sandbox-token": true,
26249
+ "x-kosuke-cron-token": true,
26250
+ "x-kosuke-sensei-token": true,
25939
26251
  "requestBody": {
25940
26252
  "required": true,
25941
26253
  "content": {
@@ -25993,6 +26305,9 @@
25993
26305
  "summary": "Start connecting your Muse Code subscription: open verificationUrl in a browser and approve userCode, then call complete with loginToken until it answers authenticated.",
25994
26306
  "tags": ["user"],
25995
26307
  "x-kosuke-command": ["user", "subscriptions", "login", "muse", "start"],
26308
+ "x-kosuke-sandbox-token": true,
26309
+ "x-kosuke-cron-token": true,
26310
+ "x-kosuke-sensei-token": true,
25996
26311
  "requestBody": {
25997
26312
  "required": false,
25998
26313
  "content": {
@@ -26051,6 +26366,9 @@
26051
26366
  "summary": "Poll your Muse Code login with the loginToken from start: authenticated false until the code is approved in the browser, so repeat every intervalSeconds; restart true means start again.",
26052
26367
  "tags": ["user"],
26053
26368
  "x-kosuke-command": ["user", "subscriptions", "login", "muse", "complete"],
26369
+ "x-kosuke-sandbox-token": true,
26370
+ "x-kosuke-cron-token": true,
26371
+ "x-kosuke-sensei-token": true,
26054
26372
  "requestBody": {
26055
26373
  "required": true,
26056
26374
  "content": {
@@ -26279,6 +26597,9 @@
26279
26597
  "summary": "Connect, poll, cancel or remove your SuperGrok login. An xAI API key is a workspace connection.",
26280
26598
  "tags": ["user"],
26281
26599
  "x-kosuke-command": ["user", "subscriptions", "grok", "change"],
26600
+ "x-kosuke-sandbox-token": true,
26601
+ "x-kosuke-cron-token": true,
26602
+ "x-kosuke-sensei-token": true,
26282
26603
  "requestBody": {
26283
26604
  "required": true,
26284
26605
  "content": {