mirror of
https://github.com/harivansh-afk/clanker-agent.git
synced 2026-04-15 07:04:45 +00:00
align skills to pi native
This commit is contained in:
parent
59ad12335a
commit
aa70afbd7e
2 changed files with 0 additions and 80 deletions
|
|
@ -368,47 +368,6 @@ function collectAncestorAgentsSkillDirs(startDir: string): string[] {
|
||||||
return skillDirs;
|
return skillDirs;
|
||||||
}
|
}
|
||||||
|
|
||||||
function collectCompanionWorkspaceSkillDirs(
|
|
||||||
startDir: string,
|
|
||||||
agentDir: string,
|
|
||||||
): string[] {
|
|
||||||
const skillDirs: string[] = [];
|
|
||||||
const seen = new Set<string>();
|
|
||||||
const configDir = dirname(resolve(agentDir));
|
|
||||||
const defaultWorkspaceDir = join(configDir, "workspace");
|
|
||||||
|
|
||||||
const addDir = (dir: string): void => {
|
|
||||||
const skillDir = join(resolve(dir), ".agents", "skills");
|
|
||||||
if (seen.has(skillDir)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
skillDirs.push(skillDir);
|
|
||||||
seen.add(skillDir);
|
|
||||||
};
|
|
||||||
|
|
||||||
if (existsSync(defaultWorkspaceDir)) {
|
|
||||||
addDir(defaultWorkspaceDir);
|
|
||||||
}
|
|
||||||
|
|
||||||
let dir = resolve(startDir);
|
|
||||||
while (true) {
|
|
||||||
if (dirname(dir) === configDir) {
|
|
||||||
const dirName = basename(dir);
|
|
||||||
if (dirName === "workspace" || dirName.startsWith("workspace-")) {
|
|
||||||
addDir(dir);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const parent = dirname(dir);
|
|
||||||
if (parent === dir) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
dir = parent;
|
|
||||||
}
|
|
||||||
|
|
||||||
return skillDirs;
|
|
||||||
}
|
|
||||||
|
|
||||||
function collectAutoPromptEntries(dir: string): string[] {
|
function collectAutoPromptEntries(dir: string): string[] {
|
||||||
const entries: string[] = [];
|
const entries: string[] = [];
|
||||||
if (!existsSync(dir)) return entries;
|
if (!existsSync(dir)) return entries;
|
||||||
|
|
@ -1938,10 +1897,6 @@ export class DefaultPackageManager implements PackageManager {
|
||||||
};
|
};
|
||||||
const userAgentsSkillsDir = join(homedir(), ".agents", "skills");
|
const userAgentsSkillsDir = join(homedir(), ".agents", "skills");
|
||||||
const projectAgentsSkillDirs = collectAncestorAgentsSkillDirs(this.cwd);
|
const projectAgentsSkillDirs = collectAncestorAgentsSkillDirs(this.cwd);
|
||||||
const companionWorkspaceSkillDirs = collectCompanionWorkspaceSkillDirs(
|
|
||||||
this.cwd,
|
|
||||||
this.agentDir,
|
|
||||||
);
|
|
||||||
|
|
||||||
const addResources = (
|
const addResources = (
|
||||||
resourceType: ResourceType,
|
resourceType: ResourceType,
|
||||||
|
|
@ -1968,9 +1923,6 @@ export class DefaultPackageManager implements PackageManager {
|
||||||
"skills",
|
"skills",
|
||||||
[
|
[
|
||||||
...collectAutoSkillEntries(projectDirs.skills),
|
...collectAutoSkillEntries(projectDirs.skills),
|
||||||
...companionWorkspaceSkillDirs.flatMap((dir) =>
|
|
||||||
collectAutoSkillEntries(dir),
|
|
||||||
),
|
|
||||||
...projectAgentsSkillDirs.flatMap((dir) =>
|
...projectAgentsSkillDirs.flatMap((dir) =>
|
||||||
collectAutoSkillEntries(dir),
|
collectAutoSkillEntries(dir),
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -322,38 +322,6 @@ Content`,
|
||||||
result.skills.some((r) => r.path === middleSkill && r.enabled),
|
result.skills.some((r) => r.path === middleSkill && r.enabled),
|
||||||
).toBe(true);
|
).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should include default workspace skills when cwd is outside the workspace root", async () => {
|
|
||||||
const workspaceSkill = join(
|
|
||||||
tempDir,
|
|
||||||
"workspace",
|
|
||||||
".agents",
|
|
||||||
"skills",
|
|
||||||
"build-app",
|
|
||||||
"SKILL.md",
|
|
||||||
);
|
|
||||||
mkdirSync(join(tempDir, "workspace", ".agents", "skills", "build-app"), {
|
|
||||||
recursive: true,
|
|
||||||
});
|
|
||||||
writeFileSync(
|
|
||||||
workspaceSkill,
|
|
||||||
"---\nname: build-app\ndescription: Build apps\n---\n",
|
|
||||||
);
|
|
||||||
|
|
||||||
const appCwd = join(tempDir, "apps", "portfolio");
|
|
||||||
mkdirSync(appCwd, { recursive: true });
|
|
||||||
|
|
||||||
const pm = new DefaultPackageManager({
|
|
||||||
cwd: appCwd,
|
|
||||||
agentDir,
|
|
||||||
settingsManager,
|
|
||||||
});
|
|
||||||
|
|
||||||
const result = await pm.resolve();
|
|
||||||
expect(
|
|
||||||
result.skills.some((r) => r.path === workspaceSkill && r.enabled),
|
|
||||||
).toBe(true);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("ignore files", () => {
|
describe("ignore files", () => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue