performance

Identify and prescribe caching, indexing, and query optimization techniques for performance bottlenecks.

Updated Jan 24, 2026
One-click install
npx skills add https://github.com/jaeyeonling/opencode-kit --skill performance-jaeyeonling
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: performance
Source: https://github.com/jaeyeonling/opencode-kit/tree/main/.opencode/skills/performance
Command: npx skills add https://github.com/jaeyeonling/opencode-kit --skill performance-jaeyeonling

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Performance bottlenecks across systems can degrade user experience and waste resources. This guide provides patterns to identify and mitigate them.

Core Features & Use Cases

  • Caching strategies: implement cache-first or cache-aside patterns to reduce database load.
  • Query and indexing: optimize SQL queries, apply proper indexes, and avoid N+1 patterns.
  • Memory and async handling: apply memory management and asynchronous processing to improve throughput.

Quick Start

Analyze a software system to identify performance bottlenecks and apply caching, indexing, and query optimization techniques.

Frequently Asked Questions about performance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix N+1 query problems in my database?

To fix N+1 queries, apply proper indexing strategies and optimize SQL query design to batch fetch related data. This eliminates redundant database calls by ensuring efficient query patterns that fetch related records in a single pass rather than executing individual queries per row.

What's the best way to implement caching to reduce database load?

The best way to implement caching is using cache-first or cache-aside patterns to reduce database load. These caching strategies intercept read requests, serving data directly from the cache layer when available, which significantly lowers query volume and improves overall system throughput.

How does cache invalidation work for performance optimization?

Cache invalidation works by prescribing specific patterns to refresh stale data within your caching layer. It ensures that when underlying database records change, cached copies are updated or removed, maintaining data consistency while preserving the performance gains of reduced database queries.

When do I need asynchronous processing for memory management?

You need asynchronous processing for memory management when improving system throughput under heavy workloads. By applying asynchronous handling, you free up memory resources and prevent blocking operations, allowing the system to process concurrent tasks efficiently without degrading user experience.

How to identify performance bottlenecks in a software system?

To identify performance bottlenecks, analyze the software system by measuring patterns across backend, database, and frontend layers. This involves evaluating query efficiency, memory usage, and cache effectiveness to pinpoint exact degradation points and prescribe targeted optimization techniques.