Conversation
🦋 Changeset detectedLatest commit: e7d1d77 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
commit: |
|
@paoloricciuti I added skills for opencode & claude, but not for others. I know that cursor is looking at skills as well (maybe even in .claude/skills). Could you advise? |
|
@jycouet I think almost every tool nowadays looks at skills, you can check the right folder with the skills.sh cli |
|
I wonder if we should just invoke that actually 🤔 |
Since it's solving only |
We leave it like that for now? :D |
| const claudeSkillsDir = path.resolve(cwd, '.claude/skills'); | ||
| expect(fs.existsSync(claudeSkillsDir)).toBe(true); | ||
| expect(fs.existsSync(path.resolve(claudeSkillsDir, 'svelte-code-writer/SKILL.md'))).toBe(true); | ||
| expect(fs.existsSync(path.resolve(claudeSkillsDir, 'svelte-core-bestpractices/SKILL.md'))).toBe( | ||
| true | ||
| ); | ||
|
|
||
| // opencode should NOT have skills (plugin handles it) | ||
| expect(fs.existsSync(path.resolve(cwd, '.opencode/skills'))).toBe(false); | ||
|
|
||
| // sub-agents should be installed for all clients except opencode | ||
| expect(fs.existsSync(path.resolve(cwd, '.claude/agents/svelte-file-editor.md'))).toBe(true); | ||
| expect(fs.existsSync(path.resolve(cwd, '.cursor/agents/svelte-file-editor.md'))).toBe(true); | ||
| expect(fs.existsSync(path.resolve(cwd, '.gemini/agents/svelte-file-editor.md'))).toBe(true); | ||
| expect(fs.existsSync(path.resolve(cwd, '.github/agents/svelte-file-editor.agent.md'))).toBe(true); | ||
| expect(fs.existsSync(path.resolve(cwd, '.opencode/agents'))).toBe(false); |
There was a problem hiding this comment.
Technically, we also suggest claude code (and cursor) users to use the plugin but I don't think there's a way to programmatically add a plugin to claude code (and cursor). What I'm worried about is if we install the skills/subagents, and then they add the plugin (and they have multiple skills/subagents)
| .add('skills', { | ||
| question: 'Do you want to install skills?', | ||
| type: 'select', | ||
| default: 'files', | ||
| options: [ | ||
| { value: 'files', label: 'Add files to the project' }, | ||
| { | ||
| value: 'none', | ||
| label: 'Skip', | ||
| hint: 'for Claude Code you can install the plugin instead: /plugin install svelte' | ||
| } | ||
| ], | ||
| condition: ({ ide }) => ide.some((i) => i !== 'opencode' && i !== 'other') | ||
| }) |
There was a problem hiding this comment.
Should we also add a skill selection? Right now, there's only two, but maybe in the future there will be more, and you don't want them all?
There was a problem hiding this comment.
Would this fail if we add more skills in the repo?
There was a problem hiding this comment.
With this, we don't check content update, but yes we need to update the snapshot when we have new skills / ref / ...
I find this as a good balance.
Multiple options:
- A/ Skip completely
- B/ snapshot the full content
- C/ Keep like this
There was a problem hiding this comment.
Should we setup a github action that invokes this whenever skills changes in the ai-tools repo?
Closes #1044
Description
replace
mcpadd-on withai-toolsadd-on that includes both MCP and skills setupChecklist