nolo-cli 0.97.0 → 0.97.2

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.
@@ -4,12 +4,12 @@ import {
4
4
  } from "./chunk-AZRHIN5B.js";
5
5
  import {
6
6
  runAgentCreateCommand
7
- } from "./chunk-OYOWA3CP.js";
7
+ } from "./chunk-L76GP4ER.js";
8
8
  import {
9
9
  positionalArgs,
10
10
  readFlagValue
11
11
  } from "./chunk-V7E4PXQD.js";
12
- import "./chunk-FD5K6MPI.js";
12
+ import "./chunk-JBOO3DKI.js";
13
13
  import "./chunk-O26PCYLS.js";
14
14
  import "./chunk-YUNJN43V.js";
15
15
  import "./chunk-62IL3KQV.js";
@@ -26,7 +26,7 @@ import "./chunk-ZYWQNCBN.js";
26
26
  import {
27
27
  resolveCliAgentKeyInput
28
28
  } from "./chunk-SV5IJK6K.js";
29
- import "./chunk-Q4GP72HX.js";
29
+ import "./chunk-APMUYAPK.js";
30
30
  import "./chunk-ZOVKKMF6.js";
31
31
  import "./chunk-GLKOYSRU.js";
32
32
  import "./chunk-MP64VFGD.js";
@@ -95,7 +95,7 @@ async function defaultExecuteCli(provider, prompt, options) {
95
95
  return executeCli(provider, prompt, options);
96
96
  }
97
97
  async function forwardConnectorRunMessage(machine, message, pushMessage, executeCli, env, fetchImpl) {
98
- const { handleConnectorRunMessage } = await import("./machineWsRunDispatch-QOBSQQ72.js");
98
+ const { handleConnectorRunMessage } = await import("./machineWsRunDispatch-OJ77YNRD.js");
99
99
  return handleConnectorRunMessage(message, pushMessage, executeCli, env, fetchImpl);
100
100
  }
101
101
  async function detectLaunchableMachineInfo() {
@@ -2,8 +2,8 @@ import {
2
2
  runAgentCreateCommand,
3
3
  runAgentReadCommand,
4
4
  runAgentUpdateCommand
5
- } from "./chunk-OYOWA3CP.js";
6
- import "./chunk-FD5K6MPI.js";
5
+ } from "./chunk-L76GP4ER.js";
6
+ import "./chunk-JBOO3DKI.js";
7
7
  import "./chunk-O26PCYLS.js";
8
8
  import "./chunk-YUNJN43V.js";
9
9
  import "./chunk-62IL3KQV.js";
@@ -13,7 +13,7 @@ import "./chunk-EADNWBAZ.js";
13
13
  import "./chunk-SACTCJAC.js";
14
14
  import "./chunk-ZYWQNCBN.js";
15
15
  import "./chunk-SV5IJK6K.js";
16
- import "./chunk-Q4GP72HX.js";
16
+ import "./chunk-APMUYAPK.js";
17
17
  import "./chunk-ZOVKKMF6.js";
18
18
  import "./chunk-GLKOYSRU.js";
19
19
  import "./chunk-MP64VFGD.js";
@@ -8,12 +8,12 @@ import {
8
8
  resolveRunSettlementNote,
9
9
  resolveWorkflowReference,
10
10
  runAgentRunCommand
11
- } from "./chunk-AQ3I6DZE.js";
11
+ } from "./chunk-PLRLUZWS.js";
12
12
  import "./chunk-VJVNU77E.js";
13
13
  import {
14
14
  parseAgentRunArgs
15
15
  } from "./chunk-V7E4PXQD.js";
16
- import "./chunk-FD5K6MPI.js";
16
+ import "./chunk-JBOO3DKI.js";
17
17
  import "./chunk-O26PCYLS.js";
18
18
  import "./chunk-YUNJN43V.js";
19
19
  import "./chunk-62IL3KQV.js";
@@ -26,7 +26,7 @@ import "./chunk-SACTCJAC.js";
26
26
  import "./chunk-ZYWQNCBN.js";
27
27
  import "./chunk-SV5IJK6K.js";
28
28
  import "./chunk-BMQ2MJUK.js";
29
- import "./chunk-Q4GP72HX.js";
29
+ import "./chunk-APMUYAPK.js";
30
30
  import "./chunk-EXAJ6DCR.js";
31
31
  import "./chunk-ZOVKKMF6.js";
32
32
  import "./chunk-GLKOYSRU.js";
@@ -72,7 +72,7 @@ import {
72
72
  transitionRunToTerminal,
73
73
  withQueueLock,
74
74
  writeRunRecord
75
- } from "./chunk-Q4GP72HX.js";
75
+ } from "./chunk-APMUYAPK.js";
76
76
  import "./chunk-I3QNET24.js";
77
77
  import "./chunk-PSCNXBYA.js";
78
78
  import "./chunk-A7GB5UGH.js";
@@ -1056,7 +1056,14 @@ function defaultGetProcessStartTime(pid) {
1056
1056
  const output = nodeExecFileSync("ps", ["-o", "lstart=", "-p", String(pid)], {
1057
1057
  encoding: "utf8",
1058
1058
  stdio: ["ignore", "pipe", "ignore"],
1059
- timeout: 1e3
1059
+ timeout: 1e3,
1060
+ // `ps -o lstart` 的日期串随系统 locale 变化:
1061
+ // LANG=en_US.UTF-8 → "Thu Oct 8 08:54:18 2026"(new Date 可解析)
1062
+ // LANG=zh_CN.UTF-8 → "四 10月 8 08:54:18 2026"(new Date → NaN → null)
1063
+ // 这会让 isPidReused 的结论依赖调用者环境:同一条 run 记录在英文
1064
+ // locale 下被判 pid reused → orphaned,中文 locale 下不判。强制 C
1065
+ // locale 让输出恒为可解析的英文格式,结果与 locale 无关。
1066
+ env: { ...process.env, LC_ALL: "C", LANG: "C" }
1060
1067
  }).trim();
1061
1068
  if (!output) return null;
1062
1069
  const d = new Date(output);
@@ -49,7 +49,7 @@ import {
49
49
  terminateRunProcess,
50
50
  transitionRunToTerminal,
51
51
  withQueueLock
52
- } from "./chunk-Q4GP72HX.js";
52
+ } from "./chunk-APMUYAPK.js";
53
53
  import {
54
54
  getDefaultCliLocalRuntimeDb
55
55
  } from "./chunk-ZOVKKMF6.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  clearCliLocalRuntimePreparedAgentCache
3
- } from "./chunk-FD5K6MPI.js";
3
+ } from "./chunk-JBOO3DKI.js";
4
4
  import {
5
5
  getReadableCliDb
6
6
  } from "./chunk-CTUQJVQM.js";
@@ -28,7 +28,7 @@ import {
28
28
  t,
29
29
  toolLabel,
30
30
  toolLabelVariants
31
- } from "./chunk-FD5K6MPI.js";
31
+ } from "./chunk-JBOO3DKI.js";
32
32
  import {
33
33
  clearCredentialAvailability,
34
34
  readCredentialEntry,
@@ -71,7 +71,7 @@ import {
71
71
  resolveRunQueuePath,
72
72
  settleRunTerminalAuthoritatively,
73
73
  spawnLocalBackgroundRun
74
- } from "./chunk-Q4GP72HX.js";
74
+ } from "./chunk-APMUYAPK.js";
75
75
  import {
76
76
  isCliAuthorityBrokerProtocolError,
77
77
  isCliAuthorityBrokerTimeoutError,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createCliLocalRuntimeAdapter,
3
3
  summarizeEndpoint
4
- } from "./chunk-FD5K6MPI.js";
4
+ } from "./chunk-JBOO3DKI.js";
5
5
  import {
6
6
  clipMultilineText
7
7
  } from "./chunk-RMAWULCS.js";
@@ -103,7 +103,7 @@ function createDaemonShortcutCommand(path, description, command) {
103
103
  // packages/cli/agentInternalCommandEntries.ts
104
104
  function getAgentInternalCommandEntries() {
105
105
  const createAgentRunCommand = (path, description) => createContextCommand(path, description, async (args, ctx) => {
106
- const { runAgentRunCommand } = await import("./agentRunCommand-CSEX4QIH.js");
106
+ const { runAgentRunCommand } = await import("./agentRunCommand-H6BYSTJ7.js");
107
107
  return runAgentRunCommand(args, {
108
108
  env: ctx.env,
109
109
  scriptDir: ctx.scriptDir,
@@ -119,7 +119,7 @@ function getAgentInternalCommandEntries() {
119
119
  return runAgentListCommand(args, deps);
120
120
  }),
121
121
  createEnvCommand(["agent", "create"], "Create a new agent", async (args, deps) => {
122
- const { runAgentCreateCommand } = await import("./agentRecordCommands-VY35OMX3.js");
122
+ const { runAgentCreateCommand } = await import("./agentRecordCommands-7MQRBMWZ.js");
123
123
  return runAgentCreateCommand(args, deps);
124
124
  }),
125
125
  createEnvCommand(["agent", "models"], "List models available on an OpenAI-compatible provider", async (args, deps) => {
@@ -135,28 +135,28 @@ function getAgentInternalCommandEntries() {
135
135
  return runAgentPullCommand(args, deps);
136
136
  }),
137
137
  createEnvCommand(["agent", "read"], "Read a single agent", async (args, deps) => {
138
- const { runAgentReadCommand } = await import("./agentRecordCommands-VY35OMX3.js");
138
+ const { runAgentReadCommand } = await import("./agentRecordCommands-7MQRBMWZ.js");
139
139
  return runAgentReadCommand(args, deps);
140
140
  }),
141
141
  createAgentRunCommand(["agent", "run"], "Run an agent"),
142
142
  createEnvCommand(["agent", "ps"], "List active and recent local agent runs (--json for machine-readable output)", async (_args, deps) => {
143
- const { runAgentPsCommand } = await import("./agentRunControl-5T64LM2M.js");
143
+ const { runAgentPsCommand } = await import("./agentRunControl-2TTTUTSW.js");
144
144
  return runAgentPsCommand(_args, { ...deps, output: process.stdout });
145
145
  }),
146
146
  createEnvCommand(["agent", "status"], "Show status of a local agent run (--json, --watch, --interval-ms N)", async (args, deps) => {
147
- const { runAgentStatusCommand } = await import("./agentRunControl-5T64LM2M.js");
147
+ const { runAgentStatusCommand } = await import("./agentRunControl-2TTTUTSW.js");
148
148
  return runAgentStatusCommand(args, { ...deps, output: process.stdout });
149
149
  }),
150
150
  createEnvCommand(["agent", "logs"], "Show logs of a local agent run", async (args, deps) => {
151
- const { runAgentLogsCommand } = await import("./agentRunControl-5T64LM2M.js");
151
+ const { runAgentLogsCommand } = await import("./agentRunControl-2TTTUTSW.js");
152
152
  return runAgentLogsCommand(args, { ...deps, output: process.stdout });
153
153
  }),
154
154
  createEnvCommand(["agent", "stop"], "Stop a local agent run", async (args, deps) => {
155
- const { runAgentStopCommand } = await import("./agentRunControl-5T64LM2M.js");
155
+ const { runAgentStopCommand } = await import("./agentRunControl-2TTTUTSW.js");
156
156
  return runAgentStopCommand(args, { ...deps, output: process.stdout });
157
157
  }),
158
158
  createEnvCommand(["agent", "kill"], "Kill a local agent run", async (args, deps) => {
159
- const { runAgentKillCommand } = await import("./agentRunControl-5T64LM2M.js");
159
+ const { runAgentKillCommand } = await import("./agentRunControl-2TTTUTSW.js");
160
160
  return runAgentKillCommand(args, { ...deps, output: process.stdout });
161
161
  }),
162
162
  createEnvCommand(["agent", "setup-offline-marxists"], "Create or update the Marxists.org offline book agent", async (args, deps) => {
@@ -164,26 +164,26 @@ function getAgentInternalCommandEntries() {
164
164
  return runSetupOfflineMarxistsAgentCommand(args, deps);
165
165
  }),
166
166
  createEnvCommand(["agent", "update"], "Update agent fields", async (args, deps) => {
167
- const { runAgentUpdateCommand } = await import("./agentRecordCommands-VY35OMX3.js");
167
+ const { runAgentUpdateCommand } = await import("./agentRecordCommands-7MQRBMWZ.js");
168
168
  return runAgentUpdateCommand(args, deps);
169
169
  }),
170
170
  createEnvCommand(["agent", "email", "provision"], "Provision a controlled inbox for an agent", async (args, deps) => {
171
- const { runAgentEmailProvisionCommand } = await import("./agentEmailCommands-EO3H2LDW.js");
171
+ const { runAgentEmailProvisionCommand } = await import("./agentEmailCommands-MQOP76DK.js");
172
172
  return runAgentEmailProvisionCommand(args, deps);
173
173
  }),
174
174
  createEnvCommand(["agent", "email", "bind"], "Bind an existing email address to an agent", async (args, deps) => {
175
- const { runAgentEmailBindCommand } = await import("./agentEmailCommands-EO3H2LDW.js");
175
+ const { runAgentEmailBindCommand } = await import("./agentEmailCommands-MQOP76DK.js");
176
176
  return runAgentEmailBindCommand(args, deps);
177
177
  }),
178
178
  createEnvCommand(["agent", "email", "transfer"], "Transfer an email identity from one agent to another (cross-account)", async (args, deps) => {
179
- const { runAgentEmailTransferCommand } = await import("./agentEmailCommands-EO3H2LDW.js");
179
+ const { runAgentEmailTransferCommand } = await import("./agentEmailCommands-MQOP76DK.js");
180
180
  return runAgentEmailTransferCommand(args, deps);
181
181
  }),
182
182
  createEnvCommand(
183
183
  ["agent", "email", "create-and-provision"],
184
184
  "Create an agent and provision its controlled inbox",
185
185
  async (args, deps) => {
186
- const { runAgentEmailCreateAndProvisionCommand } = await import("./agentEmailCommands-EO3H2LDW.js");
186
+ const { runAgentEmailCreateAndProvisionCommand } = await import("./agentEmailCommands-MQOP76DK.js");
187
187
  return runAgentEmailCreateAndProvisionCommand(args, deps);
188
188
  }
189
189
  ),
@@ -204,15 +204,15 @@ function getAgentInternalCommandEntries() {
204
204
  return runAgentRevokeGrantCommand(args, deps);
205
205
  }),
206
206
  createEnvCommand(["agent", "bind-current"], "Bind an agent to this machine", async (args, deps) => {
207
- const { runAgentBindCurrentCommand } = await import("./agentMachineCommands-V65VOQNK.js");
207
+ const { runAgentBindCurrentCommand } = await import("./agentMachineCommands-EQIRKAZO.js");
208
208
  return runAgentBindCurrentCommand(args, deps);
209
209
  }),
210
210
  createEnvCommand(["agent", "smoke-current"], "Smoke test a bound agent through this machine", async (args, deps) => {
211
- const { runAgentSmokeCurrentCommand } = await import("./agentMachineCommands-V65VOQNK.js");
211
+ const { runAgentSmokeCurrentCommand } = await import("./agentMachineCommands-EQIRKAZO.js");
212
212
  return runAgentSmokeCurrentCommand(args, deps);
213
213
  }),
214
214
  createEnvCommand(["agent", "runtime-doctor"], "Diagnose current machine runtime compatibility", async (args, deps) => {
215
- const { runAgentRuntimeDoctorCommand } = await import("./agentMachineCommands-V65VOQNK.js");
215
+ const { runAgentRuntimeDoctorCommand } = await import("./agentMachineCommands-EQIRKAZO.js");
216
216
  return runAgentRuntimeDoctorCommand(args, deps);
217
217
  }),
218
218
  createAgentRunCommand(["agent", "chat"], "Chat with an agent")
@@ -473,15 +473,15 @@ function getSystemInternalCommandEntries(renderHelpText2) {
473
473
  return runWhoamiCommand({ args, env: ctx.env });
474
474
  }),
475
475
  createEntrypointEnvCommand(["connect"], "Send machine heartbeats or hold a connector websocket", async (args, deps) => {
476
- const { runMachineConnectCommand } = await import("./machineCommands-BKYVMMEG.js");
476
+ const { runMachineConnectCommand } = await import("./machineCommands-EY3SKJCP.js");
477
477
  return runMachineConnectCommand(args, deps);
478
478
  }),
479
479
  createDaemonShortcutCommand(["daemon"], "Run the connector daemon shortcut", async (args, deps) => {
480
- const { runMachineConnectCommand } = await import("./machineCommands-BKYVMMEG.js");
480
+ const { runMachineConnectCommand } = await import("./machineCommands-EY3SKJCP.js");
481
481
  return runMachineConnectCommand(args, deps);
482
482
  }),
483
483
  createEnvCommand(["machine", "status"], "List machines registered to the current profile", async (args, deps) => {
484
- const { runMachineStatusCommand } = await import("./machineCommands-BKYVMMEG.js");
484
+ const { runMachineStatusCommand } = await import("./machineCommands-EY3SKJCP.js");
485
485
  return runMachineStatusCommand(args, deps);
486
486
  }),
487
487
  createEnvCommand(["doctor", "runtime"], "Diagnose local-first agent runtime selection", async (args, deps) => {
package/index.js CHANGED
@@ -71,7 +71,7 @@ async function runScript(script, forwardedArgs, env) {
71
71
  return proc.exited;
72
72
  }
73
73
  async function launchTuiWorkspace(args2) {
74
- const { startTuiWorkspace } = await import("./readlineWorkspace-7P7IORIT.js");
74
+ const { startTuiWorkspace } = await import("./readlineWorkspace-PMTHAVMB.js");
75
75
  const { createTuiSummaryLlmCaller } = await import("./tuiSummaryLlmCaller-74NRRLVW.js");
76
76
  return startTuiWorkspace({
77
77
  ...args2,
@@ -81,7 +81,7 @@ async function launchTuiWorkspace(args2) {
81
81
  });
82
82
  }
83
83
  async function main() {
84
- const { createCliRuntimeContext, looksLikeDaemonShortcut, renderHelpText, resolveCommand, runResolvedCommand } = await import("./commandRegistry-MRPLKSWP.js");
84
+ const { createCliRuntimeContext, looksLikeDaemonShortcut, renderHelpText, resolveCommand, runResolvedCommand } = await import("./commandRegistry-HUFXCF7Z.js");
85
85
  const { buildCliRuntimeEnv, loadProfileConfig } = await import("./profileConfig-ZGOFORWV.js");
86
86
  const { resolveTuiLaunchMode } = await import("./runtimeModeArgs-2Y7BALTO.js");
87
87
  const runtimeEnv = {
@@ -2,13 +2,13 @@ import {
2
2
  buildMachinePermissionPromptBlock,
3
3
  handleConnectorRunMessage,
4
4
  resolveMachineRunPermissionPolicy
5
- } from "./chunk-PQTSOHBT.js";
5
+ } from "./chunk-X7YLNILS.js";
6
6
  import {
7
7
  isConnectorWebSocketAuthError,
8
8
  isConnectorWebSocketRetryableError,
9
9
  resolveConnectorWebSocketTarget
10
10
  } from "./chunk-ALXHV7NK.js";
11
- import "./chunk-FD5K6MPI.js";
11
+ import "./chunk-JBOO3DKI.js";
12
12
  import "./chunk-O26PCYLS.js";
13
13
  import "./chunk-YUNJN43V.js";
14
14
  import "./chunk-62IL3KQV.js";
@@ -19,7 +19,7 @@ import {
19
19
  import "./chunk-EADNWBAZ.js";
20
20
  import "./chunk-ZYWQNCBN.js";
21
21
  import "./chunk-SV5IJK6K.js";
22
- import "./chunk-Q4GP72HX.js";
22
+ import "./chunk-APMUYAPK.js";
23
23
  import "./chunk-ZOVKKMF6.js";
24
24
  import "./chunk-GLKOYSRU.js";
25
25
  import "./chunk-MP64VFGD.js";
@@ -11,8 +11,8 @@ import {
11
11
  runtimeWorkspacePermissionPolicy,
12
12
  scopePermissionPolicyToRuntimeWorkspace,
13
13
  summarizeAgentConfigForLogs
14
- } from "./chunk-PQTSOHBT.js";
15
- import "./chunk-FD5K6MPI.js";
14
+ } from "./chunk-X7YLNILS.js";
15
+ import "./chunk-JBOO3DKI.js";
16
16
  import "./chunk-O26PCYLS.js";
17
17
  import "./chunk-YUNJN43V.js";
18
18
  import "./chunk-62IL3KQV.js";
@@ -20,7 +20,7 @@ import "./chunk-VIWDGTDA.js";
20
20
  import "./chunk-EADNWBAZ.js";
21
21
  import "./chunk-ZYWQNCBN.js";
22
22
  import "./chunk-SV5IJK6K.js";
23
- import "./chunk-Q4GP72HX.js";
23
+ import "./chunk-APMUYAPK.js";
24
24
  import "./chunk-ZOVKKMF6.js";
25
25
  import "./chunk-GLKOYSRU.js";
26
26
  import "./chunk-MP64VFGD.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nolo-cli",
3
- "version": "0.97.0",
3
+ "version": "0.97.2",
4
4
  "type": "module",
5
5
  "description": "Agent-first terminal workspace for Nolo",
6
6
  "bin": {
@@ -71,7 +71,7 @@ import {
71
71
  wrapTextToLines,
72
72
  wrapTranscriptLine,
73
73
  wrapTranscriptLineWithLayout
74
- } from "./chunk-AQ3I6DZE.js";
74
+ } from "./chunk-PLRLUZWS.js";
75
75
  import "./chunk-VJVNU77E.js";
76
76
  import "./chunk-V7E4PXQD.js";
77
77
  import {
@@ -83,7 +83,7 @@ import {
83
83
  readTimestamp,
84
84
  setCliLocale,
85
85
  t
86
- } from "./chunk-FD5K6MPI.js";
86
+ } from "./chunk-JBOO3DKI.js";
87
87
  import "./chunk-O26PCYLS.js";
88
88
  import "./chunk-YUNJN43V.js";
89
89
  import "./chunk-62IL3KQV.js";
@@ -126,7 +126,7 @@ import {
126
126
  isRunRecordClaimed,
127
127
  listRunRecords,
128
128
  readRunRecord
129
- } from "./chunk-Q4GP72HX.js";
129
+ } from "./chunk-APMUYAPK.js";
130
130
  import "./chunk-EXAJ6DCR.js";
131
131
  import "./chunk-URMS4XY2.js";
132
132
  import "./chunk-ZOVKKMF6.js";