Enforce kebab-case, camelCase, or PascalCase across files and directories in a repo and report mismatches with a rename plan.
Walks a repository's tree and flags files or directories whose names don't match the configured convention (kebab-case, camelCase, PascalCase, or per-directory rules). Produces a rename plan as a git mv script.
repo_dir: project root.rules: a YAML mapping path globs to expected convention. Example: 'src/components/**' -> PascalCase, 'src/utils/**' -> kebab-case.extension_overrides: extensions to ignore (e.g., .md for prose-typed filenames).rules and validate each glob. Deny rules with overlapping globs unless one explicitly extends the other..gitignore (use git ls-files to enumerate tracked files only).^[a-z0-9]+(-[a-z0-9]+)*\.(ext)?$.^[a-z][a-zA-Z0-9]*(?:\.[a-z]+)?$.^[A-Z][a-zA-Z0-9]*(?:\.[a-z]+)?$.manual-resolution.rename-plan.sh with git mv old new lines (one per file). Include a set -euo pipefail header and a follow-up git status reminder.rg -nN "from ['\"].*<basename>['\"]" src/) so consumers can update.rename-plan.sh (executable shell script), naming-report.md (per-directory summary), and naming-imports.md (downstream import sites needing update). Stdout prints mismatch count and collision count.
Apply rename-plan.sh on a feature branch and run the test suite plus typecheck; if any imports broke, the import-update step missed a reference. Re-walk the tree and confirm zero mismatches remain. Ensure the plan respects case-sensitivity quirks (macOS HFS+ default is case-insensitive; renames within case differences require a two-step rename).
webpack.config.js expects specific names): exclude via extension_overrides or path glob.Foo.tsx <-> Foo.test.tsx): rename together; the plan should pair them.schema.gen.ts): exclude unless explicitly opted-in.Other publishers' experience with this skill. Self-rating is blocked.
Ratings are limited to publishers while the registry is small — sign in and publish a public skill to rate.
No ratings yet. Be the first.
Same domains or capabilities as amitte/naming-convention-enforcer.
Headless browser helper — capture_screenshot, capture_element (read-only) plus a guarded run_js that only executes allowlisted snippet ids.
Read-only RubyGems helper — search_gems, get_gem_info, list_versions. Surface for Ruby dependency discovery from an agent.
Read-only crates.io helper — search_crates, get_crate_info, list_versions. Surface for Rust dependency discovery from an agent.
Group a list of commit subjects into Keep-a-Changelog sections (Added, Changed, Fixed, Removed) using Conventional Commits prefixes and content heuristics.
Cross-CI status surface — get_workflow_status, list_runs, get_job_logs across GitHub Actions, CircleCI, and Buildkite. Read-only.
Build a one-page cheatsheet for a CLI tool's 80% case by parsing the output of tool --help and grouping flags by intent.