UNPKG

kg6-codex

Version:

A modular, open-source AI Developer Assistant for automating and improving the software development lifecycle

342 lines (262 loc) 6.85 kB
# AI Developer Assistant - Usage Guide ## Quick Setup ### Step 1: Environment Setup ```bash # Set your Gemini API key export GEMINI_API_KEY="sk-your-api-key-here" # Set Gemini as your LLM provider export LLM_PROVIDER="gemini" export LLM_MODEL="gemini-2.0-flash" ``` ### Step 2: Build the Project ```bash npm run build ``` ### Step 3: Test the Installation ```bash # Test basic functionality npm run dev -- --help ``` ## Core Commands ### 1. **Code Review** - Analyze your code for issues ```bash # Review staged changes ai-dev review --staged # Review specific files ai-dev review --file-patterns "src/**/*.ts" # Review with verbose output ai-dev review --verbose # Review and post to GitHub PR ai-dev review --post-github --github-owner your-org --github-repo your-repo --pr 123 ``` ### 2. **Code Explanation** - Understand what your code does ```bash # Explain your last commit ai-dev explain # Explain with detailed analysis ai-dev explain --level detailed --include-examples # Explain specific files ai-dev explain --file-patterns "src/utils/**/*.ts" ``` ### 3. **Commit Message Generation** - Auto-generate commit messages ```bash # Generate commit message for staged changes ai-dev commit-msg --staged # Generate with conventional commit format ai-dev commit-msg --style conventional --include-body # Generate with specific length ai-dev commit-msg --max-length 100 ``` ### 4. **Security Scanning** - Find vulnerabilities ```bash # Basic security scan ai-dev security-scan # Scan with specific severity levels ai-dev security-scan --severity high,critical # Scan including dependencies ai-dev security-scan --include-dependencies ``` ### 5. **Test Generation** - Create test cases ```bash # Generate test suggestions ai-dev test-suggest # Generate for specific framework ai-dev test-suggest --framework jest --type unit # Generate with coverage target ai-dev test-suggest --coverage-target 80 ``` ### 6. **Documentation Generation** - Create docs ```bash # Generate documentation ai-dev docs # Generate API documentation ai-dev docs --format jsdoc --include-examples # Generate for specific files ai-dev docs --file-patterns "src/api/**/*.ts" ``` ### 7. **Refactoring Suggestions** - Improve code quality ```bash # Get refactoring suggestions ai-dev refactor # Focus on specific areas ai-dev refactor --focus performance # Filter by severity ai-dev refactor --severity high ``` ### 8. **PR Summary** - Summarize pull request changes ```bash # Summarize PR ai-dev pr-summary --pr 123 # Include metrics ai-dev pr-summary --include-metrics ``` ### 9. **Developer Mentorship** - Get learning feedback ```bash # Get mentorship feedback ai-dev mentor # Specify experience level ai-dev mentor --level intermediate # Focus on specific areas ai-dev mentor --focus clean-code ``` ## Configuration Options ### Environment Variables ```bash # LLM Configuration LLM_PROVIDER=gemini LLM_MODEL=gemini-2.0-flash LLM_TEMPERATURE=0.7 LLM_MAX_TOKENS=2000 # Gemini Configuration GEMINI_API_KEY=your-gemini-api-key # Output Configuration AI_DEV_OUTPUT_FORMAT=console AI_DEV_VERBOSE=true AI_DEV_COLORIZE=true ``` ### Configuration File (ai-dev.config.yaml) ```yaml llm: provider: "gemini" model: "gemini-2.0-flash" temperature: 0.7 maxTokens: 2000 gemini: apiKey: "${GEMINI_API_KEY}" model: "gemini-2.0-flash" output: format: "console" colorize: true verbose: false ``` ## Common Workflows ### Daily Development Workflow ```bash # 1. Make your changes git add . # 2. Review your changes ai-dev review --staged # 3. Generate commit message ai-dev commit-msg --staged --style conventional # 4. Commit with the generated message git commit -m "$(ai-dev commit-msg --staged)" ``` ### Pull Request Workflow ```bash # 1. Create PR and get PR number # 2. Review with GitHub integration ai-dev review --post-github --github-owner your-org --github-repo your-repo --pr 123 # 3. Generate PR summary ai-dev pr-summary --pr 123 ``` ### Security Review Workflow ```bash # 1. Full security scan ai-dev security-scan --include-dependencies # 2. Generate security report ai-dev security-scan --format markdown --output-path security-report.md ``` ### Documentation Workflow ```bash # 1. Generate documentation for new code ai-dev docs --format markdown --include-examples # 2. Generate API documentation ai-dev docs --format jsdoc --target "src/api/**/*.ts" ``` ## Real Examples ### Example 1: Review a JavaScript Function ```bash # Create a test file echo 'function calculateTotal(items) { let total = 0; for (let i = 0; i <= items.length; i++) { total += items[i].price; } return total; }' > test.js # Review the code ai-dev review --file-patterns "test.js" ``` ### Example 2: Explain TypeScript Code ```bash # Create a TypeScript file echo 'interface User { id: string; name: string; } class UserService { private users: User[] = []; addUser(user: User): void { this.users.push(user); } }' > user-service.ts # Explain the code ai-dev explain --file-patterns "user-service.ts" --level detailed ``` ### Example 3: Generate Tests ```bash # Generate tests for your code ai-dev test-suggest --framework jest --type unit --file-patterns "src/**/*.ts" ``` ## Output Formats ### Console Output (Default) ```bash ai-dev review ``` ### Markdown Output ```bash ai-dev review --format markdown --output-path review.md ``` ### JSON Output ```bash ai-dev review --format json --output-path review.json ``` ### File Output ```bash ai-dev review --format file --output-path review.txt ``` ## Troubleshooting ### Common Issues **"No LLM provider available"** ```bash # Check your configuration ai-dev config validate # Test Gemini connection ai-dev config test --provider gemini ``` **"Git repository not found"** ```bash # Make sure you're in a git repository git status # Initialize if needed git init ``` **"Permission denied" errors** ```bash # Make sure the binary is executable chmod +x node_modules/.bin/ai-dev # Or use npm/npx npx ai-dev review ``` ### Getting Help ```bash # Get help for any command ai-dev <command> --help # List all available commands ai-dev --help # Check version and configuration ai-dev version ai-dev config show ``` ## Success! You're now ready to use AI Developer Assistant with Gemini! The platform provides: - **AI-powered code review** with detailed feedback - **Code explanation** in plain English - **Automated commit messages** following conventions - **Security scanning** for vulnerabilities - **Test generation** with multiple frameworks - **Documentation creation** in various formats - **Refactoring suggestions** for better code quality - **PR summaries** for team collaboration - **Developer mentorship** for learning and growth Start with `ai-dev review` to analyze your code and explore the other commands as needed!