@kosuke-ai/kosuke 1.0.49 → 1.0.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.0.51
4
+
5
+ - The CLI automatically stages message attachments larger than 20 MiB in total, supporting up to 20 files of 10 MiB each for sessions, Deploy Chat and tasks filed into a project. Uploads stream from disk with at most three concurrent requests, preserve file order and support cancellation, with inline fallback for older servers.
6
+
7
+ ## 1.0.50
8
+
9
+ - No change you will notice: internal code comments in the CLI were updated.
10
+ - Describe Device Requests as lasting the Turn that asked: a later Turn files a new request.
11
+
3
12
  ## 1.0.49
4
13
 
5
14
  - A message now takes up to 20 files instead of 10. The iOS photo picker lets you choose up to 20 photos at once, and the CLI's `--attach` accepts up to 20 files per request. Photos chosen in the iOS photo picker are no longer lost when the app wrongly decided the picker had not opened.
@@ -297,6 +297,7 @@ function coverageLine(sessions) {
297
297
  : [];
298
298
  return `Workspaces covered: ${names.length ? names.join(', ') : 'none'}.`;
299
299
  }
300
+ /** @internal */
300
301
  export function planSummary(options) {
301
302
  const { sessions, apiUrl, now, workspace, peek = false } = options;
302
303
  const scope = workspace ? ` --workspace ${workspace}` : '';
@@ -338,7 +339,10 @@ export function planSummary(options) {
338
339
  scope,
339
340
  };
340
341
  }
341
- /** The whole digest, once `activity` answered the plan's `activityQuery`. */
342
+ /**
343
+ * The whole digest, once `activity` answered the plan's `activityQuery`.
344
+ * @internal
345
+ */
342
346
  export function renderSummary(plan, activity) {
343
347
  const lines = [...plan.head];
344
348
  // Every event the read returned is printed: without a peek, each is already marked seen.
@@ -90,4 +90,5 @@ export const HAND_WRITTEN = {
90
90
  workspace: true,
91
91
  },
92
92
  };
93
+ /** @internal */
93
94
  export const HAND_WRITTEN_COMMANDS = Object.values(HAND_WRITTEN);
@@ -0,0 +1,21 @@
1
+ export const operation = {
2
+ "method": "post",
3
+ "path": "/api/projects/{projectId}/attachments",
4
+ "command": [
5
+ "attachments",
6
+ "create"
7
+ ],
8
+ "summary": "Stage one private message attachment. Returns data.reference for an attachment slot in a subsequent message to this project, using the same credential, within one hour.",
9
+ "pathParams": [
10
+ "projectId"
11
+ ],
12
+ "query": [],
13
+ "body": null,
14
+ "multipart": [],
15
+ "attachments": {
16
+ "maxFiles": 1,
17
+ "maxBytes": 10485760
18
+ },
19
+ "anonymous": false,
20
+ "agents": "all"
21
+ };
@@ -49,7 +49,8 @@ export const operation = {
49
49
  ],
50
50
  "attachments": {
51
51
  "maxFiles": 20,
52
- "maxBytes": 10485760
52
+ "maxBytes": 10485760,
53
+ "uploadPath": "/api/projects/{projectId}/attachments"
53
54
  },
54
55
  "anonymous": false,
55
56
  "agents": "all"
@@ -58,7 +58,8 @@ export const operation = {
58
58
  ],
59
59
  "attachments": {
60
60
  "maxFiles": 20,
61
- "maxBytes": 10485760
61
+ "maxBytes": 10485760,
62
+ "uploadPath": "/api/projects/{projectId}/attachments"
62
63
  },
63
64
  "anonymous": false,
64
65
  "agents": "all"
@@ -6,7 +6,7 @@ export const operation = {
6
6
  "requests",
7
7
  "create"
8
8
  ],
9
- "summary": "From a Chat Session: ask to use a personal Mac from devices list, with the reason its owner reads on a card in this session's chat. A workspace device needs no request: it answers approved at once with grantId null, and no one is asked. The owner approves a personal Mac once per session: after that, asking again answers approved at once. Answers status pending or approved. Check devices list again for the answer; it expires after 30 minutes without an answer. While it is pending, go on with other work; when it is declined or expires, go on without it and say so. Once approved it stays approved for the rest of the session: pass --device-id on every mac command. One session at a time uses the device: on MAC_BUSY, wait with devices locks create, and run devices locks delete once done.",
9
+ "summary": "From a Chat Session: ask to use a personal Mac from devices list, with the reason its owner reads on a card in this session's chat. A workspace device needs no request: it answers approved at once with grantId null, and no one is asked. The owner approves a personal Mac for the Turn that asked: asking again in that Turn answers approved at once, and a later Turn asks again, with a new card for the owner. Answers status pending or approved. Check devices list again for the answer; it expires after 30 minutes without an answer, or when this Turn ends. While it is pending, go on with other work; when it is declined or expires, go on without it and say so. Once approved it lasts until this Turn ends: pass --device-id on every mac command; after that, mac commands on it are refused. One session at a time uses the device: on MAC_BUSY, wait with devices locks create, and run devices locks delete once done.",
10
10
  "pathParams": [
11
11
  "deviceId"
12
12
  ],