@vm0/cli 9.169.2 → 9.171.0

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.
@@ -74083,7 +74083,7 @@ if (DSN) {
74083
74083
  init2({
74084
74084
  dsn: DSN,
74085
74085
  environment: process.env.SENTRY_ENVIRONMENT ?? "production",
74086
- release: "9.169.2",
74086
+ release: "9.171.0",
74087
74087
  sendDefaultPii: false,
74088
74088
  tracesSampleRate: 0,
74089
74089
  shutdownTimeout: 500,
@@ -74102,7 +74102,7 @@ if (DSN) {
74102
74102
  }
74103
74103
  });
74104
74104
  setContext("cli", {
74105
- version: "9.169.2",
74105
+ version: "9.171.0",
74106
74106
  command: process.argv.slice(2).join(" ")
74107
74107
  });
74108
74108
  setContext("runtime", {
@@ -74477,6 +74477,12 @@ var FEATURE_SWITCHES = {
74477
74477
  maintainer: "ethan@vm0.ai",
74478
74478
  description: "Enable managed Zero Maps CLI access for geocoding, directions, and places.",
74479
74479
  enabled: true
74480
+ },
74481
+ ["chatArtifactSidebar" /* ChatArtifactSidebar */]: {
74482
+ maintainer: "ethan@vm0.ai",
74483
+ description: "Replace the inline attachment text editor and modal lightbox with a single page-level artifact sidebar (50/50 with the chat thread area, URL-routed via ?artifact=, fullscreen-capable). When on, inline text/markdown attachments render as anchor chips, all preview chips route to the sidebar, and the artifacts drawer is hidden.",
74484
+ enabled: false,
74485
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
74480
74486
  }
74481
74487
  };
74482
74488
  function isFeatureEnabled(key, ctx) {
@@ -98047,9 +98053,8 @@ var slock = {
98047
98053
  deviceAuthUrl: `${SLOCK_API_BASE_URL}/api/auth/device/authorize`,
98048
98054
  tokenUrl: `${SLOCK_API_BASE_URL}/api/auth/device/token`,
98049
98055
  client: {
98050
- clientRegistration: "static",
98051
- clientType: "public",
98052
- clientId: "vm0"
98056
+ clientRegistration: "dynamic",
98057
+ clientType: "public"
98053
98058
  },
98054
98059
  scopes: []
98055
98060
  },
@@ -110993,6 +110998,7 @@ var computerUseCommandErrorCodeSchema = external_exports.enum([
110993
110998
  "screen_recording_unavailable",
110994
110999
  "app_not_found",
110995
111000
  "app_open_failed",
111001
+ "element_action_unsupported",
110996
111002
  "unsupported_command",
110997
111003
  "timeout"
110998
111004
  ]);
@@ -117916,145 +117922,6 @@ function getConnectorTypeForSecretName(name) {
117916
117922
  }
117917
117923
  return null;
117918
117924
  }
117919
- var TOKEN_BOUNDARY = /[_\-\s]+/;
117920
- var CASE_BOUNDARY = /(?<=[a-z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])/;
117921
- var MIN_SCORE = 10;
117922
- function tokenize(input) {
117923
- const tokens = /* @__PURE__ */ new Set();
117924
- for (const chunk of input.split(TOKEN_BOUNDARY)) {
117925
- if (!chunk) continue;
117926
- for (const sub of chunk.split(CASE_BOUNDARY)) {
117927
- const lower = sub.toLowerCase();
117928
- if (lower) tokens.add(lower);
117929
- }
117930
- }
117931
- return tokens;
117932
- }
117933
- function listSecretNames(config4) {
117934
- const names = [];
117935
- for (const method of Object.values(config4.authMethods)) {
117936
- for (const name of Object.keys(getManualGrantFields(method) ?? {})) {
117937
- names.push(name);
117938
- }
117939
- for (const valueRef of Object.values(
117940
- connectorAccessEnvBindings(method.access)
117941
- )) {
117942
- if (valueRef.startsWith("$secrets.")) {
117943
- names.push(valueRef.slice("$secrets.".length));
117944
- }
117945
- }
117946
- }
117947
- return names;
117948
- }
117949
- function findExactMatch(keywordLower, type, config4) {
117950
- if (type.toLowerCase() === keywordLower) {
117951
- return { score: 100, matchedField: "type" };
117952
- }
117953
- for (const envName of Object.keys(getConnectorEnvBindings(type))) {
117954
- if (envName.toLowerCase() === keywordLower) {
117955
- return { score: 90, matchedField: `env:${envName}` };
117956
- }
117957
- }
117958
- if (config4.label.toLowerCase() === keywordLower) {
117959
- return { score: 80, matchedField: "label" };
117960
- }
117961
- const tags = config4.tags ?? [];
117962
- for (const tag of tags) {
117963
- if (tag === keywordLower) {
117964
- return { score: 70, matchedField: `tag:${tag}` };
117965
- }
117966
- }
117967
- return null;
117968
- }
117969
- function findSubstringMatch(keywordLower, type, config4) {
117970
- if (type.toLowerCase().includes(keywordLower)) {
117971
- return { score: 50, matchedField: "type" };
117972
- }
117973
- if (config4.label.toLowerCase().includes(keywordLower)) {
117974
- return { score: 50, matchedField: "label" };
117975
- }
117976
- for (const envName of Object.keys(getConnectorEnvBindings(type))) {
117977
- if (envName.toLowerCase().includes(keywordLower)) {
117978
- return { score: 40, matchedField: `env:${envName}` };
117979
- }
117980
- }
117981
- for (const name of listSecretNames(config4)) {
117982
- if (name.toLowerCase().includes(keywordLower)) {
117983
- return { score: 30, matchedField: `secret:${name}` };
117984
- }
117985
- }
117986
- const tags = config4.tags ?? [];
117987
- for (const tag of tags) {
117988
- if (tag.includes(keywordLower)) {
117989
- return { score: 25, matchedField: `tag:${tag}` };
117990
- }
117991
- }
117992
- return null;
117993
- }
117994
- function collectCandidateTokens(type, config4) {
117995
- const tokens = /* @__PURE__ */ new Set();
117996
- const sources = [
117997
- type,
117998
- config4.label,
117999
- ...Object.keys(getConnectorEnvBindings(type)),
118000
- ...listSecretNames(config4),
118001
- ...config4.tags ?? []
118002
- ];
118003
- for (const source of sources) {
118004
- for (const token of tokenize(source)) {
118005
- tokens.add(token);
118006
- }
118007
- }
118008
- return tokens;
118009
- }
118010
- function findTokenIntersection(keywordTokens, type, config4) {
118011
- const candidateTokens = collectCandidateTokens(type, config4);
118012
- let intersection2 = 0;
118013
- let firstCommon = "";
118014
- for (const token of keywordTokens) {
118015
- if (candidateTokens.has(token)) {
118016
- intersection2++;
118017
- if (!firstCommon) firstCommon = token;
118018
- }
118019
- }
118020
- if (intersection2 === 0) return null;
118021
- return { score: 10 * intersection2, matchedField: `token:${firstCommon}` };
118022
- }
118023
- function scoreConnector(keywordLower, keywordTokens, type, config4) {
118024
- const exact = findExactMatch(keywordLower, type, config4);
118025
- if (exact) return exact;
118026
- const candidates = [];
118027
- const substring = findSubstringMatch(keywordLower, type, config4);
118028
- if (substring) candidates.push(substring);
118029
- const token = findTokenIntersection(keywordTokens, type, config4);
118030
- if (token) candidates.push(token);
118031
- if (candidates.length === 0) return null;
118032
- const best = candidates.reduce((a, b) => {
118033
- return a.score >= b.score ? a : b;
118034
- });
118035
- if (best.score < MIN_SCORE) return null;
118036
- return best;
118037
- }
118038
- function searchConnectors(keyword, limit, filter) {
118039
- const trimmed = keyword.trim();
118040
- if (!trimmed) return { results: [], total: 0 };
118041
- const keywordLower = trimmed.toLowerCase();
118042
- const keywordTokens = tokenize(trimmed);
118043
- const hits = [];
118044
- for (const type of CONNECTOR_TYPE_KEYS) {
118045
- if (filter && !filter(type)) continue;
118046
- const config4 = CONNECTOR_TYPES[type];
118047
- const hit = scoreConnector(keywordLower, keywordTokens, type, config4);
118048
- if (!hit) continue;
118049
- hits.push({ type, score: hit.score, matchedField: hit.matchedField });
118050
- }
118051
- hits.sort((a, b) => {
118052
- if (b.score !== a.score) return b.score - a.score;
118053
- return a.type.localeCompare(b.type);
118054
- });
118055
- const capped = limit > 0 ? hits.slice(0, limit) : hits;
118056
- return { results: capped, total: hits.length };
118057
- }
118058
117925
 
118059
117926
  // ../../packages/connectors/src/firewalls/agentmail.generated.ts
118060
117927
  init_esm_shims();
@@ -135217,7 +135084,6 @@ export {
135217
135084
  hasRequiredScopes,
135218
135085
  getScopeDiff,
135219
135086
  getConnectorTypeForSecretName,
135220
- searchConnectors,
135221
135087
  isFirewallConnectorType,
135222
135088
  getConnectorFirewall,
135223
135089
  resolveFirewallPolicies,
@@ -135251,4 +135117,4 @@ undici/lib/web/fetch/body.js:
135251
135117
  undici/lib/web/websocket/frame.js:
135252
135118
  (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
135253
135119
  */
135254
- //# sourceMappingURL=chunk-CZICABIP.js.map
135120
+ //# sourceMappingURL=chunk-HL3E2RLS.js.map