assigns-audit

仓库创建 2026年2月12日最近提交 5 小时前SkillHot 收录 20 天前
▸ 精选理由

快速定位 assigns 问题并给出修复建议

▸ 风险提示

需要读取应用运行时或源码以估算内存

这个 Skill 做什么

检测 LiveView assigns 中的内存膨胀、未使用字段与流式化建议。

检查 LiveView socket 的 assigns 有没有在偷偷吃内存:哪些字段没被用、哪些临时数据该用 temporary_assigns、哪些大列表应改用 stream。适合在 LiveView 内存增长、页面变慢或想优化带宽/渲染时运行。它会结合 Ecto 和简单内存估算给出具体改法,告诉你怎么改能立刻见效。

▸ 展开 SKILL.md 英文原文

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.

开发编程LiveView内存分析性能优化通用
505
Stars
34
Forks
40
仓库内 Skill
+35
7 日增星
安装 / 使用
给你的 Agent 一句话(通用)
帮我安装这个 skill:https://raw.githubusercontent.com/oliver-kriska/claude-elixir-phoenix/main/plugins/elixir-phoenix/skills/assigns-audit/SKILL.md
或 curl 直取 SKILL.md
curl -fsSL "https://raw.githubusercontent.com/oliver-kriska/claude-elixir-phoenix/main/plugins/elixir-phoenix/skills/assigns-audit/SKILL.md"
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_n
via SKILL·HOT · 数据来自 GitHub 公开信息 · 原文版权归作者所有