@linzumi/cli 0.0.101-beta → 0.0.102-beta
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/README.md +1 -1
- package/dist/index.js +31 -4
- package/package.json +2 -2
package/README.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -19829,7 +19829,7 @@ var linzumiCliVersion, linzumiCliVersionText;
|
|
|
19829
19829
|
var init_version = __esm({
|
|
19830
19830
|
"src/version.ts"() {
|
|
19831
19831
|
"use strict";
|
|
19832
|
-
linzumiCliVersion = "0.0.
|
|
19832
|
+
linzumiCliVersion = "0.0.102-beta";
|
|
19833
19833
|
linzumiCliVersionText = `linzumi ${linzumiCliVersion}`;
|
|
19834
19834
|
}
|
|
19835
19835
|
});
|
|
@@ -21102,6 +21102,8 @@ function rateLimitSummaryKey(summary) {
|
|
|
21102
21102
|
}
|
|
21103
21103
|
function formatRunnerConsoleEvent(event, payload) {
|
|
21104
21104
|
switch (event) {
|
|
21105
|
+
case "runner.starting":
|
|
21106
|
+
return runnerWelcomeLine;
|
|
21105
21107
|
case "runner.instance_started":
|
|
21106
21108
|
return connectedRunnerMessage(payload);
|
|
21107
21109
|
case "runner.replaced":
|
|
@@ -22043,11 +22045,12 @@ function stringValue5(value) {
|
|
|
22043
22045
|
function numberValue(value) {
|
|
22044
22046
|
return typeof value === "number" && Number.isFinite(value) ? value : void 0;
|
|
22045
22047
|
}
|
|
22046
|
-
var dashboardState, maxRawLines, escapeKey, ctrlCKey, enterKey, upKey, downKey, dashboardTableColumns, runnerWelcomeHeaderLines, runnerWelcomeCompactHeaderLines, minimumVisibleTuiTableRows, redrawScreen, keyboardState, tickerState, tuiState;
|
|
22048
|
+
var dashboardState, maxRawLines, escapeKey, ctrlCKey, enterKey, upKey, downKey, dashboardTableColumns, runnerWelcomeLine, runnerWelcomeHeaderLines, runnerWelcomeCompactHeaderLines, minimumVisibleTuiTableRows, redrawScreen, keyboardState, tickerState, tuiState;
|
|
22047
22049
|
var init_runnerConsoleReporter = __esm({
|
|
22048
22050
|
"src/runnerConsoleReporter.ts"() {
|
|
22049
22051
|
"use strict";
|
|
22050
22052
|
init_blessedTputSetulcShim();
|
|
22053
|
+
init_version();
|
|
22051
22054
|
dashboardState = {
|
|
22052
22055
|
jobs: /* @__PURE__ */ new Map(),
|
|
22053
22056
|
discovery: /* @__PURE__ */ new Map(),
|
|
@@ -22081,6 +22084,7 @@ var init_runnerConsoleReporter = __esm({
|
|
|
22081
22084
|
{ width: 12 },
|
|
22082
22085
|
{ width: 24 }
|
|
22083
22086
|
];
|
|
22087
|
+
runnerWelcomeLine = `Welcome to the Linzumi runner (version ${linzumiCliVersion}).`;
|
|
22084
22088
|
runnerWelcomeHeaderLines = [
|
|
22085
22089
|
"\u2593\u2593\u2557 \u2593\u2593\u2557\u2593\u2593\u2593\u2557 \u2593\u2593\u2557\u2593\u2593\u2593\u2593\u2593\u2593\u2593\u2557\u2593\u2593\u2557 \u2593\u2593\u2557\u2593\u2593\u2593\u2557 \u2593\u2593\u2593\u2557\u2593\u2593\u2557",
|
|
22086
22090
|
"\u2593\u2593\u2551 \u2593\u2593\u2551\u2593\u2593\u2593\u2593\u2557 \u2593\u2593\u2551\u255A\u2550\u2550\u2593\u2593\u2593\u2554\u255D\u2593\u2593\u2551 \u2593\u2593\u2551\u2593\u2593\u2593\u2593\u2557 \u2593\u2593\u2593\u2593\u2551\u2593\u2593\u2551",
|
|
@@ -22097,7 +22101,7 @@ var init_runnerConsoleReporter = __esm({
|
|
|
22097
22101
|
" \u2551\u2551 \"/` ___ ;_________\u2551\u2551_.'",
|
|
22098
22102
|
" \u2551\u2551 ` ^^ ^^ \u2551\u2551",
|
|
22099
22103
|
"\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2568\u2568\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\xB7\xB7\u2500\u2500\u2500\u2500\xB7\xB7\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2568\u2568\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
|
|
22100
|
-
|
|
22104
|
+
runnerWelcomeLine,
|
|
22101
22105
|
"Codex is running on this computer and connected to Linzumi.",
|
|
22102
22106
|
"Active Codex and Claude Code jobs appear below as they run.",
|
|
22103
22107
|
"You can return to the Linzumi app now."
|
|
@@ -22106,7 +22110,7 @@ var init_runnerConsoleReporter = __esm({
|
|
|
22106
22110
|
"\u2593\u2593\u2557 LINZUMI RUNNER \u2593\u2593\u2557",
|
|
22107
22111
|
"\u2551\u2551 ()-().----. \u2551\u2551",
|
|
22108
22112
|
"\u2568\u2568\u2500\u2500 connected to Codex and Linzumi \u2500\u2500\u2568\u2568",
|
|
22109
|
-
|
|
22113
|
+
runnerWelcomeLine,
|
|
22110
22114
|
"Codex is running on this computer and connected to Linzumi.",
|
|
22111
22115
|
"Active Codex and Claude Code jobs appear below as they run.",
|
|
22112
22116
|
"You can return to the Linzumi app now."
|
|
@@ -24756,6 +24760,7 @@ async function openLocalCodexRunner(options, log2, cleanup, close) {
|
|
|
24756
24760
|
);
|
|
24757
24761
|
threadRunnerProcesses.clear();
|
|
24758
24762
|
});
|
|
24763
|
+
const threadModelProviderBindings = /* @__PURE__ */ new Map();
|
|
24759
24764
|
const threadRebuildSerializer = createThreadRebuildSerializer();
|
|
24760
24765
|
const evictStaleDynamicChannelSession = async (codexThreadId, expectClient) => {
|
|
24761
24766
|
const session = dynamicChannelSessions.get(codexThreadId);
|
|
@@ -24843,6 +24848,16 @@ async function openLocalCodexRunner(options, log2, cleanup, close) {
|
|
|
24843
24848
|
rebuildArgs.codexThreadId
|
|
24844
24849
|
);
|
|
24845
24850
|
let rebuilt = false;
|
|
24851
|
+
const rebuildProviderBinding = threadModelProviderBindings.get(
|
|
24852
|
+
rebuildArgs.kandanThreadId
|
|
24853
|
+
) ?? // Belt-and-suspenders: if the persisted map missed this thread
|
|
24854
|
+
// but the in-scope establishing `control` still carries the
|
|
24855
|
+
// provider (the server now re-injects it on reconnect_thread),
|
|
24856
|
+
// forward that directly so the rebuild never strands a wafer turn.
|
|
24857
|
+
(control.modelProvider !== void 0 || control.llmProxy !== void 0 ? {
|
|
24858
|
+
...control.modelProvider === void 0 ? {} : { modelProvider: control.modelProvider },
|
|
24859
|
+
...control.llmProxy === void 0 ? {} : { llmProxy: control.llmProxy }
|
|
24860
|
+
} : void 0);
|
|
24846
24861
|
for (const message of rebuildArgs.pendingMessages) {
|
|
24847
24862
|
const reconnectControl = {
|
|
24848
24863
|
type: "reconnect_thread",
|
|
@@ -24857,6 +24872,12 @@ async function openLocalCodexRunner(options, log2, cleanup, close) {
|
|
|
24857
24872
|
// control built above at channelSession.linzumiContext).
|
|
24858
24873
|
...control.linzumiContext === void 0 ? {} : { linzumiContext: control.linzumiContext },
|
|
24859
24874
|
...integerValue(control.rootSeq) === void 0 ? {} : { rootSeq: integerValue(control.rootSeq) },
|
|
24875
|
+
// RESUME-CRITICAL: replay the persisted model-provider binding
|
|
24876
|
+
// (the in-scope `control` is a reconnect_thread that no longer
|
|
24877
|
+
// carries it) so the respawned wafer/GLM worker can load the
|
|
24878
|
+
// `linzumi` provider and resume instead of stranding the turn.
|
|
24879
|
+
...rebuildProviderBinding?.modelProvider === void 0 ? {} : { modelProvider: rebuildProviderBinding.modelProvider },
|
|
24880
|
+
...rebuildProviderBinding?.llmProxy === void 0 ? {} : { llmProxy: rebuildProviderBinding.llmProxy },
|
|
24860
24881
|
sourceSeq: message.seq,
|
|
24861
24882
|
workDescription: message.body,
|
|
24862
24883
|
...runtimeSettings.model === void 0 ? {} : { model: runtimeSettings.model },
|
|
@@ -25118,6 +25139,12 @@ async function openLocalCodexRunner(options, log2, cleanup, close) {
|
|
|
25118
25139
|
return void 0;
|
|
25119
25140
|
}
|
|
25120
25141
|
const providerResolution = resolveControlCodexModelProvider(control);
|
|
25142
|
+
if (control.modelProvider !== void 0 || control.llmProxy !== void 0) {
|
|
25143
|
+
threadModelProviderBindings.set(kandanThreadId, {
|
|
25144
|
+
...control.modelProvider === void 0 ? {} : { modelProvider: control.modelProvider },
|
|
25145
|
+
...control.llmProxy === void 0 ? {} : { llmProxy: control.llmProxy }
|
|
25146
|
+
});
|
|
25147
|
+
}
|
|
25121
25148
|
const providerResolutionError = codexModelProviderResolutionError(providerResolution);
|
|
25122
25149
|
if (providerResolutionError !== void 0) {
|
|
25123
25150
|
return {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@linzumi/cli",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "Linzumi CLI
|
|
3
|
+
"version": "0.0.102-beta",
|
|
4
|
+
"description": "Linzumi CLI \u2014 point a Codex agent at the real code on your laptop, with your team watching and steering from shared threads.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"linzumi": "bin/linzumi.js"
|