@aopslabs/aops 0.3.30 → 0.3.32

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 (147) hide show
  1. package/README.md +11 -3
  2. package/aops-assets-release/aops-assets.json.gz +0 -0
  3. package/aops-assets-release/disciplines/build-review-chat/SKILL.md +33 -0
  4. package/aops-assets-release/disciplines/coordinator-loop/SKILL.md +33 -0
  5. package/aops-assets-release/disciplines/design-first-consensus/SKILL.md +30 -0
  6. package/aops-assets-release/disciplines/solo-pm-loop/SKILL.md +31 -0
  7. package/aops-assets-release/docs/user-guides/agentspace-user-guide.md +384 -0
  8. package/aops-assets-release/docs/user-guides/aops-cli-user-guide.md +2067 -0
  9. package/aops-assets-release/docs/user-guides/chatv3-user-guide.md +500 -0
  10. package/aops-assets-release/docs/user-guides/docman-user-guide.md +1009 -0
  11. package/aops-assets-release/docs/user-guides/projectman-user-guide.md +763 -0
  12. package/aops-assets-release/docs/user-guides/tasker-user-guide.md +244 -0
  13. package/aops-assets-release/release.json +6 -0
  14. package/aops-assets-release/roles/coordinator/ROLE.md +28 -0
  15. package/aops-assets-release/roles/implementer/ROLE.md +27 -0
  16. package/aops-assets-release/roles/reviewer/ROLE.md +27 -0
  17. package/aops-assets-release/skills/aops/SKILL.md +112 -0
  18. package/aops-assets-release/skills/aops-bootstrapper-authoring/SKILL.md +245 -0
  19. package/aops-assets-release/skills/aops-cli-agentspace/SKILL.md +186 -0
  20. package/aops-assets-release/skills/aops-cli-board-lifecycle/SKILL.md +64 -0
  21. package/aops-assets-release/skills/aops-cli-chat/SKILL.md +204 -0
  22. package/aops-assets-release/skills/aops-cli-collab/SKILL.md +42 -0
  23. package/aops-assets-release/skills/aops-cli-core/SKILL.md +219 -0
  24. package/aops-assets-release/skills/aops-cli-discuss/SKILL.md +172 -0
  25. package/aops-assets-release/skills/aops-cli-docman/SKILL.md +192 -0
  26. package/aops-assets-release/skills/aops-cli-fileman/SKILL.md +169 -0
  27. package/aops-assets-release/skills/aops-cli-mission/SKILL.md +128 -0
  28. package/aops-assets-release/skills/aops-cli-operator-brief/SKILL.md +67 -0
  29. package/aops-assets-release/skills/aops-cli-projectman/SKILL.md +235 -0
  30. package/aops-assets-release/skills/aops-cli-sugar-authoring/SKILL.md +188 -0
  31. package/aops-assets-release/skills/aops-cli-tasker/SKILL.md +108 -0
  32. package/aops-assets-release/skills/aops-cli-tooling-agent/SKILL.md +112 -0
  33. package/aops-assets-release/skills/aops-cli-view/SKILL.md +210 -0
  34. package/aops-assets-release/skills/aops-collaborative-work/SKILL.md +304 -0
  35. package/aops-assets-release/skills/aops-interactive/SKILL.md +70 -0
  36. package/aops-assets-release/skills/aops-loop-interactive/SKILL.md +314 -0
  37. package/aops-assets-release/skills/aops-working-disciplines/SKILL.md +310 -0
  38. package/aops-assets-release/skills/feature-retirement-flow/SKILL.md +126 -0
  39. package/assets/skills/aops-install/SKILL.md +18 -17
  40. package/dist/commands/assets.js +93 -1264
  41. package/dist/commands/community-server.js +27 -8
  42. package/dist/commands/community-setup.js +1 -2
  43. package/dist/commands/discuss.js +1 -1
  44. package/dist/commands/doc.js +88 -27
  45. package/dist/commands/docs.js +68 -0
  46. package/dist/commands/global-update.js +28 -0
  47. package/dist/commands/init.js +3 -1
  48. package/dist/commands/loop.js +6379 -0
  49. package/dist/commands/memory.js +2 -1
  50. package/dist/commands/pm/index.js +11 -9
  51. package/dist/commands/pm/projectman.js +33 -2
  52. package/dist/commands/project.js +6 -6
  53. package/dist/commands/prompt.js +1 -1
  54. package/dist/commands/repo-sync.js +92 -27
  55. package/dist/commands/runner.js +257 -0
  56. package/dist/commands/skill.js +1 -1
  57. package/dist/commands/start.js +1 -1
  58. package/dist/commands/tasker.js +361 -0
  59. package/dist/commands/view.js +53 -9
  60. package/dist/lib/commercial-setup-readiness-adapter.js +0 -1
  61. package/dist/lib/community-migration-snapshot.js +7 -9
  62. package/dist/lib/community-native-database-recovery.js +5 -14
  63. package/dist/lib/community-native-lifecycle.js +13 -0
  64. package/dist/lib/setup-agent-assets-bridge.js +28 -148
  65. package/dist/lib/setup-agent-assets-release.js +16 -44
  66. package/dist/lib/setup-init-orchestrator.js +11 -15
  67. package/dist/lib/simple-agent-assets.js +447 -0
  68. package/dist/lib/user-guide-sections.js +488 -0
  69. package/dist/main.js +10 -2
  70. package/dist/seeds/agents-md.js +3 -3
  71. package/dist/utils/agents-md.js +1 -1
  72. package/dist/utils/guide-paths.js +7 -7
  73. package/dist/utils/hosted-workspace.js +2 -1
  74. package/dist/utils/repo-first-storage.js +26 -1
  75. package/dist/utils/session-state.js +2 -7
  76. package/launchers/aops-cockpit.sh +0 -0
  77. package/launchers/aops-server.sh +0 -0
  78. package/package.json +67 -35
  79. package/THIRD_PARTY_NOTICES +0 -16169
  80. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/SKILL.md +0 -47
  81. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/agentspace/SKILL.md +0 -72
  82. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/aops-cli-core/SKILL.md +0 -110
  83. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/chatv3/SKILL.md +0 -59
  84. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/collaborative-work/SKILL.md +0 -81
  85. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/discuss/SKILL.md +0 -66
  86. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/docman/SKILL.md +0 -75
  87. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/projectman/SKILL.md +0 -92
  88. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/sys/SKILL.md +0 -36
  89. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/view/SKILL.md +0 -58
  90. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/references/working-disciplines/SKILL.md +0 -66
  91. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/agent-assets.md +0 -81
  92. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/agentspace.md +0 -183
  93. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/aops-cli.md +0 -1108
  94. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/aops-system.md +0 -102
  95. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/chatv3.md +0 -113
  96. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/docman.md +0 -223
  97. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/projectman.md +0 -233
  98. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/sys.md +0 -94
  99. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/files/user-guides/working-disciplines.md +0 -482
  100. package/agent-assets-release/agent-assets/core/bc42dd7792dbe66040e99a7ef3d80b3bc788c72b369b5a065cf936aef29f53fb/manifest.json +0 -117
  101. package/agent-assets-release/agent-assets/gateway/aops/SKILL.md +0 -14
  102. package/agent-assets-release/agent-assets/inventory.json +0 -29
  103. package/agent-assets-release/agent-assets/projection.json +0 -8
  104. package/agent-assets-release/agent-assets-release.json +0 -171
  105. package/agent-assets-release/agent-assets-release.sigstore.json +0 -67
  106. package/assets/agent-assets/core/SKILL.md +0 -47
  107. package/assets/agent-assets/core/references/agentspace/SKILL.md +0 -72
  108. package/assets/agent-assets/core/references/aops-cli-core/SKILL.md +0 -110
  109. package/assets/agent-assets/core/references/chatv3/SKILL.md +0 -59
  110. package/assets/agent-assets/core/references/collaborative-work/SKILL.md +0 -81
  111. package/assets/agent-assets/core/references/discuss/SKILL.md +0 -66
  112. package/assets/agent-assets/core/references/docman/SKILL.md +0 -75
  113. package/assets/agent-assets/core/references/projectman/SKILL.md +0 -92
  114. package/assets/agent-assets/core/references/sys/SKILL.md +0 -36
  115. package/assets/agent-assets/core/references/view/SKILL.md +0 -58
  116. package/assets/agent-assets/core/references/working-disciplines/SKILL.md +0 -66
  117. package/assets/agent-assets/core/user-guides/agent-assets.md +0 -81
  118. package/assets/agent-assets/core/user-guides/agentspace.md +0 -183
  119. package/assets/agent-assets/core/user-guides/aops-cli.md +0 -1108
  120. package/assets/agent-assets/core/user-guides/aops-system.md +0 -102
  121. package/assets/agent-assets/core/user-guides/chatv3.md +0 -113
  122. package/assets/agent-assets/core/user-guides/docman.md +0 -223
  123. package/assets/agent-assets/core/user-guides/projectman.md +0 -233
  124. package/assets/agent-assets/core/user-guides/sys.md +0 -94
  125. package/assets/agent-assets/core/user-guides/working-disciplines.md +0 -482
  126. package/assets/agent-assets/gateway/aops/SKILL.md +0 -14
  127. package/dist/lib/agent-assets/gateway.js +0 -15
  128. package/dist/lib/agent-assets/guards.js +0 -23
  129. package/dist/lib/agent-assets/hosted-discovery.js +0 -148
  130. package/dist/lib/agent-assets/hosted-package-input.js +0 -154
  131. package/dist/lib/agent-assets/legacy-pointer-migration.js +0 -677
  132. package/dist/lib/agent-assets/native-fs.js +0 -589
  133. package/dist/lib/agent-assets/roots.js +0 -45
  134. package/dist/lib/agent-assets/runtime-binding-reader.js +0 -545
  135. package/dist/lib/agent-assets/runtime-targets.js +0 -50
  136. package/dist/lib/agent-assets/store-reader.js +0 -1212
  137. package/dist/lib/agent-assets/store-writer.js +0 -1484
  138. package/native/bin/darwin-arm64/aops-agent-assets-fs +0 -0
  139. package/native/bin/darwin-x64/aops-agent-assets-fs +0 -0
  140. package/native/bin/linux-arm64/aops-agent-assets-fs +0 -0
  141. package/native/bin/linux-x64/aops-agent-assets-fs +0 -0
  142. package/native/bin/win32-x64/aops-agent-assets-fs.exe +0 -0
  143. package/native/manifest.json +0 -49
  144. package/native/qualifications/win32-x64.json +0 -23
  145. package/native/tui/darwin-arm64/aops-tui +0 -0
  146. package/native/tui/linux-x64/aops-tui +0 -0
  147. package/native/tui/win32-x64/aops-tui.exe +0 -0
@@ -0,0 +1,500 @@
1
+ # ChatV3 User Guide
2
+
3
+ _Release Notes:_ Applies the Opus final-review corrections for invocation flags, post-processing receipts, gap detection, latestSeq/caughtUp semantics, and wake-watch prerequisites.
4
+
5
+ ## 1 Agent fast path
6
+
7
+ ### 1.1 Overview
8
+
9
+ #### 1.1.1 Overview
10
+
11
+ ChatV3 is the AOPS coordination and wake plane. Use it to exchange bounded
12
+ messages, references, room context, and review notifications. Do not use chat
13
+ as the canonical owner of design decisions, implementation plans, review
14
+ results, durable memory, or documentation.
15
+
16
+ Use this sequence before reading the whole guide:
17
+
18
+ 1. Verify the host and inspect the smallest command help surface.
19
+ 2. List saved local sessions. Never guess a session id or reuse another
20
+ agent's encrypted session store.
21
+ 3. Read the room from the saved cursor before listening.
22
+ 4. Mark messages delivered/read only after processing them.
23
+ 5. Treat `listen` exit code `22` as a normal timeout with no new messages.
24
+ 6. Use Projectman, Discuss, Docman, or Agentspace for durable truth; send only
25
+ compact ids and outcomes through ChatV3.
26
+
27
+ ```bash
28
+ aops host health --json
29
+ aops chat --help
30
+ aops chat session list --json
31
+ aops chat read --session <session-id> --room <room> --after-seq <cursor> --json
32
+ aops chat listen --session <session-id> --room <room> --after-seq <latest-seq> \
33
+ --timeout-sec 55 --json
34
+ ```
35
+
36
+ The installed launcher may be `aops`; the package launcher is `aops-cli`.
37
+ `aops chat` is canonical. `aops chatv3` is a compatibility command tree kept
38
+ for existing automation; prefer `aops chat` for new work.
39
+
40
+ ## 2 Ownership and truth boundaries
41
+
42
+ ### 2.1 Overview
43
+
44
+ #### 2.1.1 Overview
45
+
46
+ | Need | Canonical owner |
47
+ | --- | --- |
48
+ | Coordination, wake, room roster, cursors, and short references | ChatV3 |
49
+ | Design debate and final stance | Discuss |
50
+ | Tasks, sprints, issues, and review results | Projectman |
51
+ | Durable session memory and reusable context | Agentspace |
52
+ | Architecture, guides, ADRs, and specifications | Docman |
53
+ | Code and release history | Git and the release system |
54
+
55
+ A chat acknowledgement is not a Projectman approval. A pasted design is not a
56
+ Discuss conclusion. A room summary is not durable memory until the relevant
57
+ facts are composed and written to the correct canonical owner.
58
+
59
+ ### 2.2 ChatV3 command and hosted-domain boundary
60
+
61
+ #### 2.2.1 Overview
62
+
63
+ The CLI currently exposes 28 canonical `aops chat` leaf commands. The hosted
64
+ ChatV3 domain exposes a larger capability set (currently 50 tools). Generated
65
+ appendices list only public CLI registrations; they never freeze hosted tool
66
+ ids into authored prose.
67
+
68
+ When sugar is insufficient, discover the running server rather than guessing:
69
+
70
+ ```bash
71
+ aops agent tools --domain chatv3 --summary --json
72
+ aops agent schema --tool <chatv3-tool-id> --summary --json
73
+ aops agent invoke --tool <chatv3-tool-id> --input '@./payload.json' --json
74
+ ```
75
+
76
+ Help wins for sugar flags. The running schema wins for raw hosted payloads.
77
+
78
+ ## 3 Security and encryption model
79
+
80
+ ### 3.1 Invite strings are secrets
81
+
82
+ #### 3.1.1 Overview
83
+
84
+ A `chv3://join/...` invite contains secret material. Share it only through a
85
+ secure channel. Do not place it in chat history, shell history, issue text,
86
+ logs, screenshots, repositories, or documentation.
87
+
88
+ `channel create` prints the invite once in `result.invite`. Command JSON
89
+ redacts invite secrets from other output. Prefer an interactive secret transfer
90
+ instead of constructing or decoding invite strings by hand.
91
+
92
+ ### 3.2 Server-encrypted and end-to-end modes
93
+
94
+ #### 3.2.1 Overview
95
+
96
+ `server-encrypted` channels use a database-canonical server keyring. The
97
+ database and its backups therefore contain material needed to decrypt that
98
+ history; protect PostgreSQL, backups, replicas, and exports accordingly.
99
+
100
+ `e2e` channels keep epoch material client-managed. Database access alone does
101
+ not replace the client key material. An e2e session store therefore carries a
102
+ different recovery responsibility than a server-encrypted session.
103
+
104
+ Choose the mode at channel creation. Do not claim e2e confidentiality for a
105
+ server-encrypted channel.
106
+
107
+ ### 3.3 Local session stores
108
+
109
+ #### 3.3.1 Overview
110
+
111
+ Saved sessions contain a member token and mode-specific key material encrypted
112
+ at rest. The default store is agent-owned under `~/.aops/chatv3/`.
113
+
114
+ Rules:
115
+
116
+ 1. Use the session created for the current agent/task.
117
+ 2. Do not copy another agent's encrypted session files.
118
+ 3. Use `--session-owner` only when ownership is explicit.
119
+ 4. Use `--store-path` for isolated tests or an intentionally separate agent
120
+ store, not to bypass ownership.
121
+ 5. Never commit the store or print its contents.
122
+
123
+ ```bash
124
+ aops chat session list --json
125
+ aops chat session get --session <session-id> --json
126
+ ```
127
+
128
+ ## 4 Channels, spaces, and sessions
129
+
130
+ ### 4.1 Create a channel
131
+
132
+ #### 4.1.1 Overview
133
+
134
+ Channel creation is a real hosted write. Confirm the title, handle, space,
135
+ encryption mode, and intended local session before applying it.
136
+
137
+ ```bash
138
+ aops chat channel create \
139
+ --title "TASK coordination" \
140
+ --handle codex \
141
+ --space default \
142
+ --mode server-encrypted \
143
+ --session codex-task \
144
+ --save-session \
145
+ --json
146
+ ```
147
+
148
+ Capture the returned invite securely. Do not paste it into the room itself.
149
+
150
+ ### 4.2 Join an existing channel
151
+
152
+ #### 4.2.1 Overview
153
+
154
+ Join uses the server URL embedded in the invite unless `--api-base-url`
155
+ explicitly overrides it.
156
+
157
+ ```bash
158
+ aops chat join '<invite-from-secure-transfer>' \
159
+ --handle codex \
160
+ --session codex-task \
161
+ --save-session \
162
+ --json
163
+ ```
164
+
165
+ If the session id already exists, stop and inspect it. `--force` replaces local
166
+ session state and must not be used merely to silence an ownership conflict.
167
+
168
+ ### 4.3 List and inspect sessions
169
+
170
+ #### 4.3.1 Overview
171
+
172
+ ```bash
173
+ aops chat channels --space default --status active --json
174
+ aops chat session list --json
175
+ aops chat session get --session codex-task --json
176
+ ```
177
+
178
+ Channel lists are scoped to the verified AuthV2 principal. On a trusted-local
179
+ loopback host this is the trusted-local principal; remote environments may
180
+ require an authenticated session.
181
+
182
+ ## 5 Rooms, membership, presence, and bindings
183
+
184
+ ### 5.1 Rooms
185
+
186
+ #### 5.1.1 Overview
187
+
188
+ A channel may contain multiple rooms. Use a task room to keep unrelated work
189
+ separate and keep the room slug stable in automation.
190
+
191
+ ```bash
192
+ aops chat room list --session codex-task --json
193
+ aops chat room create --session codex-task --slug task-223 \
194
+ --title "TASK-223" --purpose "ChatV3 guide review" --kind task --json
195
+ aops chat room join --session codex-task --room task-223 --json
196
+ ```
197
+
198
+ Leaving a room does not leave the channel. Use `room leave` for room roster
199
+ membership and `chat leave` for channel membership.
200
+
201
+ ### 5.2 Membership and presence
202
+
203
+ #### 5.2.1 Overview
204
+
205
+ ```bash
206
+ aops chat member list --session codex-task --json
207
+ aops chat room members --session codex-task --room task-223 --json
208
+ aops chat presence set --session codex-task --room task-223 \
209
+ --state working --note "reviewing the guide" --json
210
+ aops chat presence list --session codex-task --room task-223 --json
211
+ ```
212
+
213
+ Member removal/restore changes access. Confirm whether the target is the whole
214
+ channel or only one room before running either operation.
215
+
216
+ ### 5.3 Loose reference bindings
217
+
218
+ #### 5.3.1 Overview
219
+
220
+ Bindings attach compact external references to a channel or room. They do not
221
+ copy or replace the referenced canonical record.
222
+
223
+ ```bash
224
+ aops chat binding add --session codex-task --room task-223 \
225
+ --binding-type projectman.review-request --ref-id <rr-id> \
226
+ --title "Final guide review" --json
227
+ aops chat binding list --session codex-task --room task-223 --json
228
+ ```
229
+
230
+ ## 6 Message and cursor discipline
231
+
232
+ ### 6.1 Send bounded messages
233
+
234
+ #### 6.1.1 Overview
235
+
236
+ Keep coordination messages short and reference canonical ids. Use a file for
237
+ multiline text to avoid shell escaping errors.
238
+
239
+ ```bash
240
+ aops chat send --session codex-task --room task-223 \
241
+ --text '@./room-update.md' --json
242
+ ```
243
+
244
+ Do not send credentials, invite strings, session-store material, database
245
+ contents, or large canonical documents.
246
+
247
+ ### 6.2 Read before listen
248
+
249
+ #### 6.2.1 Overview
250
+
251
+ Persist and reuse the latest processed sequence. Detect a gap yourself: when a
252
+ non-empty response starts above `<saved-seq> + 1`, do not advance the cursor.
253
+ Read again from the last contiguous processed sequence.
254
+
255
+ ```bash
256
+ aops chat read --session codex-task --room task-223 \
257
+ --after-seq <saved-seq> --json
258
+ ```
259
+
260
+ The response includes `messages`, `messageCount`, `latestSeq`, and `caughtUp`.
261
+ Process messages in ascending `seq` order. Only after the batch is processed,
262
+ repeat the read from the previous cursor to write receipts:
263
+
264
+ ```bash
265
+ aops chat read --session codex-task --room task-223 \
266
+ --after-seq <previous-saved-seq> --limit <batch-size> \
267
+ --mark-delivered --mark-read --json
268
+ ```
269
+
270
+ `latestSeq` is the maximum of the supplied cursor and the returned message
271
+ sequences; it is not the room high-water mark. With a bounded page,
272
+ `caughtUp: false` only means that messages were returned. Continue until the
273
+ next read is empty. An empty `messages` array is valid.
274
+
275
+ ### 6.3 Foreground listen
276
+
277
+ #### 6.3.1 Overview
278
+
279
+ ```bash
280
+ aops chat listen --session codex-task --room task-223 \
281
+ --after-seq <latest-seq> --timeout-sec 55 --json
282
+ ```
283
+
284
+ Exit meanings:
285
+
286
+ 1. `0`: one or more messages were returned.
287
+ 2. `22`: normal timeout; no new messages arrived.
288
+ 3. any other nonzero value: inspect stderr/JSON and the exact session/host
289
+ before retrying.
290
+
291
+ Foreground listening is bounded. Do not start a background watcher unless the
292
+ operator explicitly requests persistent monitoring.
293
+
294
+ ## 7 Briefs and summaries
295
+
296
+ ### 7.1 Room brief
297
+
298
+ #### 7.1.1 Overview
299
+
300
+ `room brief` composes guidance, bindings, roster, presence, and cursor
301
+ references for orientation. It is useful when handing a room to another agent.
302
+
303
+ ```bash
304
+ aops chat room brief --session codex-task --room task-223 \
305
+ --for claude --json
306
+ ```
307
+
308
+ ### 7.2 Room summary
309
+
310
+ #### 7.2.1 Overview
311
+
312
+ `room summary` returns source messages marked for summarization and a
313
+ `NARRATIVE-DIGEST` memory recipe. Compose only durable facts; do not persist
314
+ source messages verbatim.
315
+
316
+ ```bash
317
+ aops chat room summary --session codex-task --room task-223 \
318
+ --after-seq <cursor> --json
319
+ ```
320
+
321
+ Write the resulting durable facts to Agentspace memory, Projectman, Discuss,
322
+ or Docman according to ownership.
323
+
324
+ ## 8 Destructive and privileged operations
325
+
326
+ ### 8.1 Delete one channel
327
+
328
+ #### 8.1.1 Overview
329
+
330
+ Channel deletion is irreversible and always requires the exact channel slug as
331
+ a guard.
332
+
333
+ ```bash
334
+ aops chat channel delete --channel <id-or-slug> \
335
+ --confirm-slug <exact-slug> --session <owner-session> --json
336
+ ```
337
+
338
+ Read the target first. A mismatched slug must fail before deletion when the
339
+ channel can be resolved. Review `whatWasDeleted` after success.
340
+
341
+ ### 8.2 Purge old channels
342
+
343
+ #### 8.2.1 Overview
344
+
345
+ `purge-before` is dry-run by default. Preview and review
346
+ `whatWillBeDeleted`; only a separate authorized run may include `--confirm`.
347
+
348
+ ```bash
349
+ aops chat channel purge-before --before 2026-07-01T00:00:00.000Z --json
350
+
351
+ # Destructive: run only after explicit operator approval.
352
+ aops chat channel purge-before --before 2026-07-01T00:00:00.000Z \
353
+ --confirm --json
354
+ ```
355
+
356
+ ## 9 Troubleshooting
357
+
358
+ ### 9.1 No saved session
359
+
360
+ #### 9.1.1 Overview
361
+
362
+ If `session list` is empty, stop. Do not infer an encrypted session from
363
+ another task, owner, or repository. Obtain a new invite through secure transfer
364
+ or ask the channel owner to create the intended session.
365
+
366
+ ### 9.2 Cursor gap or stale cursor
367
+
368
+ #### 9.2.1 Overview
369
+
370
+ Compare the first returned message `seq` with the saved cursor plus one. If it
371
+ is higher, keep the saved cursor unchanged and read again from the last known
372
+ contiguous sequence. Do not mark unseen messages read only to make the gap
373
+ disappear.
374
+
375
+ ### 9.3 Join or decrypt failure
376
+
377
+ #### 9.3.1 Overview
378
+
379
+ Check, in order:
380
+
381
+ 1. the exact host embedded in the invite;
382
+ 2. the intended session owner and store path;
383
+ 3. channel encryption mode and locked/archived state;
384
+ 4. the smallest relevant CLI help;
385
+ 5. live hosted tool schema for deeper diagnostics.
386
+
387
+ Never log tokens, invite strings, wrap secrets, epoch keys, or server keyring
388
+ material while diagnosing.
389
+
390
+ ### 9.4 Experimental wake watcher
391
+
392
+ #### 9.4.1 Overview
393
+
394
+ `aops chat wake-watch` is experimental and optional. It connects ChatV3
395
+ messages to a local Codex wake path. Do not run it as a default part of normal
396
+ read/listen workflows, and do not claim persistent monitoring unless the
397
+ operator requested and verified that runtime. Startup fails closed without
398
+ `--wake-approved`, `--target-session-id`, `--watcher-member-id`,
399
+ `--target-member-id`, and an ignore set containing both member ids. Read its
400
+ live `--help` before use.
401
+
402
+ ## 10 Public asset and retrieval contract
403
+
404
+ ### 10.1 Overview
405
+
406
+ #### 10.1.1 Overview
407
+
408
+ This guide is a public AOPS asset and a composable Docman document. Its
409
+ canonical development record lives in `slug:aops`, group `domain-guides`, with
410
+ tags `public`, `asset`, `user-guide`, `chatv3`, and `composable`.
411
+
412
+ Public access to this operational guide does not make the ChatV3 source code or
413
+ restricted packages open source and does not grant package, hosting, or source
414
+ access. The `LICENSE` and `NOTICE` files shipped with the ChatV3 source remain
415
+ the controlling access terms.
416
+
417
+ After a new version is published:
418
+
419
+ ```bash
420
+ aops doc index build --document-version-id <docver-id> --json
421
+ aops doc summary build --document-version-id <docver-id> --json
422
+ aops doc search --document-version-id <docver-id> \
423
+ --q "listen exit 22" --remote --json
424
+ aops doc answer --document-version-id <docver-id> \
425
+ --q "How should an agent recover from a cursor gap?" --remote --json
426
+ aops doc mirror pull --project-slug aops --document-slug chatv3-user-guide \
427
+ --apply --json
428
+ ```
429
+
430
+ Repository mirrors under `.aops/docman/**` are read-only caches. Never
431
+ hand-edit them as canonical truth.
432
+
433
+ ## 11 Appendices
434
+
435
+ ### 11.1 Generated command catalog
436
+
437
+ #### 11.1.1 Overview
438
+
439
+ <!-- aops-generated:chatv3-command-catalog:start -->
440
+ > This appendix is generated from the public `aops chat` Commander registrations. `aops chatv3` is a compatibility command tree and is not duplicated here. Regenerate with `aops docs user-guide --guide chatv3`.
441
+
442
+ | Command | Purpose |
443
+ | --- | --- |
444
+ | `aops chat binding add` | Attach a loose external reference to the active room or channel |
445
+ | `aops chat binding list` | List loose references for the active room by default |
446
+ | `aops chat binding remove` | Remove a loose ChatV3 binding |
447
+ | `aops chat channel create` | Create a ChatV3 channel and print the invite once; invite contains secrets |
448
+ | `aops chat channel delete` | Hard-delete one ChatV3 channel after confirm-slug guard |
449
+ | `aops chat channel purge-before` | Preview or apply admin cleanup for channels created before an ISO cutoff |
450
+ | `aops chat channels` | List channels owned by or joined by the verified AuthV2 principal |
451
+ | `aops chat join` | Run `aops chat join --help` for the current command contract. |
452
+ | `aops chat leave` | Run `aops chat leave --help` for the current command contract. |
453
+ | `aops chat listen` | Run `aops chat listen --help` for the current command contract. |
454
+ | `aops chat member list` | Run `aops chat member list --help` for the current command contract. |
455
+ | `aops chat member remove` | Remove a member from a ChatV3 channel (owner/operator), or with --room kick them from one room (room creator or owner/operator) |
456
+ | `aops chat member restore` | Restore a removed member (channel-level, owner/operator), or with --room re-add them to one room |
457
+ | `aops chat presence list` | Run `aops chat presence list --help` for the current command contract. |
458
+ | `aops chat presence set` | Run `aops chat presence set --help` for the current command contract. |
459
+ | `aops chat read` | Run `aops chat read --help` for the current command contract. |
460
+ | `aops chat room brief` | Build a paste-ready room brief from guidance, bindings, members, presence, and cursor refs |
461
+ | `aops chat room create` | Create a room in the session channel (creator becomes its first participant) |
462
+ | `aops chat room join` | Join a room roster (disjoin later with "room leave"); rejected after a room-level removal |
463
+ | `aops chat room leave` | Leave a room roster (disjoin); the channel membership stays intact |
464
+ | `aops chat room list` | List active rooms of the session channel |
465
+ | `aops chat room members` | List the room-scoped participant roster (active participants by default) |
466
+ | `aops chat room summary` | Build a room summary pack with source messages for agent-composed memory digest |
467
+ | `aops chat send` | Run `aops chat send --help` for the current command contract. |
468
+ | `aops chat session forget` | Run `aops chat session forget --help` for the current command contract. |
469
+ | `aops chat session get` | Run `aops chat session get --help` for the current command contract. |
470
+ | `aops chat session list` | Run `aops chat session list --help` for the current command contract. |
471
+ | `aops chat wake-watch` | EXPERIMENTAL foreground ChatV3-to-local-Codex wake watcher |
472
+
473
+ <!-- aops-generated:chatv3-command-catalog:end -->
474
+
475
+ ### 11.2 Generated discovery guide
476
+
477
+ #### 11.2.1 Overview
478
+
479
+ <!-- aops-generated:chatv3-discovery:start -->
480
+ > `aops chat` is the convenience CLI, not the complete ChatV3 domain. Discover the running server before invoking capabilities that do not have sugar commands.
481
+
482
+ | Command | Purpose |
483
+ | --- | --- |
484
+ | `aops agent tools` | List federated tools from the canonical operator plane (/api/agent/tools) |
485
+ | `aops agent schema` | Print the live JSON Schema for one tool's input contract — use this before authoring --input payloads |
486
+ | `aops agent invoke` | Invoke a tool via the canonical operator plane (/api/agent/tools/{toolId}/invoke) |
487
+
488
+ Use the smallest useful read:
489
+
490
+ ```bash
491
+ aops chat --help
492
+ aops chat channels --json
493
+ aops chat session list --json
494
+ aops chat read --help
495
+ aops chat listen --help
496
+ aops agent tools --domain chatv3 --summary --json
497
+ aops agent schema --tool <chatv3-tool-id> --summary --json
498
+ ```
499
+
500
+ <!-- aops-generated:chatv3-discovery:end -->