@ours.network/cowork 0.3.1 → 0.3.3
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/README.md +3 -1
- package/dist/cli.js +35 -6
- package/dist/daemon.js +39 -2
- package/dist/mufl_code/BBAE58CF78DEE59692F456EAFFA9A6109835B66846FC3989F6D201B8F4523A55.muflo +0 -0
- package/dist/web/assets/app.css +1 -1
- package/dist/web/assets/app.js +9 -9
- package/docs/05-room-workflow.md +3 -3
- package/docs/11-web-console.md +8 -2
- package/package.json +1 -1
package/docs/05-room-workflow.md
CHANGED
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
Create a room and inspect its host-owned identity:
|
|
4
4
|
|
|
5
5
|
```sh
|
|
6
|
-
ours-cowork room create --goal "Ship the fix" --briefing "Review evidence first"
|
|
6
|
+
ours-cowork room create --name "Release bridge" --goal "Ship the fix" --briefing "Review evidence first"
|
|
7
7
|
ours-cowork room list
|
|
8
8
|
ours-cowork room show <room-id>
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
In the web console, choose Create room, enter Goal and Briefing, and submit once. The created room is selected automatically and its Invite panel opens. Add invitation requirements one at a time; the UI does not combine room creation and invites into a fabricated atomic operation.
|
|
11
|
+
In the web console, choose Create room, enter Name, Goal, and Briefing, and submit once. Names are trimmed and Unicode NFC-normalized, must contain 1–64 Unicode characters, and cannot contain Unicode control or format characters. Duplicate names are allowed. The created room is selected automatically and its Invite panel opens. Add invitation requirements one at a time; the UI does not combine room creation and invites into a fabricated atomic operation.
|
|
12
12
|
|
|
13
|
-
Update mutable mission fields
|
|
13
|
+
Update the display name with `ours-cowork room settings <room-id> --name "New name"`; other mutable mission fields use the same `room settings` command. The display name is persisted as `room_name`, while the opaque `room_id` remains the stable routing, URL, storage, and identity-correlation key. The underlying room identity is not renamed. Existing unnamed rooms receive the deterministic display name `Room <first 8 room_id characters>` when loaded. Inspect admitted seats with `room participants`. A room activates only when its recorded invite requirements are satisfied. Roles are display labels; participant identity CIDs, not roles, are authorization keys.
|
|
14
14
|
|
|
15
15
|
Close with `ours-cowork room close <room-id>`. Close is forward-only and removes live room packet state while retaining the local archive. Archive deletion is a separate explicit operation described in the limitations topic.
|
|
16
16
|
|
package/docs/11-web-console.md
CHANGED
|
@@ -12,16 +12,22 @@ The console and HTTP room RPC have no authentication. They bind only to `127.0.0
|
|
|
12
12
|
|
|
13
13
|
## Room setup
|
|
14
14
|
|
|
15
|
-
1. Choose Create room and enter the Goal and Briefing.
|
|
15
|
+
1. Choose Create room and enter the friendly Name, Goal, and Briefing. The name is shown in the room list, workspace header, and room details.
|
|
16
16
|
2. Submit once. The new room is selected and its Invite panel opens.
|
|
17
17
|
3. Add one invitation requirement at a time. Choose one-time or public mode and set the minimum acceptances for a public invite.
|
|
18
18
|
4. Copy every invite from its blocking receipt before choosing Done. The secret is shown once and is not retained in browser storage, the URL, logs, or durable room metadata.
|
|
19
19
|
|
|
20
20
|
The room activates after its durable invitation requirements are satisfied. Participants shows admitted identities and their invite roles.
|
|
21
21
|
|
|
22
|
+
Friendly names are trimmed and Unicode NFC-normalized, must contain 1–64 Unicode characters, and cannot contain Unicode control or format characters. Duplicate names are allowed. Change a name in Room settings. The browser continues to route by the opaque room ID; renaming does not change the URL, storage key, or underlying room identity. Existing unnamed rooms appear as `Room <first 8 room_id characters>`.
|
|
23
|
+
|
|
22
24
|
## Communication and records
|
|
23
25
|
|
|
24
|
-
Communication is the human-readable
|
|
26
|
+
Communication is the human-readable room stream: room and participant messages, the mission briefing, and inert file attachment cards at their exact archive sequence. Files are separate communication items and are not attached to nearby message text. The newest 500 communication items are mounted first; Show 500 earlier reveals more loaded history. Messages are not inserted optimistically; a sent message appears after the daemon's ordered history includes it. Events contains relay, recovery, close, and failure details. Archive contains the complete sequence-numbered stream and can show earlier loaded rows.
|
|
27
|
+
|
|
28
|
+
Files lists every validated file already loaded from the selected room's paged history. It groups versions only when their raw filenames are exactly equal, including case, Unicode form, and whitespace; versions are numbered oldest-first from archive sequence and displayed newest-first. Group headers and expanded version lists mount 500 entries at a time, with controls to reveal every older entry. Repeated uploads remain distinct versions even when their bytes are identical.
|
|
29
|
+
|
|
30
|
+
Files never preview or interpret content. Download decodes the archive's canonical base64, verifies the declared size and SHA-256 in the browser, and only then downloads a short-lived `application/octet-stream` Blob. An integrity mismatch is blocked. The reported MIME is shown as metadata only, and unsafe control/format characters or trailing spaces/dots are replaced in the derived download name without changing the displayed or grouped filename. Loaded files remain readable and downloadable when a room is closed or the daemon is disconnected; deleting the room removes its entire local archive and UI, with no per-file deletion.
|
|
25
31
|
|
|
26
32
|
Room list and connection health poll every five seconds. The selected room, participants, and new history poll every two seconds. Polling pauses while the page is hidden, coalesces overlapping cycles, and refreshes after confirmed mutations. Version one does not use push updates.
|
|
27
33
|
|