Agent skill

Serviceradar Elixir

by carverauto in carverauto/serviceradar

A skill your agent uses for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work.

Apache-2.0Auto-check passedDatabases

Install Serviceradar Elixir

skills CLI
$ npx skills add carverauto/serviceradar --skill serviceradar-elixir -a claude-code

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

GitHub CLI
$ gh skill install carverauto/serviceradar serviceradar-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/carverauto/serviceradar.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/serviceradar-elixir .claude/skills/serviceradar-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
serviceradar-elixir
GitHub stars
921
Token cost
~1.7k tokens
SKILL.md length
838 words
Files
1
Skills in repo
18
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work.

  • Works in 3 steps: Fix a real bug or wrong typespec with a… → Leave a false positive alone, or add a… → If Dialyxir cannot render a warning kind…
  • ServiceRadar Elixir
  • SKILL.md covers Database migration command, Quality commands, Dialyzer and External downloads and…, plus 3 more sections
  • Calls bazel

What it does

Serviceradar Elixir is an agent skill from carverauto/serviceradar. Use for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work.

Its SKILL.md is about 1.7k 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 Databases, covering LLM observability. It works with Elixir. The repository describes itself as: Open-Source Network Management, Monitoring, ITOM, and Security Analytics. The licence is Apache-2.0.

When your agent uses it

  • ServiceRadar Elixir
  • External downloads
  • Hex dependencies

Example prompts

  • “/serviceradar-elixir”

Workflow steps

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

  1. Fix a real bug or wrong typespec with a clean, idiomatic change (and tests
  2. Leave a false positive alone, or add a narrow, documented entry in the
  3. If Dialyxir cannot render a warning kind (e.g. :opaque_compare), report or

What it can do on your machine

Read from SKILL.md and the folder at commit 8bbe3a2. 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

    Shell commands in SKILL.md call:

    • bazel

    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

Serviceradar Elixir loads about 1.7k tokens when it runs. Until then it costs about 39 tokens; SKILL.md has 838 words of instructions outside code blocks.

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

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 carverauto/serviceradar at commit 8bbe3a2, republished under its Apache-2.0 licence (© carverauto). 838 words, ~1,726 tokens.

Download SKILL.mdSave it as .claude/skills/serviceradar-elixir/SKILL.md (or your agent's skills folder).
name
serviceradar-elixir
description
Use for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work.
user-invocable
false
metadata.internal
true

ServiceRadar Elixir Rules

Database migration command

  • Bringing a database up to date: mix serviceradar.db.migrate, NOT mix ecto.migrate. An empty database is built from the committed baseline and only newer migrations run; mix ecto.migrate replays every migration in the tree instead, which is slow and has failed outright against a remote instance. Pass --no-baseline only when you deliberately want the full replay. The baseline does not work on a database that already carries TimescaleDB hypertables or AGE graphs, which is every real one — the schema does not round-trip, so the fixture lifecycle replays on an empty database instead. Do not reintroduce baselining there; why it cannot work is in docs/agent-runbooks.md.

Quality commands

  • Elixir workspace quality contract: ./scripts/elixir_quality.sh --project elixir/<project> and add --phoenix for Phoenix apps such as elixir/web-ng. PRs gate --lint-only (format + Credo); the rest of the Mix contract runs daily from //buildbuddy.yaml.

  • Same format/Credo check, hermetic on RBE and needing no local Hex deps/: bazel test --config=remote //build/elixir_quality:quality_check; auto-fix with bazel run --config=remote //build/elixir_quality:format. See build/elixir_quality.bzl for how Mix inputs are supplied.

  • Elixir / Dialyzer: prefer idiomatic Elixir (MapSet.new/1, direct GRPC.Stub.connect/2, normal Ash reads). Treat Dialyzer as advisory for false positives (opaque types, incomplete PLT success typing). See Hard Rules — never degrade APIs to silence the type checker. Use mix dialyzer --format dialyzer when Dialyxir short format crashes on unknown warning kinds.

Dialyzer

  • Never degrade production code to silence Dialyzer (or similar type checkers). Idiomatic, readable APIs beat warning-count optimization. Do not introduce runtime shape hacks, opacity barriers, or non-idiomatic call patterns whose only purpose is to make Dialyzer happy. Forbidden patterns include (non-exhaustive):

    • :erlang.apply(MapSet, :new, …) / apply(Mod, :fun, …) / variable-module apply solely to hide success typing
    • “opaque_call” / 0-arity fun wrappers / :erlang.binary_to_term(term_to_binary(…)) barriers around otherwise normal calls
    • Rewriting clear MapSet / URI / gRPC / Ash call sites into obscure forms to dodge opaque-type or error-only success typing noise
    • Broad “fix everything Dialyzer mentions” sweeps that churn APIs without a product or correctness win

    Allowed approaches, in order:

    1. Fix a real bug or wrong typespec with a clean, idiomatic change (and tests when behavior changes).
    2. Leave a false positive alone, or add a narrow, documented entry in the project’s .dialyzer_ignore.exs (file + warning kind or short description — never directory-wide suppressions).
    3. If Dialyxir cannot render a warning kind (e.g. :opaque_compare), report or work around the formatter, do not reshape application code for it.

    Historical note: PR #4677 chased Dialyzer counts with apply/opaque barriers and MapSet churn; it was fully reverted in #4679. Do not reintroduce that style.

External downloads and dependencies

  • Use ServiceRadar.HTTP.EgressClient for external artifact downloads. Its module documentation owns the streaming contract and CONNECT-proxy compatibility rationale. The regression coverage is in elixir/serviceradar_core/test/serviceradar/http/egress_client_test.exs.
  • Check the workspace Hex closure when Mix and release dependencies differ. The Hex build definition owns the cross-project resolution policy; third_party/hex/hex_packages.bzl records the generated versions shipped by Bazel.
Show full SKILL.md (371 more words)Show less

Iron Laws

  • LiveView: no database queries in disconnected mount. Use streams for lists larger than 100 items. Check connected?/1 before PubSub subscribe.
  • Ecto: never use :float for money. Always pin values with ^ in queries. Use separate queries for has_many, JOIN for belongs_to.
  • Oban: jobs must be idempotent. Args use string keys. Never store structs in args.
  • Security: no String.to_atom/1 with user input. Authorize in every LiveView handle_event. Never use raw/1 with untrusted content.
  • OTP: no process without a runtime reason. Supervise all long-lived processes.
  • Elixir: declare @external_resource for compile-time files. Wrap third-party library APIs behind project-owned modules. Never use assign_new for values refreshed every mount.

Ash First

Always use Ash concepts, almost never Ecto concepts directly. Think hard about the "Ash way" to do things. If you don't know, look for information in the rules & docs of Ash & associated packages.

When a change must remain atomic, implement atomic/3 or refactor the action to stay atomic. Do not use require_atomic? false to silence atomicity warnings.

Ash rebuilds atomic updates from a second changeset. Put compare-and-set filters on the pending caller changeset, not in an action-level change filter(...). When change/3 registers an after_action hook, atomic/3 must return {:ok, change(changeset, opts, context)} rather than bare :ok. In an atomic callback, read proposed values from changeset.atomics or Ash.Changeset.fetch_change/2; Ash.Changeset.get_attribute/2 can return old data or raise when original data is unavailable.

Database Schema Management

CRITICAL: All database schema changes (tables, views, indexes, materialized views, extensions) MUST be managed exclusively through Elixir migrations in elixir/serviceradar_core/priv/repo/migrations/.

CRITICAL: All tables, indexes, and constraints belong in the platform schema. Do not create or reference objects in the public schema. In migrations, set prefix: "platform" for new tables/indexes/constraints and avoid prefix: "public" in references.

Ingestion services must NEVER create database schema or run DDL statements. They write to existing tables but do not create or modify schema.

This rule exists because:

  • Elixir migrations provide a single source of truth for schema
  • Ecto migrations support up/down rollbacks and version tracking
  • Having schema scattered across Go and Elixir creates maintenance nightmares
  • Ingestion services may be replaced or scaled differently than schema management

If you need a new table, view, or materialized view that ingestion will write to, create the migration in Elixir first.

© carverauto, 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/serviceradar-elixir of carverauto/serviceradar.

Open the folder on GitHubat commit 8bbe3a2

Compare with similar skills

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

Serviceradar Elixir compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Serviceradar Elixir this skillcarverauto/serviceradar921—~1.7kAutomated safety check: PassApache-2.0
Hydra Architectstreamband/hydra-srt147—~1.2kAutomated safety check: PassApache-2.0
Phx Watch PRoliver-kriska/claude-elixir-phoenix565—~1kAutomated safety check: PassMIT
Elixir Architectmaxim-ist/elixir-architect145—~7.6kAutomated safety check: PassMIT
Phoenix Frameworkpodlove/radiator136—~562Automated safety check: PassMIT
Sentry Elixir SDKgetsentry/sentry-for-ai268—~3.5kAutomated safety check: PassApache-2.0

Similar skills

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

    147 GitHub stars~1.2k tokensUpdated 22 days ago
    DatabasesAuto-check passed
  • Phx Watch PR

    oliver-kriska/claude-elixir-phoenix

    Watch an Elixir/Phoenix PR with an Amp Orb keep-alive lease until required non-deployment CI is green and review threads are resolved.

    565 GitHub stars~1k tokensUpdated 3 days ago
    AI & LLM EngineeringAuto-check passed
  • 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…

    145 GitHub stars~7.6k tokensUpdated 10 mo ago
    AI & LLM EngineeringAuto-check passed
  • Phoenix Framework

    podlove/radiator

    Use this skill working with Phoenix Framework. An agent skill from podlove/radiator.

    136 GitHub stars~562 tokensUpdated 14 days ago
    AI & LLM EngineeringAuto-check passed
  • Sentry Elixir SDK

    getsentry/sentry-for-ai

    Official

    Full Sentry SDK setup for Elixir. An agent skill from getsentry/sentry-for-ai.

    268 GitHub stars~3.5k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Elixir Expert

    pass-agent/loomkin

    Expert in Elixir, Phoenix Framework, and OTP. An agent skill from pass-agent/loomkin.

    181 GitHub starsUsed in 1 repo~796 tokens
    AI & LLM EngineeringAuto-check passed

More from carverauto/serviceradar

All 18 skills in this repo
  • Demo Cnpg Local Web Ng

    carverauto/serviceradar

    Run ServiceRadar web-ng locally against the live Kubernetes demo CNPG database for dashboard, SRQL, services, and UI testing.

    921 GitHub stars~672 tokensUpdated today
    Auto-check passed
  • Web Ng Docker Loop

    carverauto/serviceradar

    Run ServiceRadar elixir/web-ng locally against the Docker Compose CNPG database with copied mTLS certs and Docker secrets, then verify dashboard UI changes with Playwright.

    921 GitHub stars~737 tokensUpdated today
    Auto-check passed
  • Demo Local Rollout

    carverauto/serviceradar

    Build unpublished sha-... An agent skill from carverauto/serviceradar.

    921 GitHub stars~4.2k tokensUpdated today
    Auto-check passed
  • Demo Web Ng Fastpath

    carverauto/serviceradar

    Refresh the Kubernetes demo namespace with a web-ng-only change using the ServiceRadar fast path.

    921 GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Fieldsurvey Local Web Ng

    carverauto/serviceradar

    Run ServiceRadar web-ng locally against the Kubernetes demo namespace FieldSurvey data, including CNPG NodePort access, NATS Object Store artifact access, authenticated browser checks, and…

    921 GitHub stars~785 tokensUpdated today
    Auto-check passed
  • Release Cut And Demo Roll

    carverauto/serviceradar

    Cut a ServiceRadar release and roll the Kubernetes demo namespace to the resulting published semver image tag through the guarded ArgoCD release branch.

    921 GitHub stars~3.9k tokensUpdated today
    Auto-check passed

Works with

Questions about Serviceradar Elixir

What does Serviceradar Elixir do?

A skill your agent uses for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work. Serviceradar Elixir is an agent skill from carverauto/serviceradar. Use for ServiceRadar Elixir, Phoenix, LiveView, Ash/Ecto, migrations, external downloads, Hex dependencies, formatting, or Dialyzer work.

When should I use Serviceradar Elixir?

Serviceradar Elixir fits situations like: serviceRadar Elixir; external downloads; hex dependencies.

How do I install Serviceradar Elixir in Claude Code?

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

How do I install Serviceradar Elixir in Codex?

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

Can I use Serviceradar 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 carverauto/serviceradar --skill serviceradar-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/serviceradar-elixir, .gemini/skills/serviceradar-elixir, .github/skills/serviceradar-elixir and .opencode/skills/serviceradar-elixir in your project.

What does Serviceradar Elixir need to run?

Going by SKILL.md and its folder, Serviceradar Elixir needs the command-line tools its instructions call (bazel).

Does Serviceradar 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 Serviceradar 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 Serviceradar Elixir use?

Serviceradar 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 Serviceradar Elixir use?

About 1.7k tokens (SKILL.md is roughly 6.9k 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 Serviceradar Elixir?

Skills that share tags, products or a category with Serviceradar Elixir: Hydra Architect (streamband/hydra-srt, 147 stars), Phx Watch PR (oliver-kriska/claude-elixir-phoenix, 565 stars), Elixir Architect (maxim-ist/elixir-architect, 145 stars) and Phoenix Framework (podlove/radiator, 136 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Serviceradar Elixir?

carverauto (a GitHub organization) maintains it in carverauto/serviceradar, which has 921 GitHub stars. The repository holds 18 skills in this directory. The repository was last updated on October 9, 2026.

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