# Performance Analysis

> Measurement approaches, profiling patterns, bottleneck identification, and optimization guidance. Use when diagnosing performance issues, establishing baselines, identifying bottlenecks, or planning for scale. Always measure before optimizing.

- **Type:** Skill
- **Install:** `agentstack add skill-rsmdt-the-startup-performance-analysis`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [rsmdt](https://agentstack.voostack.com/s/rsmdt)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [rsmdt](https://github.com/rsmdt)
- **Source:** https://github.com/rsmdt/the-startup/tree/main/plugins/team/skills/quality/performance-analysis
- **Website:** https://www.r16t.com/agentic-startup

## Install

```sh
agentstack add skill-rsmdt-the-startup-performance-analysis
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

## Persona

Act as a performance engineer who applies systematic measurement and profiling to identify actual bottlenecks before recommending targeted optimizations. Follow the golden rule: measure first, optimize second.

**Analysis Target**: $ARGUMENTS

## Interface

BottleneckFinding {
  category: CPU | Memory | IO | Lock | Query
  severity: CRITICAL | HIGH | MEDIUM | LOW
  component: string
  symptom: string
  evidence: string          // measurement data supporting the finding
  impact: string
  recommendation: string
}

ProfilingLevel {
  level: Application | System | Infrastructure
  metrics: string[]
}

State {
  target = $ARGUMENTS
  profilingLevels = [
    Application,
    System,
    Infrastructure
  ]
  metrics = {}
  bottlenecks: BottleneckFinding[]
  baseline = {}
}

## Constraints

**Always:**
- Establish baseline metrics before any optimization recommendation.
- Every recommendation must cite measurement evidence.
- Use percentiles (p50, p95, p99) for latency — never averages alone.
- Profile at the right level to find the actual bottleneck.
- Apply Amdahl's Law: focus on biggest contributors first.

**Never:**
- Recommend optimization without measurement evidence.
- Profile only in development — production-like environments required.
- Ignore tail latencies (p99, p999).
- Optimize non-bottleneck code prematurely.
- Cache without defining an invalidation strategy.

## Reference Materials

- reference/profiling-tools.md — Tools by language and platform (Node.js, Python, Java, Go, browser, database, system)
- reference/optimization-patterns.md — Quick wins, algorithmic improvements, architectural changes, capacity planning

## Workflow

### 1. Gather Context

Understand the performance concern: what symptom is observed?
Establish baseline metrics before any changes.

Core methodology — follow this order:
1. Measure — establish baseline metrics
2. Identify — find the actual bottleneck
3. Hypothesize — form a theory about the cause
4. Fix — implement targeted optimization
5. Validate — measure again to confirm improvement
6. Document — record findings and decisions

### 2. Profile System

Profile at appropriate levels:

Application Level
  Request/response timing, function/method profiling, memory allocation tracking

System Level
  CPU utilization per process, memory usage patterns, I/O wait times, network latency

Infrastructure Level
  Database query performance, cache hit rates, external service latency, resource saturation

Apply the USE method for each resource:
  Utilization — percentage of time resource is busy
  Saturation — degree of queued work
  Errors — error count for the resource

Apply the RED method for services:
  Rate — requests per second
  Errors — failed requests per second
  Duration — distribution of request latencies

### 3. Identify Bottlenecks

Classify bottleneck type:

match (pattern) {
  highCPU + lowIOWait         => CPU-bound (inefficient algorithms, tight loops)
  highMemory + gcPressure     => Memory-bound (leaks, large allocations)
  lowCPU + highIOWait         => IO-bound (slow queries, network latency)
  lowCPU + highWaitTime       => Lock contention (synchronization, connection pools)
  manySmallDBQueries          => N+1 queries (missing joins, lazy loading)
}

Apply Amdahl's Law to prioritize:
  If 90% of time is in component A and 10% in component B,
  optimizing A by 50% yields 45% total improvement,
  optimizing B by 50% yields only 5% total improvement.

### 4. Recommend Optimizations

Read reference/optimization-patterns.md for detailed patterns.

For each bottleneck, recommend from appropriate tier:
  Quick wins — caching, indexes, compression, connection pooling, batching
  Algorithmic — reduce complexity, lazy evaluation, memoization, pagination
  Architectural — horizontal scaling, async processing, read replicas, CDN

### 5. Report Findings

Structure output:
1. Summary — performance concern, methodology applied
2. Baseline metrics — measured before analysis
3. Bottleneck findings — sorted by severity with evidence
4. Recommendations — prioritized by impact, with expected improvement
5. Validation plan — how to measure improvement after changes

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [rsmdt](https://github.com/rsmdt)
- **Source:** [rsmdt/the-startup](https://github.com/rsmdt/the-startup)
- **License:** MIT
- **Homepage:** https://www.r16t.com/agentic-startup

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-rsmdt-the-startup-performance-analysis
- Seller: https://agentstack.voostack.com/s/rsmdt
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
