seatmesh 1.2.5 → 1.3.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 (72) hide show
  1. package/bin/seatmesh +6 -1
  2. package/dist/commands/campaign-cli.d.ts +10 -0
  3. package/dist/commands/campaign-cli.d.ts.map +1 -0
  4. package/dist/commands/campaign-cli.js +136 -0
  5. package/dist/commands/campaign-cli.js.map +1 -0
  6. package/dist/commands/chat-cli.d.ts.map +1 -1
  7. package/dist/commands/chat-cli.js +55 -0
  8. package/dist/commands/chat-cli.js.map +1 -1
  9. package/dist/commands/completion.d.ts +3 -0
  10. package/dist/commands/completion.d.ts.map +1 -1
  11. package/dist/commands/completion.js +54 -13
  12. package/dist/commands/completion.js.map +1 -1
  13. package/dist/commands/completion.test.js +37 -2
  14. package/dist/commands/completion.test.js.map +1 -1
  15. package/dist/commands/contract-lock-cli.d.ts.map +1 -1
  16. package/dist/commands/contract-lock-cli.js +150 -29
  17. package/dist/commands/contract-lock-cli.js.map +1 -1
  18. package/dist/commands/help-text.d.ts.map +1 -1
  19. package/dist/commands/help-text.js +89 -25
  20. package/dist/commands/help-text.js.map +1 -1
  21. package/dist/commands/host-cli.d.ts +5 -0
  22. package/dist/commands/host-cli.d.ts.map +1 -0
  23. package/dist/commands/host-cli.js +120 -0
  24. package/dist/commands/host-cli.js.map +1 -0
  25. package/dist/commands/nav-cli.d.ts +8 -0
  26. package/dist/commands/nav-cli.d.ts.map +1 -0
  27. package/dist/commands/nav-cli.js +54 -0
  28. package/dist/commands/nav-cli.js.map +1 -0
  29. package/dist/commands/notify-cli.d.ts.map +1 -1
  30. package/dist/commands/notify-cli.js +38 -3
  31. package/dist/commands/notify-cli.js.map +1 -1
  32. package/dist/commands/room-cli.d.ts.map +1 -1
  33. package/dist/commands/room-cli.js +23 -6
  34. package/dist/commands/room-cli.js.map +1 -1
  35. package/dist/commands/schedule-cli.d.ts +13 -0
  36. package/dist/commands/schedule-cli.d.ts.map +1 -0
  37. package/dist/commands/schedule-cli.js +74 -0
  38. package/dist/commands/schedule-cli.js.map +1 -0
  39. package/dist/commands/schedule-cli.test.d.ts +2 -0
  40. package/dist/commands/schedule-cli.test.d.ts.map +1 -0
  41. package/dist/commands/schedule-cli.test.js +29 -0
  42. package/dist/commands/schedule-cli.test.js.map +1 -0
  43. package/dist/commands/todo-give.test.js +21 -5
  44. package/dist/commands/todo-give.test.js.map +1 -1
  45. package/dist/main.js +317 -39
  46. package/dist/main.js.map +1 -1
  47. package/dist/setup/init.d.ts +11 -0
  48. package/dist/setup/init.d.ts.map +1 -1
  49. package/dist/setup/init.js +38 -0
  50. package/dist/setup/init.js.map +1 -1
  51. package/dist/setup/init.test.js +3 -2
  52. package/dist/setup/init.test.js.map +1 -1
  53. package/dist/setup/install.js +2 -2
  54. package/dist/setup/install.js.map +1 -1
  55. package/package.json +6 -6
  56. package/profiles/minimal/mesh.config.yaml +1 -0
  57. package/templates/cursor/rules/seatmesh-agent.mdc +40 -0
  58. package/templates/docs/cli/README.md +110 -11
  59. package/templates/docs/cli/chat.md +4 -3
  60. package/templates/docs/cli/contract.md +15 -15
  61. package/templates/docs/cli/host.md +12 -0
  62. package/templates/docs/cli/human.md +15 -7
  63. package/templates/docs/cli/kind.md +4 -2
  64. package/templates/docs/cli/nav.md +12 -0
  65. package/templates/docs/cli/rebuild.md +3 -0
  66. package/templates/docs/cli/reload.md +8 -5
  67. package/templates/docs/cli/room.md +5 -7
  68. package/templates/docs/cli/schedule.md +13 -0
  69. package/templates/docs/cli/secretary.md +1 -1
  70. package/templates/docs/cli/spawn.md +13 -0
  71. package/templates/docs/cli/switch.md +4 -4
  72. package/templates/init/mesh.config.yaml +9 -1
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/setup/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/setup/install.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "seatmesh",
3
- "version": "1.2.5",
3
+ "version": "1.3.0",
4
4
  "engines": {
5
5
  "node": ">=22"
6
6
  },
@@ -26,11 +26,11 @@
26
26
  },
27
27
  "dependencies": {
28
28
  "@clack/prompts": "^1.8.0",
29
- "@seat-mesh/connectivity": "file:../connectivity",
30
- "@seat-mesh/core": "file:../core",
31
- "@seat-mesh/daemon": "file:../daemon",
32
- "@seat-mesh/providers": "file:../providers",
33
- "@seat-mesh/tmux": "file:../tmux",
29
+ "@seat-mesh/connectivity": "^1.3.0",
30
+ "@seat-mesh/core": "^1.3.0",
31
+ "@seat-mesh/daemon": "^1.3.0",
32
+ "@seat-mesh/providers": "^1.3.0",
33
+ "@seat-mesh/tmux": "^1.3.0",
34
34
  "boxen": "^8.0.1",
35
35
  "cfonts": "^3.3.1",
36
36
  "commander": "^15.0.0",
@@ -16,6 +16,7 @@ state:
16
16
  daemon:
17
17
  port: 31671
18
18
  portScope: workspace
19
+ autoRevive: false
19
20
  managerPromptPrefix: "[agent-manager]"
20
21
 
21
22
  ports:
@@ -0,0 +1,40 @@
1
+ ---
2
+ description: Seatmesh pane agent — whoami every turn, enqueue-only mesh CLI
3
+ alwaysApply: true
4
+ ---
5
+
6
+ # Seatmesh agent (always on)
7
+
8
+ Engine-owned mesh CLI. Do not invent alternate CLIs.
9
+
10
+ ## Every turn
11
+
12
+ ```bash
13
+ sm agent whoami
14
+ sm agent # can / cannot for THIS pane
15
+ ```
16
+
17
+ Default config is workspace `.sm/` (walk-up). Run work only via `sm agent <cmd> …`.
18
+
19
+ ## Hard rules
20
+
21
+ - Enqueue only — never raw `tmux send-keys` for mesh mail.
22
+ - `[mesh-inbox]` / DIGEST = daemon steering, not a new human task.
23
+ - Chat prose does **not** clear ACK or cancel checkback — use `ack` / `cb cancel`.
24
+ - Inject copy = mesh-copy consts. Never paste `patterns.md` into a pane.
25
+ - Operator eyes / decide → `agent notify` (not chat for a toast).
26
+ - NO CONFIRM — act; chat is a status line after action.
27
+
28
+ ## Vocal (pane CLIs)
29
+
30
+ | Need | Command |
31
+ |------|---------|
32
+ | Empty shell → agent | `spawn <target> <cli>` |
33
+ | Replace live agent | `switch <target> <cli>` |
34
+ | Resume configured | `launch <target>` |
35
+ | Rebuild engine + labels | `rebuild` (alias: `reload` — not “reload config”) |
36
+
37
+ ## Dig deeper
38
+
39
+ - Skill: `seatmesh-agent` · notify: `seatmesh-notify`
40
+ - Canonical brief: `.sm/AGENTS.md`
@@ -1,22 +1,120 @@
1
- # seatmesh CLI verbs (one md each)
1
+ # seatmesh CLI — by job
2
2
 
3
- Greppable per-command docs. Generated from `packages/cli/src/commands/help-text.ts`.
3
+ Not an A–Z API list. One command per need. Grep stubs when you know the name.
4
4
 
5
5
  ```bash
6
- ls docs/cli | rg peer
7
- rg -n . docs/cli/peer.md
8
- rg -n "^## " docs/COMMANDS.md
9
- seatmesh help peer
6
+ seatmesh help <verb>
7
+ rg "^## peer$" docs/COMMANDS.md
10
8
  ```
11
9
 
12
- Full catalog: [../COMMANDS.md](../COMMANDS.md)
10
+ Full dump (last resort): [../COMMANDS.md](../COMMANDS.md)
11
+
12
+ ---
13
+
14
+ ## Agent (`sm agent …`)
15
+
16
+ ### Identity & map
17
+
18
+ | Verb | File |
19
+ |------|------|
20
+ | `agent` | [agent.md](agent.md) |
21
+ | `whoami` | [whoami.md](whoami.md) |
22
+ | `contexts` | [contexts.md](contexts.md) |
23
+ | `hub` | [hub.md](hub.md) |
24
+ | `kind` | [kind.md](kind.md) |
25
+ | `peek` | [peek.md](peek.md) |
26
+ | `ppa` | [ppa.md](ppa.md) |
27
+
28
+ ### Work
29
+
30
+ | Verb | File |
31
+ |------|------|
32
+ | `todo` | [todo.md](todo.md) |
33
+ | `seat` | [seat.md](seat.md) |
34
+ | `assign` | [assign.md](assign.md) — prefer `todo give` |
35
+
36
+ ### Comms (inject)
37
+
38
+ | Verb | File |
39
+ |------|------|
40
+ | `peer` | [peer.md](peer.md) — prefer this |
41
+ | `ack` | [ack.md](ack.md) |
42
+ | `cb` | [cb.md](cb.md) |
43
+ | `room` | [room.md](room.md) |
44
+ | `notify` | [notify.md](notify.md) |
45
+ | `remote` | [remote.md](remote.md) |
46
+ | `sessions` | [sessions.md](sessions.md) |
47
+ | `reply` | [reply.md](reply.md) |
48
+
49
+ ### Read (not inject)
50
+
51
+ | Verb | File |
52
+ |------|------|
53
+ | `chat` | [chat.md](chat.md) |
54
+ | `mds` | [mds.md](mds.md) |
55
+ | `preview` | [preview.md](preview.md) |
56
+ | `read-history` | [read-history.md](read-history.md) — prefer `hub chat` |
57
+
58
+ ### Shorthands → collapse to `peer` / `todo`
59
+
60
+ | Verb | Prefer |
61
+ |------|--------|
62
+ | [ask](ask.md) · [msg](msg.md) · [tell](tell.md) | `peer` |
63
+ | [ackmsg](ackmsg.md) | `peer --ack` |
64
+ | [prompt](prompt.md) | `peer` |
65
+ | [to-slot](to-slot.md) · [to-mini](to-mini.md) | `peer slot-N` / `peer mini-N` |
66
+ | [to-master](to-master.md) | DEPRECATED — `room` / chat |
67
+
68
+ ---
69
+
70
+ ## Operator (outside `agent`)
71
+
72
+ | Verb | File |
73
+ |------|------|
74
+ | `human` | [human.md](human.md) — cheat sheet |
75
+ | `session` | [session.md](session.md) |
76
+ | `layout` | [layout.md](layout.md) |
77
+ | `spawn` | [spawn.md](spawn.md) — empty→CLI |
78
+ | `switch` | [switch.md](switch.md) — replace live |
79
+ | `launch` | [launch.md](launch.md) |
80
+ | `pane` | [pane.md](pane.md) |
81
+ | `save` · `auto` | [save.md](save.md) · [auto.md](auto.md) |
82
+ | `reload` · `rebuild` · `verify` · `realign` | [reload.md](reload.md) · [rebuild.md](rebuild.md) · [verify.md](verify.md) · [realign.md](realign.md) |
83
+ | `inbox` | [inbox.md](inbox.md) |
84
+ | `web` | [web.md](web.md) |
85
+ | `contract` | [contract.md](contract.md) |
86
+ | `balance` | [balance.md](balance.md) |
87
+ | `init` · `update` | [init.md](init.md) · [update.md](update.md) |
88
+ | `config` · `providers` | [config.md](config.md) · [providers.md](providers.md) |
89
+ | `target` | [target.md](target.md) |
90
+
91
+ ### Occasional / niche
92
+
93
+ | Verb | File |
94
+ |------|------|
95
+ | `mini` · `secretary` | [mini.md](mini.md) · [secretary.md](secretary.md) |
96
+ | `base` · `stack` · `labels` | [base.md](base.md) · [stack.md](stack.md) · [labels.md](labels.md) |
97
+ | `set` · `tag` · `swap` · `title` | [set.md](set.md) · [tag.md](tag.md) · [swap.md](swap.md) · [title.md](title.md) |
98
+ | `ops` · `limit` · `proxy` | [ops.md](ops.md) · [limit.md](limit.md) · [proxy.md](proxy.md) |
99
+ | `night` · `continue` · `flush` · `remind` | [night.md](night.md) · [continue.md](continue.md) · [flush.md](flush.md) · [remind.md](remind.md) |
100
+ | `slot-advice` | [slot-advice.md](slot-advice.md) |
101
+ | `cold-start` · `completion` · `migrate-runtime` | [cold-start.md](cold-start.md) · [completion.md](completion.md) · [migrate-runtime.md](migrate-runtime.md) |
102
+ | `func` · `profile` · `roles` · `report` · `status` · `start` · `test` · `version` · `help` · `index` · `pane-meta` | see files |
103
+
104
+ ---
105
+
106
+ ## A–Z (grep only)
107
+
108
+ When you already know the name — do not browse this as the guide.
109
+
110
+ <details>
111
+ <summary>All stubs</summary>
13
112
 
14
113
  | Verb | File |
15
114
  |------|------|
16
115
  | `ack` | [ack.md](ack.md) |
17
116
  | `ackmsg` | [ackmsg.md](ackmsg.md) |
18
117
  | `agent` | [agent.md](agent.md) |
19
- | `apply` | [apply.md](apply.md) |
20
118
  | `ask` | [ask.md](ask.md) |
21
119
  | `assign` | [assign.md](assign.md) |
22
120
  | `auto` | [auto.md](auto.md) |
@@ -31,9 +129,7 @@ Full catalog: [../COMMANDS.md](../COMMANDS.md)
31
129
  | `continue` | [continue.md](continue.md) |
32
130
  | `contract` | [contract.md](contract.md) |
33
131
  | `flush` | [flush.md](flush.md) |
34
- | `forum` | [forum.md](forum.md) |
35
132
  | `func` | [func.md](func.md) |
36
- | `golf` | [golf.md](golf.md) |
37
133
  | `help` | [help.md](help.md) |
38
134
  | `hub` | [hub.md](hub.md) |
39
135
  | `human` | [human.md](human.md) |
@@ -45,11 +141,13 @@ Full catalog: [../COMMANDS.md](../COMMANDS.md)
45
141
  | `launch` | [launch.md](launch.md) |
46
142
  | `layout` | [layout.md](layout.md) |
47
143
  | `limit` | [limit.md](limit.md) |
144
+ | `mds` | [mds.md](mds.md) |
48
145
  | `migrate-runtime` | [migrate-runtime.md](migrate-runtime.md) |
49
146
  | `mini` | [mini.md](mini.md) |
50
147
  | `night` | [night.md](night.md) |
51
148
  | `notify` | [notify.md](notify.md) |
52
149
  | `ops` | [ops.md](ops.md) |
150
+ | `pane` | [pane.md](pane.md) |
53
151
  | `pane-meta` | [pane-meta.md](pane-meta.md) |
54
152
  | `peek` | [peek.md](peek.md) |
55
153
  | `peer` | [peer.md](peer.md) |
@@ -68,7 +166,6 @@ Full catalog: [../COMMANDS.md](../COMMANDS.md)
68
166
  | `report` | [report.md](report.md) |
69
167
  | `roles` | [roles.md](roles.md) |
70
168
  | `room` | [room.md](room.md) |
71
- | `run` | [run.md](run.md) |
72
169
  | `save` | [save.md](save.md) |
73
170
  | `seat` | [seat.md](seat.md) |
74
171
  | `secretary` | [secretary.md](secretary.md) |
@@ -92,5 +189,7 @@ Full catalog: [../COMMANDS.md](../COMMANDS.md)
92
189
  | `update` | [update.md](update.md) |
93
190
  | `verify` | [verify.md](verify.md) |
94
191
  | `version` | [version.md](version.md) |
192
+ | `web` | [web.md](web.md) |
95
193
  | `whoami` | [whoami.md](whoami.md) |
96
194
 
195
+ </details>
@@ -2,9 +2,10 @@
2
2
 
3
3
  ```text
4
4
  chat tail [--slot key] [--lines N] [--json]
5
- chat query […] — history of prompt/response CHAT.jsonl (read-only ledger)
6
- Not a live group chat. Live A2A = room say/tail · peer ask/msg
7
- append|record = engine/session writers — agents rarely need these
5
+ chat query [--slot|--session|--model|--since|--limit] [--json]
6
+ chat put <slot> "<human>" [--response "<text>"] (positional upsert, dedupe by turnHash)
7
+ chat get <id> [--slot key] [--json] (id or turnHash, full or 8-char prefix)
8
+ chat append|record — per-slot prompt/response CHAT.jsonl
8
9
  ```
9
10
 
10
11
  - CLI: `seatmesh chat --help`
@@ -1,25 +1,25 @@
1
1
  # seatmesh contract
2
2
 
3
3
  ```text
4
- contract [status|on|off|open]
5
- Simple harness locks — one path for agents (prefer over apply / raw supervise).
4
+ contract [status]
5
+ contract show <id>
6
+ contract on|off <id> [--agent <seat>]
7
+ contract create|open <slug>
8
+ ```
6
9
 
7
- status show supervise/balance ON|OFF
8
- on [supervise|balance] arm lock + room + tick (default: supervise)
9
- off [supervise|balance]
10
- open <slug> --scope "…" named room (CLAIMED/DONE) — not a lock
10
+ Easy locks under `.sm/contracts/`:
11
11
 
12
- Examples:
13
- seatmesh agent contract
14
- seatmesh agent contract on
15
- seatmesh agent contract on balance
16
- seatmesh agent contract off
17
- seatmesh agent contract open slice-a --scope "landing CTA"
12
+ | Command | Effect |
13
+ |---------|--------|
14
+ | `contract` / `status` | Vendor contracts + ON/off |
15
+ | `show <id>` | Merged `_vendor` + extend yaml |
16
+ | `on <id>` | Arm lock (agent defaults from yaml) |
17
+ | `off <id>` | Disarm |
18
+ | `create <slug>` | Ad-hoc contract **room** (not vendor) |
18
19
 
19
- Day-to-day work: todo give / peer / room — contracts optional.
20
- (agent apply … still works for power users; prefer contract on/off.)
21
- ```
20
+ Defaults: `supervise` → `supervisor` (secretary); `balance` → `balance_lead`.
22
21
 
23
22
  - CLI: `seatmesh contract --help`
24
23
  - Agent: `seatmesh agent help contract`
25
24
  - Catalog: [../COMMANDS.md#contract](../COMMANDS.md#contract)
25
+ - Hub: `/mds/…/contracts-easy`
@@ -0,0 +1,12 @@
1
+ # seatmesh host
2
+
3
+ ```text
4
+ host up|down|status
5
+ Opt-in single host-supervisor: one process watches all meshes registered in
6
+ ~/.config/seatmesh/sessions.json instead of each spawning its own supervisor.
7
+ Does not affect meshes that haven't opted in (Phase 1, see NOW.md).
8
+ ```
9
+
10
+ - CLI: `seatmesh host --help`
11
+ - Agent: `seatmesh agent help host`
12
+ - Catalog: [../COMMANDS.md#host](../COMMANDS.md#host)
@@ -3,13 +3,17 @@
3
3
  ```text
4
4
  human — put an agent CLI on a pane (operator)
5
5
 
6
- Empty terminal → agent:
7
- switch <target> <opencode|claude|agent|kiro>
6
+ Empty terminal → agent (prefer spawn):
7
+ spawn <target> <opencode|opencode-cpe|claude|agent|kiro>
8
8
  Examples:
9
- seatmesh switch slot-1 opencode
10
- seatmesh switch secretary claude
11
- seatmesh switch here agent # this pane (Cursor)
12
- npx seatmesh switch mini-1 opencode
9
+ seatmesh spawn slot-1 opencode
10
+ seatmesh spawn secretary opencode-cpe --keep-resume
11
+ seatmesh spawn here agent # this pane (Cursor)
12
+ seatmesh spawn mini-1 opencode-cpe --keep-resume
13
+
14
+ Replace a live agent with another CLI:
15
+ switch <target> <opencode|opencode-cpe|claude|agent|kiro> [reason...]
16
+ Alias: handoff
13
17
 
14
18
  Back to plain shell:
15
19
  switch <target> empty
@@ -17,15 +21,19 @@ human — put an agent CLI on a pane (operator)
17
21
  Start/resume the seat's configured CLI (no type pick):
18
22
  launch <target|all|manager|secretary>
19
23
 
24
+ Resume known session on a pane (autodetect ses_* / resume id):
25
+ pane resume [here|secretary|slot-N|…]
26
+
20
27
  Check agent vs shell:
21
28
  kind <target> # aliases: what | typeof
22
29
 
23
- Give the seat WORK / a todo (does NOT install a CLI — different from switch):
30
+ Give the seat WORK / a todo (does NOT install a CLI — different from spawn/switch):
24
31
  todo give <target> "do the thing" # preferred
25
32
  todo <target> "do the thing" # shorthand
26
33
  assign <target> "do the thing" # same engine
27
34
 
28
35
  Targets: manager | secretary | slot-N | mini-N | here
36
+ Operator help: seatmesh help (human) · seatmesh --agents help (full)
29
37
  Aliases for this topic: help put-agent | help panes | help operator
30
38
  ```
31
39
 
@@ -1,8 +1,10 @@
1
1
  # seatmesh kind
2
2
 
3
3
  ```text
4
- kind <target>
5
- Agent CLI vs plain terminal. Aliases: what, typeof
4
+ kind <target> | kind list | kind show <id>
5
+ <target>: agent CLI vs plain terminal (aliases: what, typeof)
6
+ list/show: dump resolved agent kinds (provider kindBase ⋂ agents.kinds overlay
7
+ ⋂ runners shim, extends flattened) — DX for custom-profile kinds
6
8
  ```
7
9
 
8
10
  - CLI: `seatmesh kind --help`
@@ -0,0 +1,12 @@
1
+ # seatmesh nav
2
+
3
+ ```text
4
+ nav log [-n N] [--json]
5
+ nav summary [-n N] [--json]
6
+ Navigation history — recent `peek <target>` events (which panes/seats you've
7
+ looked at). log = chronological, summary = grouped by target, most-recent first.
8
+ ```
9
+
10
+ - CLI: `seatmesh nav --help`
11
+ - Agent: `seatmesh agent help nav`
12
+ - Catalog: [../COMMANDS.md#nav](../COMMANDS.md#nav)
@@ -0,0 +1,3 @@
1
+ # seatmesh rebuild
2
+
3
+ Alias of [reload](reload.md) — preferred vocal (engine rebuild, not “reload config”).
@@ -1,10 +1,13 @@
1
- # seatmesh reload
1
+ # seatmesh reload / rebuild
2
2
 
3
3
  ```text
4
- reload [--layout]
5
- Rebuild engine + labels (no session kill). --layout re-grids
4
+ reload|rebuild [--layout]
5
+ Rebuild seatmesh packages (npm build) + refresh labels/borders/inbox.
6
+ Does NOT re-read config into live agents / does NOT replace pane CLIs
7
+ (that is spawn/switch/coordSync). --layout re-grids (disruptive).
8
+ Prefer vocal: rebuild
6
9
  ```
7
10
 
8
- - CLI: `seatmesh reload --help`
9
- - Agent: `seatmesh agent help reload`
11
+ - CLI: `seatmesh rebuild --help` · `seatmesh reload --help`
12
+ - Agent: `seatmesh agent help rebuild`
10
13
  - Catalog: [../COMMANDS.md#reload](../COMMANDS.md#reload)
@@ -1,13 +1,11 @@
1
1
  # seatmesh room
2
2
 
3
3
  ```text
4
- room tail [-r slug] [-n N] | room say [-r slug] "<msg>"
5
- Modern path: say/tail (+ contract open <slug> for named ledgers).
6
- Prefer CLAIMED|DONE|FYI|STATUS lines over room call/accept (legacy A2A dial).
7
- Also: room broadcast <msg> | room read | room create <slug>
8
- Legacy: room call|accept|decline|pending (workers) — prefer peer ask/msg instead
9
- Global default; -r managers|supervise
10
- broadcast/say fan-out = daemon queue (POST /room-fanout)
4
+ room tail [-r slug] [-n N] [--truncate N] [--json] | room get <id> [--json]
5
+ room say [-r slug] "<msg>" (same sender+body within ~20s is deduped, not re-sent)
6
+ room broadcast <msg> | room read | room call|accept …
7
+ A2A ledger. Global default; -r managers|supervise
8
+ broadcast/say fan-out = daemon queue (POST /room-fanout) — not direct-inject storm
11
9
  ```
12
10
 
13
11
  - CLI: `seatmesh room --help`
@@ -0,0 +1,13 @@
1
+ # seatmesh schedule
2
+
3
+ ```text
4
+ schedule <target> "<msg...>" --at <time>
5
+ Delayed one-shot peer — queues now, held out of drain until --at passes
6
+ (ISO time or relative duration: 10m, 2h, 1d). Fire-and-forget: no ACK
7
+ tracking opens until it's actually delivered.
8
+ Examples: schedule secretary "EOD digest" --at 6h · schedule slot-2 "follow up" --at 2026-09-20T09:00:00Z
9
+ ```
10
+
11
+ - CLI: `seatmesh schedule --help`
12
+ - Agent: `seatmesh agent help schedule`
13
+ - Catalog: [../COMMANDS.md#schedule](../COMMANDS.md#schedule)
@@ -1,7 +1,7 @@
1
1
  # seatmesh secretary
2
2
 
3
3
  ```text
4
- secretary start|status|digest|restart
4
+ secretary start|stop|status|digest|restart
5
5
  secretary supervise on [10m]|run|off
6
6
  secretary switch <cli> [--keep-resume]
7
7
  Lead supervise path (secretary→manager)
@@ -0,0 +1,13 @@
1
+ # seatmesh spawn
2
+
3
+ ```text
4
+ spawn <target> <agent|claude|opencode|kiro> [flags]
5
+ Empty shell → agent CLI (preferred vocal). Same engine as switch.
6
+ Replace live agent: switch. Resume configured: launch. See: help human
7
+ Examples: spawn slot-1 opencode · spawn here agent · spawn secretary opencode-cpe --keep-resume
8
+ ```
9
+
10
+ - CLI: `seatmesh spawn --help`
11
+ - Agent: `seatmesh agent help spawn`
12
+ - Catalog: [../COMMANDS.md#spawn](../COMMANDS.md#spawn)
13
+ - Related: [switch.md](switch.md) · [human.md](human.md) · [launch.md](launch.md)
@@ -2,13 +2,13 @@
2
2
 
3
3
  ```text
4
4
  switch <target> <agent|claude|opencode|kiro|empty> [flags] [reason...]
5
- HUMAN: empty terminal → agent CLI (or empty = back to shell).
6
- Alias: handoff. See: seatmesh help human
7
- Examples: switch slot-1 opencode · switch here claude · switch mini-2 empty
5
+ Replace a LIVE agent CLI (or → empty shell). Empty pane → prefer spawn.
6
+ Alias: handoff. Empty→CLI alias: spawn. See: seatmesh help human
7
+ Examples: switch slot-1 claude · switch here agent · switch mini-2 empty
8
8
  Flags: --keep-resume --resume ID --queue
9
9
  ```
10
10
 
11
11
  - CLI: `seatmesh switch --help`
12
12
  - Agent: `seatmesh agent help switch`
13
13
  - Catalog: [../COMMANDS.md#switch](../COMMANDS.md#switch)
14
- - Aliases: `cc`, `handoff`
14
+ - Related: [spawn.md](spawn.md) · [human.md](human.md)
@@ -27,7 +27,10 @@ layout:
27
27
  # Operator types here — daemon holds injects while busy/typing (no mid-keystroke storms).
28
28
  humanCoTyped: [manager, secretary]
29
29
  cli:
30
- manager: agent
30
+ # Bare terminal by default, not an agent CLI (TODO 11.4/8.1 — "default project
31
+ # = a bare terminal + seatmesh echo, not a pre-built base/workers/minis grid").
32
+ # Switch to a real coding-agent kind when you're ready: `sm switch manager agent`.
33
+ manager: terminal
31
34
  secretary: opencode
32
35
  coordSync:
33
36
  reload: false
@@ -58,6 +61,10 @@ providers:
58
61
  agents:
59
62
  runners:
60
63
  opencode-cpe: scripts/opencode-cpe.sh
64
+ kinds:
65
+ terminal:
66
+ extends: empty
67
+ launch: { builtin: terminal }
61
68
 
62
69
  seats:
63
70
  root: {{seatsRoot}}
@@ -92,6 +99,7 @@ daemon:
92
99
  portRange: 90
93
100
  autoStart: true
94
101
  watch: true
102
+ autoRevive: false
95
103
  pollMs: 4000
96
104
  idleSettleSec: 5
97
105
  managerPromptPrefix: "[agent-manager]"