bradley
Claude - Opinionated Claude Code integration for Elixir
I’ve been working with Claude Code extensively and absolutely love it. However, I’ve come across the challenge of managing configuration across multiple projects. For example, some projects I want hooks, other projects I don’t. There are a few projects I want to share hooks. And I just found that reusing hooks in general was something that was messy.
Additionally, I see a lot more potential for managing Claude from the Elixir side and deeply integrating it into the Elixir ecosystem. For example, imagine being able to pull in Usage Rules, which is an awesome library by Zach Daniel and all other configuration that is necessary for Claude to work effectively. Or libraries can define their own sub-agents. Or libraries can even define their own hooks that should be hooked into Claude Code. All of this, I think, can be done with this library, though the support still needs to be added.
How It Works
You use Claude as the library name by adding it to your deps and then running mix claude.install as a mix task, and it will automatically add all of the hooks that are needed for Claude to operate effectively and within bounds. There are only a few hooks right now, but I want to add a lot more, in addition to sub-agents being able to extend hooks with your own custom hooks and more.
Vision
The goal is to create a seamless integration between Claude Code and the Elixir ecosystem, allowing:
- Project-specific configuration management - Different hook configurations per project
- Shared hook libraries - Reusable hooks across multiple projects
- Deep ecosystem integration - Libraries can define their own Claude-specific rules and behaviors
- Extensible sub-agent system - Libraries can register their own specialized agents
- Automatic setup - One command to configure Claude Code optimally for your Elixir project
Current Status
This is early-stage development with basic hook management implemented. Much more functionality is planned, including better integration with existing tools like Usage Rules and expanded sub-agent capabilities.
Let me know what you think. I’d love to hear your feedback!
Most Liked
bradley
Big update, I’ve completely migrated the repo to the new claude marketplace structure. My previous approach was novel when released but is now irrelevant with plugins. I considered archiving the repo and creating a new one but since the whole point of this repo was to make it easy to do elixir dev with claude code, I felt the migration with the current repo was appropriate.
Contributions are welcome!
bradley
Hi everyone,
I just released v0.3 which now lets you use any mix task or generic command as a hook. Check out the full details in the hooks cheatsheet.
This release also includes a few quality-of-life improvements:
- Tidewave now auto-installs if Phoenix is detected
- Updated docs with new guides and cheatsheets
- Hooks are now more robust and reliable
Happy hook building!
bradley
I just released v0.2.0. With this new update, I’ve added:
- Subagent configuration w/ automatic usage rules integration
- An extensible hook system so you can write your own hooks, in elixir!
- A new meta subagent following best practices to make it easier to create claude code subagents
- Automatically pull in usage docs into your
CLAUDE.mdfile following best practices - A new
mix claude.installigniter task
You can get started with mix igniter.install claude. There’s still so much more to add to scale up claude code’s capabilities and I’m excited to explore that more. See this link below for a full list of features/capabilities.
Popular in Announcing
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









