@incidental/project-templates
Version:
Claude Code template library for JavaScript projects with framework auto-detection
36 lines (29 loc) • 1.05 kB
JavaScript
import { logger } from '../utils/logger.js';
import { detectFramework } from '../detectors/framework-detector.js';
import TemplateInstaller from '../installers/template-installer.js';
export async function addAgentHandler(name, options) {
logger.header(`Adding agent: ${name}`);
// Determine framework
let framework = options.framework;
if (!framework) {
const detected = await detectFramework();
if (detected) {
framework = detected;
logger.info(`Using detected framework: ${framework}`);
} else {
logger.warning('Could not detect framework, using "shared" templates');
framework = 'shared';
}
}
// Install the agent
const installer = new TemplateInstaller();
try {
await installer.installAgent(name, framework);
logger.success('Agent installed successfully!');
logger.dim('\nClaude will automatically use this agent when appropriate');
} catch (error) {
logger.error(`Failed to install agent: ${error.message}`);
throw error;
}
}
export default addAgentHandler;