addy-performance-optimization
Optimizes application performance across frontend, backend, queries, and databases.
Skill by japurcell
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/japurcell-addy-performance-optimization
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend, backend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/addy-performance-optimization
What's inside
- Skill name
addy-performance-optimization- Description
- Optimizes application performance across frontend, backend, queries, and databases. Use when performance requirements exist, when you suspect performance regressions, when Core Web Vitals or load times need improvement, when N+1 query patterns need fixing, or when profiling reveals bottlenecks.
- License
- MIT
- Instructions
- 495 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Performance Optimization
## Overview
Measure before optimizing. Performance work without measurement is guessing — and guessing leads to premature optimization that adds complexity without improving what matters. Profile first, identify the actual bottleneck, fix it, measure again. Optimize only what measurements prove matters.
## When to Use
- Performance requirements exist in the spec (load time budgets, response time SLAs)
- Users or monitoring report slow behavior
- Core Web Vitals scores are below thresholds
- You suspect a change introduced a regression
- Building features that handle large datasets or high traffic
**When NOT to use:** Don't optimize before you have evidence of a problem. Premature optimization adds complexity that costs more than the performance it gains.
## Core Web Vitals Targets
| Metric | Good | Needs Improvement | Poor |
|--------|------|-------------------|------|
| **LCP** (Largest Contentful Paint) | ≤ 2.5s | ≤ 4.0s | > 4.0s |
| **INP** (Interaction to Next Paint) | ≤ 200ms | ≤ 500ms | > 500ms |
| **CLS** (Cumulative Layout Shift) | ≤ 0.1 | ≤ 0.25 | > 0.25 |
## The Optimization Workflow
```
1. MEASURE → Establish baseline with real data
2. IDENTIFY → Find the actual bottleneck (not assumed)
3. FIX → Address the specific bottleneck
4. VERIFY → Measure again; keep or revert
5. GUARD → Add monitoring or tests to prevent regression
```
### Step 1: Measure
Two complementary approaches — use both:
- **Synthetic (Lighthouse, DevTools Performance tab):** Controlled conditions, reproducible. Best for CI regression detection and isolating specific issues.
- **RUM (web-vitals library, CrUX):** Real user data in real conditions. Required to validate that a fix actually improved user experience.
**Frontend:**
```bash
# Synthetic: Lighthouse in Chrome DevTools (or CI)
# Chrome DevTools → Performance tab → Record
# Chrome DevTools MCP → Performance trace
# RUM: Web Vitals library in code
import { onLCP, onINP, onCLS } from 'web-vitals';
onLCP(console.log);
onINP(console.log);
onCLS(console.log);
```
**Backend:**
```bash
# Response time logging
# Application Performance Monitoring (APM)
# Database query logging with timing
# Simple timing
console.time('db-query');
const result = await db.query(...);
console.timeEnd('db-query');
```
### Where to Start Measuring
Use the symptom to decide what to measure first:
```
What is slow?
├── First page load
│ ├── Large bundle? --> Measure bundle size, check code splitting
│ ├── Slow server response? --> Measure TTFB in DevTools Network waterfall
│ │ ├── DNS long? --> Add dns-prefetch / preconnect for known origins
│ │ ├── TCP/TLS long? --> Enable HTTP/2, check edge deployment, keep-alive
│ │ └── Waiting (server) long? --> Profile backend, check queries and caching
│ └── Render-blocking resources? --> Check network waterfall for CSS/JS blocking
├── Interaction feels sluggish
│ ├── UI freezes on click? --> Profile main thread, look for long tasks (>50ms)
│ ├── Form input lag? --> Check re-renders, controlled component overhead
│ └── Animation jank? --> Check layout thrashing, forced reflows
├── Page after navigation
│ ├── Data loading? --> Measure API response times, check for waterfalls
│ └── Client rendering? --> Profile component render time, check for N+1 fetches
└── Backend / API
├── Single endpoint slow? --> Profile database queries, check indexes
├── All endpoints slow? --> Check connection pool, memory, CPU
└── Intermittent slowness? --> Check for lock contention, GC pauses, external deps
```
### Step 2: Identify the Bottleneck
Common bottlenecks by category:
**Frontend:**
| Symptom | Likely Cause | Investigation |
|---------|-------------|---------------|
| Slow LCP | Large images, render-blocking resources, slow server | Check network waterfall, image sizes |
| High CLS | Images without dimensions, late-loading content, font shifts | Check layout shift attribution |
| Poor INP | Heavy JavaScript on main thread, large DOM updates | Check long tasks in Performance trace |
| Slow initial load | Large bundle, many network requests | Check bundle size, code splitting |
**Backend:**
| Symptom | Likely Cause | Investigation |
|---------|-------------|---------------|
| Slow API responses | N+1 queries, missing indexes, unoptimized queries | Check database query log |
| Memory growth | Leaked references, unbounded caches, large payloads | Heap snapshot analysis |
| CPU spikes | Synchronous heavy computation, regex backtracking | CPU profiling |
| High latency | Missing caching, redundant computation, network hops | Trace requests through the stack |
### Step 3: Fix Common Anti-Patterns
#### N+1 Queries (Backend)From japurcell/skills, MIT.
More from japurcell/skills
- 0.570score
ruminate
japurcell
Mine past conversations for uncaptured patterns, corrections, and knowledge.
SkillAFreshness: AClaude Code +9 - 0.570score
meditate
japurcell
Audit and evolve the brain vault - prune outdated content, discover cross-cutting principles, review skills for structural encoding opportunities.
SkillAFreshness: AClaude Code +9 - 0.567score
brain-install
japurcell
Install a portable brain vault, six local brain skills, and optional repository hooks, migrating existing guidance when present.
SkillAFreshness: AClaude Code +9 - 0.565score
reflect
japurcell
Reflect on the conversation and update the brain.
SkillAFreshness: AClaude Code +9 - 0.565score
architecture-design-contest
japurcell
Generate multiple competing architecture designs for a feature, compare their trade-offs, and recommend or synthesize the best direction before implementation.
SkillAFreshness: AClaude Code +9 - 0.565score
addy-code-review-and-quality
japurcell
Conducts multi-axis code review.
SkillAFreshness: AClaude Code +9 - 0.565score
brain
japurcell
Read/write brain files at brain/.
SkillAFreshness: AClaude Code +9 - 0.565score
exec-plans
japurcell
Mandatory when starting, resuming, executing, orchestrating, reading, modifying, discussing, or touching any 'exec-plan', 'ExecPlan', 'execution plan'…
SkillAFreshness: AClaude Code +9 - 0.564score
agents-md-install
japurcell
Install, audit, or update root and nested AGENTS.md files and task-specific reference docs in a project.
SkillAFreshness: AClaude Code +9 - 0.560score
code-review
japurcell
Review a pull request, branch, recent commits, staged or unstaged changes, or AI-generated code for correctness, readability, architecture, security…
SkillAFreshness: AClaude Code +9 - 0.560score
architecture-design-contest
japurcell
Generate multiple radically different designs for a feature using parallel sub-agents.
SkillAFreshness: AClaude Code +9 - 0.558score
code-modernization
japurcell
Modernize legacy codebases with a guided, stepwise process that produces an executive brief
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 21, 2026 (7 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/japurcell/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from japurcell
- 0.570score
ruminate
japurcell
Mine past conversations for uncaptured patterns, corrections, and knowledge.
SkillAFreshness: AClaude Code +9 - 0.570score
meditate
japurcell
Audit and evolve the brain vault - prune outdated content, discover cross-cutting principles, review skills for structural encoding opportunities.
SkillAFreshness: AClaude Code +9 - 0.567score
brain-install
japurcell
Install a portable brain vault, six local brain skills, and optional repository hooks, migrating existing guidance when present.
SkillAFreshness: AClaude Code +9 - 0.565score
architecture-design-contest
japurcell
Generate multiple competing architecture designs for a feature, compare their trade-offs, and recommend or synthesize the best direction before implementation.
SkillAFreshness: AClaude Code +9 - 0.565score
brain
japurcell
Read/write brain files at brain/.
SkillAFreshness: AClaude Code +9 - 0.565score
addy-code-review-and-quality
japurcell
Conducts multi-axis code review.
SkillAFreshness: AClaude Code +9
Cite this page
addy-performance-optimization skill. Agent Mart. https://agentmart.dev/skills/japurcell-addy-performance-optimization (last updated 2026-10-24)