@vltpkg/cli-js 1.3.8 → 1.5.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.
Files changed (99) hide show
  1. package/{access-WLKANIOE.js → access-QPX4QXV4.js} +13 -12
  2. package/{bugs-5Q3QSTWP.js → bugs-TLOECXEM.js} +28 -25
  3. package/{build-XSFR63AW.js → build-IQOS3LKO.js} +28 -19
  4. package/{cache-UVPK5J5A.js → cache-O5IBYYSB.js} +35 -23
  5. package/cache-unzip-src-unzip.js +56 -12
  6. package/{chunk-NWHKSRO3.js → chunk-2U4PVHP4.js} +5270 -10837
  7. package/{chunk-5KOLUYXH.js → chunk-35EG6T3J.js} +61 -15
  8. package/{chunk-PJJCFMLW.js → chunk-3S3W7QEM.js} +7 -5
  9. package/chunk-43EJ4Q42.js +57 -0
  10. package/{chunk-IHXJVKAE.js → chunk-4TSHLSRK.js} +2 -1
  11. package/chunk-4UH3KMTD.js +6444 -0
  12. package/{chunk-6D54UN4T.js → chunk-5KW6AOTT.js} +1 -1
  13. package/chunk-6IF3RJND.js +81 -0
  14. package/{chunk-IBGFQR23.js → chunk-6LZM3I4Q.js} +56 -11
  15. package/{chunk-FIUUAQGC.js → chunk-6W5XMVIZ.js} +29 -22
  16. package/{chunk-OWMR2EDW.js → chunk-7UWRR6EE.js} +2 -2
  17. package/{chunk-WHLYMMI2.js → chunk-ARE7FKDG.js} +6 -4
  18. package/chunk-B6RIGNEO.js +626 -0
  19. package/{chunk-CB65DPZ2.js → chunk-C6ZVVEFV.js} +239 -1190
  20. package/{chunk-SE2FSMBR.js → chunk-CMLDLZZ3.js} +73 -11
  21. package/{chunk-6P5CFJR7.js → chunk-CS6AYPY5.js} +6 -6
  22. package/{chunk-TLY4VGMH.js → chunk-CW56EJIL.js} +1 -1
  23. package/{chunk-SV4WK3KX.js → chunk-F7NPYSI2.js} +3 -2
  24. package/{chunk-6BQKR2FM.js → chunk-G3FZ2ZJK.js} +1 -1
  25. package/chunk-GUP55DM6.js +59 -0
  26. package/chunk-HOF7LEIC.js +24 -0
  27. package/chunk-IFEZ6BFV.js +1111 -0
  28. package/{chunk-3U6QWN62.js → chunk-IJUVVD7E.js} +1 -1
  29. package/{chunk-H77JYU7F.js → chunk-ISAMD2FE.js} +12 -3
  30. package/{chunk-WKA5UYNA.js → chunk-LH7J5BDU.js} +5 -5
  31. package/{chunk-GZ5MYMBT.js → chunk-LUVDMEW4.js} +1 -1
  32. package/{chunk-OAP2ROTL.js → chunk-MYX4JCIJ.js} +1 -1
  33. package/{chunk-APMYKJI2.js → chunk-QNHBAGXQ.js} +1 -1
  34. package/{chunk-XCDLOQZZ.js → chunk-SMXXFQPI.js} +80 -29
  35. package/chunk-SUU2WETN.js +268 -0
  36. package/chunk-T2VBCUF5.js +77 -0
  37. package/{chunk-EL4GVZK5.js → chunk-T5EP7QEF.js} +2 -2
  38. package/{chunk-A2TSRXZD.js → chunk-UZ6ICZE3.js} +1 -1
  39. package/{chunk-DL3H4EMY.js → chunk-VR7NRWAD.js} +29 -20
  40. package/chunk-W4T5CGCO.js +52 -0
  41. package/{chunk-XDSZO74H.js → chunk-WHWPAYZY.js} +118 -20
  42. package/{chunk-KMOOTBHM.js → chunk-X6JKMIOU.js} +5 -1
  43. package/{chunk-43HNQWPQ.js → chunk-XCQCYB6G.js} +78 -13
  44. package/{chunk-IUL6MPP6.js → chunk-XCSNI6AO.js} +4 -4
  45. package/{chunk-BGA3WB7H.js → chunk-XD5KUDXX.js} +7 -7
  46. package/{chunk-QNDM4DVO.js → chunk-Z5D5KODU.js} +1 -1
  47. package/{ci-EDRETPUF.js → ci-ESVUMOZO.js} +31 -13
  48. package/cli-package.json +1 -1
  49. package/{config-MVNXGEOQ.js → config-TMB2X6DW.js} +12 -9
  50. package/{config-OKBXU7TU.js → config-ZVVLFKR7.js} +16 -13
  51. package/{create-R7BXYJSU.js → create-BLTNKSBQ.js} +28 -25
  52. package/{deprecate-YSUKBKQM.js → deprecate-VA6PGHYL.js} +17 -15
  53. package/{dist-tag-MIGYSR4F.js → dist-tag-OYJREFO2.js} +13 -12
  54. package/{docs-4WVIN75H.js → docs-6OC3OQNM.js} +28 -25
  55. package/{exec-IXHDQLAM.js → exec-AZPGFVRY.js} +28 -25
  56. package/{exec-cache-EA7GHIK7.js → exec-cache-D75UY2WI.js} +24 -22
  57. package/{exec-local-GM4LH56M.js → exec-local-E2JKB4X4.js} +22 -19
  58. package/{help-TCXGBICU.js → help-UPW77X5N.js} +5 -5
  59. package/{init-MWZDWQHM.js → init-SNO6QL7C.js} +14 -11
  60. package/{install-HPI5HU3C.js → install-TEJM2YVX.js} +165 -26
  61. package/{list-2CX6REPJ.js → list-NHCC2RNB.js} +33 -27
  62. package/{login-RAY23CVG.js → login-XNZXCGFD.js} +19 -16
  63. package/{logout-ICB5OMGY.js → logout-YCM7O36Q.js} +13 -12
  64. package/{outdated-FYHPXRMT.js → outdated-4LA7N63W.js} +26 -22
  65. package/{pack-E5MNPQXK.js → pack-RC4CZSWF.js} +25 -18
  66. package/package.json +1 -1
  67. package/{ping-REQ2KSAR.js → ping-RLVAZGDL.js} +13 -12
  68. package/{pkg-YB4GSRII.js → pkg-FED5C6TP.js} +23 -14
  69. package/{profile-GKBW6GRI.js → profile-DJZNLQPG.js} +13 -12
  70. package/{publish-4ZQJYYLF.js → publish-54AMVMTQ.js} +61 -45
  71. package/{query-SKXBF3MJ.js → query-ZQLMSJ7O.js} +35 -29
  72. package/{registry-MQJJCWJY.js → registry-6HKQYSZX.js} +7 -7
  73. package/registry-client-src-revalidate.js +110 -20
  74. package/{repo-ACPTZI2C.js → repo-ITA4BLZ4.js} +28 -25
  75. package/{reporter-4KK2JNGO.js → reporter-UYVR2WMB.js} +73 -14
  76. package/{run-YW3ITX2A.js → run-TP2HTJRN.js} +22 -19
  77. package/{run-exec-7VQX3OFG.js → run-exec-UGCC53DV.js} +22 -19
  78. package/security-archive-src-update-expired.js +88 -28
  79. package/{setup-PLEKCMXN.js → setup-XPAM5U3Z.js} +23 -21
  80. package/skills-LR6GXW3X.js +413 -0
  81. package/skills-YD2TB2VD.js +495 -0
  82. package/{src-XQ7KVUVN.js → src-34D4DOOH.js} +37 -27
  83. package/{src-PXDFMQ6W.js → src-H6DFCAPH.js} +9 -8
  84. package/{src-GP7VLT7P.js → src-LHDC4NJO.js} +58 -9
  85. package/{token-GB7RPE5J.js → token-OF63PFTQ.js} +13 -12
  86. package/{uninstall-RLCECX37.js → uninstall-B54FQ5KQ.js} +20 -15
  87. package/{unpublish-3ZXEAVHF.js → unpublish-CSHIGMDQ.js} +31 -16
  88. package/{update-VDZP6EZN.js → update-HS4VJ5ZG.js} +51 -25
  89. package/{version-MRELJPOK.js → version-L7S3DHUS.js} +24 -14
  90. package/{view-LCXMTGCJ.js → view-NWKKWFVA.js} +17 -15
  91. package/vlr.js +1 -1
  92. package/vlrx.js +1 -1
  93. package/vlt.js +1 -1
  94. package/vlx.js +1 -1
  95. package/vlxl.js +1 -1
  96. package/{whoami-PNRDBS45.js → whoami-65K35VGW.js} +13 -12
  97. package/chunk-4JAZZRKR.js +0 -76
  98. package/chunk-G2YT2GWF.js +0 -120
  99. package/chunk-U7TEQCBN.js +0 -880
@@ -1108,6 +1108,7 @@ var canonicalCommands = {
1108
1108
  "run-exec": "run-exec",
1109
1109
  run: "run",
1110
1110
  setup: "setup",
1111
+ skills: "skills",
1111
1112
  token: "token",
1112
1113
  uninstall: "uninstall",
1113
1114
  unpublish: "unpublish",
@@ -1168,6 +1169,7 @@ var isRecordField = (s) => recordFields.includes(s);
1168
1169
  var storeLinkers = [
1169
1170
  "auto",
1170
1171
  "hardlink",
1172
+ "clone",
1171
1173
  "copy",
1172
1174
  "unpack"
1173
1175
  ];
@@ -1275,8 +1277,11 @@ var definition = j2.heading("Configuration").description(
1275
1277
 
1276
1278
  There is **no** built-in \`npm\` registry URL; the \`npm\`
1277
1279
  alias must be configured (e.g. via \`vlt setup\`) before it
1278
- can be used. The \`gh\` and \`jsr\` aliases have built-in
1279
- defaults that can be overridden here.
1280
+ can be used. The \`gh\` alias has a built-in default
1281
+ that can be overridden here. A name used by
1282
+ \`--jsr-registries\` or \`--git-hosts\` (e.g. \`jsr\`,
1283
+ \`github\`), or a built-in protocol (e.g. \`file\`), is
1284
+ an error.
1280
1285
 
1281
1286
  Aliases given on the command line or in
1282
1287
  \`VLT_REGISTRIES\` (newline-delimited) merge with the
@@ -1365,28 +1370,35 @@ var definition = j2.heading("Configuration").description(
1365
1370
  default: cacheDir
1366
1371
  },
1367
1372
  "store-linker": {
1368
- hint: "auto | hardlink | copy | unpack",
1373
+ hint: "auto | hardlink | clone | copy | unpack",
1369
1374
  description: `How packages are placed in \`node_modules\`. Every
1370
1375
  linker but \`unpack\` fills a global store under
1371
1376
  \`cache\` in the background, then places packages
1372
1377
  from it.
1373
1378
 
1374
1379
  - auto: Default. On Linux, hardlink from the global
1375
- store, copying any file that cannot be linked.
1376
- Elsewhere, same as \`unpack\`: a hardlink is the
1377
- slowest way to place a file on APFS, so macOS and
1378
- Windows unpack by default.
1380
+ store, copying any file that cannot be linked. On
1381
+ macOS, clone from it, on a Node with \`node:ffi\`
1382
+ (26.1 and later, and \`--allow-ffi\` under
1383
+ \`--permission\`); a hardlink is the slowest way
1384
+ to place a file on APFS, so macOS without it, and
1385
+ Windows, unpack by default.
1379
1386
  - hardlink: Hardlink from the global store on every
1380
1387
  platform.
1388
+ - clone: Clone each package directory from the
1389
+ global store copy-on-write (\`clonefile\`, macOS
1390
+ on APFS). Files share storage with the store
1391
+ until edited, so editing in place is safe.
1392
+ Unpacks where cloning fails.
1381
1393
  - copy: Copy from the global store. Use this when
1382
1394
  editing files in \`node_modules\` in place, since
1383
1395
  a hardlink shares its content with every project.
1384
1396
  - unpack: Unpack each package tarball, skipping the
1385
1397
  global store.
1386
1398
 
1387
- A package is copied right before its install
1388
- scripts run, so they don't change its files in the
1389
- store.
1399
+ A hardlinked package is copied right before its
1400
+ install scripts run, so they don't change its files
1401
+ in the store; a cloned one needs no copy.
1390
1402
  An invalid \`VLT_STORE_LINKER\` warns and uses
1391
1403
  \`unpack\`.`,
1392
1404
  validOptions: storeLinkers,
@@ -1554,7 +1566,9 @@ var definition = j2.heading("Configuration").description(
1554
1566
  config: {
1555
1567
  hint: "all | user | project",
1556
1568
  description: `Specify which configuration to show or operate on when running
1557
- \`vlt config\` commands. For read operations (get, pick, list):
1569
+ \`vlt config\` commands, and which file
1570
+ \`vlt skills link\` saves \`allow-skills\` to. For read
1571
+ operations (get, pick, list):
1558
1572
  \`all\` shows merged configuration from both user and project
1559
1573
  files (default). For write operations (set, delete, edit):
1560
1574
  defaults to \`project\`. \`user\` shows/modifies only user-level
@@ -1735,6 +1749,11 @@ var definition = j2.heading("Configuration").description(
1735
1749
  devDependencies or optionalDependencies, but you want to
1736
1750
  move it to be a non-optional production dependency.`
1737
1751
  },
1752
+ "save-types": {
1753
+ description: `Also save the matching \`@types/*\` package as a
1754
+ devDependency for each added registry package that
1755
+ ships no TypeScript types of its own.`
1756
+ },
1738
1757
  "save-config": {
1739
1758
  description: `Save the registry and git host options given on the
1740
1759
  command line or via \`VLT_*\` env (\`--registry\`,
@@ -1745,6 +1764,17 @@ var definition = j2.heading("Configuration").description(
1745
1764
  \`--config=user\`) after a successful \`install\`,
1746
1765
  \`add\` or \`update\`. Values a config file already
1747
1766
  has are left alone.`
1767
+ },
1768
+ "migrate-workspaces": {
1769
+ description: `Save workspaces read from the \`workspaces\` field of
1770
+ the root \`package.json\` or from
1771
+ \`pnpm-workspace.yaml\` to the project \`vlt.json\` on
1772
+ \`vlt install\`. \`vlt.json\` then takes precedence.
1773
+
1774
+ Set \`--no-migrate-workspaces\` to skip this; an
1775
+ already saved \`workspaces\` field stays until
1776
+ removed.`,
1777
+ default: true
1748
1778
  }
1749
1779
  }).opt({
1750
1780
  "save-prefix": {
@@ -1809,6 +1839,38 @@ var definition = j2.heading("Configuration").description(
1809
1839
  Runs scripts only for direct dependencies of the current project and any occurrences
1810
1840
  of a specific dependency with the name "my-package" anywhere in the dependency graph.`
1811
1841
  }
1842
+ }).opt({
1843
+ "allow-skills": {
1844
+ hint: "query",
1845
+ description: `Link the agent skills (folders with a \`SKILL.md\`) shipped by
1846
+ installed packages matching this DSS query into
1847
+ the project's agent skill dirs (see \`skills-dir\`)
1848
+ after \`install\`, \`ci\`, \`update\` or
1849
+ \`uninstall\`. End a selector with
1850
+ \`:skill(<name>, \u2026)\` to pick single skills (\`*\`
1851
+ globs, double-quoted names). Unset (the default) or
1852
+ \`:not(*)\` links nothing and skips all skills work.
1853
+
1854
+ \`vlt install --allow-skills=<query>\` saves the query
1855
+ to the project \`vlt.json\`; \`vlt skills link
1856
+ [<query>]\` sets, saves and applies it.
1857
+
1858
+ Example: --allow-skills="#agent-browser:skill(agent-browser)"
1859
+ Links the agent-browser skill from a package with the same name.`
1860
+ }
1861
+ }).optList({
1862
+ "skills-dir": {
1863
+ hint: "path",
1864
+ description: `Dirs to link agent skills into (see \`allow-skills\`),
1865
+ relative to the project root. Replaces detection:
1866
+ \`.agents/skills\`, plus \`<folder>/skills\` for each
1867
+ agent folder at the project root (e.g. \`.claude/\`),
1868
+ \`.claude/skills\` inside Claude Code, and existing
1869
+ \`.<name>/skills\` dirs. An empty list (\`[]\` in
1870
+ vlt.json, or \`--skills-dir=\`) links nothing. Each
1871
+ dir must be inside the project, not in
1872
+ node_modules.`
1873
+ }
1812
1874
  }).opt({
1813
1875
  access: {
1814
1876
  description: "Set the access level of the package",
@@ -9,20 +9,20 @@ globalThis.setInterval = _vlt_setInterval;
9
9
  globalThis.clearInterval = _vlt_clearInterval;
10
10
  import {createRequire as _vlt_createRequire} from "node:module";
11
11
  var require = _vlt_createRequire(import.meta.filename);
12
- import {
13
- asUnknownSpecPrefix
14
- } from "./chunk-A2TSRXZD.js";
15
12
  import {
16
13
  addKey,
17
14
  asDependency
18
- } from "./chunk-NWHKSRO3.js";
15
+ } from "./chunk-2U4PVHP4.js";
16
+ import {
17
+ asUnknownSpecPrefix
18
+ } from "./chunk-UZ6ICZE3.js";
19
19
  import {
20
20
  joinDepIDTuple,
21
21
  splitDepID
22
- } from "./chunk-SV4WK3KX.js";
22
+ } from "./chunk-F7NPYSI2.js";
23
23
  import {
24
24
  Spec
25
- } from "./chunk-GZ5MYMBT.js";
25
+ } from "./chunk-LUVDMEW4.js";
26
26
 
27
27
  // ../../src/cli-sdk/src/parse-add-remove-args.ts
28
28
  import { isAbsolute, relative, resolve } from "node:path";
@@ -12,7 +12,7 @@ var require = _vlt_createRequire(import.meta.filename);
12
12
  import {
13
13
  commandAliases,
14
14
  jack
15
- } from "./chunk-SE2FSMBR.js";
15
+ } from "./chunk-CMLDLZZ3.js";
16
16
 
17
17
  // ../../src/cli-sdk/src/config/usage.ts
18
18
  var toArr = (v) => Array.isArray(v) ? v : [v];
@@ -11,12 +11,12 @@ import {createRequire as _vlt_createRequire} from "node:module";
11
11
  var require = _vlt_createRequire(import.meta.filename);
12
12
  import {
13
13
  Spec as Spec2
14
- } from "./chunk-GZ5MYMBT.js";
14
+ } from "./chunk-LUVDMEW4.js";
15
15
  import {
16
16
  Spec,
17
17
  currentDefaultRegistryName,
18
18
  defaultRegistryName
19
- } from "./chunk-IBGFQR23.js";
19
+ } from "./chunk-6LZM3I4Q.js";
20
20
  import {
21
21
  error
22
22
  } from "./chunk-WZWDS3W4.js";
@@ -865,6 +865,7 @@ var graphRunSync = (options) => {
865
865
  };
866
866
 
867
867
  export {
868
+ isDepID,
868
869
  asDepID,
869
870
  joinDepIDTuple,
870
871
  splitDepID,
@@ -14,7 +14,7 @@ var require = _vlt_createRequire(import.meta.filename);
14
14
  var package_default = {
15
15
  name: "@vltpkg/user-agent",
16
16
  description: "The User-Agent string that vlt sends with every outbound request",
17
- version: "1.3.8",
17
+ version: "1.5.0",
18
18
  repository: {
19
19
  type: "git",
20
20
  url: "git+https://github.com/vltpkg/vltpkg.git",
@@ -0,0 +1,59 @@
1
+ var global = globalThis;
2
+ import {Buffer} from "node:buffer";
3
+ import {setTimeout as _vlt_setTimeout,clearTimeout as _vlt_clearTimeout,setImmediate as _vlt_setImmediate,clearImmediate as _vlt_clearImmediate,setInterval as _vlt_setInterval,clearInterval as _vlt_clearInterval} from "node:timers";
4
+ globalThis.setTimeout = _vlt_setTimeout;
5
+ globalThis.clearTimeout = _vlt_clearTimeout;
6
+ globalThis.setImmediate = _vlt_setImmediate;
7
+ globalThis.clearImmediate = _vlt_clearImmediate;
8
+ globalThis.setInterval = _vlt_setInterval;
9
+ globalThis.clearInterval = _vlt_clearInterval;
10
+ import {createRequire as _vlt_createRequire} from "node:module";
11
+ var require = _vlt_createRequire(import.meta.filename);
12
+ import {
13
+ stderr
14
+ } from "./chunk-WHWPAYZY.js";
15
+ import {
16
+ migratableWSConfig,
17
+ resolveWSConfig
18
+ } from "./chunk-C6ZVVEFV.js";
19
+ import {
20
+ save
21
+ } from "./chunk-HTOTG4TS.js";
22
+
23
+ // ../../src/cli-sdk/src/migrate-workspaces.ts
24
+ var found = (conf) => {
25
+ const resolved = resolveWSConfig(
26
+ conf.options.projectRoot,
27
+ conf.options.packageJson,
28
+ false
29
+ );
30
+ const workspaces = migratableWSConfig(resolved);
31
+ const { source } = resolved;
32
+ if (!workspaces?.length || !source) return;
33
+ return { source, workspaces };
34
+ };
35
+ var migrateWorkspaces = (conf) => {
36
+ if (!conf.options["migrate-workspaces"]) return;
37
+ const migrated = found(conf);
38
+ if (migrated) save("workspaces", migrated.workspaces);
39
+ return migrated;
40
+ };
41
+ var warnIgnoredWorkspaces = (conf) => {
42
+ const { loglevel } = conf.values;
43
+ if (loglevel === "silent" || loglevel === "error") return;
44
+ let migrated;
45
+ try {
46
+ migrated = found(conf);
47
+ } catch {
48
+ return;
49
+ }
50
+ if (!migrated) return;
51
+ stderr(
52
+ `Warning: vlt ci reads workspaces from vlt.json only; ignoring ${migrated.source}, its workspaces are not installed. Run \`vlt install\` to save them to vlt.json, or add them there.`
53
+ );
54
+ };
55
+
56
+ export {
57
+ migrateWorkspaces,
58
+ warnIgnoredWorkspaces
59
+ };
@@ -0,0 +1,24 @@
1
+ var global = globalThis;
2
+ import {Buffer} from "node:buffer";
3
+ import {setTimeout as _vlt_setTimeout,clearTimeout as _vlt_clearTimeout,setImmediate as _vlt_setImmediate,clearImmediate as _vlt_clearImmediate,setInterval as _vlt_setInterval,clearInterval as _vlt_clearInterval} from "node:timers";
4
+ globalThis.setTimeout = _vlt_setTimeout;
5
+ globalThis.clearTimeout = _vlt_clearTimeout;
6
+ globalThis.setImmediate = _vlt_setImmediate;
7
+ globalThis.clearImmediate = _vlt_clearImmediate;
8
+ globalThis.setInterval = _vlt_setInterval;
9
+ globalThis.clearInterval = _vlt_clearInterval;
10
+ import {createRequire as _vlt_createRequire} from "node:module";
11
+ var require = _vlt_createRequire(import.meta.filename);
12
+
13
+ // ../../src/cli-sdk/src/publish-config.ts
14
+ var getPublishConfig = (manifest) => {
15
+ const pc = manifest.publishConfig;
16
+ if (pc && typeof pc === "object") {
17
+ return pc;
18
+ }
19
+ return void 0;
20
+ };
21
+
22
+ export {
23
+ getPublishConfig
24
+ };