performance-assessment
Skill100 starsChanged 7 months agoMITView on GitHub
Identify performance bottlenecks, inefficient patterns, and optimization opportunities through static analysis. Adaptive depth.
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 11 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 25
Run benchmarks or load tests
- Distinctive: line 30
Use findings as investigation targets for runtime profiling, not as confirmed bottlenecks.
- Distinctive: line 46
Escalation trigger: If Level 1 finds >3 high-severity patterns or database-layer concerns, auto-escalate to Level 2.
- Distinctive: line 73
Escalation trigger: If Level 2 finds concurrency issues or algorithmic concerns, escalate to Level 3.
- Distinctive: line 171
Caching strategy: When introducing a caching layer (in-memory vs distributed, cache-aside vs write-through)
- Distinctive: line 172
Database optimization approach: When query optimization alone is insufficient and schema or architecture changes are needed (read replicas, …
- Distinctive: line 173
Async architecture adoption: When synchronous architecture must shift to async/event-driven for performance
- Distinctive: line 174
CDN and edge caching: When static asset or API response caching strategy needs definition
- Distinctive: line 178
Do not fabricate performance numbers.
- Distinctive: line 182
Always suggest measurement before optimization.
- Distinctive: line 195
BLOCKING: If any item is unchecked, the skill has NOT completed successfully.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Role
You are a performance analyst performing static code analysis. Your job is to identify patterns known to cause performance issues — not to measure actual performance. You flag code constructs that experience shows lead to bottlenecks, and you suggest targeted optimizations.
You are activated when the user selects the performance path. You do not run automatically.
Inputs
specs/docs/technology/*— Technology inventory from extractionspecs/docs/architecture/*— Architecture documentation from extractionspecs/docs/dependencies/*— Dependency manifests- Source code access for pattern analysis
- Database schemas and query files (if available)
Important Disclaimer
This is static analysis only. Findings identify patterns that are known to cause performance issues based on established engineering knowledge. This assessment does not:
- Run benchmarks or load tests
- Measure actual response times or throughput
- Profile memory usage or CPU consumption
- Claim specific performance numbers
Use findings as investigation targets for runtime profiling, not as confirmed bottlenecks.
Adaptive Depth Levels
Level 1 — Common Hotspots
Scan for the most impactful and easily-identified performance anti-patterns:
- N+1 query patterns: Loops that execute a database query per iteration. Look for ORM lazy-loading in loops, repeated single-record fetches, missing eager loading.
- Missing database indexes: Cross-reference query WHERE/JOIN/ORDER BY clauses against schema indexes. Flag columns used in filters or joins that lack indexes.
- Synchronous blocking calls: I/O operations (HTTP requests, file reads, database queries) executed synchronously in async-capable codebases. Blocking the event loop or thread pool.
- Unbounded queries: SELECT without LIMIT, API endpoints returning full collections, missing pagination on list endpoints.
- Large payload transfers: Endpoints returning full entity graphs when clients need subsets. Missing field selection or projection.
Estimated time: 10–20 minutes of analysis.
Escalation trigger: If Level 1 finds >3 high-severity patterns or database-layer concerns, auto-escalate to Level 2.
Level 2 — Optimization Opportunities
Deeper analysis of caching, resource management, and payload efficiency:
- Caching opportunities:
- Frequently-read, rarely-written data without caching
- Expensive computations repeated with same inputs
- Missing HTTP cache headers on static or semi-static responses
- Cache invalidation patterns (or lack thereof)
- Connection pooling:
- Database connections opened/closed per request vs pooled
- HTTP client connection reuse
- Connection pool sizing relative to concurrency expectations
- Payload size analysis:
- API response sizes — over-fetching patterns
- Image and asset optimization
- Compression enabled on responses?
- Bundle size for frontend applications (tree-shaking, code splitting)
- Serialization overhead:
- Large object serialization in hot paths
- Inefficient serialization formats for the use case
- Repeated serialization of the same data
Estimated time: 20–45 minutes of analysis.
Escalation trigger: If Level 2 finds concurrency issues or algorithmic concerns, escalate to Level 3.
Level 3 — Deep Pattern Analysis
Architectural and algorithmic performance review:
- Concurrency patterns:
- Lock contention — shared mutable state under concurrent access
- Thread pool saturation — fixed pools with blocking operations
- Async anti-patterns — async-over-sync, sync-over-async, missing cancellation
- Parallel processing opportunities — sequential work that could be parallelized
- Memory usage patterns:
- Large object allocation in loops (GC pressure)
- Unbounded collection growth (potential memory leaks)
- String concatenation in loops vs builder patterns
- Event handler or callback registration without cleanup
- Large file processing without streaming
- Algorithmic complexity hotspots:
- Nested loops over large collections (O(n²) or worse)
- Linear search where hash/tree lookup would work
- Repeated sorting of the same data
- Recursive algorithms without memoization on overlapping subproblems
Estimated time: 30–60 minutes of analysis.
Escalation Rules
Level 1: >3 high-severity patterns → auto-escalate to Level 2
Level 2: concurrency or algorithmic issues → escalate to Level 3
User can force any level with: "run performance assessment at level 3"Impact Ratings
Since this is static analysis, rate findings by estimated impact rather than measured severity:
- High impact: Patterns that reliably cause visible performance degradation under normal load (N+1 queries on primary flows, missing indexes on frequently-queried tables, synchronous blocking in async hot paths).
- Medium impact: Patterns that cause degradation under moderate-to-high load or with growing data volumes (missing caching, unbounded queries, connection churn).
- Low impact: Patterns that contribute to inefficiency but are unlikely to cause visible issues alone (minor serialization overhead, suboptimal algorithms on small datasets).
Each finding includes:
- Pattern identified
- Location(s) in codebase
- Why this pattern causes issues (brief explanation)
- Suggested optimization
- Estimated effort to fix
- Confidence level (High: well-established anti-pattern / Medium: likely issue / Low: potential concern)
Output Format
Generate specs/assessment/performance.md with this structure:
# Performance Assessment
## Summary
- Assessment depth: Level [1/2/3]
- Total findings: [N]
- High impact: [N] | Medium impact: [N] | Low impact: [N]
- Primary concern areas: [list]
- Escalation triggered: [yes/no — reason]
## Findings by Category
### Database & Query Patterns
| # | Impact | Pattern | Location | Optimization | Effort | Confidence |
|---|--------|---------|----------|-------------|--------|------------|
### I/O & Async Patterns
(same table format)
### Caching & Resource Management
(same table format)
### Payload & Serialization
(same table format)
### Concurrency & Memory (Level 3)
(same table format)
### Algorithmic Complexity (Level 3)
(same table format)
## Optimization Roadmap
Priority-ordered optimization plan. Quick wins first, then structural improvements.
## Measurement Recommendations
For each high-impact finding, suggest how to validate the issue with runtime profiling.
## Decision Points
Items requiring user decision — linked to generated ADRs.ADR Triggers
Generate ADRs via the adr skill when optimization requires architectural decisions:
- Caching strategy: When introducing a caching layer (in-memory vs distributed, cache-aside vs write-through)
- Database optimization approach: When query optimization alone is insufficient and schema or architecture changes are needed (read replicas, CQRS, denormalization)
- Async architecture adoption: When synchronous architecture must shift to async/event-driven for performance
- CDN and edge caching: When static asset or API response caching strategy needs definition
Important Notes
- Do not fabricate performance numbers. Say "this pattern is known to cause latency under load" — not "this will add 500ms."
- Quick wins matter. Prioritize findings that are easy to fix and high impact (missing indexes, N+1 fixes, enabling compression).
- Context matters. An N+1 query on a list that always returns 3 items is low impact. The same pattern on a list with 10,000 items is high impact. Note the data volume context when available.
- Frontend and backend performance are different disciplines. Clearly separate findings by layer.
- Always suggest measurement before optimization. The roadmap should include "verify with profiling" steps.
Mandatory Completion Checklist
The orchestrator MUST verify ALL of the following before marking performance-assessment as complete:
specs/assessment/performance.mdexists with: findings by layer (frontend / backend / database / network), severity ratings, and quick-win identification- Every finding has an impact level (high / medium / low) and estimated effort to fix
- N+1 query patterns, missing indexes, and unoptimized queries are explicitly checked and reported
- Frontend performance patterns are assessed separately from backend
- "Measure before optimize" steps are included in the remediation roadmap
- State JSON and audit log are updated
BLOCKING: If any item is unchecked, the skill has NOT completed successfully. The orchestrator must loop back and complete the missing items before advancing to planning.
Other versions2 projects use a version of this.
Word for word · 1
- crgarcia12/Liliput★ 4100% same
Edited · 0
None found.
Wrote their own version · 1
- chrislema/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository47 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- adrSkill
- api-extractorSkill
- architecture-mapperSkill
- aspireSkill
- audit-logSkill
- azure-deploymentSkill
- bug-fixSkill
- build-checkSkill
- cloud-native-assessmentSkill
- cloud-native-plannerSkill
- codebase-scannerSkill
- commit-protocolSkill
- contract-generationSkill
- data-model-extractorSkill
- ddd-modelingSkill
- dependency-inventorySkill
- deploy-diagnosticsSkill
- e2e-generationSkill
- error-handlingSkill
- extension-plannerSkill
- find-skillsSkill
- frd-generatorSkill
- gherkin-generationSkill
- human-gateSkill
- implementationSkill
- modernization-assessmentSkill
- modernization-plannerSkill
- playwright-cliSkill
- prd-generatorSkill
- research-best-practicesSkill
- resumeSkill
- rewrite-assessmentSkill
- rewrite-plannerSkill
- security-assessmentSkill
- security-plannerSkill
- skill-creatorSkill
- skill-discoverySkill
- spec-refinementSkill
- spec-validatorSkill
- state-managementSkill
- tech-stack-resolutionSkill
- test-discoverySkill
- test-generationSkill
- test-runnerSkill
- ui-ux-designSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

