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.
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.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# 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
- Iron Laws - Never Violate These
- Quick Audit Commands
- Extract All Assigns
- Find Large Data Patterns
- Audit Checklist
- 1. Memory Issues
- 2. Missing temporaryassigns
- 3. Unused Assigns
- 4. Missing Initialization
- Memory Estimation
- Usage
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.
