@industry-theme/agent-panels 0.1.7 → 0.1.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"SkillCard.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/components/SkillCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,wBAAwB,CAAC;AAEjE,UAAU,cAAc;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAkDD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA0R9C,CAAC"}
1
+ {"version":3,"file":"SkillCard.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/components/SkillCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,wBAAwB,CAAC;AAEjE,UAAU,cAAc;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAkDD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA+Q9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSkillsData.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/hooks/useSkillsData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,gBAAgB,GAChB,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE5B,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,UAAU,mBAAmB;IAC3B,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED,UAAU,mBAAmB;IAC3B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAsID;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,cAE3B,mBAAmB,KAAG,mBAiHxB,CAAC"}
1
+ {"version":3,"file":"useSkillsData.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/hooks/useSkillsData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,gBAAgB,GAChB,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE5B,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,UAAU,mBAAmB;IAC3B,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED,UAAU,mBAAmB;IAC3B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AA2KD;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,cAE3B,mBAAmB,KAAG,mBAsFxB,CAAC"}
@@ -2474,11 +2474,31 @@ const determineSkillSource = (path2) => {
2474
2474
  }
2475
2475
  };
2476
2476
  const findSkillFiles = (fileTree) => {
2477
- const skillFiles = fileTree.allFiles.filter((file) => file.name === "SKILL.md");
2477
+ const skillFiles = fileTree.allFiles.filter((file) => {
2478
+ const path2 = file.relativePath;
2479
+ const isMarkdown = file.name.endsWith(".md");
2480
+ const isInSkillDir = path2.includes(".agent/skills/") || path2.includes(".claude/skills/");
2481
+ const isMetadata = file.name === ".metadata.json" || file.name.startsWith(".");
2482
+ return isMarkdown && isInSkillDir && !isMetadata;
2483
+ });
2478
2484
  return skillFiles.map((file) => file.relativePath);
2479
2485
  };
2480
2486
  const analyzeSkillStructure = (fileTree, skillPath) => {
2481
2487
  const skillDir = skillPath.substring(0, skillPath.lastIndexOf("/"));
2488
+ const pathParts = skillPath.split("/");
2489
+ const parentDir = pathParts[pathParts.length - 2];
2490
+ const isStandaloneFile = parentDir === "skills";
2491
+ if (isStandaloneFile) {
2492
+ return {
2493
+ skillFolderPath: skillDir,
2494
+ hasScripts: false,
2495
+ hasReferences: false,
2496
+ hasAssets: false,
2497
+ scriptFiles: [],
2498
+ referenceFiles: [],
2499
+ assetFiles: []
2500
+ };
2501
+ }
2482
2502
  const skillFiles = fileTree.allFiles.filter(
2483
2503
  (file) => file.relativePath.startsWith(`${skillDir}/`)
2484
2504
  );
@@ -2497,7 +2517,10 @@ const analyzeSkillStructure = (fileTree, skillPath) => {
2497
2517
  };
2498
2518
  const parseSkillContent = async (content2, path2, fileTree, fileSystemAdapter) => {
2499
2519
  const pathParts = path2.split("/");
2500
- const skillDirName = pathParts[pathParts.length - 2] || "Unknown Skill";
2520
+ const fileName = pathParts[pathParts.length - 1];
2521
+ const parentDir = pathParts[pathParts.length - 2];
2522
+ const isDirectlyInSkillsDir = parentDir === "skills";
2523
+ const skillDirName = isDirectlyInSkillsDir ? fileName.replace(/\.md$/, "") : parentDir;
2501
2524
  let description = "";
2502
2525
  const lines = content2.split("\n");
2503
2526
  let foundHeading = false;
@@ -2548,36 +2571,24 @@ const parseSkillContent = async (content2, path2, fileTree, fileSystemAdapter) =
2548
2571
  const useSkillsData = ({
2549
2572
  context
2550
2573
  }) => {
2574
+ var _a, _b, _c;
2551
2575
  const [skills, setSkills] = useState([]);
2552
2576
  const [isLoading, setIsLoading] = useState(true);
2553
2577
  const [error, setError] = useState(null);
2578
+ const fileTreeSlice = context.getSlice("fileTree");
2579
+ const fileTree = fileTreeSlice == null ? void 0 : fileTreeSlice.data;
2580
+ const fileTreeSha = fileTree == null ? void 0 : fileTree.sha;
2581
+ const globalSkillsSlice = context.getSlice("globalSkills");
2582
+ const globalSkills = ((_a = globalSkillsSlice == null ? void 0 : globalSkillsSlice.data) == null ? void 0 : _a.skills) || [];
2583
+ const repoPath = (_b = context.currentScope.repository) == null ? void 0 : _b.path;
2584
+ const fileSystem = (_c = context.adapters) == null ? void 0 : _c.fileSystem;
2554
2585
  const loadSkills = useCallback(async () => {
2555
- var _a, _b, _c;
2556
2586
  setIsLoading(true);
2557
2587
  setError(null);
2558
2588
  try {
2559
- const fileTreeSlice = context.getSlice("fileTree");
2560
- const fileTree = fileTreeSlice == null ? void 0 : fileTreeSlice.data;
2561
2589
  let localSkills = [];
2562
- if (fileTree) {
2563
- console.log("[useSkillsData] Full context:", context);
2564
- const fileSystem = (_a = context.adapters) == null ? void 0 : _a.fileSystem;
2565
- console.log("[useSkillsData] Adapters:", context.adapters);
2566
- console.log("[useSkillsData] FileSystem adapter:", fileSystem);
2567
- console.log("[useSkillsData] fileSystem?.readFile:", fileSystem == null ? void 0 : fileSystem.readFile);
2568
- console.log("[useSkillsData] typeof fileSystem?.readFile:", typeof (fileSystem == null ? void 0 : fileSystem.readFile));
2569
- console.log("[useSkillsData] Check result (!fileSystem?.readFile):", !(fileSystem == null ? void 0 : fileSystem.readFile));
2570
- if (!(fileSystem == null ? void 0 : fileSystem.readFile)) {
2571
- console.error("[useSkillsData] FAILING CHECK - fileSystem:", fileSystem);
2572
- throw new Error("File system adapter not available");
2573
- }
2574
- console.log("[useSkillsData] Check passed! Continuing...");
2575
- const repoPath = (_b = context.currentScope.repository) == null ? void 0 : _b.path;
2576
- if (!repoPath) {
2577
- throw new Error("Repository path not available");
2578
- }
2590
+ if (fileTree && (fileSystem == null ? void 0 : fileSystem.readFile) && repoPath) {
2579
2591
  console.log("[useSkillsData] fileTree:", fileTree);
2580
- console.log("[useSkillsData] fileTree.allFiles:", fileTree.allFiles);
2581
2592
  console.log("[useSkillsData] typeof fileTree:", typeof fileTree);
2582
2593
  console.log("[useSkillsData] fileTree keys:", Object.keys(fileTree));
2583
2594
  const skillPaths = findSkillFiles(fileTree);
@@ -2596,8 +2607,6 @@ const useSkillsData = ({
2596
2607
  (skill) => skill !== null
2597
2608
  );
2598
2609
  }
2599
- const globalSkillsSlice = context.getSlice("globalSkills");
2600
- const globalSkills = ((_c = globalSkillsSlice == null ? void 0 : globalSkillsSlice.data) == null ? void 0 : _c.skills) || [];
2601
2610
  console.log("[useSkillsData] Global skills:", globalSkills);
2602
2611
  const allSkills = [...localSkills, ...globalSkills];
2603
2612
  console.log("[useSkillsData] Total skills:", allSkills.length);
@@ -2609,7 +2618,7 @@ const useSkillsData = ({
2609
2618
  } finally {
2610
2619
  setIsLoading(false);
2611
2620
  }
2612
- }, [context]);
2621
+ }, [fileTree, fileTreeSha, globalSkills, repoPath, fileSystem]);
2613
2622
  const refreshSkills = useCallback(async () => {
2614
2623
  await loadSkills();
2615
2624
  }, [loadSkills]);
@@ -2677,18 +2686,9 @@ const SkillCard = ({
2677
2686
  onClick,
2678
2687
  isSelected = false
2679
2688
  }) => {
2680
- var _a, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k, _l;
2689
+ var _a, _b, _c, _d, _e2, _f, _g, _h;
2681
2690
  const { theme: theme2 } = useTheme();
2682
2691
  const sourceConfig = getSourceConfig(skill.source);
2683
- if (skill.name === "brand guidelines") {
2684
- console.log("[SkillCard] brand guidelines metadata:", {
2685
- hasMetadata: !!skill.metadata,
2686
- metadata: skill.metadata,
2687
- owner: (_a = skill.metadata) == null ? void 0 : _a.owner,
2688
- repo: (_b = skill.metadata) == null ? void 0 : _b.repo,
2689
- condition: !!(((_c = skill.metadata) == null ? void 0 : _c.owner) && ((_d = skill.metadata) == null ? void 0 : _d.repo))
2690
- });
2691
- }
2692
2692
  return /* @__PURE__ */ jsxs(
2693
2693
  "div",
2694
2694
  {
@@ -2779,7 +2779,7 @@ const SkillCard = ({
2779
2779
  ]
2780
2780
  }
2781
2781
  ),
2782
- ((_e2 = skill.metadata) == null ? void 0 : _e2.owner) && ((_f = skill.metadata) == null ? void 0 : _f.repo) && /* @__PURE__ */ jsxs(
2782
+ ((_a = skill.metadata) == null ? void 0 : _a.owner) && ((_b = skill.metadata) == null ? void 0 : _b.repo) && /* @__PURE__ */ jsxs(
2783
2783
  "div",
2784
2784
  {
2785
2785
  style: {
@@ -2788,10 +2788,10 @@ const SkillCard = ({
2788
2788
  gap: "4px",
2789
2789
  padding: "2px 6px",
2790
2790
  borderRadius: theme2.radii[1],
2791
- backgroundColor: "#23272d15",
2792
- border: "1px solid #23272d30",
2791
+ backgroundColor: `${theme2.colors.textSecondary}15`,
2792
+ border: `1px solid ${theme2.colors.textSecondary}30`,
2793
2793
  fontSize: theme2.fontSizes[0],
2794
- color: "#23272d",
2794
+ color: theme2.colors.textSecondary,
2795
2795
  fontWeight: 500,
2796
2796
  fontFamily: theme2.fonts.monospace,
2797
2797
  width: "fit-content"
@@ -2894,10 +2894,10 @@ Installed: ${skill.metadata.installedAt ? new Date(skill.metadata.installedAt).t
2894
2894
  color: theme2.colors.primary,
2895
2895
  fontWeight: 500
2896
2896
  },
2897
- title: `Scripts: ${(_g = skill.scriptFiles) == null ? void 0 : _g.join(", ")}`,
2897
+ title: `Scripts: ${(_c = skill.scriptFiles) == null ? void 0 : _c.join(", ")}`,
2898
2898
  children: [
2899
2899
  /* @__PURE__ */ jsx(Code, { size: 12 }),
2900
- /* @__PURE__ */ jsx("span", { children: ((_h = skill.scriptFiles) == null ? void 0 : _h.length) || 0 })
2900
+ /* @__PURE__ */ jsx("span", { children: ((_d = skill.scriptFiles) == null ? void 0 : _d.length) || 0 })
2901
2901
  ]
2902
2902
  }
2903
2903
  ),
@@ -2916,10 +2916,10 @@ Installed: ${skill.metadata.installedAt ? new Date(skill.metadata.installedAt).t
2916
2916
  color: theme2.colors.secondary,
2917
2917
  fontWeight: 500
2918
2918
  },
2919
- title: `References: ${(_i = skill.referenceFiles) == null ? void 0 : _i.join(", ")}`,
2919
+ title: `References: ${(_e2 = skill.referenceFiles) == null ? void 0 : _e2.join(", ")}`,
2920
2920
  children: [
2921
2921
  /* @__PURE__ */ jsx(BookOpen, { size: 12 }),
2922
- /* @__PURE__ */ jsx("span", { children: ((_j = skill.referenceFiles) == null ? void 0 : _j.length) || 0 })
2922
+ /* @__PURE__ */ jsx("span", { children: ((_f = skill.referenceFiles) == null ? void 0 : _f.length) || 0 })
2923
2923
  ]
2924
2924
  }
2925
2925
  ),
@@ -2938,10 +2938,10 @@ Installed: ${skill.metadata.installedAt ? new Date(skill.metadata.installedAt).t
2938
2938
  color: theme2.colors.accent,
2939
2939
  fontWeight: 500
2940
2940
  },
2941
- title: `Assets: ${(_k = skill.assetFiles) == null ? void 0 : _k.join(", ")}`,
2941
+ title: `Assets: ${(_g = skill.assetFiles) == null ? void 0 : _g.join(", ")}`,
2942
2942
  children: [
2943
2943
  /* @__PURE__ */ jsx(Package, { size: 12 }),
2944
- /* @__PURE__ */ jsx("span", { children: ((_l = skill.assetFiles) == null ? void 0 : _l.length) || 0 })
2944
+ /* @__PURE__ */ jsx("span", { children: ((_h = skill.assetFiles) == null ? void 0 : _h.length) || 0 })
2945
2945
  ]
2946
2946
  }
2947
2947
  )