Changelog
All notable public-preview changes for @lmctl-ai/lmctl are recorded here.
Unreleased
- Removed the top-level
lmctl initcommand. Provider setup (install + authenticate each provider CLI) is documented in the Install & first run tutorial; lmctl reports a missing provider or credential at use time (seed/chat).lmctl statusno longer shows a persisted active-providers list. - Removed the static
_CONNECT_cross-team statement and thelmctl connectcommand. Cross-team calls now work automatically at runtime, with automatic cycle protection (a cross-team send is stopped when its target is an active ancestor and it either recurs within ~60s or has been revisited more than twice — fan-out and slow back-and-forth are allowed). Legacy_CONNECT_lines are ignored with almctl lintdeprecation warning. DB migration v38 drops theteam_connectiontable. - Added
provider=opencodemodel-effort selection with_MEMBER_ ... model=<id> effort=<variant>.- Chat/MCP path: sends opencode ACP
session/set_config_optionformodel, theneffort. - Seed path: uses
opencode run --model <id> --variant <effort>.
- Chat/MCP path: sends opencode ACP
- Added managed opencode provider entries for GitHub Copilot, DeepSeek, and OpenRouter-backed Qwen models.
- Added
examples/opencode.jsonas a copyable opencode provider/variant sample. lmctl lintnow warns when:effort=is used outsideprovider=opencode;- opencode
effort=is set withoutmodel=; ~/.config/opencode/opencode.jsonis missing, while still accepting lmctl-managed model ids.
Provider Effort Support
| Provider | effort= support |
|---|---|
opencode | Supported through opencode variants. |
claude | Native CLI has --effort, but lmctl has not wired _MEMBER_ effort= to Claude yet. |
codex | Codex exposes effort-like config through native settings; lmctl has not wired _MEMBER_ effort= to Codex yet. |
agy | No verified effort flag in agy --help; only --model is currently supported by lmctl. |