UNPKG

initrepo-claude-agent

Version:

Autonomous AI agent for Claude Code - Build InitRepo projects with minimal human intervention

84 lines (72 loc) • 2.75 kB
#!/usr/bin/env node /** * Post-installation script for InitRepo Claude Agent * Sets up the agent in the user's environment */ import fs from 'fs'; import path from 'path'; import os from 'os'; console.log('šŸ¤– InitRepo Claude Agent - Post-Installation Setup'); console.log('===================================================='); try { // Check Node.js version const nodeVersion = process.version; const majorVersion = parseInt(nodeVersion.slice(1).split('.')[0]); if (majorVersion < 16) { console.warn('āš ļø Warning: Node.js 16+ is recommended. Current version:', nodeVersion); } else { console.log('āœ… Node.js version check passed:', nodeVersion); } // Create Claude Code settings directory if it doesn't exist const claudeDir = path.join(process.cwd(), '.claude'); if (!fs.existsSync(claudeDir)) { fs.mkdirSync(claudeDir, { recursive: true }); console.log('āœ… Created .claude directory'); } // Create Claude Code settings for the agent const claudeSettings = { "permissions": { "allow": [ "Bash(find:*)", "Bash(node:*)", "Bash(npm:*)", "Bash(npx:*)", "Bash(echo:*)", "Bash(timeout:*)", "Read(./**)", "Write(./**)", "Edit(./**)", "Glob(./**)", "Grep(./**)", "mcp__initrepo__*" ], "deny": [ "Read(/mnt/c/initrepo-mcp/**)", "Write(/mnt/c/initrepo-mcp/**)" ], "ask": [] }, "auto_run_commands": false }; const settingsPath = path.join(claudeDir, 'settings.local.json'); if (!fs.existsSync(settingsPath)) { fs.writeFileSync(settingsPath, JSON.stringify(claudeSettings, null, 2)); console.log('āœ… Created Claude Code settings'); } console.log('\nšŸŽ‰ Installation completed successfully!'); console.log('\nšŸ“‹ Quick Start:'); console.log(' • Run the agent: initrepo-claude'); console.log(' • Or use: node claude-project-builder.js'); console.log(' • Help: initrepo-claude --help'); console.log('\nšŸ“š Documentation:'); console.log(' • CLAUDE.md - Claude Code integration guide'); console.log(' • README.md - Full documentation'); console.log(' • CLAUDE_AGENT_USAGE_GUIDE.md - Usage instructions'); console.log('\nāš ļø Important Notes:'); console.log(' • This agent requires an InitRepo MCP server to function'); console.log(' • Current implementation includes mock responses for demonstration'); console.log(' • See documentation for MCP server setup instructions'); } catch (error) { console.error('āŒ Post-installation failed:', error.message); process.exit(1); }