Self-Improve Skill
Automatically detect, analyze, and fix issues in the oh-my-gemini project itself using multi-agent orchestration.
Purpose
Enable oh-my-gemini to improve itself through:
- •Automated bug detection and fixing
- •Code quality improvements
- •Test coverage enhancement
- •Performance optimization
- •Documentation updates
Workflow
Phase 1: Detection
- •
Run Diagnostics
- •Execute
npm testto find failing tests - •Run
npm run lintto find linting errors - •Run
npm run buildto find compilation errors - •Check TypeScript errors with
lsp_diagnostics
- •Execute
- •
Code Analysis
- •Use
lsp_diagnosticsto find type errors - •Use
ast_grepto find code patterns that need improvement - •Use
grepto find TODO/FIXME comments - •Check for deprecated patterns
- •Use
- •
Dependency Check
- •Run
npm outdatedto find outdated dependencies - •Check for security vulnerabilities with
npm audit
- •Run
Phase 2: Prioritization
Create a prioritized list of issues:
- •Critical: Build failures, test failures, type errors
- •High: Linting errors, security vulnerabilities
- •Medium: Code quality issues, deprecated patterns
- •Low: Documentation, minor improvements
Phase 3: Fixing
For each issue:
- •
Analyze the Problem
- •Use
Readto examine relevant files - •Use
lsp_definitionto understand code structure - •Use
lsp_referencesto find all usages
- •Use
- •
Create Fix Plan
- •Break down into atomic tasks
- •Use
TodoWriteto track progress
- •
Implement Fix
- •Use
Editto make changes - •Follow existing code patterns
- •Ensure type safety
- •Use
- •
Verify Fix
- •Run
lsp_diagnosticson changed files - •Run
npm run buildto verify compilation - •Run
npm testto verify tests pass - •Check for regressions
- •Run
Phase 4: Continuous Improvement
- •
Code Quality
- •Refactor complex functions
- •Improve type safety
- •Add missing error handling
- •Improve documentation
- •
Test Coverage
- •Identify untested code paths
- •Add missing test cases
- •Improve test quality
- •
Performance
- •Identify performance bottlenecks
- •Optimize slow operations
- •Reduce bundle size
- •
Documentation
- •Update outdated docs
- •Add missing examples
- •Improve clarity
Agent Delegation
Delegate tasks to specialized agents:
- •architect: For architectural decisions and complex refactoring
- •executor: For implementation tasks
- •code-reviewer: For code quality review
- •tester: For test-related tasks
- •writer: For documentation updates
Example Usage
code
> self-improve: Find and fix all TypeScript errors > 자가발전: 모든 버그를 찾아서 수정해줘 > auto-fix: 린트 에러와 타입 에러를 모두 수정해줘
Safety Measures
- •
Backup Before Changes
- •Create git commit before major changes
- •Use git stash for experimental changes
- •
Incremental Changes
- •Fix one issue at a time
- •Verify each fix before proceeding
- •
No Breaking Changes
- •Maintain backward compatibility
- •Update tests for any API changes
- •
Review Before Commit
- •Show changes before committing
- •Get user approval for major changes
Configuration
Can be configured via .gemini-cli/GEMINI.md:
markdown
## Self-Improve Settings - Auto-fix: true - Auto-commit: false (requires approval) - Test-before-commit: true - Max-changes-per-run: 10