import { existsSync } from "node:fs"; import { dirname, join } from "node:path"; import { fileURLToPath } from "node:url"; import type { ExtensionAPI } from "@earendil-works/pi-coding-agent"; export function getExtensionSkillsDir(extensionUrl: string): string { return join(dirname(fileURLToPath(extensionUrl)), "skills"); } export function getExistingExtensionSkillPaths(extensionUrl: string): string[] { const skillsDir = getExtensionSkillsDir(extensionUrl); return existsSync(skillsDir) ? [skillsDir] : []; } export default function featureSymbiontExtension(pi: ExtensionAPI) { pi.on("resources_discover", async () => { const skillPaths = getExistingExtensionSkillPaths(import.meta.url); if (skillPaths.length === 0) return; return { skillPaths }; }); }