Agent skill · Security

assigns-audit

Inspect LiveView socket assigns for memory bloat — missing temporary_assigns, unused assigns, unbounded lists needing streams, memory estimates. Use when LiveView memory grows or you need to add temporary_assigns.

oliver-kriskagithub.com/oliver-kriskaGitHub ↗
claude-codecan modify filesMIT
Install
npx skills add oliver-kriska/claude-elixir-phoenix --skill assigns-audit --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 3 KB
Bundled scripts: none
Allowed tools: ReadGrepGlobBash
Path: plugins/elixir-phoenix/skills/assigns-audit/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 515
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# LiveView Assigns Audit Analyze LiveView socket assigns for memory efficiency, clarity, and best practices. ## Iron Laws - Never Violate These 1. **Use streams for lists > 100 items** - Never store large lists directly in assigns 2. **Use temporary_assigns for transient data** - Flash messages, temp errors, notifications 3. **Preload only needed fields** - Don't store full Ecto schemas when only needing subset 4. **Initialize all assigns in mount** - Never access assigns that might not exist 5. **NEVER modify assigns or code during audit** — this is a read-only diagnostic; report findings only ## Quick Audit Commands ### Extract All Assigns Use Grep to find all `assign(` and `assign_new(` calls in the target LiveView file. ### Find Large Data Patterns Use Grep to find large data patterns: lists stored in assigns (`assign.*\[\]`, `assign.*Repo\.all`) and full schema storage (`assign.*Repo\.get`) in the target file. ## Audit Checklist ### 1. Memory Issues | Pattern | Problem | Solution | |---------|---------|----------| | `assign(:items, Repo.all(...))` | Unbounded list | Use `stream/3` | | `assign(:user, Repo.get!(...))` | Full schema | Select only needed fields | | `assign(:file_d

What's inside
Steps it walks through
  1. Iron Laws - Never Violate These
  2. Quick Audit Commands
  3. Extract All Assigns
  4. Find Large Data Patterns
  5. Audit Checklist
  6. 1. Memory Issues
  7. 2. Missing temporaryassigns
  8. 3. Unused Assigns
  9. 4. Missing Initialization
  10. Memory Estimation
  11. Usage
More from claude-elixir-phoenix
All skills →
About this skill
What does the assigns-audit skill do?

Inspect LiveView socket assigns for memory bloat — missing temporary_assigns, unused assigns, unbounded lists needing streams, memory estimates. Use when LiveView memory grows or you need to add temporary_assigns.

How do I install it?

Run `npx skills add oliver-kriska/claude-elixir-phoenix --skill assigns-audit --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From oliver-kriska/claude-elixir-phoenix, a repository with 515 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going