@verboo/code 0.7.22 → 0.7.23

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 +123 -34
  2. package/package.json +1 -1
package/dist/cli.mjs CHANGED
@@ -110762,6 +110762,9 @@ var init_verbooModels = __esm(() => {
110762
110762
 
110763
110763
  // src/utils/fastMode.ts
110764
110764
  function isFastModeEnabled() {
110765
+ if (isVerbooMode()) {
110766
+ return false;
110767
+ }
110765
110768
  if (getAPIProvider() !== "firstParty") {
110766
110769
  return false;
110767
110770
  }
@@ -377197,7 +377200,7 @@ function getAnthropicEnvMetadata() {
377197
377200
  function getBuildAgeMinutes() {
377198
377201
  if (false)
377199
377202
  ;
377200
- const buildTime = new Date("2026-05-02T21:53:28.308Z").getTime();
377203
+ const buildTime = new Date("2026-05-03T13:24:18.096Z").getTime();
377201
377204
  if (isNaN(buildTime))
377202
377205
  return;
377203
377206
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -388018,6 +388021,31 @@ var init_pluginInstallationHelpers = __esm(() => {
388018
388021
  });
388019
388022
 
388020
388023
  // src/utils/plugins/pluginLoader.ts
388024
+ var exports_pluginLoader = {};
388025
+ __export(exports_pluginLoader, {
388026
+ resolvePluginPath: () => resolvePluginPath,
388027
+ probeSeedCacheAnyVersion: () => probeSeedCacheAnyVersion,
388028
+ mergePluginSources: () => mergePluginSources,
388029
+ loadPluginManifest: () => loadPluginManifest,
388030
+ loadAllPluginsCacheOnly: () => loadAllPluginsCacheOnly,
388031
+ loadAllPlugins: () => loadAllPlugins,
388032
+ installFromNpm: () => installFromNpm,
388033
+ installFromGitSubdir: () => installFromGitSubdir,
388034
+ gitClone: () => gitClone2,
388035
+ getVersionedZipCachePath: () => getVersionedZipCachePath,
388036
+ getVersionedCachePathIn: () => getVersionedCachePathIn,
388037
+ getVersionedCachePath: () => getVersionedCachePath,
388038
+ getPluginCachePath: () => getPluginCachePath,
388039
+ getLegacyCachePath: () => getLegacyCachePath,
388040
+ generateTemporaryCacheNameForPlugin: () => generateTemporaryCacheNameForPlugin,
388041
+ createPluginFromPath: () => createPluginFromPath,
388042
+ copyPluginToVersionedCache: () => copyPluginToVersionedCache,
388043
+ copyDir: () => copyDir,
388044
+ clearPluginCache: () => clearPluginCache,
388045
+ cachePluginSettings: () => cachePluginSettings,
388046
+ cachePlugin: () => cachePlugin,
388047
+ areExternalPluginsDisabledForVerboo: () => areExternalPluginsDisabledForVerboo
388048
+ });
388021
388049
  import {
388022
388050
  copyFile as copyFile7,
388023
388051
  readdir as readdir20,
@@ -388073,6 +388101,24 @@ async function probeSeedCacheAnyVersion(pluginId) {
388073
388101
  }
388074
388102
  return null;
388075
388103
  }
388104
+ function getLegacyCachePath(pluginName) {
388105
+ const cachePath = getPluginCachePath();
388106
+ return join98(cachePath, pluginName.replace(/[^a-zA-Z0-9\-_]/g, "-"));
388107
+ }
388108
+ async function resolvePluginPath(pluginId, version2) {
388109
+ if (version2) {
388110
+ const versionedPath = getVersionedCachePath(pluginId, version2);
388111
+ if (await pathExists(versionedPath)) {
388112
+ return versionedPath;
388113
+ }
388114
+ }
388115
+ const pluginName = parsePluginIdentifier(pluginId).name || pluginId;
388116
+ const legacyPath = getLegacyCachePath(pluginName);
388117
+ if (await pathExists(legacyPath)) {
388118
+ return legacyPath;
388119
+ }
388120
+ return version2 ? getVersionedCachePath(pluginId, version2) : legacyPath;
388121
+ }
388076
388122
  async function copyDir(src, dest) {
388077
388123
  await getFsImplementation2().mkdir(dest);
388078
388124
  const entries = await readdir20(src, { withFileTypes: true });
@@ -389543,6 +389589,14 @@ function cachePluginSettings(plugins) {
389543
389589
  logForDebugging2(`Cached plugin settings with keys: ${Object.keys(settings).join(", ")}`);
389544
389590
  }
389545
389591
  }
389592
+ function areExternalPluginsDisabledForVerboo() {
389593
+ return isVerbooMode() && !isEnvTruthy(process.env.VERBOO_ENABLE_PLUGINS);
389594
+ }
389595
+ function getEmptyPluginLoadResultForVerboo() {
389596
+ cachePluginSettings([]);
389597
+ logForDebugging2("Verboo mode: external plugins disabled (set VERBOO_ENABLE_PLUGINS=1 to opt in)");
389598
+ return { enabled: [], disabled: [], errors: [] };
389599
+ }
389546
389600
  function isRecord2(value) {
389547
389601
  return typeof value === "object" && value !== null && !Array.isArray(value);
389548
389602
  }
@@ -389550,6 +389604,7 @@ var PluginSettingsSchema, loadAllPlugins, loadAllPluginsCacheOnly;
389550
389604
  var init_pluginLoader = __esm(() => {
389551
389605
  init_memoize();
389552
389606
  init_state();
389607
+ init_oauth();
389553
389608
  init_builtinPlugins();
389554
389609
  init_debug();
389555
389610
  init_envUtils();
@@ -389580,11 +389635,19 @@ var init_pluginLoader = __esm(() => {
389580
389635
  agent: true
389581
389636
  }).strip());
389582
389637
  loadAllPlugins = memoize_default(async () => {
389638
+ if (areExternalPluginsDisabledForVerboo()) {
389639
+ const result2 = getEmptyPluginLoadResultForVerboo();
389640
+ loadAllPluginsCacheOnly.cache?.set(undefined, Promise.resolve(result2));
389641
+ return result2;
389642
+ }
389583
389643
  const result = await assemblePluginLoadResult(() => loadPluginsFromMarketplaces({ cacheOnly: false }));
389584
389644
  loadAllPluginsCacheOnly.cache?.set(undefined, Promise.resolve(result));
389585
389645
  return result;
389586
389646
  });
389587
389647
  loadAllPluginsCacheOnly = memoize_default(async () => {
389648
+ if (areExternalPluginsDisabledForVerboo()) {
389649
+ return getEmptyPluginLoadResultForVerboo();
389650
+ }
389588
389651
  if (isEnvTruthy(process.env.CLAUDE_CODE_SYNC_PLUGIN_INSTALL)) {
389589
389652
  return loadAllPlugins();
389590
389653
  }
@@ -417743,7 +417806,7 @@ function buildPrimarySection() {
417743
417806
  }, undefined, false, undefined, this);
417744
417807
  return [{
417745
417808
  label: "Version",
417746
- value: "0.7.22"
417809
+ value: "0.7.23"
417747
417810
  }, {
417748
417811
  label: "Session name",
417749
417812
  value: nameValue
@@ -485694,7 +485757,7 @@ var init_bridge_kick = __esm(() => {
485694
485757
  var call60 = async () => {
485695
485758
  return {
485696
485759
  type: "text",
485697
- value: `${"99.0.0"} (built ${"2026-05-02T21:53:28.308Z"})`
485760
+ value: `${"99.0.0"} (built ${"2026-05-03T13:24:18.096Z"})`
485698
485761
  };
485699
485762
  }, version2, version_default;
485700
485763
  var init_version = __esm(() => {
@@ -508678,7 +508741,7 @@ function printStartupScreen(modelOverride) {
508678
508741
  const home = process.env.HOME || process.env.USERPROFILE || "";
508679
508742
  const cwd2 = process.cwd();
508680
508743
  const displayCwd = home && cwd2.startsWith(home) ? `~${cwd2.slice(home.length)}` : cwd2;
508681
- const version3 = "0.7.22";
508744
+ const version3 = "0.7.23";
508682
508745
  const bold2 = `${ESC3}1m`;
508683
508746
  const PURPLE = rgb3(...ACCENT);
508684
508747
  const SOFT = rgb3(...CREAM);
@@ -527950,7 +528013,7 @@ function AutoUpdater({
527950
528013
  return;
527951
528014
  }
527952
528015
  if (false) {}
527953
- const currentVersion = "0.7.22";
528016
+ const currentVersion = "0.7.23";
527954
528017
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
527955
528018
  let latestVersion = await getLatestVersion(channel);
527956
528019
  const isDisabled = isAutoUpdaterDisabled();
@@ -528303,17 +528366,17 @@ function PackageManagerAutoUpdater(t0) {
528303
528366
  const maxVersion = await getMaxVersion();
528304
528367
  if (maxVersion && latest && gt(latest, maxVersion)) {
528305
528368
  logForDebugging2(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
528306
- if (gte("0.7.22", maxVersion)) {
528307
- logForDebugging2(`PackageManagerAutoUpdater: current version ${"0.7.22"} is already at or above maxVersion ${maxVersion}, skipping update`);
528369
+ if (gte("0.7.23", maxVersion)) {
528370
+ logForDebugging2(`PackageManagerAutoUpdater: current version ${"0.7.23"} is already at or above maxVersion ${maxVersion}, skipping update`);
528308
528371
  setUpdateAvailable(false);
528309
528372
  return;
528310
528373
  }
528311
528374
  latest = maxVersion;
528312
528375
  }
528313
- const hasUpdate = latest && !gte("0.7.22", latest) && !shouldSkipVersion(latest);
528376
+ const hasUpdate = latest && !gte("0.7.23", latest) && !shouldSkipVersion(latest);
528314
528377
  setUpdateAvailable(!!hasUpdate);
528315
528378
  if (hasUpdate) {
528316
- logForDebugging2(`PackageManagerAutoUpdater: Update available ${"0.7.22"} -> ${latest}`);
528379
+ logForDebugging2(`PackageManagerAutoUpdater: Update available ${"0.7.23"} -> ${latest}`);
528317
528380
  }
528318
528381
  };
528319
528382
  $2[0] = t1;
@@ -528347,7 +528410,7 @@ function PackageManagerAutoUpdater(t0) {
528347
528410
  wrap: "truncate",
528348
528411
  children: [
528349
528412
  "currentVersion: ",
528350
- "0.7.22"
528413
+ "0.7.23"
528351
528414
  ]
528352
528415
  }, undefined, true, undefined, this);
528353
528416
  $2[3] = verbose;
@@ -546913,6 +546976,32 @@ function useManagePlugins({
546913
546976
  const { addNotification } = useNotifications();
546914
546977
  const initialPluginLoad = import_react279.useCallback(async () => {
546915
546978
  try {
546979
+ if (areExternalPluginsDisabledForVerboo()) {
546980
+ setPluginCommandsState([]);
546981
+ setAppState((prevState) => ({
546982
+ ...prevState,
546983
+ plugins: {
546984
+ ...prevState.plugins,
546985
+ enabled: [],
546986
+ disabled: [],
546987
+ commands: [],
546988
+ errors: prevState.plugins.errors.filter((e2) => e2.source === "lsp-manager")
546989
+ }
546990
+ }));
546991
+ return {
546992
+ enabled_count: 0,
546993
+ disabled_count: 0,
546994
+ inline_count: 0,
546995
+ marketplace_count: 0,
546996
+ error_count: 0,
546997
+ skill_count: 0,
546998
+ agent_count: 0,
546999
+ hook_count: 0,
547000
+ mcp_count: 0,
547001
+ lsp_count: 0,
547002
+ ant_enabled_names: undefined
547003
+ };
547004
+ }
546916
547005
  const { enabled: enabled2, disabled, errors: errors4 } = await loadAllPlugins();
546917
547006
  await detectAndUninstallDelistedPlugins();
546918
547007
  const flagged = getFlaggedPlugins();
@@ -561678,7 +561767,7 @@ function WelcomeV2() {
561678
561767
  dimColor: true,
561679
561768
  children: [
561680
561769
  "v",
561681
- "0.7.22",
561770
+ "0.7.23",
561682
561771
  " "
561683
561772
  ]
561684
561773
  }, undefined, true, undefined, this)
@@ -561865,7 +561954,7 @@ function WelcomeV2() {
561865
561954
  dimColor: true,
561866
561955
  children: [
561867
561956
  "v",
561868
- "0.7.22",
561957
+ "0.7.23",
561869
561958
  " "
561870
561959
  ]
561871
561960
  }, undefined, true, undefined, this)
@@ -562081,7 +562170,7 @@ function AppleTerminalWelcomeV2(t0) {
562081
562170
  dimColor: true,
562082
562171
  children: [
562083
562172
  "v",
562084
- "0.7.22",
562173
+ "0.7.23",
562085
562174
  " "
562086
562175
  ]
562087
562176
  }, undefined, true, undefined, this);
@@ -562290,7 +562379,7 @@ function AppleTerminalWelcomeV2(t0) {
562290
562379
  dimColor: true,
562291
562380
  children: [
562292
562381
  "v",
562293
- "0.7.22",
562382
+ "0.7.23",
562294
562383
  " "
562295
562384
  ]
562296
562385
  }, undefined, true, undefined, this);
@@ -568577,7 +568666,7 @@ To attach: ${source_default.bold(`tmux attach -t ${tmuxSessionName}`)}`));
568577
568666
  logForDiagnosticsNoPII("info", "setup_background_jobs_launched");
568578
568667
  profileCheckpoint("setup_before_prefetch");
568579
568668
  logForDiagnosticsNoPII("info", "setup_prefetch_starting");
568580
- const skipPluginPrefetch = getIsNonInteractiveSession() && isEnvTruthy(process.env.CLAUDE_CODE_SYNC_PLUGIN_INSTALL) || isBareMode();
568669
+ const skipPluginPrefetch = getIsNonInteractiveSession() && isEnvTruthy(process.env.CLAUDE_CODE_SYNC_PLUGIN_INSTALL) || isBareMode() || (await Promise.resolve().then(() => (init_pluginLoader(), exports_pluginLoader))).areExternalPluginsDisabledForVerboo();
568581
568670
  if (!skipPluginPrefetch) {
568582
568671
  getCommands(getProjectRoot());
568583
568672
  }
@@ -580421,7 +580510,7 @@ __export(exports_update, {
580421
580510
  async function update() {
580422
580511
  if (getAPIProvider() !== "firstParty") {
580423
580512
  writeToStdout(source_default.yellow(`Auto-update is not available for third-party provider builds.
580424
- `) + `Current version: ${"0.7.22"}
580513
+ `) + `Current version: ${"0.7.23"}
580425
580514
 
580426
580515
  ` + `To update, reinstall from npm:
580427
580516
  ` + source_default.bold(` npm install -g ${"@verboo/code"}@latest`) + `
@@ -580432,7 +580521,7 @@ async function update() {
580432
580521
  await gracefulShutdown(0);
580433
580522
  }
580434
580523
  logEvent("tengu_update_check", {});
580435
- writeToStdout(`Current version: ${"0.7.22"}
580524
+ writeToStdout(`Current version: ${"0.7.23"}
580436
580525
  `);
580437
580526
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
580438
580527
  writeToStdout(`Checking for updates to ${channel} version...
@@ -580517,8 +580606,8 @@ async function update() {
580517
580606
  writeToStdout(`Claude is managed by Homebrew.
580518
580607
  `);
580519
580608
  const latest = await getLatestVersion(channel);
580520
- if (latest && !gte("0.7.22", latest)) {
580521
- writeToStdout(`Update available: ${"0.7.22"} → ${latest}
580609
+ if (latest && !gte("0.7.23", latest)) {
580610
+ writeToStdout(`Update available: ${"0.7.23"} → ${latest}
580522
580611
  `);
580523
580612
  writeToStdout(`
580524
580613
  `);
@@ -580534,8 +580623,8 @@ async function update() {
580534
580623
  writeToStdout(`Claude is managed by winget.
580535
580624
  `);
580536
580625
  const latest = await getLatestVersion(channel);
580537
- if (latest && !gte("0.7.22", latest)) {
580538
- writeToStdout(`Update available: ${"0.7.22"} → ${latest}
580626
+ if (latest && !gte("0.7.23", latest)) {
580627
+ writeToStdout(`Update available: ${"0.7.23"} → ${latest}
580539
580628
  `);
580540
580629
  writeToStdout(`
580541
580630
  `);
@@ -580551,8 +580640,8 @@ async function update() {
580551
580640
  writeToStdout(`Claude is managed by apk.
580552
580641
  `);
580553
580642
  const latest = await getLatestVersion(channel);
580554
- if (latest && !gte("0.7.22", latest)) {
580555
- writeToStdout(`Update available: ${"0.7.22"} → ${latest}
580643
+ if (latest && !gte("0.7.23", latest)) {
580644
+ writeToStdout(`Update available: ${"0.7.23"} → ${latest}
580556
580645
  `);
580557
580646
  writeToStdout(`
580558
580647
  `);
@@ -580617,11 +580706,11 @@ async function update() {
580617
580706
  `);
580618
580707
  await gracefulShutdown(1);
580619
580708
  }
580620
- if (result.latestVersion === "0.7.22") {
580621
- writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.22"})`) + `
580709
+ if (result.latestVersion === "0.7.23") {
580710
+ writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.23"})`) + `
580622
580711
  `);
580623
580712
  } else {
580624
- writeToStdout(source_default.green(`Successfully updated from ${"0.7.22"} to version ${result.latestVersion}`) + `
580713
+ writeToStdout(source_default.green(`Successfully updated from ${"0.7.23"} to version ${result.latestVersion}`) + `
580625
580714
  `);
580626
580715
  await regenerateCompletionCache();
580627
580716
  }
@@ -580681,12 +580770,12 @@ async function update() {
580681
580770
  `);
580682
580771
  await gracefulShutdown(1);
580683
580772
  }
580684
- if (latestVersion === "0.7.22") {
580685
- writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.22"})`) + `
580773
+ if (latestVersion === "0.7.23") {
580774
+ writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.23"})`) + `
580686
580775
  `);
580687
580776
  await gracefulShutdown(0);
580688
580777
  }
580689
- writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.22"})
580778
+ writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.23"})
580690
580779
  `);
580691
580780
  writeToStdout(`Installing update...
580692
580781
  `);
@@ -580731,7 +580820,7 @@ async function update() {
580731
580820
  logForDebugging2(`update: Installation status: ${status2}`);
580732
580821
  switch (status2) {
580733
580822
  case "success":
580734
- writeToStdout(source_default.green(`Successfully updated from ${"0.7.22"} to version ${latestVersion}`) + `
580823
+ writeToStdout(source_default.green(`Successfully updated from ${"0.7.23"} to version ${latestVersion}`) + `
580735
580824
  `);
580736
580825
  await regenerateCompletionCache();
580737
580826
  break;
@@ -582032,7 +582121,7 @@ ${customInstructions}` : customInstructions;
582032
582121
  }
582033
582122
  });
582034
582123
  });
582035
- if (isBareMode()) {} else if (isNonInteractiveSession) {
582124
+ if (isBareMode() || areExternalPluginsDisabledForVerboo()) {} else if (isNonInteractiveSession) {
582036
582125
  await initializeVersionedPlugins();
582037
582126
  profileCheckpoint("action_after_plugins_init");
582038
582127
  cleanupOrphanedPluginVersionsInBackground().then(() => getGlobExclusionsForPluginCache());
@@ -582785,7 +582874,7 @@ Usage: verboo --remote "your task description"`, () => gracefulShutdown(1));
582785
582874
  pendingHookMessages
582786
582875
  }, renderAndRun);
582787
582876
  }
582788
- }).version(`0.7.22 (${cliDesc})`, "-v, --version", "Output the version number");
582877
+ }).version(`0.7.23 (${cliDesc})`, "-v, --version", "Output the version number");
582789
582878
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
582790
582879
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
582791
582880
  if (canUserConfigureAdvisor()) {
@@ -583356,7 +583445,7 @@ if (false) {}
583356
583445
  async function main2() {
583357
583446
  const args = process.argv.slice(2);
583358
583447
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
583359
- console.log(`${"0.7.22"} (Verboo Code)`);
583448
+ console.log(`${"0.7.23"} (Verboo Code)`);
583360
583449
  return;
583361
583450
  }
583362
583451
  if (!IS_VERBOO_CLI && args.includes("--provider")) {
@@ -583521,4 +583610,4 @@ async function main2() {
583521
583610
  }
583522
583611
  main2();
583523
583612
 
583524
- //# debugId=A8A2D42E58AFDE9964756E2164756E21
583613
+ //# debugId=5E1225A004B8C47164756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verboo/code",
3
- "version": "0.7.22",
3
+ "version": "0.7.23",
4
4
  "description": "Verboo Code — coding agent for the Verboo platform",
5
5
  "type": "module",
6
6
  "bin": {