@kosuke-ai/cli 0.0.57 → 1.0.0

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 (263) hide show
  1. package/README.md +31 -448
  2. package/dist/commands/auth.js +117 -0
  3. package/dist/generated/commands/deploy/cancel.js +17 -0
  4. package/dist/generated/commands/deploy/messages.js +17 -0
  5. package/dist/generated/commands/deploy/run.js +60 -0
  6. package/dist/generated/commands/index.js +132 -0
  7. package/dist/generated/commands/preview/get.js +25 -0
  8. package/dist/generated/commands/preview/health.js +25 -0
  9. package/dist/generated/commands/preview/reset.js +27 -0
  10. package/dist/generated/commands/preview/share-create.js +36 -0
  11. package/dist/generated/commands/preview/share-delete.js +26 -0
  12. package/dist/generated/commands/preview/share-get.js +26 -0
  13. package/dist/generated/commands/preview/shared.js +17 -0
  14. package/dist/generated/commands/projects/create.js +37 -0
  15. package/dist/generated/commands/projects/delete.js +17 -0
  16. package/dist/generated/commands/projects/env-vars-add.js +21 -0
  17. package/dist/generated/commands/projects/env-vars-remove.js +21 -0
  18. package/dist/generated/commands/projects/get.js +17 -0
  19. package/dist/generated/commands/projects/list.js +15 -0
  20. package/dist/generated/commands/projects/services-add.js +87 -0
  21. package/dist/generated/commands/projects/services-list.js +18 -0
  22. package/dist/generated/commands/projects/services-remove.js +19 -0
  23. package/dist/generated/commands/projects/services-update.js +81 -0
  24. package/dist/generated/commands/projects/settings-get.js +18 -0
  25. package/dist/generated/commands/projects/settings-import.js +91 -0
  26. package/dist/generated/commands/projects/settings-update.js +77 -0
  27. package/dist/generated/commands/projects/skills.js +35 -0
  28. package/dist/generated/commands/projects/update.js +27 -0
  29. package/dist/generated/commands/sessions/activate.js +18 -0
  30. package/dist/generated/commands/sessions/checklist-generate.js +19 -0
  31. package/dist/generated/commands/sessions/checklist-get.js +19 -0
  32. package/dist/generated/commands/sessions/comments-add.js +63 -0
  33. package/dist/generated/commands/sessions/comments-delete.js +20 -0
  34. package/dist/generated/commands/sessions/comments-list.js +19 -0
  35. package/dist/generated/commands/sessions/comments-update.js +23 -0
  36. package/dist/generated/commands/sessions/create.js +126 -0
  37. package/dist/generated/commands/sessions/delete.js +18 -0
  38. package/dist/generated/commands/sessions/diff-files.js +19 -0
  39. package/dist/generated/commands/sessions/diff-patch.js +86 -0
  40. package/dist/generated/commands/sessions/edit-prompt.js +59 -0
  41. package/dist/generated/commands/sessions/files-get.js +27 -0
  42. package/dist/generated/commands/sessions/files-list.js +19 -0
  43. package/dist/generated/commands/sessions/files-write.js +41 -0
  44. package/dist/generated/commands/sessions/get.js +18 -0
  45. package/dist/generated/commands/sessions/git-commit-message.js +19 -0
  46. package/dist/generated/commands/sessions/git-commit.js +29 -0
  47. package/dist/generated/commands/sessions/git-push.js +19 -0
  48. package/dist/generated/commands/sessions/git-state.js +19 -0
  49. package/dist/generated/commands/sessions/jobs-cancel.js +20 -0
  50. package/dist/generated/commands/sessions/jobs-get.js +20 -0
  51. package/dist/generated/commands/sessions/list.js +81 -0
  52. package/dist/generated/commands/sessions/messages.js +18 -0
  53. package/dist/generated/commands/sessions/search.js +23 -0
  54. package/dist/generated/commands/sessions/send.js +98 -0
  55. package/dist/generated/commands/sessions/update.js +72 -0
  56. package/dist/generated/commands/workspaces/access-status.js +29 -0
  57. package/dist/generated/commands/workspaces/ai-provider-get.js +18 -0
  58. package/dist/generated/commands/workspaces/ai-provider-remove.js +42 -0
  59. package/dist/generated/commands/workspaces/ai-provider-set.js +21 -0
  60. package/dist/generated/commands/workspaces/credits.js +17 -0
  61. package/dist/generated/commands/workspaces/get.js +17 -0
  62. package/dist/generated/commands/workspaces/getting-started-get.js +18 -0
  63. package/dist/generated/commands/workspaces/getting-started-update.js +32 -0
  64. package/dist/generated/commands/workspaces/list.js +15 -0
  65. package/dist/generated/commands/workspaces/members.js +25 -0
  66. package/dist/generated/commands/workspaces/sandbox-limit.js +17 -0
  67. package/dist/generated/commands/workspaces/stop-sandboxes.js +27 -0
  68. package/dist/generated/commands/workspaces/usage.js +32 -0
  69. package/dist/index.js +5 -595
  70. package/dist/program.js +46 -0
  71. package/dist/runtime/attach.js +139 -0
  72. package/dist/runtime/attachments.js +58 -0
  73. package/dist/runtime/client.js +12 -0
  74. package/dist/runtime/config.js +49 -0
  75. package/dist/runtime/credentials.js +24 -0
  76. package/dist/runtime/descriptor.js +7 -0
  77. package/dist/runtime/invoke.js +152 -0
  78. package/dist/runtime/runtime.js +41 -0
  79. package/dist/runtime/version.js +5 -0
  80. package/openapi.json +5222 -0
  81. package/package.json +21 -79
  82. package/LICENSE +0 -21
  83. package/claude.costs.json +0 -34
  84. package/dist/__tests__/utils/file-discovery.test.d.ts +0 -5
  85. package/dist/__tests__/utils/file-discovery.test.d.ts.map +0 -1
  86. package/dist/__tests__/utils/file-discovery.test.js +0 -51
  87. package/dist/__tests__/utils/file-discovery.test.js.map +0 -1
  88. package/dist/__tests__/utils/logger-nologs.test.d.ts +0 -5
  89. package/dist/__tests__/utils/logger-nologs.test.d.ts.map +0 -1
  90. package/dist/__tests__/utils/logger-nologs.test.js +0 -34
  91. package/dist/__tests__/utils/logger-nologs.test.js.map +0 -1
  92. package/dist/__tests__/utils/logger.test.d.ts +0 -5
  93. package/dist/__tests__/utils/logger.test.d.ts.map +0 -1
  94. package/dist/__tests__/utils/logger.test.js +0 -243
  95. package/dist/__tests__/utils/logger.test.js.map +0 -1
  96. package/dist/__tests__/utils/validator.test.d.ts +0 -5
  97. package/dist/__tests__/utils/validator.test.d.ts.map +0 -1
  98. package/dist/__tests__/utils/validator.test.js +0 -206
  99. package/dist/__tests__/utils/validator.test.js.map +0 -1
  100. package/dist/index.d.ts +0 -37
  101. package/dist/index.d.ts.map +0 -1
  102. package/dist/index.js.map +0 -1
  103. package/dist/kosuke/commands/analyse.d.ts +0 -15
  104. package/dist/kosuke/commands/analyse.d.ts.map +0 -1
  105. package/dist/kosuke/commands/analyse.js +0 -304
  106. package/dist/kosuke/commands/analyse.js.map +0 -1
  107. package/dist/kosuke/commands/build.d.ts +0 -35
  108. package/dist/kosuke/commands/build.d.ts.map +0 -1
  109. package/dist/kosuke/commands/build.js +0 -660
  110. package/dist/kosuke/commands/build.js.map +0 -1
  111. package/dist/kosuke/commands/fix.d.ts +0 -21
  112. package/dist/kosuke/commands/fix.d.ts.map +0 -1
  113. package/dist/kosuke/commands/fix.js +0 -256
  114. package/dist/kosuke/commands/fix.js.map +0 -1
  115. package/dist/kosuke/commands/getcode.d.ts +0 -29
  116. package/dist/kosuke/commands/getcode.d.ts.map +0 -1
  117. package/dist/kosuke/commands/getcode.js +0 -248
  118. package/dist/kosuke/commands/getcode.js.map +0 -1
  119. package/dist/kosuke/commands/lint.d.ts +0 -21
  120. package/dist/kosuke/commands/lint.d.ts.map +0 -1
  121. package/dist/kosuke/commands/lint.js +0 -342
  122. package/dist/kosuke/commands/lint.js.map +0 -1
  123. package/dist/kosuke/commands/migrate.d.ts +0 -38
  124. package/dist/kosuke/commands/migrate.d.ts.map +0 -1
  125. package/dist/kosuke/commands/migrate.js +0 -284
  126. package/dist/kosuke/commands/migrate.js.map +0 -1
  127. package/dist/kosuke/commands/plan.d.ts +0 -28
  128. package/dist/kosuke/commands/plan.d.ts.map +0 -1
  129. package/dist/kosuke/commands/plan.js +0 -684
  130. package/dist/kosuke/commands/plan.js.map +0 -1
  131. package/dist/kosuke/commands/requirements.d.ts +0 -52
  132. package/dist/kosuke/commands/requirements.d.ts.map +0 -1
  133. package/dist/kosuke/commands/requirements.js +0 -615
  134. package/dist/kosuke/commands/requirements.js.map +0 -1
  135. package/dist/kosuke/commands/review.d.ts +0 -26
  136. package/dist/kosuke/commands/review.d.ts.map +0 -1
  137. package/dist/kosuke/commands/review.js +0 -303
  138. package/dist/kosuke/commands/review.js.map +0 -1
  139. package/dist/kosuke/commands/serve.d.ts +0 -9
  140. package/dist/kosuke/commands/serve.d.ts.map +0 -1
  141. package/dist/kosuke/commands/serve.js +0 -17
  142. package/dist/kosuke/commands/serve.js.map +0 -1
  143. package/dist/kosuke/commands/ship.d.ts +0 -37
  144. package/dist/kosuke/commands/ship.d.ts.map +0 -1
  145. package/dist/kosuke/commands/ship.js +0 -375
  146. package/dist/kosuke/commands/ship.js.map +0 -1
  147. package/dist/kosuke/commands/sync-rules.d.ts +0 -9
  148. package/dist/kosuke/commands/sync-rules.d.ts.map +0 -1
  149. package/dist/kosuke/commands/sync-rules.js +0 -414
  150. package/dist/kosuke/commands/sync-rules.js.map +0 -1
  151. package/dist/kosuke/commands/test.d.ts +0 -42
  152. package/dist/kosuke/commands/test.d.ts.map +0 -1
  153. package/dist/kosuke/commands/test.js +0 -540
  154. package/dist/kosuke/commands/test.js.map +0 -1
  155. package/dist/kosuke/commands/tickets.d.ts +0 -43
  156. package/dist/kosuke/commands/tickets.d.ts.map +0 -1
  157. package/dist/kosuke/commands/tickets.js +0 -876
  158. package/dist/kosuke/commands/tickets.js.map +0 -1
  159. package/dist/kosuke/commands/validate-tickets.d.ts +0 -23
  160. package/dist/kosuke/commands/validate-tickets.d.ts.map +0 -1
  161. package/dist/kosuke/commands/validate-tickets.js +0 -360
  162. package/dist/kosuke/commands/validate-tickets.js.map +0 -1
  163. package/dist/kosuke/serve/middleware/error-handler.d.ts +0 -14
  164. package/dist/kosuke/serve/middleware/error-handler.d.ts.map +0 -1
  165. package/dist/kosuke/serve/middleware/error-handler.js +0 -42
  166. package/dist/kosuke/serve/middleware/error-handler.js.map +0 -1
  167. package/dist/kosuke/serve/middleware/validation.d.ts +0 -13
  168. package/dist/kosuke/serve/middleware/validation.d.ts.map +0 -1
  169. package/dist/kosuke/serve/middleware/validation.js +0 -38
  170. package/dist/kosuke/serve/middleware/validation.js.map +0 -1
  171. package/dist/kosuke/serve/routes/build.d.ts +0 -6
  172. package/dist/kosuke/serve/routes/build.d.ts.map +0 -1
  173. package/dist/kosuke/serve/routes/build.js +0 -226
  174. package/dist/kosuke/serve/routes/build.js.map +0 -1
  175. package/dist/kosuke/serve/routes/health.d.ts +0 -6
  176. package/dist/kosuke/serve/routes/health.d.ts.map +0 -1
  177. package/dist/kosuke/serve/routes/health.js +0 -11
  178. package/dist/kosuke/serve/routes/health.js.map +0 -1
  179. package/dist/kosuke/serve/routes/plan.d.ts +0 -6
  180. package/dist/kosuke/serve/routes/plan.d.ts.map +0 -1
  181. package/dist/kosuke/serve/routes/plan.js +0 -106
  182. package/dist/kosuke/serve/routes/plan.js.map +0 -1
  183. package/dist/kosuke/serve/server.d.ts +0 -16
  184. package/dist/kosuke/serve/server.d.ts.map +0 -1
  185. package/dist/kosuke/serve/server.js +0 -67
  186. package/dist/kosuke/serve/server.js.map +0 -1
  187. package/dist/kosuke/serve/validation/build.d.ts +0 -41
  188. package/dist/kosuke/serve/validation/build.d.ts.map +0 -1
  189. package/dist/kosuke/serve/validation/build.js +0 -20
  190. package/dist/kosuke/serve/validation/build.js.map +0 -1
  191. package/dist/kosuke/serve/validation/plan.d.ts +0 -26
  192. package/dist/kosuke/serve/validation/plan.d.ts.map +0 -1
  193. package/dist/kosuke/serve/validation/plan.js +0 -15
  194. package/dist/kosuke/serve/validation/plan.js.map +0 -1
  195. package/dist/kosuke/types.d.ts +0 -539
  196. package/dist/kosuke/types.d.ts.map +0 -1
  197. package/dist/kosuke/types.js +0 -5
  198. package/dist/kosuke/types.js.map +0 -1
  199. package/dist/kosuke/utils/batch-creator.d.ts +0 -14
  200. package/dist/kosuke/utils/batch-creator.d.ts.map +0 -1
  201. package/dist/kosuke/utils/batch-creator.js +0 -76
  202. package/dist/kosuke/utils/batch-creator.js.map +0 -1
  203. package/dist/kosuke/utils/claude-agent.d.ts +0 -140
  204. package/dist/kosuke/utils/claude-agent.d.ts.map +0 -1
  205. package/dist/kosuke/utils/claude-agent.js +0 -388
  206. package/dist/kosuke/utils/claude-agent.js.map +0 -1
  207. package/dist/kosuke/utils/constants.d.ts +0 -40
  208. package/dist/kosuke/utils/constants.d.ts.map +0 -1
  209. package/dist/kosuke/utils/constants.js +0 -54
  210. package/dist/kosuke/utils/constants.js.map +0 -1
  211. package/dist/kosuke/utils/file-discovery.d.ts +0 -15
  212. package/dist/kosuke/utils/file-discovery.d.ts.map +0 -1
  213. package/dist/kosuke/utils/file-discovery.js +0 -80
  214. package/dist/kosuke/utils/file-discovery.js.map +0 -1
  215. package/dist/kosuke/utils/git.d.ts +0 -41
  216. package/dist/kosuke/utils/git.d.ts.map +0 -1
  217. package/dist/kosuke/utils/git.js +0 -145
  218. package/dist/kosuke/utils/git.js.map +0 -1
  219. package/dist/kosuke/utils/github.d.ts +0 -17
  220. package/dist/kosuke/utils/github.d.ts.map +0 -1
  221. package/dist/kosuke/utils/github.js +0 -22
  222. package/dist/kosuke/utils/github.js.map +0 -1
  223. package/dist/kosuke/utils/interactive-input.d.ts +0 -22
  224. package/dist/kosuke/utils/interactive-input.d.ts.map +0 -1
  225. package/dist/kosuke/utils/interactive-input.js +0 -124
  226. package/dist/kosuke/utils/interactive-input.js.map +0 -1
  227. package/dist/kosuke/utils/json-parser.d.ts +0 -14
  228. package/dist/kosuke/utils/json-parser.d.ts.map +0 -1
  229. package/dist/kosuke/utils/json-parser.js +0 -40
  230. package/dist/kosuke/utils/json-parser.js.map +0 -1
  231. package/dist/kosuke/utils/logger.d.ts +0 -161
  232. package/dist/kosuke/utils/logger.d.ts.map +0 -1
  233. package/dist/kosuke/utils/logger.js +0 -234
  234. package/dist/kosuke/utils/logger.js.map +0 -1
  235. package/dist/kosuke/utils/playwright-mcp-client.d.ts +0 -46
  236. package/dist/kosuke/utils/playwright-mcp-client.d.ts.map +0 -1
  237. package/dist/kosuke/utils/playwright-mcp-client.js +0 -135
  238. package/dist/kosuke/utils/playwright-mcp-client.js.map +0 -1
  239. package/dist/kosuke/utils/pr-orchestrator.d.ts +0 -49
  240. package/dist/kosuke/utils/pr-orchestrator.d.ts.map +0 -1
  241. package/dist/kosuke/utils/pr-orchestrator.js +0 -154
  242. package/dist/kosuke/utils/pr-orchestrator.js.map +0 -1
  243. package/dist/kosuke/utils/repository-manager.d.ts +0 -13
  244. package/dist/kosuke/utils/repository-manager.d.ts.map +0 -1
  245. package/dist/kosuke/utils/repository-manager.js +0 -94
  246. package/dist/kosuke/utils/repository-manager.js.map +0 -1
  247. package/dist/kosuke/utils/repository-resolver.d.ts +0 -12
  248. package/dist/kosuke/utils/repository-resolver.d.ts.map +0 -1
  249. package/dist/kosuke/utils/repository-resolver.js +0 -186
  250. package/dist/kosuke/utils/repository-resolver.js.map +0 -1
  251. package/dist/kosuke/utils/tickets-manager.d.ts +0 -34
  252. package/dist/kosuke/utils/tickets-manager.d.ts.map +0 -1
  253. package/dist/kosuke/utils/tickets-manager.js +0 -106
  254. package/dist/kosuke/utils/tickets-manager.js.map +0 -1
  255. package/dist/kosuke/utils/validator.d.ts +0 -45
  256. package/dist/kosuke/utils/validator.d.ts.map +0 -1
  257. package/dist/kosuke/utils/validator.js +0 -248
  258. package/dist/kosuke/utils/validator.js.map +0 -1
  259. package/dist/lib.d.ts +0 -104
  260. package/dist/lib.d.ts.map +0 -1
  261. package/dist/lib.js +0 -104
  262. package/dist/lib.js.map +0 -1
  263. package/dist/package.json +0 -99
@@ -0,0 +1,18 @@
1
+ export const operation = {
2
+ "method": "get",
3
+ "path": "/api/projects/{projectId}/settings",
4
+ "command": [
5
+ "projects",
6
+ "settings",
7
+ "get"
8
+ ],
9
+ "summary": "Read the project settings: setup commands, services, environment and sandbox size.",
10
+ "pathParams": [
11
+ "projectId"
12
+ ],
13
+ "query": [],
14
+ "body": null,
15
+ "multipart": null,
16
+ "attachments": false,
17
+ "anonymous": false
18
+ };
@@ -0,0 +1,91 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/settings/import",
4
+ "command": [
5
+ "projects",
6
+ "settings",
7
+ "import"
8
+ ],
9
+ "summary": "Replace the services and environment from a kosuke.config.json document. Cross-service rules (unique ports, after references, one preview endpoint) are checked by the handler, not by the schema.",
10
+ "pathParams": [
11
+ "projectId"
12
+ ],
13
+ "query": [],
14
+ "body": {
15
+ "fields": [
16
+ {
17
+ "name": "hostSetupCommand",
18
+ "flag": "host-setup-command",
19
+ "kind": "string",
20
+ "required": false,
21
+ "description": "Shell command that runs once on first deploy (or when its content changes) to provision the host: install runtimes and system packages. Re-runs only when edited."
22
+ },
23
+ {
24
+ "name": "setupCommand",
25
+ "flag": "setup-command",
26
+ "kind": "string",
27
+ "required": false,
28
+ "description": "Shell command that runs at repository root on every deploy, strictly BEFORE any service starts. Services from this config (databases included) are not reachable from it. Use it for installing dependencies; run migrations and seeds at the front of the dependent service's startCommand instead."
29
+ },
30
+ {
31
+ "name": "warmupCommand",
32
+ "flag": "warmup-command",
33
+ "kind": "string",
34
+ "required": false,
35
+ "description": "Shell command that runs inside the sandbox once services are healthy. Typically authenticates and curls heavy routes to warm up compilation cache."
36
+ },
37
+ {
38
+ "name": "agentWorkDir",
39
+ "flag": "agent-work-dir",
40
+ "kind": "string",
41
+ "required": false,
42
+ "description": "Relative path from the repository root where the AI agent operates. Useful for monorepos where the agent should work only in a subdirectory (e.g. \"packages/frontend\"). Defaults to repository root."
43
+ },
44
+ {
45
+ "name": "sessionBaseBranch",
46
+ "flag": "session-base-branch",
47
+ "kind": "string",
48
+ "required": false,
49
+ "description": "Git branch new coding sessions branch from (e.g. \"main\"). Null/omitted uses the repository default branch."
50
+ },
51
+ {
52
+ "name": "prTargetBranch",
53
+ "flag": "pr-target-branch",
54
+ "kind": "string",
55
+ "required": false,
56
+ "description": "Git branch that submitted PRs target (e.g. \"main\"). Null/omitted uses the repository default branch."
57
+ },
58
+ {
59
+ "name": "sandboxTier",
60
+ "flag": "sandbox-tier",
61
+ "kind": "string",
62
+ "required": false,
63
+ "description": "Sandbox resource tier provisioned for the preview: SMALL, MEDIUM, LARGE, or XLARGE. Omitted leaves the current tier. A first deploy boots on XLARGE (unknown footprint) — measure actual peak usage and set the right-sized tier here so later sandboxes use it.",
64
+ "choices": [
65
+ "SMALL",
66
+ "MEDIUM",
67
+ "LARGE",
68
+ "XLARGE"
69
+ ]
70
+ },
71
+ {
72
+ "name": "services",
73
+ "flag": "services",
74
+ "kind": "json",
75
+ "required": false,
76
+ "description": "Map of service name → configuration. Everything is a service — apps, workers, databases (Postgres/Redis as \"process\"), and container stacks (Supabase as \"docker-stack\"). Names must be lowercase alphanumeric with inner hyphens (they become DNS labels and systemd unit names)."
77
+ },
78
+ {
79
+ "name": "environment",
80
+ "flag": "environment",
81
+ "kind": "json",
82
+ "required": false,
83
+ "description": "Map of environment variable name → value. Injected into all services at startup. Values support service-URL placeholders like {{serviceName.url}} / {{serviceName.url_int}} resolved at sandbox boot."
84
+ }
85
+ ],
86
+ "required": true
87
+ },
88
+ "multipart": null,
89
+ "attachments": false,
90
+ "anonymous": false
91
+ };
@@ -0,0 +1,77 @@
1
+ export const operation = {
2
+ "method": "patch",
3
+ "path": "/api/projects/{projectId}/settings",
4
+ "command": [
5
+ "projects",
6
+ "settings",
7
+ "update"
8
+ ],
9
+ "summary": "Change setup commands, branches, working directory or sandbox tier.",
10
+ "pathParams": [
11
+ "projectId"
12
+ ],
13
+ "query": [],
14
+ "body": {
15
+ "fields": [
16
+ {
17
+ "name": "hostSetupCommand",
18
+ "flag": "host-setup-command",
19
+ "kind": "string",
20
+ "required": false,
21
+ "description": "Shell command that runs once on first deploy (or when its content changes) to provision the host: install runtimes and system packages. Re-runs only when edited."
22
+ },
23
+ {
24
+ "name": "setupCommand",
25
+ "flag": "setup-command",
26
+ "kind": "string",
27
+ "required": false,
28
+ "description": "Shell command that runs at repository root on every deploy, strictly BEFORE any service starts. Services from this config (databases included) are not reachable from it. Use it for installing dependencies; run migrations and seeds at the front of the dependent service's startCommand instead."
29
+ },
30
+ {
31
+ "name": "warmupCommand",
32
+ "flag": "warmup-command",
33
+ "kind": "string",
34
+ "required": false,
35
+ "description": "Shell command that runs inside the sandbox once services are healthy. Typically authenticates and curls heavy routes to warm up compilation cache."
36
+ },
37
+ {
38
+ "name": "agentWorkDir",
39
+ "flag": "agent-work-dir",
40
+ "kind": "string",
41
+ "required": false,
42
+ "description": "Relative path from the repository root where the AI agent operates. Useful for monorepos where the agent should work only in a subdirectory (e.g. \"packages/frontend\"). Defaults to repository root."
43
+ },
44
+ {
45
+ "name": "sessionBaseBranch",
46
+ "flag": "session-base-branch",
47
+ "kind": "string",
48
+ "required": false,
49
+ "description": "Git branch new coding sessions branch from (e.g. \"main\"). Null/omitted uses the repository default branch."
50
+ },
51
+ {
52
+ "name": "prTargetBranch",
53
+ "flag": "pr-target-branch",
54
+ "kind": "string",
55
+ "required": false,
56
+ "description": "Git branch that submitted PRs target (e.g. \"main\"). Null/omitted uses the repository default branch."
57
+ },
58
+ {
59
+ "name": "sandboxTier",
60
+ "flag": "sandbox-tier",
61
+ "kind": "string",
62
+ "required": false,
63
+ "description": "Sandbox resource tier provisioned for the preview: SMALL, MEDIUM, LARGE, or XLARGE. Omitted leaves the current tier. A first deploy boots on XLARGE (unknown footprint) — measure actual peak usage and set the right-sized tier here so later sandboxes use it.",
64
+ "choices": [
65
+ "SMALL",
66
+ "MEDIUM",
67
+ "LARGE",
68
+ "XLARGE"
69
+ ]
70
+ }
71
+ ],
72
+ "required": true
73
+ },
74
+ "multipart": null,
75
+ "attachments": false,
76
+ "anonymous": false
77
+ };
@@ -0,0 +1,35 @@
1
+ export const operation = {
2
+ "method": "get",
3
+ "path": "/api/projects/{projectId}/skills",
4
+ "command": [
5
+ "projects",
6
+ "skills"
7
+ ],
8
+ "summary": "List the skills the agent can invoke in this project, for one provider.",
9
+ "pathParams": [
10
+ "projectId"
11
+ ],
12
+ "query": [
13
+ {
14
+ "name": "provider",
15
+ "flag": "provider",
16
+ "kind": "string",
17
+ "required": true,
18
+ "choices": [
19
+ "anthropic",
20
+ "openai"
21
+ ]
22
+ },
23
+ {
24
+ "name": "sessionId",
25
+ "flag": "session-id",
26
+ "kind": "string",
27
+ "required": false,
28
+ "description": "Prefer that chat session's sandbox when listing live. Silently ignored if it is not this project's."
29
+ }
30
+ ],
31
+ "body": null,
32
+ "multipart": null,
33
+ "attachments": false,
34
+ "anonymous": false
35
+ };
@@ -0,0 +1,27 @@
1
+ export const operation = {
2
+ "method": "patch",
3
+ "path": "/api/projects/{projectId}",
4
+ "command": [
5
+ "projects",
6
+ "update"
7
+ ],
8
+ "summary": "Rename a project.",
9
+ "pathParams": [
10
+ "projectId"
11
+ ],
12
+ "query": [],
13
+ "body": {
14
+ "fields": [
15
+ {
16
+ "name": "name",
17
+ "flag": "name",
18
+ "kind": "string",
19
+ "required": true
20
+ }
21
+ ],
22
+ "required": true
23
+ },
24
+ "multipart": null,
25
+ "attachments": false,
26
+ "anonymous": false
27
+ };
@@ -0,0 +1,18 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/activate",
4
+ "command": [
5
+ "sessions",
6
+ "activate"
7
+ ],
8
+ "summary": "Start a backlog session: claim a sandbox and run its saved prompt as the first turn.",
9
+ "pathParams": [
10
+ "projectId",
11
+ "sessionId"
12
+ ],
13
+ "query": [],
14
+ "body": null,
15
+ "multipart": null,
16
+ "attachments": false,
17
+ "anonymous": false
18
+ };
@@ -0,0 +1,19 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/testing-checklist/generate",
4
+ "command": [
5
+ "sessions",
6
+ "checklist",
7
+ "generate"
8
+ ],
9
+ "summary": "Generate testing checklist items from the branch's changes on GitHub.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId"
13
+ ],
14
+ "query": [],
15
+ "body": null,
16
+ "multipart": null,
17
+ "attachments": false,
18
+ "anonymous": false
19
+ };
@@ -0,0 +1,19 @@
1
+ export const operation = {
2
+ "method": "get",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/testing-checklist",
4
+ "command": [
5
+ "sessions",
6
+ "checklist",
7
+ "get"
8
+ ],
9
+ "summary": "Read the testing checklist of a chat session.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId"
13
+ ],
14
+ "query": [],
15
+ "body": null,
16
+ "multipart": null,
17
+ "attachments": false,
18
+ "anonymous": false
19
+ };
@@ -0,0 +1,63 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/preview/diff/comments",
4
+ "command": [
5
+ "sessions",
6
+ "comments",
7
+ "add"
8
+ ],
9
+ "summary": "Leave a review comment on a range of lines in the diff.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId"
13
+ ],
14
+ "query": [],
15
+ "body": {
16
+ "fields": [
17
+ {
18
+ "name": "filePath",
19
+ "flag": "file-path",
20
+ "kind": "string",
21
+ "required": true
22
+ },
23
+ {
24
+ "name": "side",
25
+ "flag": "side",
26
+ "kind": "string",
27
+ "required": true,
28
+ "choices": [
29
+ "old",
30
+ "new"
31
+ ]
32
+ },
33
+ {
34
+ "name": "startLineNumber",
35
+ "flag": "start-line-number",
36
+ "kind": "integer",
37
+ "required": true
38
+ },
39
+ {
40
+ "name": "endLineNumber",
41
+ "flag": "end-line-number",
42
+ "kind": "integer",
43
+ "required": true
44
+ },
45
+ {
46
+ "name": "body",
47
+ "flag": "field-body",
48
+ "kind": "string",
49
+ "required": true
50
+ },
51
+ {
52
+ "name": "lineSnapshot",
53
+ "flag": "line-snapshot",
54
+ "kind": "string",
55
+ "required": true
56
+ }
57
+ ],
58
+ "required": true
59
+ },
60
+ "multipart": null,
61
+ "attachments": false,
62
+ "anonymous": false
63
+ };
@@ -0,0 +1,20 @@
1
+ export const operation = {
2
+ "method": "delete",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/preview/diff/comments/{commentId}",
4
+ "command": [
5
+ "sessions",
6
+ "comments",
7
+ "delete"
8
+ ],
9
+ "summary": "Delete your own comment.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId",
13
+ "commentId"
14
+ ],
15
+ "query": [],
16
+ "body": null,
17
+ "multipart": null,
18
+ "attachments": false,
19
+ "anonymous": false
20
+ };
@@ -0,0 +1,19 @@
1
+ export const operation = {
2
+ "method": "get",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/preview/diff/comments",
4
+ "command": [
5
+ "sessions",
6
+ "comments",
7
+ "list"
8
+ ],
9
+ "summary": "List the review comments left on the diff.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId"
13
+ ],
14
+ "query": [],
15
+ "body": null,
16
+ "multipart": null,
17
+ "attachments": false,
18
+ "anonymous": false
19
+ };
@@ -0,0 +1,23 @@
1
+ export const operation = {
2
+ "method": "patch",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/preview/diff/comments/{commentId}",
4
+ "command": [
5
+ "sessions",
6
+ "comments",
7
+ "update"
8
+ ],
9
+ "summary": "Edit the body of your own comment, or resolve or reopen any comment. One of the two per call.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId",
13
+ "commentId"
14
+ ],
15
+ "query": [],
16
+ "body": {
17
+ "fields": null,
18
+ "required": true
19
+ },
20
+ "multipart": null,
21
+ "attachments": false,
22
+ "anonymous": false
23
+ };
@@ -0,0 +1,126 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/chat-sessions",
4
+ "command": [
5
+ "sessions",
6
+ "create"
7
+ ],
8
+ "summary": "Start a chat session, or file a backlog one with status=backlog. Title or content is required; a backlog session needs content. Attachments ride along as multipart.",
9
+ "pathParams": [
10
+ "projectId"
11
+ ],
12
+ "query": [],
13
+ "body": {
14
+ "fields": [
15
+ {
16
+ "name": "title",
17
+ "flag": "title",
18
+ "kind": "string",
19
+ "required": false
20
+ },
21
+ {
22
+ "name": "content",
23
+ "flag": "content",
24
+ "kind": "string",
25
+ "required": false
26
+ },
27
+ {
28
+ "name": "model",
29
+ "flag": "model",
30
+ "kind": "string",
31
+ "required": false
32
+ },
33
+ {
34
+ "name": "status",
35
+ "flag": "status",
36
+ "kind": "string",
37
+ "required": false,
38
+ "choices": [
39
+ "backlog"
40
+ ]
41
+ },
42
+ {
43
+ "name": "ownerId",
44
+ "flag": "owner-id",
45
+ "kind": "string",
46
+ "required": false
47
+ },
48
+ {
49
+ "name": "priority",
50
+ "flag": "priority",
51
+ "kind": "string",
52
+ "required": false,
53
+ "choices": [
54
+ "urgent",
55
+ "high",
56
+ "medium",
57
+ "low",
58
+ "none"
59
+ ]
60
+ },
61
+ {
62
+ "name": "startBranch",
63
+ "flag": "start-branch",
64
+ "kind": "string",
65
+ "required": false
66
+ }
67
+ ],
68
+ "required": true
69
+ },
70
+ "multipart": [
71
+ {
72
+ "name": "title",
73
+ "flag": "title",
74
+ "kind": "string",
75
+ "required": false
76
+ },
77
+ {
78
+ "name": "content",
79
+ "flag": "content",
80
+ "kind": "string",
81
+ "required": false
82
+ },
83
+ {
84
+ "name": "model",
85
+ "flag": "model",
86
+ "kind": "string",
87
+ "required": false
88
+ },
89
+ {
90
+ "name": "status",
91
+ "flag": "status",
92
+ "kind": "string",
93
+ "required": false,
94
+ "choices": [
95
+ "backlog"
96
+ ]
97
+ },
98
+ {
99
+ "name": "ownerId",
100
+ "flag": "owner-id",
101
+ "kind": "string",
102
+ "required": false
103
+ },
104
+ {
105
+ "name": "priority",
106
+ "flag": "priority",
107
+ "kind": "string",
108
+ "required": false,
109
+ "choices": [
110
+ "urgent",
111
+ "high",
112
+ "medium",
113
+ "low",
114
+ "none"
115
+ ]
116
+ },
117
+ {
118
+ "name": "startBranch",
119
+ "flag": "start-branch",
120
+ "kind": "string",
121
+ "required": false
122
+ }
123
+ ],
124
+ "attachments": true,
125
+ "anonymous": false
126
+ };
@@ -0,0 +1,18 @@
1
+ export const operation = {
2
+ "method": "delete",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}",
4
+ "command": [
5
+ "sessions",
6
+ "delete"
7
+ ],
8
+ "summary": "Delete a chat session.",
9
+ "pathParams": [
10
+ "projectId",
11
+ "sessionId"
12
+ ],
13
+ "query": [],
14
+ "body": null,
15
+ "multipart": null,
16
+ "attachments": false,
17
+ "anonymous": false
18
+ };
@@ -0,0 +1,19 @@
1
+ export const operation = {
2
+ "method": "get",
3
+ "path": "/api/projects/{projectId}/chat-sessions/{sessionId}/preview/diff/files",
4
+ "command": [
5
+ "sessions",
6
+ "diff",
7
+ "files"
8
+ ],
9
+ "summary": "List the files the session's branch changes against its base, with totals.",
10
+ "pathParams": [
11
+ "projectId",
12
+ "sessionId"
13
+ ],
14
+ "query": [],
15
+ "body": null,
16
+ "multipart": null,
17
+ "attachments": false,
18
+ "anonymous": false
19
+ };