feat: support skills in .agents directory and other provider config directories

This commit is contained in:
LaZzyMan 2026-03-09 10:14:47 +08:00
parent f3b56f5a31
commit ef772feea2
2 changed files with 51 additions and 22 deletions

View file

@ -504,17 +504,35 @@ Skill 3 content`);
});
});
describe('getSkillsBaseDir', () => {
it('should return project-level base dir', () => {
const baseDir = manager.getSkillsBaseDir('project');
describe('getSkillsBaseDirs', () => {
it('should return all project-level base dirs', () => {
const baseDirs = manager.getSkillsBaseDirs('project');
expect(baseDir).toBe(path.join('/test/project', '.qwen', 'skills'));
expect(baseDirs).toHaveLength(5);
expect(baseDirs).toContain(path.join('/test/project', '.qwen', 'skills'));
expect(baseDirs).toContain(
path.join('/test/project', '.agent', 'skills'),
);
expect(baseDirs).toContain(
path.join('/test/project', '.cursor', 'skills'),
);
expect(baseDirs).toContain(
path.join('/test/project', '.codex', 'skills'),
);
expect(baseDirs).toContain(
path.join('/test/project', '.claude', 'skills'),
);
});
it('should return user-level base dir', () => {
const baseDir = manager.getSkillsBaseDir('user');
it('should return all user-level base dirs', () => {
const baseDirs = manager.getSkillsBaseDirs('user');
expect(baseDir).toBe(path.join('/home/user', '.qwen', 'skills'));
expect(baseDirs).toHaveLength(5);
expect(baseDirs).toContain(path.join('/home/user', '.qwen', 'skills'));
expect(baseDirs).toContain(path.join('/home/user', '.agent', 'skills'));
expect(baseDirs).toContain(path.join('/home/user', '.cursor', 'skills'));
expect(baseDirs).toContain(path.join('/home/user', '.codex', 'skills'));
expect(baseDirs).toContain(path.join('/home/user', '.claude', 'skills'));
});
});