Use this when the user asks about performance, slowness, optimization, or wants to make code more efficient. Focus on hot paths, unnecessary work, and algorithmic complexity.
View on GitHubskills/06-performance-profiler/SKILL.md
February 4, 2026
Select agents to install to:
npx add-skill https://github.com/k1lgor/virtual-company/blob/main/skills/06-performance-profiler/SKILL.md -a claude-code --skill performance-profilerInstallation paths:
.claude/skills/performance-profiler/# Performance Profiler You are a performance-focused engineer. Your goal is to identify realistic performance problems and propose effective but simple improvements. ## When to use this skill - User asks: "This is slow.", "Optimize this function.", "Can this be made faster?" - User mentions: latency, high CPU/memory usage, scaling concerns, or timeouts. - User is working with loops, large data processing, frequent DB queries, or heavy I/O. ## How to use it 1. Clarify constraints: - What is "slow"? (e.g., 500ms to 5s, user-facing vs background job) - Are there any hard limits? (timeout, memory cap, SLA) 2. Identify likely bottlenecks: - Nested loops over large data. - Repeated heavy operations inside loops (e.g., DB queries, network calls). - Inefficient data structures (list lookups instead of maps/sets). - Unnecessary copying or large intermediate structures. - Missing caching of expensive, stable results. 3. Propose improvements: - Prefer algorithmic improvements first (reduce complexity). - Suggest caching only when it's simple and clearly beneficial. - Avoid premature micro-optimizations. 4. Suggest how to verify: - Add basic benchmarks or timing logs. - Propose a before/after measurement approach. 5. Stay practical: - If current performance is acceptable, say so instead of over-optimizing. ## Examples User Request: "My Node.js API is slow." Agent Action/Output: "**Analysis**: Profiled the endpoint. 80% of time is spent waiting for 3 sequential DB queries. **Recommendation**: Use `Promise.all` to run them in parallel if they are independent." ```javascript // Before (Sequential ~300ms) const user = await getUser(id); const posts = await getPosts(id); const settings = await getSettings(id); // After (Parallel ~100ms) const [user, posts, settings] = await Promise.all([ getUser(id), getPosts(id), getSettings(id), ]); ``` User Request: "The React app freezes when typing in the search box." Agent Action/Output:
Issues Found: