跳到正文
cccskills
免费在 GitHub 公开

elixir-performance-review

Reviews Elixir code for performance issues including GenServer bottlenecks, memory usage, and concurrency patterns. Use when reviewing high-throughput code or investigating performance issues.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(5)

  • SKILL.md3.2 KB
  • references/concurrency.md2.6 KB
  • references/ets-patterns.md2.5 KB
  • references/genserver-bottlenecks.md3.0 KB
  • references/memory.md2.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Elixir Performance Review

Quick Reference

Issue TypeReference
Mailbox overflow, blocking callsreferences/genserver-bottlenecks.md
When to use ETS, read/write concurrencyreferences/ets-patterns.md
Binary handling, large messagesreferences/memory.md
Task patterns, flow controlreferences/concurrency.md

Review Checklist

GenServer

  • Not a single-process bottleneck for all requests
  • No blocking operations in handle_call/cast
  • Proper timeout configuration
  • Consider ETS for read-heavy state

Memory

  • Large binaries not copied between processes
  • Streams used for large data transformations
  • No unbounded data accumulation

Concurrency

  • Task.Supervisor for dynamic tasks (not raw Task.async)
  • No unbounded process spawning
  • Proper backpressure for message producers

Database

  • Preloading to avoid N+1 queries
  • Pagination for large result sets
  • Indexes for frequent queries

Valid Patterns (Do NOT Flag)

  • Single GenServer for low-throughput - Not all state needs horizontal scaling
  • Synchronous calls for critical paths - Consistency may require it
  • In-memory state without ETS - ETS has overhead for small state
  • Enum over Stream for small collections - Stream overhead not worth it

Context-Sensitive Rules

IssueFlag ONLY IF
GenServer bottleneckHandles > 1000 req/sec OR blocking I/O in callbacks
Use streamsProcessing > 10k items OR reading large files
Use ETSRead:write ratio > 10:1 AND concurrent access

Gates — before reporting

Do these in order for the performance review. Do not publish findings until each step passes.

  1. Protocol loaded — Read review-verification-protocol and apply its checks for each finding (hot paths, concurrency, resource use). Pass: For every substantive finding, you can name which protocol subsection you satisfied or state N/A with reason (e.g. pure reference to this skill’s Valid Patterns).
  2. Anchored evidence — Pass: Each finding includes a concrete locator: path:line (or line range), or Module.function/arity plus a short quoted snippet from the file.
  3. Performance claims — For anything under Context-Sensitive Rules, or any claim of bottleneck, N+1, unbounded growth, or heavy memory/binary cost, Pass: You state the observed or measured fact that meets “Flag ONLY IF” (e.g. rate, item count, ratio), or attach an artifact (profiler output, SQL/log excerpt, grep/search scope)—otherwise downgrade to question / suspected with what was not verified.

Before Submitting Findings

Complete Gates — before reporting (section above) first; the verification protocol is mandatory input to those gates.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use when you need to mine a conversation, session transcript, or design discussion for architectural decisions before writing ADRs. Identifies problem-solution pairs, trade-off debates, technology choices, and explicit "[ADR]" tags. Triggers on "what decisions did we make", "extract decisions from this chat", "find the choices in our discussion", or "summarize architectural decisions". Also useful after long planning sessions to capture decisions that were made implicitly. Does NOT write ADR documents — use adr-writing or write-adr for that.

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

Use when writing or formatting an ADR document using the MADR template, applying Definition of Done (E.C.A.D.R.) criteria, or verifying ADR completeness. Triggers on "write the ADR", "format as MADR", "check ADR quality", "mark gaps in ADR". Also triggers when a decision has been extracted and needs to become a document. Does NOT extract decisions from conversations (use adr-decision-extraction) or orchestrate the full extract-confirm-write workflow (use write-adr).

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

Use when auditing an agent codebase against the 12-Factor Agents methodology, reviewing LLM-powered system architecture, or assessing agentic app compliance. Triggers on "analyze agent architecture", "12-factor audit", "how compliant is this agent", or "evaluate this LLM app". Also applies when comparing frameworks or planning agent improvements. Not for quick checklists — this performs deep per-factor codebase analysis with file-level evidence.

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

Vercel AI Elements for workflow UI components. Use when building chat interfaces, displaying tool execution, showing reasoning/thinking, or creating job queues. Triggers on ai-elements, Queue, Confirmation, Tool, Reasoning, Shimmer, Loader, Message, Conversation, PromptInput.

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

Reviews App Intents code for intent structure, entities, shortcuts, and parameters. Use when reviewing code with import AppIntents, @AppIntent, AppEntity, AppShortcutsProvider, or @Parameter.

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

Use when the user wants a cited, structured read of local documents and project knowledge. Triggers on: "analyze these docs", "scan my project for context", "read the docs folder", "summarize what's in .beagle/concepts/", "extract context from docs/", "what's in this folder", "go read everything in X and tell me what's there". Also invoked programmatically by other beagle skills (prfaq-beagle Ignition, brainstorm-beagle reference points, strategy-interview context grounding) via the companion contract. Does NOT trigger on codebase lookups ("find this function", "search the repo"), web research (use web-research), LLM-as-judge evaluation (use llm-judge), or document editing (use humanize-beagle). Produces a written scan plan, parallel-subagent findings, and a cited synthesis report on disk — never inline prose, never unsourced claims.

中文简介正在准备中。当前显示原文说明。

existential-birds/beagle842026年9月16日 更新

查看 existential-birds 的全部技能

报告此技能的问题