UNPKG

jay-code

Version:

Streamlined AI CLI orchestration engine with mathematical rigor and enterprise-grade reliability

68 lines (56 loc) • 2.62 kB
// init/index.ts - Main init command orchestrator import { printSuccess, printError } from '../utils.js'; import { createDirectoryStructure } from './directory-structure.js'; import { createSwarmCommands } from './swarm-commands.js'; import { createSparcEnvironment } from './sparc-environment.js'; import { createClaudeConfig } from './claude-config.js'; import { createBatchToolsGuide } from './batch-tools.js'; export interface InitOptions { sparc?: boolean; force?: boolean; } export async function initCommand(options: InitOptions = {}) { try { const fs = await import('fs/promises'); const path = await import('path'); printSuccess('Initializing Jay-Code project...'); // Phase 1: Create directory structure console.log('\nšŸ“ Phase 1: Creating directory structure...'); await createDirectoryStructure(); // Phase 2: Create base configuration console.log('\nāš™ļø Phase 2: Creating configuration...'); await createClaudeConfig(options); // Phase 3: Create swarm commands and documentation console.log('\nšŸ¤– Phase 3: Creating swarm commands...'); await createSwarmCommands(); // Phase 4: Create batch tools guides console.log('\nšŸ”§ Phase 4: Creating batch tools guides...'); await createBatchToolsGuide(); // Phase 5: SPARC environment (if requested) if (options.sparc) { console.log('\nšŸš€ Phase 5: Creating SPARC environment...'); await createSparcEnvironment(); } // Success summary console.log('\nšŸŽ‰ Project initialized successfully!'); console.log(' šŸ“ Created .claude/ directory structure'); console.log(' šŸ“‹ Created comprehensive swarm command documentation'); console.log(' šŸ”§ Created batch tools coordination guides'); console.log(' šŸ“– Created detailed usage examples with orchestration'); console.log('\n Next steps:'); console.log(' 1. Run "jay-code swarm --help" to see swarm options'); console.log(' 2. Check .claude/commands/swarm/ for detailed documentation'); console.log(' 3. Review batch tools guide for orchestration patterns'); console.log(' 4. Run "jay-code help" for all available commands'); if (options.sparc) { console.log(' 5. Run "jay-code sparc modes" to see available SPARC modes'); console.log(' 6. Use TodoWrite/TodoRead for task coordination'); console.log(' 7. Use Task tool for parallel agent execution'); } } catch (error) { printError( `Failed to initialize project: ${error instanceof Error ? error.message : String(error)}`, ); throw error; } }