Elixir Architect
maxim-ist/elixir-architect
A skill your agent uses when designing or architecting Elixir/Phoenix applications, creating comprehensive project documentation, planning OTP supervision trees, defining domain models with Ash…
Search for package-specific usage rules and best practices from Elixir packages.
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rules --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/core/skills/usage-rules .claude/skills/usage-rules && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .claude/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rulesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rules --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/core/skills/usage-rules .agents/skills/usage-rules && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .agents/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rules --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/core/skills/usage-rules .cursor/skills/usage-rules && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .cursor/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/bradleygolden/claude-marketplace-elixir.git --path plugins/core/skills/usage-rules--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rules --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/core/skills/usage-rules .gemini/skills/usage-rules && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .gemini/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rulesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/core/skills/usage-rules .github/skills/usage-rules && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .github/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install bradleygolden/claude-marketplace-elixir usage-rules --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradleygolden/claude-marketplace-elixir.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/core/skills/usage-rules .opencode/skills/usage-rules && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "usage-rules" agent skill from https://github.com/bradleygolden/claude-marketplace-elixir/tree/main/plugins/core/skills/usage-rules into .opencode/skills/usage-rules/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "usage-rules", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
usage-rulesSearch for package-specific usage rules and best practices from Elixir packages.
Usage Rules is an agent skill from bradleygolden/claude-marketplace-elixir. 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.
Its SKILL.md is about 4.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).
It sits in AI & LLM Engineering, covering LLM observability. It works with Elixir. The repository describes itself as: Claude Marketplace for Elixir. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 624d46b. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGrepGlobBashAskUserQuestionFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
jqcurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
hex.pmAlso links to:
hexdocs.pmFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Usage Rules loads about 4.9k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 1,450 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Grep, Glob, Bash, AskUserQuestionAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from bradleygolden/claude-marketplace-elixir at commit 624d46b, republished under its MIT licence (© bradleygolden). 1,450 words, ~4,885 tokens.
.claude/skills/usage-rules/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.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.
Use this skill when you need to:
This skill implements a cascading search that prioritizes local and contextual information:
deps/ directory for usage-rules.md.usage-rules/Extract the package name and identify the coding context from the user's question.
Package name examples:
ashphoenix_live_viewectoContext keywords:
Use the Glob and Grep tools to search the deps/ directory for usage rules:
Find the package directory with usage-rules.md:
Use Glob: pattern="deps/<package_name>/usage-rules.md"If no results, the package isn't installed locally or doesn't provide usage rules. Skip to Step 3.
Check for sub-rules (advanced packages may have specialized rules):
Use Glob: pattern="deps/<package_name>/usage-rules/*.md"Search for relevant sections based on context keywords:
Use Grep: pattern="^## (Querying|Error Handling|Actions)", path="deps/<package_name>/usage-rules.md", output_mode="content", -n=trueThis finds section headings with line numbers.
Extract relevant sections:
Use Grep: pattern="^## Error Handling", path="deps/<package_name>/usage-rules.md", output_mode="content", -A=50Use -A flag to get section content (adjust number based on typical section length).
Read the complete file if needed for broader context:
Use Read: file_path="deps/<package_name>/usage-rules.md"If the package wasn't found in deps/, check for previously fetched usage rules, or fetch them now.
Use the Glob tool to check if usage rules were previously fetched:
Use Glob: pattern=".usage-rules/<package_name>-*/usage-rules.md"If found, search the cached rules using the same patterns as Step 2 (sections 3-5).
If no cached rules found, determine which version to fetch:
Check mix.lock for locked version:
Use Bash: grep '"<package_name>"' mix.lock | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'Check mix.exs for version constraint:
Use Bash: grep -E '\{:<package_name>' mix.exs | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'Get latest version from hex.pm:
Use Bash: curl -s "https://hex.pm/api/packages/<package_name>" | jq -r '.releases[0].version'If version ambiguous, use AskUserQuestion to prompt:
Question: "Package '<package_name>' usage rules not found locally. Which version would you like to fetch?"
Options:
- "Latest (X.Y.Z)" - Fetch most recent release
- "Project version (X.Y.Z)" - Use version from mix.exs/mix.lock (if available)
- "Specific version" - User provides custom version in "Other" field
- "Skip fetching" - Continue without usage rulesOnce version is determined, fetch the package and extract usage-rules.md:
# Create temp directory and fetch package
mkdir -p .usage-rules/.tmp
mix hex.package fetch <package_name> <version> --unpack --output .usage-rules/.tmp/<package_name>-<version>
# Check if usage-rules.md exists
if [ -f ".usage-rules/.tmp/<package_name>-<version>/usage-rules.md" ]; then
# Create version-specific directory
mkdir -p ".usage-rules/<package_name>-<version>"
# Copy main usage rules file
cp ".usage-rules/.tmp/<package_name>-<version>/usage-rules.md" ".usage-rules/<package_name>-<version>/"
# Copy sub-rules if present
if [ -d ".usage-rules/.tmp/<package_name>-<version>/usage-rules/" ]; then
cp -r ".usage-rules/.tmp/<package_name>-<version>/usage-rules/" ".usage-rules/<package_name>-<version>/"
fi
echo "Usage rules cached in .usage-rules/<package_name>-<version>/"
else
echo "Package does not provide usage-rules.md"
fi
# Clean up temp directory
rm -rf ".usage-rules/.tmp/<package_name>-<version>"Storage location: .usage-rules/<package_name>-<version>/
If successful:
If package doesn't include usage-rules.md:
Inform the user that fetched usage rules should be git-ignored. Suggest adding to .gitignore:
# Fetched usage rules
/.usage-rules/This only needs to be mentioned once per session, and only if fetching actually occurred.
Usage rules files can be large (1000+ lines). Extract only relevant sections to avoid context overload.
# Find all h2 section headings with line numbers
Use Grep: pattern="^## ", path=".usage-rules/<package>-<version>/usage-rules.md", output_mode="content", -n=trueThis returns a list like:
7:## Understanding Ash
13:## Code Structure & Organization
21:## Code Interfaces
85:## Actions
120:## Querying DataBased on user's context keywords, identify relevant sections:
Context: "querying" → Look for sections containing:
Context: "error handling" → Look for sections containing:
Context: "actions" → Look for sections containing:
# Extract specific section with content
Use Grep: pattern="^## Querying Data", path=".usage-rules/<package>-<version>/usage-rules.md", output_mode="content", -A=80Adjust -A value based on typical section length:
-A=50-A=100-A=150 or read specific rangesLook for code blocks within sections:
# Find code examples in section
Use Grep: pattern="```elixir|# GOOD|# BAD", path=".usage-rules/<package>-<version>/usage-rules.md", output_mode="content", -A=10Code examples often include:
# GOOD, # PREFERRED# BAD, # AVOID, # WRONGFormat the output based on what was found.
When presenting results, organize them as follows:
Found usage rules for <package_name>:
**Location**: deps/<package_name>/usage-rules.md
**Version**: <version from mix.lock>
**Relevant Best Practices** (<section_name>):
<extracted section content with code examples>
---
**Full Rules**: deps/<package_name>/usage-rules.md
**Integration**: For API documentation, use the hex-docs-search skill.Found cached usage rules for <package_name>:
**Version**: <version>
**Cache Location**: .usage-rules/<package>-<version>/usage-rules.md
**Relevant Best Practices** (<section_name>):
<extracted section content with code examples>
---
**Full Rules**: .usage-rules/<package>-<version>/usage-rules.md
**Note**: Rules are cached locally for offline access.
**Integration**: For API documentation, use the hex-docs-search skill.Package '<package_name>' does not provide usage-rules.md.
**Note**: Usage rules are a community-driven convention where packages provide
best practices in markdown format. Not all packages have adopted this yet.
**Alternatives**:
- Use hex-docs-search skill for API documentation and guides
- Check package README or official documentation
- Search for "<package_name> elixir best practices" online
- Look for community guides and blog posts
**Current packages with usage rules**:
- ash, ash_postgres, ash_json_api (Ash Framework ecosystem)
- igniter, spark, reactor (Build tools and engines)
**Help the ecosystem**: Encourage package maintainers to add usage-rules.md!For comprehensive implementation guidance, use both:
1. **usage-rules skill** - Coding conventions and best practices
2. **hex-docs-search skill** - API documentation and function signatures
Combining both provides complete "how to implement correctly" guidance.User asks: "What are the best practices for querying data in Ash?"
Search process:
ashdeps/ash/usage-rules.md (found)## Querying DataOutput:
Found usage rules for ash:
**Location**: deps/ash/usage-rules.md
**Version**: 3.5.20
**Relevant Best Practices** (Querying Data):
## Querying Data
### Common Query Operations
Prefer using code interface functions with the `query` option for filtering, sorting, and limiting:
```elixir
# PREFERRED - Use the query option
posts = MyApp.Blog.list_posts!(
query: [
filter: [status: :published],
sort: [published_at: :desc],
limit: 10
],
load: [author: :profile]
)
# AVOID - Don't build queries manually outside domain
query = MyApp.Blog.Post
|> Ash.Query.filter(status: :published)
|> Ash.Query.sort(published_at: :desc)
posts = Ash.read!(query)All query-related options go in the query parameter, not as separate arguments.
Full Rules: deps/ash/usage-rules.md
Integration: For Ecto.Query API documentation, use hex-docs-search skill.
### Example 2: Error handling conventions
**User asks**: "How should I handle errors in Phoenix LiveView?"
**Search process**:
1. Extract package: `phoenix_live_view`
2. Identify context: "error handling"
3. Check `deps/phoenix_live_view/usage-rules.md` (not found - LiveView doesn't provide usage rules yet)
4. Check `.usage-rules/phoenix_live_view-*/usage-rules.md` (not found)
5. Attempt fetch (package doesn't include usage-rules.md)
6. Provide fallback suggestions
**Output**:Package 'phoenix_live_view' does not provide usage-rules.md.
Alternatives:
Note: Usage rules are a community convention. Help the ecosystem by encouraging package maintainers to add usage-rules.md files!
### Example 3: Unknown package with progressive fetch
**User asks**: "What are the best practices for using Spark DSL?"
**Search process**:
1. Extract package: `spark`
2. Identify context: general (no specific context)
3. Check `deps/spark/usage-rules.md` (not found)
4. Check `.usage-rules/spark-*/usage-rules.md` (not found)
5. Check mix.exs: `{:spark, "~> 2.0"}`
6. Get latest 2.x from hex.pm:
```bash
curl -s "https://hex.pm/api/packages/spark" | jq -r '.releases[] | select(.version | startswith("2.")) | .version' | head -1
# Returns: 2.2.24mix hex.package fetch spark 2.2.24 --unpack --output .usage-rules/.tmp/spark-2.2.24.usage-rules/spark-2.2.24/usage-rules.mdOutput:
Found cached usage rules for spark:
**Version**: 2.2.24
**Cache Location**: .usage-rules/spark-2.2.24/usage-rules.md
**Relevant Best Practices** (Understanding Spark):
## Understanding Spark
Spark is a foundation for declarative DSLs in Elixir. It powers frameworks like Ash
by providing the infrastructure for building expressive, compile-time-validated DSLs.
### Key Concepts
- **Extensions**: Modules that add DSL sections to Spark DSLs
- **Sections**: Top-level DSL constructs (like `actions do ... end`)
- **Entities**: Individual items within sections (like `read :list`)
- **Options**: Configuration for entities
<...more content...>
---
**Full Rules**: .usage-rules/spark-2.2.24/usage-rules.md
**Note**: Rules are now cached locally for offline access.
**Recommendation**: Add `.usage-rules/` to your .gitignore.User asks: "Show me Ash relationship best practices again"
Search process:
ashdeps/ash/usage-rules.md (not found - not in project).usage-rules/ash-*/usage-rules.md (found version 3.5.20!)Result: Fast, offline search without network requests. Works even when disconnected.
User asks: "Common mistakes with Ash actions?"
Search process:
ashOutput:
Found usage rules for ash:
**Relevant Best Practices** (Actions - Common Mistakes):
## Actions
**AVOID** - Don't create generic CRUD actions:
```elixir
# BAD - Generic naming
create :create
update :updatePREFER - Create domain-specific actions:
# GOOD - Specific business operations
create :register_user
update :activate_account
update :suspend_for_violationAVOID - Don't put business logic outside actions:
# BAD - Logic in controller
def create_post(conn, params) do
{:ok, post} = Blog.create_post(params)
# Business logic here
send_notifications(post)
update_stats()
endPREFER - Put business logic in action changes:
# GOOD - Logic in action
create :publish_post do
change after_action(fn _changeset, post ->
send_notifications(post)
update_stats()
{:ok, post}
end)
endFull Rules: deps/ash/usage-rules.md
Use Claude's built-in tools in this order:
Requirements: curl and jq (Linux/Mac native, use Git Bash or WSL on Windows)
.usage-rules/ before fetching# GOOD vs # BAD comparisons explicitly.usage-rules/ for previously fetched rulesPhoenix.LiveView → phoenix_live_view)Package fetch fails:
Extraction fails:
Fetched rules not found on repeat queries:
.usage-rules/ directory existsSection too large:
-A value in Grep to get more contentMultiple relevant sections:
No section matches context:
Different version in deps/ vs cache:
Version specified doesn't exist:
© bradleygolden, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in plugins/core/skills/usage-rules of bradleygolden/claude-marketplace-elixir.
Open the folder on GitHubat commit 624d46b
Usage Rules next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Usage Rules this skillbradleygolden/claude-marketplace-elixir | 176 | — | ~4.9k | Automated safety check: Notes | MIT | |
| Elixir Architectmaxim-ist/elixir-architect | 145 | — | ~7.6k | Automated safety check: Pass | MIT | |
| Phoenix Frameworkpodlove/radiator | 136 | — | ~562 | Automated safety check: Pass | MIT | |
| Elixir Expertpass-agent/loomkin | 181 | 1 repos | ~796 | Automated safety check: Pass | MIT | |
| Compound Docsoliver-kriska/claude-elixir-phoenix | 565 | — | ~528 | Automated safety check: Pass | MIT | |
| Elixir Prodavila7/claude-code-templates | 32k | 8 repos | ~486 | Automated safety check: Pass | MIT |
maxim-ist/elixir-architect
A skill your agent uses when designing or architecting Elixir/Phoenix applications, creating comprehensive project documentation, planning OTP supervision trees, defining domain models with Ash…
podlove/radiator
Use this skill working with Phoenix Framework. An agent skill from podlove/radiator.
pass-agent/loomkin
Expert in Elixir, Phoenix Framework, and OTP. An agent skill from pass-agent/loomkin.
oliver-kriska/claude-elixir-phoenix
Searchable Elixir/Phoenix/Ecto solution documentation system with; Use when consulting past solutions…
davila7/claude-code-templates
Write idiomatic Elixir code with OTP patterns, supervision trees, and Phoenix LiveView.
oliver-kriska/claude-elixir-phoenix
Fix Elixir/Phoenix code until Codex CLI review comes back clean; Use when codex is installed and you want an external…
bradleygolden/claude-marketplace-elixir
Research Hex packages (Sobelow, Phoenix, Ecto, Credo, Ash, etc).
Works with
Categories
Search for package-specific usage rules and best practices from Elixir packages. Usage Rules is an agent skill from bradleygolden/claude-marketplace-elixir. Search for package-specific usage rules and best practices from Elixir packages.
Usage Rules fits situations like: you need coding conventions; common mistakes; good/bad examples for packages like Ash.
Run `npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a claude-code`. Or copy the skill folder (plugins/core/skills/usage-rules in bradleygolden/claude-marketplace-elixir) into .claude/skills/usage-rules in your project. Claude Code loads it when a task matches its description.
Run `npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a codex`. Or copy the skill folder (plugins/core/skills/usage-rules in bradleygolden/claude-marketplace-elixir) into .agents/skills/usage-rules in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bradleygolden/claude-marketplace-elixir --skill usage-rules -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/usage-rules, .gemini/skills/usage-rules, .github/skills/usage-rules and .opencode/skills/usage-rules in your project.
Going by SKILL.md and its folder, Usage Rules needs the command-line tools its instructions call (jq and curl). Its frontmatter pre-approves these tools: Read, Grep, Glob, Bash, AskUserQuestion.
SKILL.md names 2 domains. In commands or code: hex.pm; the agent is likely to contact it when it follows the instructions. As links in the text: hexdocs.pm. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Usage Rules is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.9k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Usage Rules: Elixir Architect (maxim-ist/elixir-architect, 145 stars), Phoenix Framework (podlove/radiator, 136 stars), Elixir Expert (pass-agent/loomkin, 181 stars) and Compound Docs (oliver-kriska/claude-elixir-phoenix, 565 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
bradleygolden (a GitHub user) maintains it in bradleygolden/claude-marketplace-elixir, which has 176 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on January 11, 2026.
Source: bradleygolden/claude-marketplace-elixir on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.