refactoring
Use when restructuring code to improve quality without changing external behavior. Emphasizes safety through tests and incremental changes.
Browse published AI skills maintained by TheBushidoCollective. Compare skill descriptions and follow each source repository for setup instructions.
Indexed skills
407Repository stars across indexed skills
32,425Repository forks
4,198Average repository stars per indexed skill
80Repository stars may repeat across skills from the same repository.
Use when restructuring code to improve quality without changing external behavior. Emphasizes safety through tests and incremental changes.
Use when implementing async/await, Task management, actors, or Combine reactive patterns in iOS applications.
Use when optimizing React Native Web performance. Provides patterns for code splitting, bundle optimization, memoization, and web-specific performance improvements.
Use when creating troubleshooting guides and diagnostic procedures for operational issues. Covers problem diagnosis, root cause analysis, and systematic debugging.
Use when erlang's concurrency model including lightweight processes, message passing, process links and monitors, error handling patterns, selective receive, and building massively concurrent systems on the BEA...
Use when biome configuration including biome.json setup, schema versions, VCS integration, and project organization.
Use when working with Ruby blocks, procs, lambdas, and functional programming patterns including closures and higher-order functions.
Use when eSLint built-in rules including rule configuration, severity levels, and disabling strategies.
Use when defining data structures using Ecto schemas including fields, associations, embedded schemas, and schema metadata. Use for modeling domain data in Elixir applications.
Use when configuring Sentry alerts, managing issues, or setting up notifications. Covers alert rules, issue triage, and integrations.
Use when creating custom Credo checks for project-specific code quality rules and standards in Elixir.
Use when Java concurrency with ExecutorService, CompletableFuture, and virtual threads. Use when building concurrent applications.
Use when writing or modifying Bash/shell scripts. Covers script structure, variables, quoting, conditionals, and loops with modern best practices.
Use when designing solutions, adding features, or refactoring by applying KISS, YAGNI, and Principle of Least Astonishment to write simple, predictable code.
Use when deciding between inheritance and composition in object-oriented design. Use when creating class hierarchies or composing objects from smaller components.
Use when next.js Server Components for optimal performance. Use when building data-intensive Next.js applications.
Use when configuring Dialyzer for Erlang/Elixir type checking and static analysis.
Use when implementing error handling, cleanup routines, or debugging in shell scripts. Covers traps, exit codes, and robust error patterns.
Use when capturing and reporting errors to Sentry, adding context, or handling exceptions. Covers error boundaries, context enrichment, and fingerprinting.
Use when writing shell scripts that need to run across different systems, shells, or environments. Covers POSIX compatibility and platform differences.
Use when working with Zustand in TypeScript projects. Covers type-safe store creation, typed selectors, and advanced TypeScript patterns with Zustand.
Use when configuring Maven plugins, setting up common plugins like compiler, surefire, jar, or creating custom plugin executions.
Use when Python data modeling with dataclasses, attrs, and Pydantic. Use when creating data structures and models.
Writing effective step definitions and organizing test code
The default order uses GitHub repository stars from our indexed data. Stars belong to the source repository and may be shared by multiple skills. They indicate repository interest, not skill installs or an independent quality score.