@verboo/code 0.7.13 → 0.7.15

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 (2) hide show
  1. package/dist/cli.mjs +57 -28
  2. package/package.json +1 -1
package/dist/cli.mjs CHANGED
@@ -115518,7 +115518,7 @@ function printStartupScreen(modelOverride) {
115518
115518
  const home = process.env.HOME || process.env.USERPROFILE || "";
115519
115519
  const cwd2 = process.cwd();
115520
115520
  const displayCwd = home && cwd2.startsWith(home) ? `~${cwd2.slice(home.length)}` : cwd2;
115521
- const version2 = "0.7.13";
115521
+ const version2 = "0.7.15";
115522
115522
  const bold2 = `${ESC}1m`;
115523
115523
  const PURPLE = rgb(...ACCENT);
115524
115524
  const SOFT = rgb(...CREAM);
@@ -193526,8 +193526,13 @@ async function* openaiStreamToAnthropic(response, model, signal) {
193526
193526
  return;
193527
193527
  const decoder = new TextDecoder;
193528
193528
  let buffer = "";
193529
- const STREAM_IDLE_TIMEOUT_MS = 120000;
193529
+ const STREAM_IDLE_TIMEOUT_MS = (() => {
193530
+ const raw = process.env.VERBOO_STREAM_IDLE_TIMEOUT_MS;
193531
+ const v = raw ? parseInt(raw, 10) : NaN;
193532
+ return Number.isFinite(v) && v > 0 ? v : 600000;
193533
+ })();
193530
193534
  let lastDataTime = Date.now();
193535
+ const streamStartedAt = Date.now();
193531
193536
  async function readWithTimeout() {
193532
193537
  return new Promise((resolve19, reject) => {
193533
193538
  const timeoutId = setTimeout(() => {
@@ -193577,8 +193582,20 @@ async function* openaiStreamToAnthropic(response, model, signal) {
193577
193582
  try {
193578
193583
  while (true) {
193579
193584
  const { done, value } = await readWithTimeout();
193580
- if (done)
193585
+ if (done) {
193586
+ if (!hasProcessedFinishReason) {
193587
+ const elapsedSec = Math.round((Date.now() - streamStartedAt) / 1000);
193588
+ logForDebugging2(JSON.stringify({
193589
+ type: "premature_stream_close",
193590
+ model,
193591
+ total_chunks: getStreamStats(streamState).totalChunks,
193592
+ duration_ms: Date.now() - streamStartedAt,
193593
+ had_content: hasEmittedContentStart || hasEmittedThinkingStart
193594
+ }), { level: "error" });
193595
+ throw new Error(`Upstream stream closed without finish_reason after ${elapsedSec}s — likely a guard_proxy/vLLM disconnect. The session was interrupted, not completed.`);
193596
+ }
193581
193597
  break;
193598
+ }
193582
193599
  buffer += decoder.decode(value, { stream: true });
193583
193600
  const lines = buffer.split(`
193584
193601
  `);
@@ -376813,7 +376830,7 @@ function getAnthropicEnvMetadata() {
376813
376830
  function getBuildAgeMinutes() {
376814
376831
  if (false)
376815
376832
  ;
376816
- const buildTime = new Date("2026-05-01T21:26:42.802Z").getTime();
376833
+ const buildTime = new Date("2026-05-01T23:27:17.352Z").getTime();
376817
376834
  if (isNaN(buildTime))
376818
376835
  return;
376819
376836
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -417349,7 +417366,7 @@ function buildPrimarySection() {
417349
417366
  }, undefined, false, undefined, this);
417350
417367
  return [{
417351
417368
  label: "Version",
417352
- value: "0.7.13"
417369
+ value: "0.7.15"
417353
417370
  }, {
417354
417371
  label: "Session name",
417355
417372
  value: nameValue
@@ -485299,7 +485316,7 @@ var init_bridge_kick = __esm(() => {
485299
485316
  var call60 = async () => {
485300
485317
  return {
485301
485318
  type: "text",
485302
- value: `${"99.0.0"} (built ${"2026-05-01T21:26:42.802Z"})`
485319
+ value: `${"99.0.0"} (built ${"2026-05-01T23:27:17.352Z"})`
485303
485320
  };
485304
485321
  }, version2, version_default;
485305
485322
  var init_version = __esm(() => {
@@ -550709,6 +550726,18 @@ ${blue2(`/plugin install vercel@${OFFICIAL_MARKETPLACE_NAME}`)}`;
550709
550726
  const config3 = getGlobalConfig();
550710
550727
  return config3.numStartups > 5;
550711
550728
  }
550729
+ },
550730
+ {
550731
+ id: "karpathy-guidelines",
550732
+ content: async (ctx) => {
550733
+ const blue2 = color("suggestion", ctx.theme);
550734
+ return `Use ${blue2("/karpathy-guidelines")} to apply Andrej Karpathy's coding principles: think before coding, simplicity first, surgical changes`;
550735
+ },
550736
+ cooldownSessions: 20,
550737
+ async isRelevant() {
550738
+ const config3 = getGlobalConfig();
550739
+ return config3.numStartups > 3;
550740
+ }
550712
550741
  }
550713
550742
  ];
550714
550743
  internalOnlyTips = [];
@@ -561069,7 +561098,7 @@ function WelcomeV2() {
561069
561098
  dimColor: true,
561070
561099
  children: [
561071
561100
  "v",
561072
- "0.7.13",
561101
+ "0.7.15",
561073
561102
  " "
561074
561103
  ]
561075
561104
  }, undefined, true, undefined, this)
@@ -561256,7 +561285,7 @@ function WelcomeV2() {
561256
561285
  dimColor: true,
561257
561286
  children: [
561258
561287
  "v",
561259
- "0.7.13",
561288
+ "0.7.15",
561260
561289
  " "
561261
561290
  ]
561262
561291
  }, undefined, true, undefined, this)
@@ -561472,7 +561501,7 @@ function AppleTerminalWelcomeV2(t0) {
561472
561501
  dimColor: true,
561473
561502
  children: [
561474
561503
  "v",
561475
- "0.7.13",
561504
+ "0.7.15",
561476
561505
  " "
561477
561506
  ]
561478
561507
  }, undefined, true, undefined, this);
@@ -561681,7 +561710,7 @@ function AppleTerminalWelcomeV2(t0) {
561681
561710
  dimColor: true,
561682
561711
  children: [
561683
561712
  "v",
561684
- "0.7.13",
561713
+ "0.7.15",
561685
561714
  " "
561686
561715
  ]
561687
561716
  }, undefined, true, undefined, this);
@@ -579812,7 +579841,7 @@ __export(exports_update, {
579812
579841
  async function update() {
579813
579842
  if (getAPIProvider() !== "firstParty") {
579814
579843
  writeToStdout(source_default.yellow(`Auto-update is not available for third-party provider builds.
579815
- `) + `Current version: ${"0.7.13"}
579844
+ `) + `Current version: ${"0.7.15"}
579816
579845
 
579817
579846
  ` + `To update, reinstall from npm:
579818
579847
  ` + source_default.bold(` npm install -g ${"@verboo/code"}@latest`) + `
@@ -579823,7 +579852,7 @@ async function update() {
579823
579852
  await gracefulShutdown(0);
579824
579853
  }
579825
579854
  logEvent("tengu_update_check", {});
579826
- writeToStdout(`Current version: ${"0.7.13"}
579855
+ writeToStdout(`Current version: ${"0.7.15"}
579827
579856
  `);
579828
579857
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
579829
579858
  writeToStdout(`Checking for updates to ${channel} version...
@@ -579908,8 +579937,8 @@ async function update() {
579908
579937
  writeToStdout(`Claude is managed by Homebrew.
579909
579938
  `);
579910
579939
  const latest = await getLatestVersion(channel);
579911
- if (latest && !gte("0.7.13", latest)) {
579912
- writeToStdout(`Update available: ${"0.7.13"} → ${latest}
579940
+ if (latest && !gte("0.7.15", latest)) {
579941
+ writeToStdout(`Update available: ${"0.7.15"} → ${latest}
579913
579942
  `);
579914
579943
  writeToStdout(`
579915
579944
  `);
@@ -579925,8 +579954,8 @@ async function update() {
579925
579954
  writeToStdout(`Claude is managed by winget.
579926
579955
  `);
579927
579956
  const latest = await getLatestVersion(channel);
579928
- if (latest && !gte("0.7.13", latest)) {
579929
- writeToStdout(`Update available: ${"0.7.13"} → ${latest}
579957
+ if (latest && !gte("0.7.15", latest)) {
579958
+ writeToStdout(`Update available: ${"0.7.15"} → ${latest}
579930
579959
  `);
579931
579960
  writeToStdout(`
579932
579961
  `);
@@ -579942,8 +579971,8 @@ async function update() {
579942
579971
  writeToStdout(`Claude is managed by apk.
579943
579972
  `);
579944
579973
  const latest = await getLatestVersion(channel);
579945
- if (latest && !gte("0.7.13", latest)) {
579946
- writeToStdout(`Update available: ${"0.7.13"} → ${latest}
579974
+ if (latest && !gte("0.7.15", latest)) {
579975
+ writeToStdout(`Update available: ${"0.7.15"} → ${latest}
579947
579976
  `);
579948
579977
  writeToStdout(`
579949
579978
  `);
@@ -580008,11 +580037,11 @@ async function update() {
580008
580037
  `);
580009
580038
  await gracefulShutdown(1);
580010
580039
  }
580011
- if (result.latestVersion === "0.7.13") {
580012
- writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.13"})`) + `
580040
+ if (result.latestVersion === "0.7.15") {
580041
+ writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.15"})`) + `
580013
580042
  `);
580014
580043
  } else {
580015
- writeToStdout(source_default.green(`Successfully updated from ${"0.7.13"} to version ${result.latestVersion}`) + `
580044
+ writeToStdout(source_default.green(`Successfully updated from ${"0.7.15"} to version ${result.latestVersion}`) + `
580016
580045
  `);
580017
580046
  await regenerateCompletionCache();
580018
580047
  }
@@ -580072,12 +580101,12 @@ async function update() {
580072
580101
  `);
580073
580102
  await gracefulShutdown(1);
580074
580103
  }
580075
- if (latestVersion === "0.7.13") {
580076
- writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.13"})`) + `
580104
+ if (latestVersion === "0.7.15") {
580105
+ writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.15"})`) + `
580077
580106
  `);
580078
580107
  await gracefulShutdown(0);
580079
580108
  }
580080
- writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.13"})
580109
+ writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.15"})
580081
580110
  `);
580082
580111
  writeToStdout(`Installing update...
580083
580112
  `);
@@ -580122,7 +580151,7 @@ async function update() {
580122
580151
  logForDebugging2(`update: Installation status: ${status2}`);
580123
580152
  switch (status2) {
580124
580153
  case "success":
580125
- writeToStdout(source_default.green(`Successfully updated from ${"0.7.13"} to version ${latestVersion}`) + `
580154
+ writeToStdout(source_default.green(`Successfully updated from ${"0.7.15"} to version ${latestVersion}`) + `
580126
580155
  `);
580127
580156
  await regenerateCompletionCache();
580128
580157
  break;
@@ -582175,7 +582204,7 @@ Usage: verboo --remote "your task description"`, () => gracefulShutdown(1));
582175
582204
  pendingHookMessages
582176
582205
  }, renderAndRun);
582177
582206
  }
582178
- }).version(`0.7.13 (${cliDesc})`, "-v, --version", "Output the version number");
582207
+ }).version(`0.7.15 (${cliDesc})`, "-v, --version", "Output the version number");
582179
582208
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
582180
582209
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
582181
582210
  if (canUserConfigureAdvisor()) {
@@ -582743,7 +582772,7 @@ if (false) {}
582743
582772
  async function main2() {
582744
582773
  const args = process.argv.slice(2);
582745
582774
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
582746
- console.log(`${"0.7.13"} (Verboo Code)`);
582775
+ console.log(`${"0.7.15"} (Verboo Code)`);
582747
582776
  return;
582748
582777
  }
582749
582778
  if (args.includes("--provider")) {
@@ -582899,4 +582928,4 @@ async function main2() {
582899
582928
  }
582900
582929
  main2();
582901
582930
 
582902
- //# debugId=85C039292D955A7B64756E2164756E21
582931
+ //# debugId=B263602A81EA817364756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verboo/code",
3
- "version": "0.7.13",
3
+ "version": "0.7.15",
4
4
  "description": "Verboo Code — coding agent for the Verboo platform",
5
5
  "type": "module",
6
6
  "bin": {