elixir-phoenix-call-tracing

elixir-phoenix-call-tracing is a skill for Codex from ccarvalho-eng/codex-elixir-phoenix. It costs 23 tokens per session (596 once invoked), scanned A, original, MIT.

A code-analysis skill that traces how an Elixir function is reached from controllers, LiveView callbacks, workers, and other starting points.

In plain words
What is it for?
Use it to build call trees with Mix's cross-reference reports, inspect how arguments are passed, and find the entry points that can reach a function.
Why use it?
It makes unclear data flow and hidden callers easier to understand, especially when debugging a value, changing a function, or investigating an incomplete stack trace.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: mentions subagents; mentions Codex.

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/ccarvalho-eng/codex-elixir-phoenix/elixir-phoenix-call-tracing
Any agent
npx skills add ccarvalho-eng/codex-elixir-phoenix --skill elixir-phoenix-call-tracing
Clone the repo
git clone --depth 1 https://github.com/ccarvalho-eng/codex-elixir-phoenix

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for elixir-phoenix-call-tracing

README.md
[![agentmods](https://agentmods.dev/badge/skills/ccarvalho-eng/codex-elixir-phoenix/elixir-phoenix-call-tracing.svg)](https://agentmods.dev/skills/ccarvalho-eng/codex-elixir-phoenix/elixir-phoenix-call-tracing)
Your own site
<a href="https://agentmods.dev/skills/ccarvalho-eng/codex-elixir-phoenix/elixir-phoenix-call-tracing"><img src="https://agentmods.dev/badge/skills/ccarvalho-eng/codex-elixir-phoenix/elixir-phoenix-call-tracing.svg" alt="Measured on agentmods" height="20"></a>
Per session 23 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 596 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00023 $0.00596
Opus 5 $0.00012 $0.00298
Sonnet 5 $0.00005 $0.00119
Haiku 4.5 $0.00002 $0.00060

Measured 6d ago against content hash 08c0e6956e0f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

elixir-phoenix-call-tracing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/elixir-phoenix-call-tracing/SKILL.md · 69 lines

How it starts

The opening of the file, as written. The whole thing — 69 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Call Tracing

Build call trees showing how functions are reached from entry points.

Iron Laws - Never Violate These

  1. Always use mix xref callers first - It's authoritative; grep is fallback only
  2. Stop at entry points - Controllers, LiveView callbacks, Oban workers, GenServer callbacks
  3. Track visited MFAs - Prevent infinite loops from circular calls
  4. Extract argument patterns - Just knowing "who calls" isn't enough; HOW they call matters
  5. Max depth 10 - Deeper trees indicate architectural issues, not useful traces

When to Build Call Tree (Use Proactively)

Condition Why Call Tree Helps
Unexpected nil/value at runtime Trace where the value originates
Bug can't reproduce locally See all entry points that reach the code
Changing function signature Find all callers and their argument patterns
Incomplete stack trace Get full path context
"Where does X come from?" Visual answer to data flow question

Quick Trace

Run mix xref callers MyApp.Accounts.update_user/2 to find all callers. Then read the reported locations to see argument patterns.

Entry Points (Stop Here)

Pattern Type
def mount/3, def handle_event/3 LiveView
def index/2, def show/2, def create/2 Controller
def perform(%Oban.Job{}) Oban Worker
def handle_call/3, def handle_cast/2 GenServer

Delegate to call-tracer Agent

For full recursive trees with argument extraction and parallel category tracing, run the call-tracer workflow with a focused function target in MFA format (Module:function/arity), for example: MyApp.Accounts:update_user/2.

The call-tracer agent uses parallel subagents for each entry point category:

  • Controllers subagent (HTTP paths)
  • LiveView subagent (WebSocket paths)
  • Workers subagent (Background jobs)
  • Internal subagent (Cross-context calls)

Each gets fresh 200k context for deep exploration.

Read the full file on GitHub · 69 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 69 lines · 23 tokens per session scan A 08c0e6956e0f

Subscribe to this mod's changes

elixir-phoenix-call-tracing is a skill published in the GitHub repository ccarvalho-eng/codex-elixir-phoenix (11 stars, last pushed 4mo ago), licensed MIT. It adds 23 tokens to every session and 596 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

sensitive-logging-audit

Audit and fix sensitive-data exposure through Python runtime logging in openai-agents-python. Use when reviewing logging, print, warnings, stderr, traceback, MCP names, model or tool exceptions, redaction flags, or any diagnostic path that may retain user data.

openai/openai-agents-python · 59 tokens

phoenix-observability

Open-source AI observability platform for LLM tracing, evaluation, and monitoring. Use when debugging LLM applications with detailed traces, running evaluations on datasets, or monitoring production AI systems with real-time insights.

davila7/claude-code-templates · 47 tokens

debugging-e2e-tests

Use when an Opik E2E test has failed and a developer wants it investigated — e.g. "why did this e2e test fail?", "investigate the failing run on my PR", "is dataset-crud-smoke flaky?", "the nightly e2e suite went red". Takes a failure from a CI check, a TestOps launch, a test name, or a local run; gathers the trace…

comet-ml/opik · 122 tokens

langbot-plugin-dev

Develop, debug, and test LangBot plugins. Use when creating new LangBot plugins, fixing plugin bugs, setting up a LangBot test environment, or testing plugins via WebSocket. Covers plugin component architecture (EventListener, Command, Tool), the plugin SDK API (invokellm, getllmmodels, sendmessage, plugin storage)…

langbot-app/LangBot · 110 tokens

credit-note-fixer

Fix the tiny credit-note formatting bug and rerun the exact targeted test command.

openai/openai-agents-python · 21 tokens

node-connect

Diagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps. Use when QR/setup code/manual connect fails, local Wi-Fi works but VPS/tailnet does not, or errors mention pairing required, unauthorized, bootstrap token invalid or expired, gateway.bind, gateway.remote.url, Tailscale…

the-open-agent/openagent · 81 tokens