credo-custom-checks

Create custom Credo.Check modules for Elixir static analysis and CI enforcement.

187|20|Updated Nov 20, 2025
One-click install
npx skills add https://github.com/TheBushidoCollective/han --skill credo-custom-checks
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: credo-custom-checks
Source: https://github.com/TheBushidoCollective/han/tree/main/jutsu/jutsu-credo/skills/credo-custom-checks
Command: npx skills add https://github.com/TheBushidoCollective/han --skill credo-custom-checks

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

When project needs domain-specific code quality checks, custom Credo checks help enforce rules beyond the defaults.

Core Features & Use Cases

  • Implement Practice: Define custom Credo.Check modules
  • Example integration with .credo.exs
  • Extend checks with categories and priorities

Quick Start

Add a custom Credo.Check module and enable it in your Credo config.

Frequently Asked Questions about credo-custom-checks

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create custom Credo checks for Elixir projects?

Custom Credo checks enforce project-specific code quality rules by implementing a Credo.Check module with a run/2 function, traversing the AST using Credo.Code.prewalk, emitting issues via format_issue and IssueMeta, then registering the check in your credo.exs configuration file.

When should I use custom Credo checks instead of built-in rules?

Use custom Credo checks when you need to enforce domain-specific code quality rules, detect hardcoded secrets, prevent anti-patterns, or validate patterns unique to your codebase that the default Credo checks don't cover.

Can I use custom Credo checks in CI pipelines and local development?

Yes, custom Credo checks apply to static analysis workflows in both CI pipelines and local development environments once registered in credo.exs, enabling consistent code quality enforcement across your entire development lifecycle.

What's the difference between custom Credo checks and default Credo rules?

Default Credo rules enforce general Elixir best practices, while custom Credo checks let you define and enforce project-specific patterns, business logic constraints, and organizational standards tailored to your codebase's unique needs.

Do I need Credo experience to implement custom checks?

Basic familiarity with Credo and Elixir AST concepts helps, but custom Credo checks require understanding how to write a Check module, use prewalk for AST traversal, and configure the check in credo.exs—intermediate-level implementation knowledge.

How do custom checks integrate with existing Credo configurations?

Register custom Credo checks in your .credo.exs file alongside built-in checks, specifying categories and priority levels so they run seamlessly with default rules during static analysis.