Skip to content

feat: support custom skills path for vendor projects#16

Open
iml885203 wants to merge 1 commit intoantfu:mainfrom
iml885203:feat/custom-skills-path
Open

feat: support custom skills path for vendor projects#16
iml885203 wants to merge 1 commit intoantfu:mainfrom
iml885203:feat/custom-skills-path

Conversation

@iml885203
Copy link

Summary

Add optional skillsPath configuration to VendorSkillMeta interface to support vendor projects that store skills in non-standard directory paths.

Motivation

Some vendor projects (like ui-ux-pro-max) store their skills in custom paths such as .claude/skills instead of the default skills/ directory.

Currently, the sync script hardcodes the skills/ path, causing sync failures for these projects with the warning:

No skills directory in vendor/{name}/skills/

Changes

  • meta.ts: Add optional skillsPath?: string field to VendorSkillMeta interface
  • scripts/cli.ts:
    • Add skillsPath to VendorConfig interface
    • Update syncSubmodules() to use vendorConfig.skillsPath || 'skills' with fallback
    • Update SYNC.md generation to reflect the actual source path

Example Usage

export const vendors: Record<string, VendorSkillMeta> = {
  'ui-ux-pro-max': {
    source: 'https://github.com/nextlevelbuilder/ui-ux-pro-max-skill',
    skillsPath: '.claude/skills', // Custom path
    skills: {
      'ui-ux-pro-max': 'ui-ux-pro-max',
    },
  },
}

Backward Compatibility

✅ Fully backward compatible - existing vendors without skillsPath continue to use the default 'skills' directory.

Test Plan

  • Tested with existing vendors (vueuse, slidev, etc.) - works as before
  • Tested with custom path (.claude/skills) - successfully syncs from non-standard paths
  • Verified SYNC.md reflects correct source path

Add optional `skillsPath` config to VendorSkillMeta interface to support vendor projects that store skills in non-standard paths (e.g., `.claude/skills` instead of `skills`).

This allows syncing skills from projects like ui-ux-pro-max that use different directory structures while maintaining backward compatibility with existing vendors.

Changes:
- Add `skillsPath?: string` to VendorSkillMeta interface
- Update sync logic to use custom path with fallback to 'skills'
- Update SYNC.md generation to reflect actual source path
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant