seatmesh 1.2.3 → 1.2.5
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/dist/commands/agent-forum.d.ts +6 -0
- package/dist/commands/agent-forum.d.ts.map +1 -0
- package/dist/commands/agent-forum.js +26 -0
- package/dist/commands/agent-forum.js.map +1 -0
- package/dist/commands/cli-speed.test.d.ts +2 -0
- package/dist/commands/cli-speed.test.d.ts.map +1 -0
- package/dist/commands/cli-speed.test.js +39 -0
- package/dist/commands/cli-speed.test.js.map +1 -0
- package/dist/commands/cli-vocal.test.d.ts +2 -0
- package/dist/commands/cli-vocal.test.d.ts.map +1 -0
- package/dist/commands/cli-vocal.test.js +58 -0
- package/dist/commands/cli-vocal.test.js.map +1 -0
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +11 -1
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/help-text.js +5 -5
- package/dist/commands/notify-cli.js +1 -1
- package/dist/commands/notify-cli.js.map +1 -1
- package/dist/commands/web-cli.d.ts +1 -1
- package/dist/commands/web-cli.d.ts.map +1 -1
- package/dist/commands/web-cli.js +3 -6
- package/dist/commands/web-cli.js.map +1 -1
- package/dist/fast-spawn.d.ts +3 -0
- package/dist/fast-spawn.d.ts.map +1 -0
- package/dist/fast-spawn.js +107 -0
- package/dist/fast-spawn.js.map +1 -0
- package/dist/main.js +10 -8
- package/dist/main.js.map +1 -1
- package/package.json +8 -7
- package/profiles/minimal/roles/common.yaml +2 -2
- package/profiles/minimal/roles/manager.yaml +3 -3
- package/profiles/minimal/roles/mini.yaml +4 -4
- package/profiles/minimal/roles/secretary.yaml +3 -3
- package/profiles/minimal/roles/worker.yaml +5 -5
- package/templates/docs/COMMANDS.md +1 -1
- package/templates/docs/RELEASE.md +9 -3
- package/templates/docs/cli/notify.md +1 -1
- package/templates/docs/cli/{oc-proxy.md → opencode-cpe.md} +10 -10
- package/templates/init/AGENTS.md +17 -11
- package/templates/init/README.md +7 -7
- package/templates/init/mesh.config.yaml +2 -3
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
# npm release schedule
|
|
2
2
|
|
|
3
|
-
**Gate:** `seatmesh@1.2.0` cutover — Adonis hub on `:3190` is the operator console; daemon `/act/card` + `/ui` proxy to hub. See [NOW.md](../NOW.md).
|
|
4
|
-
|
|
5
3
|
| Date (Asia/Manila) | Package | Notes |
|
|
6
4
|
|--------------------|---------|--------|
|
|
7
|
-
| **2026-09-
|
|
5
|
+
| **2026-09-18** | `seatmesh@1.2.5` | CLI declares `yaml` dep — fixes npx/global `ERR_MODULE_NOT_FOUND` on merge-mesh-config |
|
|
6
|
+
| **2026-09-17** | `seatmesh@1.2.4` | Open agent kinds (`kindBase`/`extends`); opencode-cpe extends opencode; prove/satisfy/recovery; act/card hub; wave OC relaunch; Orca credit CONTINUE; cross-mesh inbox restart |
|
|
7
|
+
| **2026-09-17** | `seatmesh@1.2.3` | Republish after connectivity@1.2.2 npm staging E409; same surface as 1.2.2 |
|
|
8
|
+
| **2026-09-17** | `seatmesh@1.2.2` | `npx seatmesh web up\|down\|restart\|status`; `agent mds hosted\|agent-self\|agent <kind>`; hub `/mds` live; OC-V2 supervisor health rescue + oc-credit CONTINUE |
|
|
9
|
+
| **2026-09-16** | `seatmesh@1.2.0` | opencode-cpe CliType + runners; `sm pane resume`; OC-LIMIT `scripts/oc-reset.sh` + daemon relaunch; todo-check remaining TASKS DIGEST bulk; `sm web status\|open\|url`; `config upgrade` (npm i -g first); human help + patterns modular `docs/patterns/` |
|
|
8
10
|
| **2026-09-15** | `seatmesh@1.1.5` | Notify Info/Yes/No native buttons; local Info cards GFM+Mermaid (zoom/pan/expand); session check/repair; CB workspace scope; policy config; agent help/COMMANDS |
|
|
9
11
|
| **2026-09-15** | `seatmesh@1.1.4` | Early-adopter UX: `start` idempotent create-or-attach; `session down`; manager terminal welcome (whoami/switch); `sessions` documented |
|
|
10
12
|
| **2026-09-15** | `seatmesh@1.1.3` | Cursor/Claude respawn prove: agent --trust; composer-ready verify+retry (OC parity); fresh whoami on success expected |
|
|
@@ -29,4 +31,8 @@ Skip check: `SEATMESH_SKIP_VERSION_CHECK=1`.
|
|
|
29
31
|
|
|
30
32
|
Publish: `bash scripts/publish-npm.sh` from repo root (after `npm login`).
|
|
31
33
|
|
|
34
|
+
**GitHub Releases:** yes — notes in `docs/releases/vX.Y.Z.md` + row in this file.
|
|
35
|
+
Create/update: `bash scripts/gh-release.sh 1.2.0` (needs `gh auth login`).
|
|
36
|
+
Optional: `bash scripts/gh-release.sh 1.2.0 --publish` (npm then release).
|
|
37
|
+
|
|
32
38
|
Inbox blips (2026-09-13 prove): daemon `/health` flaps and `checkback ack` 404 while inbox is up (cancel still works). Drain can wedge on `peer_unsent` if coord holds are not backlogged. Not a ship blocker after `seatmesh@1.0.0`; cancel orphan checkbacks instead of retrying ack.
|
|
@@ -12,7 +12,7 @@ notify link|url|open "<title>" --url <https> [--check "…"]
|
|
|
12
12
|
link-only notify link "Staging" --url http://127.0.0.1:5080
|
|
13
13
|
→ toast Open button → URL (no Info card). Same: notify "…" "…" --url
|
|
14
14
|
Info only notify info "Brief" --body "## Why\n\n…" [--url https://mdview.io/s/…]
|
|
15
|
-
→
|
|
15
|
+
→ hub /act/card (:3190). [--url] = Open button on card.
|
|
16
16
|
Bare https:// in body also autolinks. [label](url) works.
|
|
17
17
|
Mermaid → local Info card renders ```mermaid (mermaid.js). Optional: preview (mdview.io) then --url share.
|
|
18
18
|
Info+Yes/No notify yesno "Ship?" "Need your call" --body "## Diff\n…" [--url https://…]
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
# sm
|
|
1
|
+
# sm opencode-cpe
|
|
2
2
|
|
|
3
3
|
```text
|
|
4
4
|
OpenCode via CPE proxy — spawn / relaunch any seat
|
|
5
5
|
|
|
6
|
-
sm switch <target>
|
|
6
|
+
sm switch <target> opencode-cpe [--keep-resume|--fresh] [--queue]
|
|
7
7
|
sm launch minis | launch secretary | launch <slot-N>
|
|
8
8
|
|
|
9
9
|
<target> = secretary | manager | mini-N | slot-N | here
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
opencode-cpe ≠ oc / opencode (direct, no CPE script)
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## Config (once)
|
|
@@ -16,7 +16,7 @@ OpenCode via CPE proxy — spawn / relaunch any seat
|
|
|
16
16
|
```yaml
|
|
17
17
|
agents:
|
|
18
18
|
runners:
|
|
19
|
-
|
|
19
|
+
opencode-cpe: scripts/opencode-cpe.sh
|
|
20
20
|
connectivity:
|
|
21
21
|
driver: cpe
|
|
22
22
|
proxyPort: 18887
|
|
@@ -24,17 +24,17 @@ connectivity:
|
|
|
24
24
|
|
|
25
25
|
| Default for… | Where |
|
|
26
26
|
|--------------|--------|
|
|
27
|
-
| Base columns | `layout.base.cli.<id>:
|
|
28
|
-
| Minis / workers | `.sm/mesh-agents.json` → `conventions.miniDefaultCli:
|
|
27
|
+
| Base columns | `layout.base.cli.<id>: opencode-cpe` |
|
|
28
|
+
| Minis / workers | `.sm/mesh-agents.json` → `conventions.miniDefaultCli: opencode-cpe` |
|
|
29
29
|
|
|
30
30
|
`sm config check`
|
|
31
31
|
|
|
32
32
|
## Examples
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
sm switch secretary
|
|
36
|
-
sm switch mini-3
|
|
37
|
-
sm launch minis # after miniDefaultCli =
|
|
35
|
+
sm switch secretary opencode-cpe --keep-resume
|
|
36
|
+
sm switch mini-3 opencode-cpe --keep-resume
|
|
37
|
+
sm launch minis # after miniDefaultCli = opencode-cpe
|
|
38
38
|
env -u TMUX_PANE sm switch … # from plain shell (stale TMUX_PANE)
|
|
39
39
|
```
|
|
40
40
|
|
|
@@ -42,7 +42,7 @@ env -u TMUX_PANE sm switch … # from plain shell (stale TMUX_PANE)
|
|
|
42
42
|
|
|
43
43
|
Esc×3 → composer idle → `sm agent whoami`. Full relaunch only if needed: `--fresh`.
|
|
44
44
|
|
|
45
|
-
All
|
|
45
|
+
All opencode-cpe panes stuck / need CONTINUE without typing it: `./scripts/opencode-cpe-atomics.sh`
|
|
46
46
|
(record → kill CPE OC → revive → CONTINUE across pia/zsign/seatmesh).
|
|
47
47
|
|
|
48
48
|
- CLI: `sm switch --help` · `sm launch --help`
|
package/templates/init/AGENTS.md
CHANGED
|
@@ -57,7 +57,7 @@ Ship A — matches brand." \
|
|
|
57
57
|
| Shape | Command | Operator gets |
|
|
58
58
|
|-------|---------|---------------|
|
|
59
59
|
| Eyes | `notify "<session>" "<check>" [--url]` | Toast (+ link) |
|
|
60
|
-
| Info | `notify info\|md "<title>" --md\|--body …` | Toast + `/act/card`
|
|
60
|
+
| Info | `notify info\|md "<title>" --md\|--body …` | Toast + hub `/act/card` (`:3190`) |
|
|
61
61
|
| Decide | `notify yesno "<title>" "<blurb>" --md\|--body …` | Toast **Info · Yes · No**; Yes/No peer to `--target` |
|
|
62
62
|
|
|
63
63
|
**yesno:** `<title>` = decision name · `<blurb>` = short toast line · Info content via `--md` / `--body` (not the blurb alone).
|
|
@@ -93,17 +93,23 @@ Aliases: `notify info` · `notify md` · `notify details`
|
|
|
93
93
|
|
|
94
94
|
Lead-only extras (manager/secretary) appear on your `agent` card — spawn/assign/inbox restart are not universal.
|
|
95
95
|
|
|
96
|
-
## OpenCode via CPE (`
|
|
96
|
+
## OpenCode via CPE (`opencode-cpe` kind)
|
|
97
97
|
|
|
98
|
-
**
|
|
98
|
+
**Kind** `opencode-cpe` **extends** `opencode` — same inject provider, CPE launch wrapper.
|
|
99
|
+
Not bare `opencode` (`oc` / `opencode` = direct).
|
|
99
100
|
|
|
100
101
|
### Config (once per mesh)
|
|
101
102
|
|
|
102
103
|
```yaml
|
|
103
|
-
# mesh.config.yaml
|
|
104
|
+
# mesh.config.yaml — engine already emits opencode-cpe extends opencode;
|
|
105
|
+
# overlay only if you diverge:
|
|
104
106
|
agents:
|
|
105
|
-
|
|
106
|
-
|
|
107
|
+
kinds:
|
|
108
|
+
opencode-cpe:
|
|
109
|
+
launch: { command: scripts/opencode-cpe.sh }
|
|
110
|
+
# legacy also works:
|
|
111
|
+
# runners:
|
|
112
|
+
# opencode-cpe: scripts/opencode-cpe.sh
|
|
107
113
|
connectivity:
|
|
108
114
|
driver: cpe
|
|
109
115
|
proxyPort: 18887
|
|
@@ -111,8 +117,8 @@ connectivity:
|
|
|
111
117
|
|
|
112
118
|
| Default for… | Where |
|
|
113
119
|
|--------------|--------|
|
|
114
|
-
| Base columns (manager, secretary, …) | `layout.base.cli.<column-id>:
|
|
115
|
-
| Minis / workers (launch default) | `.sm/mesh-agents.json` → `conventions.miniDefaultCli:
|
|
120
|
+
| Base columns (manager, secretary, …) | `layout.base.cli.<column-id>: opencode-cpe` |
|
|
121
|
+
| Minis / workers (launch default) | `.sm/mesh-agents.json` → `conventions.miniDefaultCli: opencode-cpe` |
|
|
116
122
|
|
|
117
123
|
Validate: `sm config check`
|
|
118
124
|
|
|
@@ -121,8 +127,8 @@ Validate: `sm config check`
|
|
|
121
127
|
**One path for every seat** — secretary, manager, `mini-N`, `slot-N`:
|
|
122
128
|
|
|
123
129
|
```bash
|
|
124
|
-
sm switch <target>
|
|
125
|
-
sm switch <target>
|
|
130
|
+
sm switch <target> opencode-cpe --keep-resume # keep saved session
|
|
131
|
+
sm switch <target> opencode-cpe --fresh # new session
|
|
126
132
|
sm launch minis # all minis (after miniDefaultCli set)
|
|
127
133
|
sm launch secretary # coord (uses layout.base.cli)
|
|
128
134
|
```
|
|
@@ -134,7 +140,7 @@ Queue (inbox drains): add `--queue`.
|
|
|
134
140
|
### Stuck mid-build (`esc interrupt` / Build bar)
|
|
135
141
|
|
|
136
142
|
**Do not** full pane restart. **Esc×3** → wait for composer idle → `sm agent whoami` or inbox cold-start.
|
|
137
|
-
Full relaunch only when you need a new session: `sm switch <target>
|
|
143
|
+
Full relaunch only when you need a new session: `sm switch <target> opencode-cpe --fresh`.
|
|
138
144
|
|
|
139
145
|
## Outside `agent` (operator / shared)
|
|
140
146
|
|
package/templates/init/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
# .sm — seatmesh project config
|
|
2
2
|
|
|
3
|
-
Generated by `npx seatmesh init
|
|
3
|
+
Generated by `sm init` (or `npx seatmesh init`). The engine reads **only** files here (+ live
|
|
4
4
|
`mesh-agents.json` state).
|
|
5
5
|
|
|
6
6
|
| Path | Purpose |
|
|
7
7
|
|------|---------|
|
|
8
8
|
| `mesh.config.yaml` | Layout, daemon, connectivity, seat paths |
|
|
9
9
|
| `mesh-agents.json` | Live CLI type + resume per slot |
|
|
10
|
-
| `roles/_vendor/` | **LOCKED** role-pack (yaml + docs) — `
|
|
10
|
+
| `roles/_vendor/` | **LOCKED** role-pack (yaml + docs) — `sm update` |
|
|
11
11
|
| `roles/*.extend.yaml` | **USER** project POV — never overwritten |
|
|
12
12
|
| `runtime/` | Daemon jsonl state (inbox, checkback) |
|
|
13
13
|
|
|
14
14
|
**Seat files** (FOCUS/TASKS/REMINDER) live under `seats.root` in yaml — not deleted
|
|
15
|
-
by init;
|
|
15
|
+
by init; `sm seat init` creates missing files only.
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
sm init
|
|
19
|
+
sm roles status
|
|
20
|
+
sm roles migrate # up to current role-pack
|
|
21
|
+
sm update # refresh _vendor + auto-migrate pack
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
See `roles/_vendor/docs/EXTEND.md` for locked sections.
|
|
@@ -52,13 +52,12 @@ providers:
|
|
|
52
52
|
- cursor-agent
|
|
53
53
|
- claude
|
|
54
54
|
- opencode
|
|
55
|
-
- oc-proxy
|
|
56
55
|
- empty
|
|
57
56
|
|
|
58
|
-
# CPE
|
|
57
|
+
# CPE = kind opencode-cpe (extends opencode), not a providers[] entry
|
|
59
58
|
agents:
|
|
60
59
|
runners:
|
|
61
|
-
|
|
60
|
+
opencode-cpe: scripts/opencode-cpe.sh
|
|
62
61
|
|
|
63
62
|
seats:
|
|
64
63
|
root: {{seatsRoot}}
|