Skip to main content
subagent CX Codex

elixir-pro — Claude Code subagent: features and installation

A subagent for Elixir work involving OTP design, Phoenix LiveView, and BEAM performance. Use it to refactor modules or plan process supervision.

Install into Claude Code · Plugin marketplace All methods and platforms ↓
/plugin marketplace add wshobson/agents
/plugin install functional-programming@claude-code-workflows
Open on GitHub

What elixir-pro does

elixir-pro helps shape Elixir applications around concurrency and fault tolerance. It can work on OTP building blocks such as GenServer and Supervisor, Phoenix LiveView features, Ecto changesets, and pattern-matching-based control flow.

Its listed outputs include ExUnit tests, Dialyzer specs, and Benchee benchmarks. For investigating BEAM bottlenecks, the description names :observer and :recon. The model is set to inherit. Supervision matters here: a “let it crash” design needs a supervisor to restart failed processes.

In Claude Code, add wshobson/agents as a marketplace, install functional-programming@claude-code-workflows, and use .claude/agents/elixir-pro.md. The Codex path is .codex/agents/elixir-pro.toml; Cursor uses .cursor/agents/elixir-pro.md.

What it helps with

  • design an OTP supervision tree for an application
  • refactor Elixir control flow around pattern matching
  • add process-based concurrency with Task
  • write ExUnit tests and Dialyzer specs
  • profile BEAM bottlenecks with :observer and :recon

Example prompts for the agent

  • Design a supervision tree for this OTP application.
  • Refactor this Elixir module to use pattern matching and guard clauses.
  • Add ExUnit tests and investigate the BEAM performance bottleneck.

How to install elixir-pro

1Plugin marketplace

/plugin marketplace add wshobson/agents
/plugin install functional-programming@claude-code-workflows

2Manually: put the files in place

.claude/agents/elixir-pro.md

For all projects use ~/.claude/agents/. Claude delegates by the description field or an @-mention

Step by step, with commands for each platform: Claude Code subagents: how to create one, call it and keep context clean

Questions about elixir-pro

How do I install elixir-pro in Claude Code?

Run these commands in order: /plugin marketplace add wshobson/agents, then /plugin install functional-programming@claude-code-workflows. Use .claude/agents/elixir-pro.md.

What does elixir-pro do?

It assists with Elixir code and OTP application design, including process supervision. It also covers Phoenix LiveView, Ecto, ExUnit testing, and BEAM performance work.

Which tools does it use to investigate BEAM bottlenecks?

The description names :observer and :recon for profiling. Benchee is listed for benchmarks.

Source text

elixir-pro.md · MIT
---
name: elixir-pro
description: Write idiomatic Elixir code with OTP patterns, supervision trees, and Phoenix LiveView. Masters concurrency, fault tolerance, and distributed systems. Use PROACTIVELY for Elixir refactoring, OTP design, or complex BEAM optimizations.
model: inherit
---

You are an Elixir expert specializing in concurrent, fault-tolerant, and distributed systems.

## Focus Areas

- OTP patterns (GenServer, Supervisor, Application)
- Phoenix framework and LiveView real-time features
- Ecto for database interactions and changesets
- Pattern matching and guard clauses
- Concurrent programming with processes and Tasks
- Distributed systems with nodes and clustering
- Performance optimization on the BEAM VM

## Approach

1. Embrace "let it crash" philosophy with proper supervision
2. Use pattern matching over conditional logic
3. Design with processes for isolation and concurrency
4. Leverage immutability for predictable state
5. Test with ExUnit, focusing on property-based testing
6. Profile with :observer and :recon for bottlenecks

## Output

- Idiomatic Elixir following community style guide
- OTP applications with proper supervision trees
- Phoenix apps with contexts and clean boundaries
- ExUnit tests with doctests and async where possible
- Dialyzer specs for type safety
- Performance benchmarks with Benchee
- Telemetry instrumentation for observability

Follow Elixir conventions. Design for fault tolerance and horizontal scaling.

© Seth Hobson · MIT · wshobson/agents

Similar subagents

All subagents for Programming languages →

From the same set508

The whole set →
git-workflow Walks your changes from code review through tests to a pull request, pausing for approval at each phase. Useful when a commit and PR need one fixed order instead of guesswork. CX Codex ★ 41,823repo stars unity-developer Subagent for Unity 6 LTS game development with C# optimization, URP/HDRP pipeline setup, and builds for iOS, Android, consoles, and WebGL. CX Codex ★ 41,823repo stars minecraft-bukkit-pro A subagent for building Minecraft server plugins on Bukkit, Spigot and Paper. Handy when you need events, commands, GUIs or tick optimization. CX Codex ★ 41,823repo stars haskell-pro Subagent for Haskell development. It assists with strong type systems, pure architecture, and concurrency using STM and async. CX Codex ★ 41,823repo stars full-stack-feature Walks a feature through requirements, database schema, and backend plus frontend architecture. Pauses at checkpoints and waits for your answer. CX Codex ★ 41,823repo stars xss-scan Scans React, Vue, Angular, and JavaScript codebases for client-side XSS vulnerabilities. Pinpoints unsafe DOM manipulation and supplies remediation snippets. CX Codex ★ 41,823repo stars mobile-security-coder Subagent for secure mobile application development. Specializes in input validation, WebView protection, and mobile-specific security patterns. CX Codex ★ 41,823repo stars frontend-security-coder A subagent for secure client-side code: stops XSS, wires up CSP, checks DOM handling. Useful when you write or review frontend code. CX Codex ★ 41,823repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor