Agent skill

Elixir

by streamband in streamband/hydra-srt

A skill your agent uses for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes.

Apache-2.0Auto-check passedDevelopment

Install Elixir

skills CLI
$ npx skills add streamband/hydra-srt --skill elixir -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install streamband/hydra-srt elixir --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/streamband/hydra-srt.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/elixir .claude/skills/elixir && rm -rf skills-src

Use ~/.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/

Facts

Skill name
elixir
GitHub stars
146
Token cost
~804 tokens
SKILL.md length
344 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes.

  • Works in 8 steps: Read context first: routes, schema,… → Keep business logic in contexts, not in… → Prefer small pure functions and explicit… → …
  • Elixir/Phoenix development in this repo: implementing features
  • SKILL.md covers When to use, Workflow, Repo commands and Ecto and DB, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Elixir is an agent skill from streamband/hydra-srt. Use this skill for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes.

Its SKILL.md is about 800 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering LLM observability and Refactoring. It works with Elixir. The repository describes itself as: An Open Source Alternative to Haivision SRT Gateway. The licence is Apache-2.0.

When your agent uses it

  • Elixir/Phoenix development in this repo: implementing features
  • Production-safe fixes

Example prompts

  • “/elixir”

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Read context first: routes, schema, context modules, and related tests.
  2. Keep business logic in contexts, not in controllers/channels/live views.
  3. Prefer small pure functions and explicit pattern matching.
  4. Prefer bracket access (map[:key]) for map reads in app code. Do not use Map.get/2. Use Map.get/3 only when an explicit default value is…
  5. Add @spec for every function (def/defp).
  6. If a @spec becomes hard to read, introduce named custom types (@type, @opaque) and reuse them in specs.
  7. Add or update tests with each behavior change.
  8. Run targeted tests first, then broader suite if needed.

What it can do on your machine

Read from SKILL.md and the folder at commit 8d081f2. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are elixir).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Elixir loads about 804 tokens when it runs. Until then it costs about 40 tokens; SKILL.md has 344 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~40
When it runs · the whole SKILL.md, loaded when a task matches
~804

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.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated 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.

SKILL.md

The full file from streamband/hydra-srt at commit 8d081f2, republished under its Apache-2.0 licence (© streamband). 344 words, ~804 tokens.

Download SKILL.mdSave it as .claude/skills/elixir/SKILL.md (or your agent's skills folder).
name
elixir
description
Use this skill for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes.

Elixir Skill

When to use

Use for any task touching Elixir, Phoenix, Ecto, Mix, OTP, or ExUnit.

Workflow

  1. Read context first: routes, schema, context modules, and related tests.
  2. Keep business logic in contexts, not in controllers/channels/live views.
  3. Prefer small pure functions and explicit pattern matching.
  4. Prefer bracket access (map[:key]) for map reads in app code. Do not use Map.get/2. Use Map.get/3 only when an explicit default value is required.
  5. Add @spec for every function (def/defp).
  6. If a @spec becomes hard to read, introduce named custom types (@type, @opaque) and reuse them in specs.
  7. Add or update tests with each behavior change.
  8. Run targeted tests first, then broader suite if needed.

Repo commands

  • Format: mix format
  • Compile with warnings: mix compile --warnings-as-errors
  • Run tests: mix test
  • Run specific test file: mix test path/to/test_file.exs
  • Run one test line: mix test path/to/test_file.exs:123

Ecto and DB

  • Keep schema constraints mirrored in changesets (validate_required, unique_constraint, foreign_key_constraint).
  • Prefer explicit preload strategy; avoid hidden N+1 queries.
  • For migrations: make them reversible and safe for existing data.

OTP and Concurrency

  • Keep GenServer state minimal and explicit.
  • Avoid blocking calls in server callbacks.
  • Use Task.Supervisor for isolated async work.
  • Add timeouts and backpressure where needed.

Time durations (milliseconds)

Many APIs in this repo take or store durations in milliseconds (Process.send_after/3, :inet.setopts/2 send_timeout, Cachex TTL, Application.get_env/3 defaults, test assert_receive timeouts, etc.).

Prefer :timer over raw integer literals so the unit is obvious:

elixir
# Good
@default_interval_ms :timer.seconds(30)
@recv_timeout :timer.seconds(10)
Process.send_after(self(), :tick, :timer.seconds(5))
config :app, ttl_ms: Env.get_integer("TTL_MS", :timer.minutes(5))

# Avoid (unless the value is not a duration, e.g. bytes or a port)
@default_interval_ms 30_000
send_timeout: 10_000

Use :timer.seconds/1, :timer.minutes/1, or :timer.hours/1 as appropriate. :timer returns milliseconds. Existing examples: HydraSrt.Auth (:timer.minutes(5)), HydraSrt.Stats.Cleaner (:timer.hours(1)), RTMP config in config/runtime.exs.

Do not use :timer for non-duration numbers (byte counts, port numbers, numeric limits).

Phoenix

  • Controllers should orchestrate, not own domain logic.
  • Keep params validation close to boundaries.
  • Return consistent error payloads and status codes.

Testing standards

  • Cover happy path, validation failures, and edge cases.
  • Use factories/builders instead of large inline fixtures.
  • Assert behavior and observable side effects, not implementation details.

PR checklist

  • Code formatted and compiles without warnings.
  • New/changed behavior has tests.
  • No obvious N+1 or unbounded process growth.
  • Errors are actionable and structured.

© streamband, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/elixir of streamband/hydra-srt.

Open the folder on GitHubat commit 8d081f2

Compare with similar skills

Elixir 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.

Elixir compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Elixir this skillstreamband/hydra-srt146—~804Automated safety check: PassApache-2.0
Change CleanupSimon-Initiative/oli-torus119—~3.7kAutomated safety check: PassMIT
Elixirericrisco/rsc-harness156—~2.9kAutomated safety check: PassMIT
Staff Level Elixirpproenca/dot-skills214—~1.6kAutomated safety check: PassMIT
Elixir AntipatternsGentleman-Programming/Gentleman-Skills657—~2.1kAutomated safety check: PassMIT
Elixir Idiomsirahardianto/awesome-agv157—~771Automated safety check: PassMIT

Similar skills

  • Change Cleanup

    Simon-Initiative/oli-torus

    Clean up and harden code introduced by the current branch without drifting into broad refactors.

    119 GitHub stars~3.7k tokensUpdated today
    DevelopmentAuto-check passed
  • Elixir

    ericrisco/rsc-harness

    A skill your agent uses when writing or refactoring Elixir/OTP on the BEAM — GenServers, supervision trees and restart strategies, pattern matching, mix projects and releases — or when processes…

    156 GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Staff Level Elixir

    pproenca/dot-skills

    A skill your agent uses when writing, reviewing, or refactoring Elixir, OTP, Ecto, or Phoenix/LiveView code.

    214 GitHub stars~1.6k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Elixir Antipatterns

    Gentleman-Programming/Gentleman-Skills

    Core catalog of 8 critical Elixir/Phoenix anti-patterns covering error handling, separation of concerns, Ecto queries, and testing.

    657 GitHub stars~2.1k tokensUpdated 6 mo ago
    DevelopmentAuto-check passed
  • Elixir Idioms

    irahardianto/awesome-agv

    Elixir and OTP idioms: pattern matching, with pipelines, GenServer and supervision tree architecture, fault-tolerant concurrency, and ExUnit testing.

    157 GitHub stars~771 tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Phx Techdebt

    oliver-kriska/claude-elixir-phoenix

    Analyze Elixir/Phoenix technical debt — duplicates, refactoring; Use when asked about code quality, cleanup, or what…

    564 GitHub stars~583 tokensUpdated yesterday
    DevelopmentAuto-check passed

More from streamband/hydra-srt

  • Hydra Dev

    streamband/hydra-srt

    Run HydraSRT development workflows: mix q quality gate, Elixir unit/E2E tests, native Rust tests, web Vitest/Playwright, and make dev.

    146 GitHub stars~995 tokensUpdated 21 days ago
    Auto-check passed
  • Frontend

    streamband/hydra-srt

    A skill your agent uses for frontend work in webapp (React/TypeScript, UI implementation, tests, and refactors).

    146 GitHub stars~582 tokensUpdated 21 days ago
    Auto-check passed
  • Gstreamer

    streamband/hydra-srt

    A skill your agent uses for GStreamer pipeline development and debugging: graph design, caps negotiation issues, latency, synchronization, and runtime diagnostics.

    146 GitHub stars~499 tokensUpdated 21 days ago
    Auto-check passed
  • Hydra Architect

    streamband/hydra-srt

    A skill your agent uses when designing or evolving Hydra platform architecture across Elixir/Phoenix, SQLite, VictoriaMetrics/VictoriaLogs analytics, native/Rust, and runtime boundaries.

    146 GitHub stars~1.2k tokensUpdated 21 days ago
    Auto-check passed
  • Hydra MCP

    streamband/hydra-srt

    Query the running HydraSRT instance via MCP (routes, logs, stats, control).

    146 GitHub stars~789 tokensUpdated 21 days ago
    Auto-check passed
  • Rust

    streamband/hydra-srt

    A skill your agent uses for Rust development in this repo: design, implementation, debugging, performance work, and reliable testing.

    146 GitHub stars~459 tokensUpdated 21 days ago
    Auto-check passed

Works with

Questions about Elixir

What does Elixir do?

A skill your agent uses for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes. Elixir is an agent skill from streamband/hydra-srt. Use this skill for Elixir/Phoenix development in this repo: implementing features, refactors, debugging, tests, Ecto changes, and production-safe fixes.

When should I use Elixir?

Elixir fits situations like: elixir/Phoenix development in this repo: implementing features; production-safe fixes.

How do I install Elixir in Claude Code?

Run `npx skills add streamband/hydra-srt --skill elixir -a claude-code`. Or copy the skill folder (.agents/skills/elixir in streamband/hydra-srt) into .claude/skills/elixir in your project. Claude Code loads it when a task matches its description.

How do I install Elixir in Codex?

Run `npx skills add streamband/hydra-srt --skill elixir -a codex`. Or copy the skill folder (.agents/skills/elixir in streamband/hydra-srt) into .agents/skills/elixir in your project. Codex loads it when a task matches its description.

Can I use Elixir in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add streamband/hydra-srt --skill elixir -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/elixir, .gemini/skills/elixir, .github/skills/elixir and .opencode/skills/elixir in your project.

What does Elixir need to run?

SKILL.md names no scripts, command-line tools or credentials: Elixir is instructions for the agent only.

Does Elixir access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Elixir safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Elixir use?

Elixir is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Elixir use?

About 804 tokens (SKILL.md is roughly 3.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Elixir?

Skills that share tags, products or a category with Elixir: Change Cleanup (Simon-Initiative/oli-torus, 119 stars), Elixir (ericrisco/rsc-harness, 156 stars), Staff Level Elixir (pproenca/dot-skills, 214 stars) and Elixir Antipatterns (Gentleman-Programming/Gentleman-Skills, 657 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Elixir?

streamband (a GitHub organization) maintains it in streamband/hydra-srt, which has 146 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 16, 2026.

Source: streamband/hydra-srt on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.