core

Essential Elixir development support with hooks and automation

View on GitHub
Author Bradley Golden
Namespace @bradleygolden/elixir
Category general
Version 1.0.0
Stars 159
Downloads 7
self.md verified
Table of content

Essential Elixir development support with hooks and automation

Installation

npx claude-plugins install @bradleygolden/elixir/core

Contents

Folders: hooks, scripts, skills

Files: CHANGELOG.md, README.md

Documentation

Essential Elixir development support plugin for Claude Code.

Installation

claude
/plugin install core@elixir

Requirements

Features

Automatic Hooks

PostToolUse - After file edits:

PreToolUse - Before git commits:

Skills

hex-docs-search - Intelligent Hex package documentation search with progressive fetching:

See skills/hex-docs-search/SKILL.md for details.

usage-rules - Package best practices and coding conventions search:

See skills/usage-rules/SKILL.md for details.

Hooks Behavior

Auto-format (Non-blocking)

mix format {{file_path}}

Compile Check (Blocking on errors)

mix compile --warnings-as-errors

Pre-commit Validation (Blocking)

mix format --check-formatted &&
mix compile --warnings-as-errors &&
mix deps.unlock --check-unused

Changelog

See CHANGELOG.md for version history.

Included Skills

This plugin includes 2 skill definitions:

Research Hex packages (Sobelow, Phoenix, Ecto, Credo, Ash, etc). Use when investigating packages, understanding integration patterns, or finding module/function docs and usage examples. Automatically fetches missing documentation and source code locally.

View skill definition

Hex Documentation Search

Comprehensive search for Elixir and Erlang package documentation, following a cascading strategy to find the most relevant and context-aware information.

When to use this skill

Use this skill when you need to:

Search strategy

This skill implements a cascading search that prioritizes local and contextual information:

  1. Local dependencies - Search installed packages in deps/ directory (both source code AND generated docs)
  2. Fetched cache - Check previously fetched documentation and source code in .hex-docs/ and .hex-packages/
  3. Progressive fetch - Automatically fetch missing documentation or source code locally when needed
  4. Codebase usage - Find how packages are used in the current project
  5. HexDocs API - Search official documentation on hexdocs.pm (fallback)
  6. Web search - Fallback to general web search (last resort)

Instructions

Step 1: Identify the search target

Extract the package name and optionally the module or function name from the user’s question.

Examples:

…(truncated)

usage-rules

Search for package-specific usage rules and best practices from Elixir packages. Use when you need coding conventions, patterns, common mistakes, or good/bad examples for packages like Ash, Phoenix, Ecto, etc.

View skill definition

Usage Rules Search

Comprehensive search for Elixir and Erlang package usage rules and best practices, following a cascading strategy to find the most relevant coding conventions and patterns.

When to use this skill

Use this skill when you need to:

Search strategy

This skill implements a cascading search that prioritizes local and contextual information:

  1. Local dependencies - Search installed packages in deps/ directory for usage-rules.md
  2. Fetched cache - Check previously fetched usage rules in .usage-rules/
  3. Progressive fetch - Automatically fetch package and extract usage-rules.md if missing
  4. Context-aware extraction - Extract relevant sections based on coding context
  5. Fallback - Note when package doesn’t provide usage rules, suggest alternatives

Instructions

Step 1: Identify the package and context

Extract the package name and identify the coding context from the user’s question.

Package name examples:

Context keywords:

…(truncated)

Source

View on GitHub

Tags: general elixirerlangbeamotpfunctional