@hasna/oldpal 0.3.5 → 0.3.7

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/dist/index.js CHANGED
@@ -31256,19 +31256,69 @@ var build_default = TextInput;
31256
31256
 
31257
31257
  // packages/terminal/src/components/Input.tsx
31258
31258
  var jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
31259
- function Input({ onSubmit, isProcessing, queueLength = 0 }) {
31259
+ var COMMANDS = [
31260
+ { name: "/help", description: "show available commands" },
31261
+ { name: "/clear", description: "clear the conversation" },
31262
+ { name: "/model", description: "change the AI model" },
31263
+ { name: "/skills", description: "list available skills" },
31264
+ { name: "/tokens", description: "show token usage" },
31265
+ { name: "/new", description: "start a new conversation" },
31266
+ { name: "/exit", description: "exit oldpal" }
31267
+ ];
31268
+ function Input({ onSubmit, isProcessing, queueLength = 0, commands }) {
31260
31269
  const [value, setValue] = import_react23.useState("");
31270
+ const [selectedIndex, setSelectedIndex] = import_react23.useState(0);
31271
+ const allCommands = import_react23.useMemo(() => {
31272
+ const merged = [...COMMANDS];
31273
+ if (commands) {
31274
+ for (const cmd of commands) {
31275
+ if (!merged.find((c) => c.name === cmd.name)) {
31276
+ merged.push(cmd);
31277
+ }
31278
+ }
31279
+ }
31280
+ return merged.sort((a, b) => a.name.localeCompare(b.name));
31281
+ }, [commands]);
31282
+ const showAutocomplete = value.startsWith("/") && !value.includes(" ");
31283
+ const filteredCommands = import_react23.useMemo(() => {
31284
+ if (!showAutocomplete)
31285
+ return [];
31286
+ const search = value.toLowerCase();
31287
+ return allCommands.filter((cmd) => cmd.name.toLowerCase().startsWith(search));
31288
+ }, [value, showAutocomplete, allCommands]);
31261
31289
  use_input_default((input, key) => {
31290
+ if (key.tab && showAutocomplete && filteredCommands.length > 0) {
31291
+ const selected = filteredCommands[selectedIndex] || filteredCommands[0];
31292
+ setValue(selected.name + " ");
31293
+ setSelectedIndex(0);
31294
+ return;
31295
+ }
31296
+ if (showAutocomplete && filteredCommands.length > 0) {
31297
+ if (key.downArrow) {
31298
+ setSelectedIndex((prev) => Math.min(prev + 1, filteredCommands.length - 1));
31299
+ return;
31300
+ }
31301
+ if (key.upArrow) {
31302
+ setSelectedIndex((prev) => Math.max(prev - 1, 0));
31303
+ return;
31304
+ }
31305
+ }
31262
31306
  if (!value.trim())
31263
31307
  return;
31264
31308
  if ((key.shift || key.ctrl) && key.return) {
31265
31309
  onSubmit(value, "interrupt");
31266
31310
  setValue("");
31311
+ setSelectedIndex(0);
31267
31312
  } else if (key.meta && key.return) {
31268
31313
  onSubmit(value, "queue");
31269
31314
  setValue("");
31315
+ setSelectedIndex(0);
31270
31316
  }
31271
31317
  });
31318
+ const handleChange = (newValue) => {
31319
+ setValue(newValue);
31320
+ setSelectedIndex(0);
31321
+ };
31272
31322
  const handleSubmit = (submittedValue) => {
31273
31323
  if (!submittedValue.trim())
31274
31324
  return;
@@ -31278,6 +31328,7 @@ function Input({ onSubmit, isProcessing, queueLength = 0 }) {
31278
31328
  onSubmit(submittedValue, "normal");
31279
31329
  }
31280
31330
  setValue("");
31331
+ setSelectedIndex(0);
31281
31332
  };
31282
31333
  let prompt = "\u276F";
31283
31334
  let placeholder = "Type a message...";
@@ -31286,21 +31337,53 @@ function Input({ onSubmit, isProcessing, queueLength = 0 }) {
31286
31337
  placeholder = queueLength > 0 ? "Type to queue another..." : "Type to queue (Enter) or interrupt (Shift+Enter)...";
31287
31338
  }
31288
31339
  return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Box_default, {
31340
+ flexDirection: "column",
31289
31341
  marginTop: 1,
31290
31342
  children: [
31291
- /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Text, {
31292
- dimColor: isProcessing,
31343
+ showAutocomplete && filteredCommands.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Box_default, {
31344
+ flexDirection: "column",
31345
+ marginBottom: 1,
31346
+ marginLeft: 2,
31293
31347
  children: [
31294
- prompt,
31295
- " "
31348
+ filteredCommands.slice(0, 8).map((cmd, i) => /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Box_default, {
31349
+ children: [
31350
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Text, {
31351
+ color: i === selectedIndex ? "cyan" : undefined,
31352
+ children: cmd.name.padEnd(16)
31353
+ }, undefined, false, undefined, this),
31354
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Text, {
31355
+ dimColor: i !== selectedIndex,
31356
+ children: cmd.description
31357
+ }, undefined, false, undefined, this)
31358
+ ]
31359
+ }, cmd.name, true, undefined, this)),
31360
+ filteredCommands.length > 8 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Text, {
31361
+ dimColor: true,
31362
+ children: [
31363
+ " ...and ",
31364
+ filteredCommands.length - 8,
31365
+ " more"
31366
+ ]
31367
+ }, undefined, true, undefined, this)
31296
31368
  ]
31297
31369
  }, undefined, true, undefined, this),
31298
- /* @__PURE__ */ jsx_dev_runtime.jsxDEV(build_default, {
31299
- value,
31300
- onChange: setValue,
31301
- onSubmit: handleSubmit,
31302
- placeholder
31303
- }, undefined, false, undefined, this)
31370
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Box_default, {
31371
+ children: [
31372
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Text, {
31373
+ dimColor: isProcessing,
31374
+ children: [
31375
+ prompt,
31376
+ " "
31377
+ ]
31378
+ }, undefined, true, undefined, this),
31379
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(build_default, {
31380
+ value,
31381
+ onChange: handleChange,
31382
+ onSubmit: handleSubmit,
31383
+ placeholder
31384
+ }, undefined, false, undefined, this)
31385
+ ]
31386
+ }, undefined, true, undefined, this)
31304
31387
  ]
31305
31388
  }, undefined, true, undefined, this);
31306
31389
  }
@@ -31353,12 +31436,20 @@ function Messages4({
31353
31436
  const endIndex = messages.length - scrollOffset;
31354
31437
  const startIndex = Math.max(0, endIndex - maxVisible);
31355
31438
  const visibleMessages = messages.slice(startIndex, endIndex);
31439
+ const groupedMessages = groupConsecutiveToolMessages(visibleMessages);
31356
31440
  return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Box_default, {
31357
31441
  flexDirection: "column",
31358
31442
  children: [
31359
- visibleMessages.map((message) => /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(MessageBubble, {
31360
- message
31361
- }, message.id, false, undefined, this)),
31443
+ groupedMessages.map((group) => {
31444
+ if (group.type === "single") {
31445
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(MessageBubble, {
31446
+ message: group.message
31447
+ }, group.message.id, false, undefined, this);
31448
+ }
31449
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(CombinedToolMessage, {
31450
+ messages: group.messages
31451
+ }, group.messages[0].id, false, undefined, this);
31452
+ }),
31362
31453
  activityLog.map((entry) => {
31363
31454
  if (entry.type === "text" && entry.content) {
31364
31455
  return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Box_default, {
@@ -31397,6 +31488,56 @@ function Messages4({
31397
31488
  ]
31398
31489
  }, undefined, true, undefined, this);
31399
31490
  }
31491
+ function groupConsecutiveToolMessages(messages) {
31492
+ const groups = [];
31493
+ let currentToolGroup = [];
31494
+ for (const msg of messages) {
31495
+ const isToolOnlyAssistant = msg.role === "assistant" && (!msg.content || !msg.content.trim()) && msg.toolCalls && msg.toolCalls.length > 0;
31496
+ if (isToolOnlyAssistant) {
31497
+ currentToolGroup.push(msg);
31498
+ } else {
31499
+ if (currentToolGroup.length > 0) {
31500
+ if (currentToolGroup.length === 1) {
31501
+ groups.push({ type: "single", message: currentToolGroup[0] });
31502
+ } else {
31503
+ groups.push({ type: "grouped", messages: currentToolGroup });
31504
+ }
31505
+ currentToolGroup = [];
31506
+ }
31507
+ groups.push({ type: "single", message: msg });
31508
+ }
31509
+ }
31510
+ if (currentToolGroup.length > 0) {
31511
+ if (currentToolGroup.length === 1) {
31512
+ groups.push({ type: "single", message: currentToolGroup[0] });
31513
+ } else {
31514
+ groups.push({ type: "grouped", messages: currentToolGroup });
31515
+ }
31516
+ }
31517
+ return groups;
31518
+ }
31519
+ function CombinedToolMessage({ messages }) {
31520
+ const allToolCalls = [];
31521
+ for (const msg of messages) {
31522
+ if (msg.toolCalls) {
31523
+ allToolCalls.push(...msg.toolCalls);
31524
+ }
31525
+ }
31526
+ const summary = getToolSummary(allToolCalls);
31527
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Box_default, {
31528
+ marginY: 1,
31529
+ children: [
31530
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Text, {
31531
+ dimColor: true,
31532
+ children: "\u25CF "
31533
+ }, undefined, false, undefined, this),
31534
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Text, {
31535
+ dimColor: true,
31536
+ children: summary
31537
+ }, undefined, false, undefined, this)
31538
+ ]
31539
+ }, undefined, true, undefined, this);
31540
+ }
31400
31541
  function MessageBubble({ message }) {
31401
31542
  const isUser = message.role === "user";
31402
31543
  const isSystem = message.role === "system";
@@ -31579,29 +31720,33 @@ function truncate(text, maxLength) {
31579
31720
  // packages/terminal/src/components/Status.tsx
31580
31721
  var jsx_dev_runtime4 = __toESM(require_jsx_dev_runtime(), 1);
31581
31722
  function Status({ isProcessing, cwd: cwd2, queueLength = 0, tokenUsage }) {
31582
- const maxCwdLength = 30;
31583
- const displayCwd = cwd2.length > maxCwdLength ? "..." + cwd2.slice(-(maxCwdLength - 3)) : cwd2;
31584
- const queueInfo = queueLength > 0 ? ` | ${queueLength} queued` : "";
31585
- let tokenInfo = "";
31586
- if (tokenUsage && tokenUsage.totalTokens > 0) {
31587
- const used = Math.round(tokenUsage.totalTokens / 1000);
31588
- const max = Math.round(tokenUsage.maxContextTokens / 1000);
31723
+ let contextInfo = "";
31724
+ if (tokenUsage && tokenUsage.maxContextTokens > 0) {
31589
31725
  const percent = Math.round(tokenUsage.totalTokens / tokenUsage.maxContextTokens * 100);
31590
- tokenInfo = ` | ${used}k/${max}k (${percent}%)`;
31726
+ contextInfo = `${percent}% context used`;
31591
31727
  }
31592
31728
  return /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Box_default, {
31593
31729
  marginTop: 1,
31594
- children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Text, {
31595
- dimColor: true,
31596
- children: [
31597
- displayCwd,
31598
- tokenInfo,
31599
- queueInfo,
31600
- isProcessing && " | Esc to stop",
31601
- " | Ctrl+C to exit | /help"
31602
- ]
31603
- }, undefined, true, undefined, this)
31604
- }, undefined, false, undefined, this);
31730
+ justifyContent: "space-between",
31731
+ children: [
31732
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Text, {
31733
+ dimColor: true,
31734
+ children: "/help for commands"
31735
+ }, undefined, false, undefined, this),
31736
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Box_default, {
31737
+ children: [
31738
+ isProcessing && /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Text, {
31739
+ dimColor: true,
31740
+ children: "esc to stop \xB7 "
31741
+ }, undefined, false, undefined, this),
31742
+ contextInfo && /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Text, {
31743
+ dimColor: true,
31744
+ children: contextInfo
31745
+ }, undefined, false, undefined, this)
31746
+ ]
31747
+ }, undefined, true, undefined, this)
31748
+ ]
31749
+ }, undefined, true, undefined, this);
31605
31750
  }
31606
31751
 
31607
31752
  // node_modules/.pnpm/ink-spinner@5.0.0_ink@5.2.1_@types+react@18.3.27_react-devtools-core@4.28.5_react@18.3.1__react@18.3.1/node_modules/ink-spinner/build/index.js
@@ -31848,8 +31993,74 @@ function useToolCallExpansion() {
31848
31993
  return { isExpanded, setIsExpanded };
31849
31994
  }
31850
31995
 
31851
- // packages/terminal/src/components/App.tsx
31996
+ // packages/terminal/src/components/WelcomeBanner.tsx
31852
31997
  var jsx_dev_runtime8 = __toESM(require_jsx_dev_runtime(), 1);
31998
+ function WelcomeBanner({ version, model, directory }) {
31999
+ const homeDir = process.env.HOME || "";
32000
+ const displayDir = directory.startsWith(homeDir) ? "~" + directory.slice(homeDir.length) : directory;
32001
+ return /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32002
+ flexDirection: "column",
32003
+ marginBottom: 1,
32004
+ children: [
32005
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32006
+ children: [
32007
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32008
+ color: "cyan",
32009
+ bold: true,
32010
+ children: ">"
32011
+ }, undefined, false, undefined, this),
32012
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32013
+ color: "cyan",
32014
+ bold: true,
32015
+ children: "_ "
32016
+ }, undefined, false, undefined, this),
32017
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32018
+ bold: true,
32019
+ children: "oldpal"
32020
+ }, undefined, false, undefined, this),
32021
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32022
+ dimColor: true,
32023
+ children: [
32024
+ " (v",
32025
+ version,
32026
+ ")"
32027
+ ]
32028
+ }, undefined, true, undefined, this)
32029
+ ]
32030
+ }, undefined, true, undefined, this),
32031
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32032
+ marginTop: 1,
32033
+ children: [
32034
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32035
+ dimColor: true,
32036
+ children: "model: "
32037
+ }, undefined, false, undefined, this),
32038
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32039
+ children: model
32040
+ }, undefined, false, undefined, this),
32041
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32042
+ dimColor: true,
32043
+ children: " /model to change"
32044
+ }, undefined, false, undefined, this)
32045
+ ]
32046
+ }, undefined, true, undefined, this),
32047
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32048
+ children: [
32049
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32050
+ dimColor: true,
32051
+ children: "directory: "
32052
+ }, undefined, false, undefined, this),
32053
+ /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32054
+ children: displayDir
32055
+ }, undefined, false, undefined, this)
32056
+ ]
32057
+ }, undefined, true, undefined, this)
32058
+ ]
32059
+ }, undefined, true, undefined, this);
32060
+ }
32061
+
32062
+ // packages/terminal/src/components/App.tsx
32063
+ var jsx_dev_runtime9 = __toESM(require_jsx_dev_runtime(), 1);
31853
32064
  function App2({ cwd: cwd2 }) {
31854
32065
  const { exit } = use_app_default();
31855
32066
  const [client, setClient] = import_react27.useState(null);
@@ -32135,10 +32346,10 @@ function App2({ cwd: cwd2 }) {
32135
32346
  await client.send(trimmedInput);
32136
32347
  }, [client, isProcessing]);
32137
32348
  if (isInitializing) {
32138
- return /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32349
+ return /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Box_default, {
32139
32350
  flexDirection: "column",
32140
32351
  padding: 1,
32141
- children: /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Spinner2, {
32352
+ children: /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Spinner2, {
32142
32353
  label: "Initializing..."
32143
32354
  }, undefined, false, undefined, this)
32144
32355
  }, undefined, false, undefined, this);
@@ -32148,12 +32359,18 @@ function App2({ cwd: cwd2 }) {
32148
32359
  return { toolCall: e.toolCall, result };
32149
32360
  });
32150
32361
  const isThinking = isProcessing && !currentResponse && !currentToolCall && toolCallEntries.length === 0;
32151
- return /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32362
+ const showWelcome = messages.length === 0 && !isProcessing;
32363
+ return /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Box_default, {
32152
32364
  flexDirection: "column",
32153
32365
  padding: 1,
32154
32366
  children: [
32155
- scrollOffset > 0 && /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32156
- children: /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32367
+ showWelcome && /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(WelcomeBanner, {
32368
+ version: "0.3.7",
32369
+ model: "claude-sonnet-4-20250514",
32370
+ directory: cwd2
32371
+ }, undefined, false, undefined, this),
32372
+ scrollOffset > 0 && /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Box_default, {
32373
+ children: /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Text, {
32157
32374
  dimColor: true,
32158
32375
  children: [
32159
32376
  "\u2191 ",
@@ -32162,7 +32379,7 @@ function App2({ cwd: cwd2 }) {
32162
32379
  ]
32163
32380
  }, undefined, true, undefined, this)
32164
32381
  }, undefined, false, undefined, this),
32165
- /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Messages4, {
32382
+ /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Messages4, {
32166
32383
  messages,
32167
32384
  currentResponse: isProcessing ? currentResponse : undefined,
32168
32385
  currentToolCall: undefined,
@@ -32171,14 +32388,14 @@ function App2({ cwd: cwd2 }) {
32171
32388
  scrollOffset,
32172
32389
  maxVisible: maxVisibleMessages
32173
32390
  }, undefined, false, undefined, this),
32174
- isProcessing && toolCallEntries.length > 0 && /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(ToolCallBox, {
32391
+ isProcessing && toolCallEntries.length > 0 && /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(ToolCallBox, {
32175
32392
  entries: toolCallEntries,
32176
32393
  maxVisible: 3,
32177
32394
  isExpanded: toolsExpanded
32178
32395
  }, undefined, false, undefined, this),
32179
- messageQueue.length > 0 && /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32396
+ messageQueue.length > 0 && /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Box_default, {
32180
32397
  marginY: 1,
32181
- children: /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32398
+ children: /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Text, {
32182
32399
  dimColor: true,
32183
32400
  children: [
32184
32401
  messageQueue.length,
@@ -32188,9 +32405,9 @@ function App2({ cwd: cwd2 }) {
32188
32405
  ]
32189
32406
  }, undefined, true, undefined, this)
32190
32407
  }, undefined, false, undefined, this),
32191
- error && /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Box_default, {
32408
+ error && /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Box_default, {
32192
32409
  marginY: 1,
32193
- children: /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Text, {
32410
+ children: /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Text, {
32194
32411
  color: "red",
32195
32412
  children: [
32196
32413
  "Error: ",
@@ -32198,18 +32415,18 @@ function App2({ cwd: cwd2 }) {
32198
32415
  ]
32199
32416
  }, undefined, true, undefined, this)
32200
32417
  }, undefined, false, undefined, this),
32201
- /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(ProcessingIndicator, {
32418
+ /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(ProcessingIndicator, {
32202
32419
  isProcessing,
32203
32420
  startTime: processingStartTime,
32204
32421
  tokenCount: currentTurnTokens,
32205
32422
  isThinking
32206
32423
  }, undefined, false, undefined, this),
32207
- /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Input, {
32424
+ /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Input, {
32208
32425
  onSubmit: handleSubmit,
32209
32426
  isProcessing,
32210
32427
  queueLength: messageQueue.length
32211
32428
  }, undefined, false, undefined, this),
32212
- /* @__PURE__ */ jsx_dev_runtime8.jsxDEV(Status, {
32429
+ /* @__PURE__ */ jsx_dev_runtime9.jsxDEV(Status, {
32213
32430
  isProcessing,
32214
32431
  cwd: cwd2,
32215
32432
  queueLength: messageQueue.length,
@@ -32220,7 +32437,7 @@ function App2({ cwd: cwd2 }) {
32220
32437
  }
32221
32438
 
32222
32439
  // packages/terminal/src/index.tsx
32223
- var jsx_dev_runtime9 = __toESM(require_jsx_dev_runtime(), 1);
32440
+ var jsx_dev_runtime10 = __toESM(require_jsx_dev_runtime(), 1);
32224
32441
  var args = process.argv.slice(2);
32225
32442
  var options = {
32226
32443
  cwd: process.cwd(),
@@ -32228,7 +32445,7 @@ var options = {
32228
32445
  help: args.includes("--help") || args.includes("-h")
32229
32446
  };
32230
32447
  if (options.version) {
32231
- console.log("oldpal v0.3.5");
32448
+ console.log("oldpal v0.3.7");
32232
32449
  process.exit(0);
32233
32450
  }
32234
32451
  if (options.help) {
@@ -32252,11 +32469,11 @@ In interactive mode:
32252
32469
  `);
32253
32470
  process.exit(0);
32254
32471
  }
32255
- var { waitUntilExit } = render_default(/* @__PURE__ */ jsx_dev_runtime9.jsxDEV(App2, {
32472
+ var { waitUntilExit } = render_default(/* @__PURE__ */ jsx_dev_runtime10.jsxDEV(App2, {
32256
32473
  cwd: options.cwd
32257
32474
  }, undefined, false, undefined, this));
32258
32475
  waitUntilExit().then(() => {
32259
32476
  process.exit(0);
32260
32477
  });
32261
32478
 
32262
- //# debugId=0403F5F696FDA15E64756E2164756E21
32479
+ //# debugId=19B04C4EDDB63EDD64756E2164756E21