@kb-labs/devlink-entry 2.15.0 → 2.17.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.
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/manifest.js +6 -6
- package/dist/manifest.js.map +1 -1
- package/package.json +5 -5
package/dist/index.js
CHANGED
|
@@ -28,7 +28,7 @@ var manifest = {
|
|
|
28
28
|
cli: {
|
|
29
29
|
commands: [
|
|
30
30
|
{
|
|
31
|
-
id: "
|
|
31
|
+
id: "switch",
|
|
32
32
|
group: "devlink",
|
|
33
33
|
describe: "Switch all cross-repo deps between link: (local) and npm (CI/CD) mode",
|
|
34
34
|
longDescription: "Replaces all cross-repo @kb-labs/* dependencies across monorepos. Creates a backup before applying. Run pnpm install after switching.",
|
|
@@ -44,7 +44,7 @@ var manifest = {
|
|
|
44
44
|
permissions: pluginPermissions
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
|
-
id: "
|
|
47
|
+
id: "status",
|
|
48
48
|
group: "devlink",
|
|
49
49
|
describe: "Show current state of cross-repo dependencies",
|
|
50
50
|
longDescription: "Displays the current linking mode, counts of link: vs npm dependencies, and any discrepancies across all monorepos.",
|
|
@@ -59,7 +59,7 @@ var manifest = {
|
|
|
59
59
|
permissions: pluginPermissions
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
id: "
|
|
62
|
+
id: "plan",
|
|
63
63
|
group: "devlink",
|
|
64
64
|
describe: "Preview what would change when switching mode",
|
|
65
65
|
longDescription: "Shows all dependency changes that would be made without applying them. Useful for reviewing before running switch.",
|
|
@@ -74,7 +74,7 @@ var manifest = {
|
|
|
74
74
|
permissions: pluginPermissions
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
|
-
id: "
|
|
77
|
+
id: "freeze",
|
|
78
78
|
group: "devlink",
|
|
79
79
|
describe: "Freeze current dependency state to lock file",
|
|
80
80
|
longDescription: "Saves a snapshot of current dependency mode to .kb/devlink/lock.json. Use to record a stable known-good state.",
|
|
@@ -88,7 +88,7 @@ var manifest = {
|
|
|
88
88
|
permissions: pluginPermissions
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
|
-
id: "
|
|
91
|
+
id: "undo",
|
|
92
92
|
group: "devlink",
|
|
93
93
|
describe: "Restore previous dependency state from last backup",
|
|
94
94
|
longDescription: "Restores package.json files from the most recent backup created by switch. Run pnpm install after undoing.",
|
|
@@ -102,7 +102,7 @@ var manifest = {
|
|
|
102
102
|
permissions: pluginPermissions
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
|
-
id: "
|
|
105
|
+
id: "backups",
|
|
106
106
|
group: "devlink",
|
|
107
107
|
describe: "List and restore backups",
|
|
108
108
|
longDescription: "Lists all available backups. Use --restore <id> to restore a specific backup.",
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":";;;;AAWA,IAAM,iBAAA,GAAoB,kBAAA,EAAmB,CAC1C,MAAA,CAAO;AAAA,EACN,IAAA,EAAM,WAAA;AAAA,EACN,KAAA,EAAO,CAAC,iBAAA,EAAmB,gBAAA,EAAkB,wBAAwB;AACvE,CAAC,EACA,YAAA,CAAa;AAAA,EACZ,KAAA,EAAO,CAAC,oBAAoB;AAC9B,CAAC,EACA,UAAA,CAAW;AAAA,EACV,SAAA,EAAW,IAAA;AAAA;AAAA,EACX,QAAA,EAAU;AACZ,CAAC,EACA,KAAA,EAAM;AAEF,IAAM,QAAA,GAAW;AAAA,EACtB,MAAA,EAAQ,aAAA;AAAA,EACR,EAAA,EAAI,kBAAA;AAAA,EACJ,OAAA,EAAS,OAAA;AAAA,EAET,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,SAAA;AAAA,IACN,WAAA,EAAa,wEAAA;AAAA,IACb,MAAM,CAAC,UAAA,EAAY,SAAA,EAAW,cAAA,EAAgB,WAAW,WAAW;AAAA,GACtE;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,QAAA,EAAU,CAAC,SAAS,CAAA;AAAA,IACpB,UAAU;AAAC,GACb;AAAA,EAEA,GAAA,EAAK;AAAA,IACH,QAAA,EAAU;AAAA,MACR;AAAA,QACE,EAAA,EAAI,
|
|
1
|
+
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import { defineCommandFlags, combinePermissions, generateExamples } from '@kb-labs/sdk';\nimport {\n switchFlags,\n statusFlags,\n planFlags,\n freezeFlags,\n undoFlags,\n backupsFlags,\n DEVLINK_CACHE_PREFIX,\n} from '@kb-labs/devlink-contracts';\n\nconst pluginPermissions = combinePermissions()\n .withFs({\n mode: 'readWrite',\n allow: ['**/package.json', '.kb/devlink/**', '**/pnpm-workspace.yaml'],\n })\n .withPlatform({\n cache: [DEVLINK_CACHE_PREFIX],\n })\n .withQuotas({\n timeoutMs: 1800000, // 30 min — switch --install runs pnpm install in 29 sub-repos\n memoryMb: 512,\n })\n .build();\n\nexport const manifest = {\n schema: 'kb.plugin/3',\n id: '@kb-labs/devlink',\n version: '1.0.0',\n\n display: {\n name: 'DevLink',\n description: 'Manage cross-repo link: ↔ npm dependencies for KB Labs monorepos.',\n tags: ['monorepo', 'devlink', 'dependencies', 'publish', 'local-dev'],\n },\n\n platform: {\n requires: ['storage'],\n optional: [],\n },\n\n cli: {\n commands: [\n {\n id: 'switch',\n group: 'devlink',\n describe: 'Switch all cross-repo deps between link: (local) and npm (CI/CD) mode',\n longDescription:\n 'Replaces all cross-repo @kb-labs/* dependencies across monorepos. ' +\n 'Creates a backup before applying. Run pnpm install after switching.',\n\n handler: './cli/commands/switch.js#default',\n handlerPath: './cli/commands/switch.js',\n\n flags: defineCommandFlags(switchFlags),\n\n examples: generateExamples('switch', 'devlink', [\n { description: 'Switch to npm mode (CI/CD)', flags: { mode: 'npm' } },\n { description: 'Switch to local mode (development)', flags: { mode: 'local' } },\n { description: 'Preview changes without applying', flags: { mode: 'local', 'dry-run': true } },\n { description: 'Switch specific repos only', flags: { mode: 'npm', repos: 'kb-labs-cli,kb-labs-core' } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'status',\n group: 'devlink',\n describe: 'Show current state of cross-repo dependencies',\n longDescription:\n 'Displays the current linking mode, counts of link: vs npm dependencies, ' +\n 'and any discrepancies across all monorepos.',\n\n handler: './cli/commands/status.js#default',\n handlerPath: './cli/commands/status.js',\n\n flags: defineCommandFlags(statusFlags),\n\n examples: generateExamples('status', 'devlink', [\n { description: 'Show summary status', flags: {} },\n { description: 'Verbose output with all deps', flags: { verbose: true } },\n { description: 'JSON output for scripting', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'plan',\n group: 'devlink',\n describe: 'Preview what would change when switching mode',\n longDescription:\n 'Shows all dependency changes that would be made without applying them. ' +\n 'Useful for reviewing before running switch.',\n\n handler: './cli/commands/plan.js#default',\n handlerPath: './cli/commands/plan.js',\n\n flags: defineCommandFlags(planFlags),\n\n examples: generateExamples('plan', 'devlink', [\n { description: 'Plan switch to local mode', flags: { mode: 'local' } },\n { description: 'Plan switch to npm mode', flags: { mode: 'npm' } },\n { description: 'JSON output for scripting', flags: { mode: 'npm', json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'freeze',\n group: 'devlink',\n describe: 'Freeze current dependency state to lock file',\n longDescription:\n 'Saves a snapshot of current dependency mode to .kb/devlink/lock.json. ' +\n 'Use to record a stable known-good state.',\n\n handler: './cli/commands/freeze.js#default',\n handlerPath: './cli/commands/freeze.js',\n\n flags: defineCommandFlags(freezeFlags),\n\n examples: generateExamples('freeze', 'devlink', [\n { description: 'Freeze current state', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'undo',\n group: 'devlink',\n describe: 'Restore previous dependency state from last backup',\n longDescription:\n 'Restores package.json files from the most recent backup created by switch. ' +\n 'Run pnpm install after undoing.',\n\n handler: './cli/commands/undo.js#default',\n handlerPath: './cli/commands/undo.js',\n\n flags: defineCommandFlags(undoFlags),\n\n examples: generateExamples('undo', 'devlink', [\n { description: 'Undo last switch', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'backups',\n group: 'devlink',\n describe: 'List and restore backups',\n longDescription:\n 'Lists all available backups. Use --restore <id> to restore a specific backup.',\n\n handler: './cli/commands/backups.js#default',\n handlerPath: './cli/commands/backups.js',\n\n flags: defineCommandFlags(backupsFlags),\n\n examples: generateExamples('backups', 'devlink', [\n { description: 'List all backups', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n { description: 'Restore specific backup', flags: { restore: '<backup-id>' } },\n ]),\n\n permissions: pluginPermissions,\n },\n ],\n },\n\n permissions: pluginPermissions,\n};\n\nexport default manifest;\n"]}
|
package/dist/manifest.js
CHANGED
|
@@ -28,7 +28,7 @@ var manifest = {
|
|
|
28
28
|
cli: {
|
|
29
29
|
commands: [
|
|
30
30
|
{
|
|
31
|
-
id: "
|
|
31
|
+
id: "switch",
|
|
32
32
|
group: "devlink",
|
|
33
33
|
describe: "Switch all cross-repo deps between link: (local) and npm (CI/CD) mode",
|
|
34
34
|
longDescription: "Replaces all cross-repo @kb-labs/* dependencies across monorepos. Creates a backup before applying. Run pnpm install after switching.",
|
|
@@ -44,7 +44,7 @@ var manifest = {
|
|
|
44
44
|
permissions: pluginPermissions
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
|
-
id: "
|
|
47
|
+
id: "status",
|
|
48
48
|
group: "devlink",
|
|
49
49
|
describe: "Show current state of cross-repo dependencies",
|
|
50
50
|
longDescription: "Displays the current linking mode, counts of link: vs npm dependencies, and any discrepancies across all monorepos.",
|
|
@@ -59,7 +59,7 @@ var manifest = {
|
|
|
59
59
|
permissions: pluginPermissions
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
id: "
|
|
62
|
+
id: "plan",
|
|
63
63
|
group: "devlink",
|
|
64
64
|
describe: "Preview what would change when switching mode",
|
|
65
65
|
longDescription: "Shows all dependency changes that would be made without applying them. Useful for reviewing before running switch.",
|
|
@@ -74,7 +74,7 @@ var manifest = {
|
|
|
74
74
|
permissions: pluginPermissions
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
|
-
id: "
|
|
77
|
+
id: "freeze",
|
|
78
78
|
group: "devlink",
|
|
79
79
|
describe: "Freeze current dependency state to lock file",
|
|
80
80
|
longDescription: "Saves a snapshot of current dependency mode to .kb/devlink/lock.json. Use to record a stable known-good state.",
|
|
@@ -88,7 +88,7 @@ var manifest = {
|
|
|
88
88
|
permissions: pluginPermissions
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
|
-
id: "
|
|
91
|
+
id: "undo",
|
|
92
92
|
group: "devlink",
|
|
93
93
|
describe: "Restore previous dependency state from last backup",
|
|
94
94
|
longDescription: "Restores package.json files from the most recent backup created by switch. Run pnpm install after undoing.",
|
|
@@ -102,7 +102,7 @@ var manifest = {
|
|
|
102
102
|
permissions: pluginPermissions
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
|
-
id: "
|
|
105
|
+
id: "backups",
|
|
106
106
|
group: "devlink",
|
|
107
107
|
describe: "List and restore backups",
|
|
108
108
|
longDescription: "Lists all available backups. Use --restore <id> to restore a specific backup.",
|
package/dist/manifest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":";;;;AAWA,IAAM,iBAAA,GAAoB,kBAAA,EAAmB,CAC1C,MAAA,CAAO;AAAA,EACN,IAAA,EAAM,WAAA;AAAA,EACN,KAAA,EAAO,CAAC,iBAAA,EAAmB,gBAAA,EAAkB,wBAAwB;AACvE,CAAC,EACA,YAAA,CAAa;AAAA,EACZ,KAAA,EAAO,CAAC,oBAAoB;AAC9B,CAAC,EACA,UAAA,CAAW;AAAA,EACV,SAAA,EAAW,IAAA;AAAA;AAAA,EACX,QAAA,EAAU;AACZ,CAAC,EACA,KAAA,EAAM;AAEF,IAAM,QAAA,GAAW;AAAA,EACtB,MAAA,EAAQ,aAAA;AAAA,EACR,EAAA,EAAI,kBAAA;AAAA,EACJ,OAAA,EAAS,OAAA;AAAA,EAET,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,SAAA;AAAA,IACN,WAAA,EAAa,wEAAA;AAAA,IACb,MAAM,CAAC,UAAA,EAAY,SAAA,EAAW,cAAA,EAAgB,WAAW,WAAW;AAAA,GACtE;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,QAAA,EAAU,CAAC,SAAS,CAAA;AAAA,IACpB,UAAU;AAAC,GACb;AAAA,EAEA,GAAA,EAAK;AAAA,IACH,QAAA,EAAU;AAAA,MACR;AAAA,QACE,EAAA,EAAI,
|
|
1
|
+
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":"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","file":"manifest.js","sourcesContent":["import { defineCommandFlags, combinePermissions, generateExamples } from '@kb-labs/sdk';\nimport {\n switchFlags,\n statusFlags,\n planFlags,\n freezeFlags,\n undoFlags,\n backupsFlags,\n DEVLINK_CACHE_PREFIX,\n} from '@kb-labs/devlink-contracts';\n\nconst pluginPermissions = combinePermissions()\n .withFs({\n mode: 'readWrite',\n allow: ['**/package.json', '.kb/devlink/**', '**/pnpm-workspace.yaml'],\n })\n .withPlatform({\n cache: [DEVLINK_CACHE_PREFIX],\n })\n .withQuotas({\n timeoutMs: 1800000, // 30 min — switch --install runs pnpm install in 29 sub-repos\n memoryMb: 512,\n })\n .build();\n\nexport const manifest = {\n schema: 'kb.plugin/3',\n id: '@kb-labs/devlink',\n version: '1.0.0',\n\n display: {\n name: 'DevLink',\n description: 'Manage cross-repo link: ↔ npm dependencies for KB Labs monorepos.',\n tags: ['monorepo', 'devlink', 'dependencies', 'publish', 'local-dev'],\n },\n\n platform: {\n requires: ['storage'],\n optional: [],\n },\n\n cli: {\n commands: [\n {\n id: 'switch',\n group: 'devlink',\n describe: 'Switch all cross-repo deps between link: (local) and npm (CI/CD) mode',\n longDescription:\n 'Replaces all cross-repo @kb-labs/* dependencies across monorepos. ' +\n 'Creates a backup before applying. Run pnpm install after switching.',\n\n handler: './cli/commands/switch.js#default',\n handlerPath: './cli/commands/switch.js',\n\n flags: defineCommandFlags(switchFlags),\n\n examples: generateExamples('switch', 'devlink', [\n { description: 'Switch to npm mode (CI/CD)', flags: { mode: 'npm' } },\n { description: 'Switch to local mode (development)', flags: { mode: 'local' } },\n { description: 'Preview changes without applying', flags: { mode: 'local', 'dry-run': true } },\n { description: 'Switch specific repos only', flags: { mode: 'npm', repos: 'kb-labs-cli,kb-labs-core' } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'status',\n group: 'devlink',\n describe: 'Show current state of cross-repo dependencies',\n longDescription:\n 'Displays the current linking mode, counts of link: vs npm dependencies, ' +\n 'and any discrepancies across all monorepos.',\n\n handler: './cli/commands/status.js#default',\n handlerPath: './cli/commands/status.js',\n\n flags: defineCommandFlags(statusFlags),\n\n examples: generateExamples('status', 'devlink', [\n { description: 'Show summary status', flags: {} },\n { description: 'Verbose output with all deps', flags: { verbose: true } },\n { description: 'JSON output for scripting', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'plan',\n group: 'devlink',\n describe: 'Preview what would change when switching mode',\n longDescription:\n 'Shows all dependency changes that would be made without applying them. ' +\n 'Useful for reviewing before running switch.',\n\n handler: './cli/commands/plan.js#default',\n handlerPath: './cli/commands/plan.js',\n\n flags: defineCommandFlags(planFlags),\n\n examples: generateExamples('plan', 'devlink', [\n { description: 'Plan switch to local mode', flags: { mode: 'local' } },\n { description: 'Plan switch to npm mode', flags: { mode: 'npm' } },\n { description: 'JSON output for scripting', flags: { mode: 'npm', json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'freeze',\n group: 'devlink',\n describe: 'Freeze current dependency state to lock file',\n longDescription:\n 'Saves a snapshot of current dependency mode to .kb/devlink/lock.json. ' +\n 'Use to record a stable known-good state.',\n\n handler: './cli/commands/freeze.js#default',\n handlerPath: './cli/commands/freeze.js',\n\n flags: defineCommandFlags(freezeFlags),\n\n examples: generateExamples('freeze', 'devlink', [\n { description: 'Freeze current state', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'undo',\n group: 'devlink',\n describe: 'Restore previous dependency state from last backup',\n longDescription:\n 'Restores package.json files from the most recent backup created by switch. ' +\n 'Run pnpm install after undoing.',\n\n handler: './cli/commands/undo.js#default',\n handlerPath: './cli/commands/undo.js',\n\n flags: defineCommandFlags(undoFlags),\n\n examples: generateExamples('undo', 'devlink', [\n { description: 'Undo last switch', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n ]),\n\n permissions: pluginPermissions,\n },\n {\n id: 'backups',\n group: 'devlink',\n describe: 'List and restore backups',\n longDescription:\n 'Lists all available backups. Use --restore <id> to restore a specific backup.',\n\n handler: './cli/commands/backups.js#default',\n handlerPath: './cli/commands/backups.js',\n\n flags: defineCommandFlags(backupsFlags),\n\n examples: generateExamples('backups', 'devlink', [\n { description: 'List all backups', flags: {} },\n { description: 'JSON output', flags: { json: true } },\n { description: 'Restore specific backup', flags: { restore: '<backup-id>' } },\n ]),\n\n permissions: pluginPermissions,\n },\n ],\n },\n\n permissions: pluginPermissions,\n};\n\nexport default manifest;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kb-labs/devlink-entry",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI commands and manifest for DevLink plugin.",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
],
|
|
26
26
|
"sideEffects": false,
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@kb-labs/devlink-
|
|
29
|
-
"@kb-labs/
|
|
30
|
-
"@kb-labs/
|
|
28
|
+
"@kb-labs/devlink-contracts": "2.17.0",
|
|
29
|
+
"@kb-labs/devlink-core": "2.17.0",
|
|
30
|
+
"@kb-labs/sdk": "2.16.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/node": "^24.3.3",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"tsup": "^8.5.0",
|
|
37
37
|
"typescript": "^5.6.3",
|
|
38
38
|
"vitest": "^3.2.4",
|
|
39
|
-
"@kb-labs/devkit": "2.
|
|
39
|
+
"@kb-labs/devkit": "2.17.0"
|
|
40
40
|
},
|
|
41
41
|
"engines": {
|
|
42
42
|
"node": ">=20.0.0",
|