ninekit-cli 1.1.0-dev.6 → 1.2.0-dev.1

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/cli-manifest.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.1.0-dev.6",
3
- "generatedAt": "2026-06-19T17:30:56.867Z",
2
+ "version": "1.2.0-dev.1",
3
+ "generatedAt": "2026-06-24T10:37:12.344Z",
4
4
  "commands": {
5
5
  "agents": {
6
6
  "name": "agents",
package/dist/index.js CHANGED
@@ -15579,6 +15579,22 @@ function isSafeRelativeLayoutPath(value) {
15579
15579
  function isValidKitType(value) {
15580
15580
  return value === "engineer" || value === "marketing" || value === "pm" || value === "ba" || value === "test";
15581
15581
  }
15582
+ function detectKitTypeFromName(name) {
15583
+ if (!name)
15584
+ return null;
15585
+ const patterns = [
15586
+ ["engineer", /\bengineer\b/i],
15587
+ ["marketing", /\bmarketing\b/i],
15588
+ ["pm", /\bpm\b/i],
15589
+ ["ba", /\bba\b/i],
15590
+ ["test", /\btest\b/i]
15591
+ ];
15592
+ for (const [kit, pattern] of patterns) {
15593
+ if (pattern.test(name))
15594
+ return kit;
15595
+ }
15596
+ return null;
15597
+ }
15582
15598
  var KitType, KitConfigSchema, KitLayoutSchema, NineKitPackageMetadataSchema, DEFAULT_KIT_LAYOUT, AVAILABLE_KITS, NEVER_COPY_PATTERNS, USER_CONFIG_PATTERNS, PROTECTED_PATTERNS;
15583
15599
  var init_kit = __esm(() => {
15584
15600
  init_zod();
@@ -16453,6 +16469,7 @@ __export(exports_types, {
16453
16469
  normalizeMigrateProvidersInput: () => normalizeMigrateProvidersInput,
16454
16470
  normalizeCkConfigInput: () => normalizeCkConfigInput,
16455
16471
  isValidKitType: () => isValidKitType,
16472
+ detectKitTypeFromName: () => detectKitTypeFromName,
16456
16473
  VidcapOptionsSchema: () => VidcapOptionsSchema,
16457
16474
  VersionCommandOptionsSchema: () => VersionCommandOptionsSchema,
16458
16475
  ValidationResultSchema: () => ValidationResultSchema,
@@ -64714,7 +64731,7 @@ var package_default;
64714
64731
  var init_package = __esm(() => {
64715
64732
  package_default = {
64716
64733
  name: "ninekit-cli",
64717
- version: "1.1.0-dev.6",
64734
+ version: "1.2.0-dev.1",
64718
64735
  description: "CLI tool for bootstrapping and updating NineKit projects",
64719
64736
  type: "module",
64720
64737
  repository: {
@@ -66834,19 +66851,12 @@ async function detectMetadataFormat(claudeDir3) {
66834
66851
  detectedKit: installedKits[0] || null
66835
66852
  };
66836
66853
  }
66837
- if (parsed.name || parsed.version || parsed.files) {
66838
- let detectedKit = null;
66839
- const nameToCheck = parsed.name || "";
66840
- if (/\bengineer\b/i.test(nameToCheck)) {
66841
- detectedKit = "engineer";
66842
- } else if (/\bmarketing\b/i.test(nameToCheck)) {
66843
- detectedKit = "marketing";
66844
- } else {
66845
- detectedKit = "engineer";
66846
- }
66854
+ const hasInstallMarkers = parsed.scope !== undefined || parsed.installedAt !== undefined || (parsed.files?.length ?? 0) > 0 || (parsed.installedFiles?.length ?? 0) > 0;
66855
+ const looksLikeBuildManifest = !hasInstallMarkers && (("deletions" in parsed) || ("buildDate" in parsed) || ("download" in parsed));
66856
+ if ((parsed.name || parsed.version || parsed.files) && !looksLikeBuildManifest) {
66857
+ const detectedKit = detectKitTypeFromName(parsed.name) ?? "engineer";
66847
66858
  return { format: "legacy", metadata: parsed, detectedKit };
66848
66859
  }
66849
- logger.warning("Metadata file exists but has unrecognized format (missing kits, name, version, or files)");
66850
66860
  return { format: "none", metadata: null, detectedKit: null };
66851
66861
  } catch (error) {
66852
66862
  logger.warning(`Failed to read metadata file (may be corrupted): ${error}`);
@@ -66979,6 +66989,7 @@ function getInstalledKits(metadata) {
66979
66989
  var import_fs_extra6;
66980
66990
  var init_metadata_migration = __esm(() => {
66981
66991
  init_logger();
66992
+ init_types3();
66982
66993
  import_fs_extra6 = __toESM(require_lib(), 1);
66983
66994
  });
66984
66995
 
@@ -102292,7 +102303,7 @@ init_types3();
102292
102303
  var import_fs_extra18 = __toESM(require_lib(), 1);
102293
102304
  async function writeManifest(claudeDir3, kitName, version, scope, kitType, trackedFiles, userConfigFiles, ignoredSkills = []) {
102294
102305
  const metadataPath = join112(claudeDir3, "metadata.json");
102295
- const kit = kitType || (/\bmarketing\b/i.test(kitName) ? "marketing" : "engineer");
102306
+ const kit = kitType ?? detectKitTypeFromName(kitName) ?? "engineer";
102296
102307
  await import_fs_extra18.ensureFile(metadataPath);
102297
102308
  let release = null;
102298
102309
  try {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ninekit-cli",
3
- "version": "1.1.0-dev.6",
3
+ "version": "1.2.0-dev.1",
4
4
  "description": "CLI tool for bootstrapping and updating NineKit projects",
5
5
  "type": "module",
6
6
  "repository": {