feat: add Continue skills support (#102)

* feat: add Continue skills support

* docs: document continue support

---------

Co-authored-by: mannaxu <mannaxu@tencent.com>
This commit is contained in:
murphyXu
2026-01-20 13:52:59 +08:00
committed by GitHub
parent d1b9c29ba6
commit 01c58abae7
60 changed files with 6488 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
export type AIType = 'claude' | 'cursor' | 'windsurf' | 'antigravity' | 'copilot' | 'kiro' | 'roocode' | 'codex' | 'qoder' | 'gemini' | 'trae' | 'opencode' | 'all';
export type AIType = 'claude' | 'cursor' | 'windsurf' | 'antigravity' | 'copilot' | 'kiro' | 'roocode' | 'codex' | 'qoder' | 'gemini' | 'trae' | 'opencode' | 'continue' | 'all';
export interface Release {
tag_name: string;
@@ -20,7 +20,7 @@ export interface InstallConfig {
force?: boolean;
}
export const AI_TYPES: AIType[] = ['claude', 'cursor', 'windsurf', 'antigravity', 'copilot', 'roocode', 'kiro', 'codex', 'qoder', 'gemini', 'trae', 'opencode', 'all'];
export const AI_TYPES: AIType[] = ['claude', 'cursor', 'windsurf', 'antigravity', 'copilot', 'roocode', 'kiro', 'codex', 'qoder', 'gemini', 'trae', 'opencode', 'continue', 'all'];
export const AI_FOLDERS: Record<Exclude<AIType, 'all'>, string[]> = {
claude: ['.claude'],
@@ -35,4 +35,5 @@ export const AI_FOLDERS: Record<Exclude<AIType, 'all'>, string[]> = {
gemini: ['.gemini', '.shared'],
trae: ['.trae', '.shared'],
opencode: ['.opencode', '.shared'],
continue: ['.continue'],
};

View File

@@ -46,6 +46,9 @@ export function detectAIType(cwd: string = process.cwd()): DetectionResult {
if (existsSync(join(cwd, '.opencode'))) {
detected.push('opencode');
}
if (existsSync(join(cwd, '.continue'))) {
detected.push('continue');
}
// Suggest based on what's detected
let suggested: AIType | null = null;
@@ -84,6 +87,8 @@ export function getAITypeDescription(aiType: AIType): string {
return 'Trae (.trae/skills/ + .shared/)';
case 'opencode':
return 'OpenCode (.opencode/skills/ + .shared/)';
case 'continue':
return 'Continue (.continue/skills/)';
case 'all':
return 'All AI assistants';
}