Install
openclaw skills install @charlie-morrison/cm-eslint-config-generatorGenerate optimal ESLint configurations based on project type, framework, and team preferences — flat config format, plugin selection, and rule tuning.
openclaw skills install @charlie-morrison/cm-eslint-config-generatorGenerate optimal ESLint flat configurations based on project analysis. Detects framework, TypeScript usage, and coding patterns to recommend plugins, rules, and presets. Handles migration from legacy .eslintrc to flat config format.
"Generate ESLint config for my project"
"Migrate my .eslintrc to flat config"
"Recommend ESLint plugins for my React TypeScript project"
"Audit my ESLint rules for conflicts"
cat package.json | python3 -c "
import json,sys
d=json.load(sys.stdin)
deps = {**d.get('dependencies',{}), **d.get('devDependencies',{})}
for fw in ['react','vue','svelte','angular','next','nuxt','astro','express','fastify']:
if fw in deps: print(f'Framework: {fw}')
if 'typescript' in deps: print('TypeScript: yes')
for plugin in [k for k in deps if 'eslint' in k.lower()]:
print(f'ESLint plugin: {plugin}')
"
Based on detected project type, generate flat config with:
Convert legacy .eslintrc.json/.eslintrc.js to flat config:
## ESLint Configuration Generated
**Project:** React + TypeScript + Vitest
**Format:** Flat config (eslint.config.mjs)
### Generated Config
- TypeScript parser with type-aware linting
- React plugin with hooks rules
- Import plugin with TypeScript resolver
- Vitest plugin for test files
- Prettier compatibility (no conflicting rules)
### Plugin Recommendations
✅ @typescript-eslint — type-aware linting
✅ eslint-plugin-react — React best practices
✅ eslint-plugin-react-hooks — hooks rules
✅ eslint-plugin-import-x — import order + validation
🟡 eslint-plugin-jsx-a11y — accessibility (recommended)