@lmctl-ai/lmctl 0.1.93 → 0.1.95
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 +31 -1
- package/README.md +1 -1
- package/dist/cli/index.js +573 -528
- package/dist/cli/schema.sql +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
All notable public-preview changes for `@lmctl-ai/lmctl` are recorded here.
|
|
4
4
|
|
|
5
|
+
## 0.1.95 — 2026-07-10
|
|
6
|
+
|
|
7
|
+
- **Removed `I_am=` (and `--from`) entirely.** A member's identity now resolves **only** from
|
|
8
|
+
`LMCTL_SELF_SESSIONID`, which lmctl sets automatically on every member it spawns. Nothing a user
|
|
9
|
+
can type asserts an identity.
|
|
10
|
+
- **The identity marker is required exactly when lmctl must persist a sender** — i.e. when enqueueing
|
|
11
|
+
a mailbox message. Direct blocking calls need no identity, so **`lmctl chat`, `lmctl loop` and
|
|
12
|
+
`lmctl recover` now work from a plain operator shell with no flag**. Previously `--from`/`I_am=`
|
|
13
|
+
was mandatory for any operator-run chat, so this is strictly more usable than before.
|
|
14
|
+
- **`lmctl send` to a busy target without a marker now returns `busy`** (try later) instead of an
|
|
15
|
+
error, and enqueues nothing. An operator cannot queue: it has no `lmctl wait` to be woken.
|
|
16
|
+
- **Fixed `lmctl recover`.** It drives only idle members and no longer demands a caller identity.
|
|
17
|
+
- **MCP stale-bridge cleanup is shape-gated.** A stale `lmctl`/`lmctl0` bridge is removed only when
|
|
18
|
+
**both** the server name and the command shape (`lmctl mcp`) match, so an unrelated MCP server you
|
|
19
|
+
configured yourself is never deleted. Cleanup now also runs on `seed`. The `from` parameter was
|
|
20
|
+
removed from the `lmctl_chat` MCP tool schema.
|
|
21
|
+
- **Migration v46:** `team_chat_log` sender columns are nullable (operator-origin turns record no
|
|
22
|
+
sender). The migration is guarded — it rebuilds only when the table exists and never throws.
|
|
23
|
+
|
|
24
|
+
## 0.1.94 — 2026-07-08
|
|
25
|
+
|
|
26
|
+
- **Debug diagnostics now write only to the debug log file.** YOLO spawn
|
|
27
|
+
diagnostics and CLI startup breadcrumbs append to `~/.lmctl/debug-*.log`
|
|
28
|
+
instead of printing `[debug]` lines to stdout/stderr.
|
|
29
|
+
|
|
30
|
+
- **Removed `lmctl chat --force`.** The flag defeated terminal-lock and
|
|
31
|
+
in-flight safeguards by forcing a chat into a session already held by a live
|
|
32
|
+
process. Dead/stale holders now auto-reclaim without an option; live holders
|
|
33
|
+
should be reached with liveness-aware `lmctl send`.
|
|
34
|
+
|
|
5
35
|
## 0.1.93 — 2026-07-08
|
|
6
36
|
|
|
7
37
|
- **Replaced `--from` with `I_am=<teamfile:alias>`.** Agent-origin commands now
|
|
@@ -121,7 +151,7 @@ All notable public-preview changes for `@lmctl-ai/lmctl` are recorded here.
|
|
|
121
151
|
|
|
122
152
|
- **`lmctl terminal` takes a DB lock** (host + pid + heartbeat) so a second chat
|
|
123
153
|
to a member held live in a terminal is rejected instead of racing; a stale/dead
|
|
124
|
-
or remote lock is reclaimed safely
|
|
154
|
+
or remote lock is reclaimed safely.
|
|
125
155
|
- **`--detach` is hidden from the CLI surface.** It stays functional for AI-team
|
|
126
156
|
chat but is the codex/gemini-only fallback; other providers use their native
|
|
127
157
|
tracked-background path.
|
package/README.md
CHANGED
|
@@ -65,7 +65,7 @@ Lintable teamfile templates for research, writing, and review teams ship in the
|
|
|
65
65
|
[documentation](https://lmctl.com/lmctl) to define your first team.
|
|
66
66
|
|
|
67
67
|
- `lmctl send <teamfile> <alias> "message"` messages a Lead; enqueues if it is up, falls back to chat if down.
|
|
68
|
-
- `lmctl recv
|
|
68
|
+
- `lmctl recv` drains the calling Lead's mailbox consume-on-read, inferred from `LMCTL_SELF_SESSIONID`.
|
|
69
69
|
|
|
70
70
|
## Model selection
|
|
71
71
|
|