@lmctl-ai/lmctl 0.2.38 → 0.2.40

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 (202) hide show
  1. package/README.md +16 -0
  2. package/bin/lmbee +2 -0
  3. package/bin/lmscript +3 -0
  4. package/build-info.json +1 -0
  5. package/dist/cli/index.js +485 -460
  6. package/dist/cli/schema.sql +0 -169
  7. package/dist/cli/script.js +246 -246
  8. package/dist/lmbee.js +960 -0
  9. package/dist/lmscript.js +388 -0
  10. package/dist/public/app.js +379 -0
  11. package/dist/public/index.html +78 -0
  12. package/dist/public/styles.css +160 -0
  13. package/dist/schema.sql +455 -0
  14. package/dist/vendor-webui/index.html +18 -0
  15. package/dist/vendor-webui/local.js +231 -0
  16. package/dist/vendor-webui/styles.css +1852 -0
  17. package/package.json +11 -7
  18. package/dist/cli/batch.d.ts +0 -2
  19. package/dist/cli/busy-evidence.d.ts +0 -27
  20. package/dist/cli/chat-cycle.d.ts +0 -59
  21. package/dist/cli/chat-exec.d.ts +0 -91
  22. package/dist/cli/chat-policy.d.ts +0 -22
  23. package/dist/cli/chat.d.ts +0 -14
  24. package/dist/cli/code-resolver.d.ts +0 -8
  25. package/dist/cli/common.d.ts +0 -57
  26. package/dist/cli/context.d.ts +0 -12
  27. package/dist/cli/cost.d.ts +0 -2
  28. package/dist/cli/export.d.ts +0 -2
  29. package/dist/cli/hello.d.ts +0 -10
  30. package/dist/cli/index.d.ts +0 -3
  31. package/dist/cli/infra.d.ts +0 -78
  32. package/dist/cli/init.d.ts +0 -8
  33. package/dist/cli/intent-input.d.ts +0 -16
  34. package/dist/cli/intent-match.d.ts +0 -30
  35. package/dist/cli/intent-sessions.d.ts +0 -24
  36. package/dist/cli/intent-team.d.ts +0 -25
  37. package/dist/cli/intent.d.ts +0 -22
  38. package/dist/cli/ls.d.ts +0 -2
  39. package/dist/cli/mailbox-cli.d.ts +0 -6
  40. package/dist/cli/managed.d.ts +0 -62
  41. package/dist/cli/mcp-install.d.ts +0 -23
  42. package/dist/cli/mcp.d.ts +0 -2
  43. package/dist/cli/model.d.ts +0 -21
  44. package/dist/cli/paths.d.ts +0 -50
  45. package/dist/cli/plan-wizard.d.ts +0 -42
  46. package/dist/cli/plan.d.ts +0 -20
  47. package/dist/cli/queue-delivery.d.ts +0 -122
  48. package/dist/cli/quickrun.d.ts +0 -14
  49. package/dist/cli/ratelimit.d.ts +0 -2
  50. package/dist/cli/remote-fetch.d.ts +0 -7
  51. package/dist/cli/run-queries.d.ts +0 -82
  52. package/dist/cli/running.d.ts +0 -5
  53. package/dist/cli/save-script.d.ts +0 -41
  54. package/dist/cli/script.d.ts +0 -6
  55. package/dist/cli/seed-flight.d.ts +0 -2
  56. package/dist/cli/self-identity.d.ts +0 -25
  57. package/dist/cli/session-idle.d.ts +0 -118
  58. package/dist/cli/status.d.ts +0 -22
  59. package/dist/cli/tail.d.ts +0 -18
  60. package/dist/cli/target-resolver.d.ts +0 -139
  61. package/dist/cli/team-status.d.ts +0 -91
  62. package/dist/cli/teamfile-compat.d.ts +0 -116
  63. package/dist/cli/teamfile-store.d.ts +0 -18
  64. package/dist/cli/teamfile-template.d.ts +0 -47
  65. package/dist/cli/template-env.d.ts +0 -25
  66. package/dist/cli/terminal-lock.d.ts +0 -25
  67. package/dist/cli/terminal.d.ts +0 -23
  68. package/dist/cli/time-filter.d.ts +0 -10
  69. package/dist/cli/update-notifier.d.ts +0 -11
  70. package/dist/cli/version-util.d.ts +0 -23
  71. package/dist/config/seed_templates.d.ts +0 -1
  72. package/dist/db/backfill-event-log.d.ts +0 -26
  73. package/dist/db/delegation.d.ts +0 -37
  74. package/dist/db/escalation_vocab.d.ts +0 -45
  75. package/dist/db/event-log.d.ts +0 -40
  76. package/dist/db/index.d.ts +0 -1213
  77. package/dist/db/inflight-acquire.d.ts +0 -70
  78. package/dist/db/invocation-event-projections.d.ts +0 -65
  79. package/dist/db/ledger-identity.test.d.ts +0 -1
  80. package/dist/db/live-event-projections.d.ts +0 -92
  81. package/dist/db/migrate.d.ts +0 -51
  82. package/dist/db/open-readonly.d.ts +0 -2
  83. package/dist/db/process-liveness.d.ts +0 -37
  84. package/dist/db/sqlite.d.ts +0 -53
  85. package/dist/db/sqlite.test.d.ts +0 -1
  86. package/dist/db/terminal-lock.d.ts +0 -14
  87. package/dist/db/tracked-invocation-reconcile.d.ts +0 -52
  88. package/dist/db/tracked-invocation.d.ts +0 -116
  89. package/dist/mcp/dispatch.d.ts +0 -45
  90. package/dist/mcp/mediation.d.ts +0 -128
  91. package/dist/mcp/path-warning.d.ts +0 -7
  92. package/dist/mcp/server.d.ts +0 -63
  93. package/dist/mcp/tools.d.ts +0 -24
  94. package/dist/providers/adapter.d.ts +0 -271
  95. package/dist/providers/adapters/agy-adapter.d.ts +0 -18
  96. package/dist/providers/adapters/claude-adapter.d.ts +0 -20
  97. package/dist/providers/adapters/codex-adapter.d.ts +0 -22
  98. package/dist/providers/adapters/copilot-adapter.d.ts +0 -16
  99. package/dist/providers/adapters/dsh-adapter.d.ts +0 -89
  100. package/dist/providers/adapters/gemini-adapter.d.ts +0 -44
  101. package/dist/providers/adapters/hermes-adapter.d.ts +0 -71
  102. package/dist/providers/adapters/index.d.ts +0 -35
  103. package/dist/providers/adapters/kimi-adapter.d.ts +0 -16
  104. package/dist/providers/adapters/lmplayer-adapter.d.ts +0 -14
  105. package/dist/providers/adapters/opencode-adapter.d.ts +0 -11
  106. package/dist/providers/adapters/pi-adapter.d.ts +0 -17
  107. package/dist/providers/adapters/print-turn.d.ts +0 -29
  108. package/dist/providers/adapters/qwen-adapter.d.ts +0 -11
  109. package/dist/providers/agy.d.ts +0 -32
  110. package/dist/providers/base-adapter.d.ts +0 -110
  111. package/dist/providers/base.d.ts +0 -12
  112. package/dist/providers/binary-check.d.ts +0 -102
  113. package/dist/providers/bundle.d.ts +0 -124
  114. package/dist/providers/claude-mock.d.ts +0 -90
  115. package/dist/providers/claude.d.ts +0 -21
  116. package/dist/providers/codex-config.d.ts +0 -15
  117. package/dist/providers/codex.d.ts +0 -25
  118. package/dist/providers/config/init-config.d.ts +0 -59
  119. package/dist/providers/config/init-edit.d.ts +0 -3
  120. package/dist/providers/config/init-file.d.ts +0 -20
  121. package/dist/providers/config/init-write.d.ts +0 -2
  122. package/dist/providers/config/model-selection-lint.d.ts +0 -70
  123. package/dist/providers/config/team-config.d.ts +0 -184
  124. package/dist/providers/config/types.d.ts +0 -146
  125. package/dist/providers/config/user-config.d.ts +0 -88
  126. package/dist/providers/copilot.d.ts +0 -21
  127. package/dist/providers/debug.d.ts +0 -128
  128. package/dist/providers/dsh-sidecar.d.ts +0 -65
  129. package/dist/providers/dsh-zstd.d.ts +0 -27
  130. package/dist/providers/dsh.d.ts +0 -37
  131. package/dist/providers/frontmatter.d.ts +0 -46
  132. package/dist/providers/gemini-session-reader.d.ts +0 -151
  133. package/dist/providers/gemini.d.ts +0 -39
  134. package/dist/providers/hermes.d.ts +0 -90
  135. package/dist/providers/index.d.ts +0 -423
  136. package/dist/providers/kimi.d.ts +0 -37
  137. package/dist/providers/model-catalog.d.ts +0 -145
  138. package/dist/providers/model-suggestions.d.ts +0 -4
  139. package/dist/providers/one-shot-timeout.d.ts +0 -1
  140. package/dist/providers/opencode-config.d.ts +0 -62
  141. package/dist/providers/opencode.d.ts +0 -40
  142. package/dist/providers/parsers/acp.d.ts +0 -71
  143. package/dist/providers/parsers/codex-app-server.d.ts +0 -60
  144. package/dist/providers/parsers/stream-json.d.ts +0 -57
  145. package/dist/providers/passive-readers/agy.d.ts +0 -155
  146. package/dist/providers/passive-readers/copilot.d.ts +0 -173
  147. package/dist/providers/passive-readers/dsh.d.ts +0 -34
  148. package/dist/providers/passive-readers/kimi.d.ts +0 -44
  149. package/dist/providers/passive-readers/opencode.d.ts +0 -89
  150. package/dist/providers/passive-readers/qwen.d.ts +0 -151
  151. package/dist/providers/passive-readers/shared.d.ts +0 -138
  152. package/dist/providers/passive-session-reader.d.ts +0 -188
  153. package/dist/providers/path-utils.d.ts +0 -1
  154. package/dist/providers/pi.d.ts +0 -32
  155. package/dist/providers/pricing.d.ts +0 -107
  156. package/dist/providers/qwen.d.ts +0 -22
  157. package/dist/providers/ratelimit/agy.d.ts +0 -22
  158. package/dist/providers/ratelimit/claude-auth.d.ts +0 -13
  159. package/dist/providers/ratelimit/claude.d.ts +0 -6
  160. package/dist/providers/ratelimit/codex.d.ts +0 -7
  161. package/dist/providers/ratelimit/kimi-auth.d.ts +0 -15
  162. package/dist/providers/ratelimit/kimi.d.ts +0 -6
  163. package/dist/providers/ratelimit/schema.d.ts +0 -28
  164. package/dist/providers/ratelimit-readings.d.ts +0 -19
  165. package/dist/providers/registry.d.ts +0 -31
  166. package/dist/providers/resume.d.ts +0 -43
  167. package/dist/providers/seed-instruction.d.ts +0 -3
  168. package/dist/providers/self-session-env.d.ts +0 -21
  169. package/dist/providers/session-limit.d.ts +0 -9
  170. package/dist/providers/strip-ansi.d.ts +0 -5
  171. package/dist/providers/transport-errors.d.ts +0 -94
  172. package/dist/providers/transport-lifecycle.d.ts +0 -63
  173. package/dist/providers/transport-wrappers.d.ts +0 -110
  174. package/dist/providers/transports/acp-profiles/config-option-step.d.ts +0 -24
  175. package/dist/providers/transports/acp-profiles/copilot.d.ts +0 -12
  176. package/dist/providers/transports/acp-profiles/gemini.d.ts +0 -22
  177. package/dist/providers/transports/acp-profiles/hermes.d.ts +0 -27
  178. package/dist/providers/transports/acp-profiles/index.d.ts +0 -19
  179. package/dist/providers/transports/acp-profiles/kimi.d.ts +0 -24
  180. package/dist/providers/transports/acp-profiles/opencode.d.ts +0 -26
  181. package/dist/providers/transports/acp-profiles/types.d.ts +0 -258
  182. package/dist/providers/transports/acp-rpc.d.ts +0 -18
  183. package/dist/providers/transports/acp.d.ts +0 -217
  184. package/dist/providers/transports/codex-app-server.d.ts +0 -190
  185. package/dist/providers/transports/hold-open.d.ts +0 -120
  186. package/dist/providers/transports/manager.d.ts +0 -21
  187. package/dist/providers/transports/stream-json.d.ts +0 -162
  188. package/dist/providers/transports/types.d.ts +0 -56
  189. package/dist/providers/types.d.ts +0 -154
  190. package/dist/providers/yolo-contract.d.ts +0 -131
  191. package/dist/script/adapter.d.ts +0 -107
  192. package/dist/script/batch-script.d.ts +0 -7
  193. package/dist/script/index.d.ts +0 -3
  194. package/dist/script/init-environment.d.ts +0 -8
  195. package/dist/script/lmbee-module.d.ts +0 -2
  196. package/dist/script/lmscript.d.ts +0 -647
  197. package/dist/shared/policy.d.ts +0 -74
  198. package/dist/shared-lib/db.d.ts +0 -25
  199. package/dist/shared-lib/passive-session-reader.d.ts +0 -2
  200. package/dist/shared-lib/provider-parse.d.ts +0 -6
  201. package/dist/templates/basedir.d.ts +0 -52
  202. package/dist/uri/lmctl_uri.d.ts +0 -38
@@ -1,107 +0,0 @@
1
- import { type ScriptEnvironmentOptions } from './init-environment.js';
2
- import { LMScript, type FunctionDoc, type ScriptModule } from './lmscript.js';
3
- import { type ResolvedMember } from '../cli/target-resolver.js';
4
- import type { BundleSession } from '../providers/bundle.js';
5
- import { type CliIo } from '../cli/common.js';
6
- import { resolveSelfIdentity } from '../cli/self-identity.js';
7
- import type { AgentInflightInput, TrackedInvocationFinishPatch } from '../db/index.js';
8
- export { LMScript, LMScriptExit, type FunctionDoc, type ScriptModule } from './lmscript.js';
9
- export interface BatchHandle {
10
- kind?: 'team';
11
- id: string;
12
- teamfile: string;
13
- alias: string;
14
- batchfile: string;
15
- member: ResolvedMember;
16
- promptCount: number;
17
- useBundle: boolean;
18
- rootId: number | null;
19
- rootFinish: TrackedInvocationFinishPatch;
20
- heldLease?: {
21
- row: AgentInflightInput;
22
- leaseId: string;
23
- };
24
- bundleSession?: BundleSession;
25
- heartbeatTimer?: {
26
- stop: () => void;
27
- };
28
- closed: boolean;
29
- env: NodeJS.ProcessEnv;
30
- }
31
- interface AgentBatchHandle {
32
- kind: 'agent';
33
- id: string;
34
- member: Record<string, any>;
35
- sourceMember: Record<string, any>;
36
- options: Record<string, any>;
37
- closed: boolean;
38
- failed: boolean;
39
- inFlight: boolean;
40
- }
41
- type ManagedBatchHandle = BatchHandle | AgentBatchHandle;
42
- export declare class ResourceRegistry {
43
- private batchHandles;
44
- private temporaryDirectories;
45
- private loggedErrors;
46
- registerBatch(handle: ManagedBatchHandle): void;
47
- getBatch(id: string): ManagedBatchHandle | undefined;
48
- getOpenBatches(): ManagedBatchHandle[];
49
- recordError(msg: string): void;
50
- getErrors(): string[];
51
- hasErrors(): boolean;
52
- registerTemporaryDirectory(path: string): void;
53
- removeTemporaryDirectories(): void;
54
- forceCloseAll(io: CliIo): Promise<void>;
55
- }
56
- export declare function bundleAvailable(member: ResolvedMember): Promise<boolean>;
57
- export declare function releaseBundleLease(io: CliIo, lease: {
58
- row: AgentInflightInput;
59
- leaseId: string;
60
- }): Promise<void>;
61
- export declare function resolveBundleSender(env: NodeJS.ProcessEnv, dal: Parameters<typeof resolveSelfIdentity>[1]): {
62
- teamfile: string;
63
- alias: string;
64
- } | null;
65
- export declare function startBatchRootInvocation(io: CliIo, input: {
66
- member: ResolvedMember;
67
- batchfile: string;
68
- promptCount: number;
69
- parentInvocationId: number | null;
70
- }): Promise<number | null>;
71
- export declare function finishBatchRootInvocationSync(io: CliIo, id: number, patch: TrackedInvocationFinishPatch, env?: NodeJS.ProcessEnv): void;
72
- export declare function closeBatchHandle(handle: ManagedBatchHandle, io: CliIo, status?: 'done' | 'error' | 'cancelled', errorDetail?: string): Promise<void>;
73
- export declare const LMCTL_FUNCTION_DOCS: FunctionDoc[];
74
- export declare function registerLmctlDocs(engine: LMScript): void;
75
- export interface BaseEngineOptions {
76
- scriptArgs?: string[];
77
- io?: CliIo;
78
- env?: NodeJS.ProcessEnv;
79
- }
80
- /**
81
- * Creates a bare, generic LMScript engine configured with the language and standard library.
82
- * Free of lmctl-specific host functions or domain bindings.
83
- * Suitable as a reusable substrate for any consumer (lmctl, lmbee, custom tools).
84
- */
85
- export declare function createBaseScriptEngine(options?: BaseEngineOptions): LMScript;
86
- /**
87
- * Registers all lmctl host functions onto an LMScript engine instance.
88
- */
89
- export declare function registerLmctlHostFunctions(engine: LMScript, io: CliIo, registry: ResourceRegistry, env?: NodeJS.ProcessEnv): void;
90
- /**
91
- * First-class ScriptModule defining the lmctl automation host extension.
92
- */
93
- export declare const lmctlModule: ScriptModule;
94
- /**
95
- * Registers the lmctl module and its host function documentation onto any LMScript engine.
96
- */
97
- export declare function registerLmctlModule(engine: LMScript, io: CliIo, registry?: ResourceRegistry, env?: NodeJS.ProcessEnv): LMScript;
98
- /**
99
- * Creates and configures an LMScript engine instance pre-wired with the lmctl module.
100
- */
101
- export declare function createLmScriptEngine(io: CliIo, scriptArgs?: string[], registry?: ResourceRegistry, env?: NodeJS.ProcessEnv, options?: ScriptEnvironmentOptions): LMScript;
102
- /** Documentation discovery composes functions without starting a profile-backed runtime. */
103
- export declare function createLmScriptDocumentationEngine(io: CliIo, scriptArgs?: string[], registry?: ResourceRegistry, env?: NodeJS.ProcessEnv): LMScript;
104
- /**
105
- * Executes an LMScript script source with full lifecycle and signal guarantees.
106
- */
107
- export declare function runScriptEngine(source: string, scriptArgs: string[], io?: CliIo, env?: NodeJS.ProcessEnv, scriptFile?: string, globals?: Record<string, unknown>, options?: ScriptEnvironmentOptions): Promise<number>;
@@ -1,7 +0,0 @@
1
- /**
2
- * Test-only comparison implementation of `lmctl batch`.
3
- * The production command remains procedural and independent of LMScript.
4
- * examples/batchscript.lms exposes this asset through `lmctl script`; an
5
- * equality test and shared behavioral suites keep the comparison repeatable.
6
- */
7
- export declare const BATCH_LMS = "# batchscript.lms - Test-only comparison with procedural lmctl batch\n# Arguments: [teamfile, alias, batchfile, flags...]\n\nif (includes(args, \"--help\") || includes(args, \"-h\")) {\n println(\"usage: lmctl batch <teamfile> <alias> <batchfile> [--legacy] [--single]\");\n lm_exit(0);\n}\n\nif (len(args) < 3) {\n lm_error(\"usage: lmctl batch <teamfile> <alias> <batchfile> [--legacy] [--single]\");\n lm_exit(1);\n}\n\nteamfile = args[0];\nalias = args[1];\nbatchfile = args[2];\nlegacy = false;\nsingle = false;\nfor (flag_index = 3; flag_index < len(args); flag_index = flag_index + 1) {\n if (args[flag_index] == \"--legacy\") {\n legacy = true;\n } else if (args[flag_index] == \"--single\") {\n single = true;\n } else {\n lm_error(\"batch: unexpected argument: \" + args[flag_index]);\n lm_exit(1);\n }\n}\n\n# 1. Read prompts\nprompts = lm_read_prompts(batchfile, single);\n\nif (len(prompts) == 0) {\n lm_error(\"batch: \" + batchfile + \": no prompts found\");\n lm_exit(1);\n}\n\n# 2. Open batch session\nhandle = lm_batch_open(teamfile, alias, batchfile, {\n promptCount: len(prompts),\n legacy: legacy,\n single: single\n});\n\nif (handle == null) {\n lm_exit(1);\n}\n\n# 3. Sequential prompt execution\nfor (i = 0; i < len(prompts); i = i + 1) {\n promptText = prompts[i];\n res = lm_batch_turn(handle, promptText, i + 1, len(prompts));\n\n # Output reply or partial reply on stall\n if (res.reply != null && len(res.reply) > 0) {\n print(res.reply);\n print(\"\"); # Blank line separator\n }\n\n if (res.status != \"ok\") {\n lm_batch_close(handle, \"error\", res.error);\n lm_exit(1);\n }\n}\n\nlm_batch_close(handle, \"done\");\nlm_exit(0);\n";
@@ -1,3 +0,0 @@
1
- export { LMScript, LMScriptExit, type FunctionDoc, type ScriptModule } from './lmscript.js';
2
- export { createBaseScriptEngine, createLmScriptEngine, registerLmctlModule, lmctlModule, registerLmctlHostFunctions, registerLmctlDocs, LMCTL_FUNCTION_DOCS, runScriptEngine, ResourceRegistry, type BatchHandle, type BaseEngineOptions, } from './adapter.js';
3
- export { BATCH_LMS } from './batch-script.js';
@@ -1,8 +0,0 @@
1
- import { type CliIo } from '../cli/common.js';
2
- export interface ScriptEnvironmentOptions {
3
- initConfigPath?: string;
4
- }
5
- export declare const SCRIPT_ENVIRONMENT_HINT = "Environment names (Provider1..3, Model1..3, Directory, NonInteractive) are supplied by ~/.lmctl/init.toml via lmctl init.";
6
- export declare function scriptDiagnosticMessage(message: string): string;
7
- /** Read one profile snapshot and initialize runtime and checker bindings together. */
8
- export declare function buildScriptEnvironment(io: CliIo, env: NodeJS.ProcessEnv, options?: ScriptEnvironmentOptions): Record<string, string | boolean>;
@@ -1,2 +0,0 @@
1
- import type { ScriptModule } from './lmscript.js';
2
- export declare function createLmbeeModule(env: NodeJS.ProcessEnv, registerTemporaryDirectory?: (path: string) => void): ScriptModule;