Sync all provider skill directories to project root on build

Previously only .claude/skills/ was synced from dist after build. Now
all 8 provider directories are synced (.claude, .cursor, .gemini, .codex,
.agents, .kiro, .opencode, .pi) so each provider's output can be tested
directly in this repo.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Paul Bakaus
2026-03-21 00:37:16 -07:00
co-authored by Claude Opus 4.6
parent 624cb0b33b
commit 02e21cb4d3
198 changed files with 29406 additions and 3978 deletions
+18 -11
View File
@@ -373,20 +373,27 @@ async function build() {
copyDistToBuild(DIST_DIR, buildDir);
generateCFConfig(buildDir);
// Copy Claude Code output to project's .claude directory for local development
const claudeCodeSrc = path.join(DIST_DIR, 'claude-code', '.claude');
const claudeCodeDest = path.join(ROOT_DIR, '.claude');
// Copy all provider outputs to project root for local testing
const providers = [
{ dist: 'claude-code', dir: '.claude' },
{ dist: 'cursor', dir: '.cursor' },
{ dist: 'gemini', dir: '.gemini' },
{ dist: 'codex', dir: '.codex' },
{ dist: 'agents', dir: '.agents' },
{ dist: 'kiro', dir: '.kiro' },
{ dist: 'opencode', dir: '.opencode' },
{ dist: 'pi', dir: '.pi' },
];
// Copy skills directory (preserves other files like settings.local.json)
const skillsSrc = path.join(claudeCodeSrc, 'skills');
const skillsDest = path.join(claudeCodeDest, 'skills');
for (const { dist, dir } of providers) {
const skillsSrc = path.join(DIST_DIR, dist, dir, 'skills');
const skillsDest = path.join(ROOT_DIR, dir, 'skills');
// Remove existing and copy fresh
if (fs.existsSync(skillsDest)) fs.rmSync(skillsDest, { recursive: true });
if (fs.existsSync(skillsDest)) fs.rmSync(skillsDest, { recursive: true });
copyDirSync(skillsSrc, skillsDest);
}
copyDirSync(skillsSrc, skillsDest);
console.log(`📋 Synced to .claude/: skills`);
console.log(`📋 Synced skills to: ${providers.map(p => p.dir).join(', ')}`);
console.log('\n✨ Build complete!');
}