Babysitter performance-profiler

Profile application performance including CPU, memory, and flame graph generation

install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/software-architecture/skills/performance-profiler" ~/.claude/skills/a5c-ai-babysitter-performance-profiler && rm -rf "$T"
manifest: library/specializations/software-architecture/skills/performance-profiler/SKILL.md
source content

Performance Profiler Skill

Overview

Profiles application performance including CPU profiling, memory profiling, flame graph generation, bottleneck identification, and APM tool integration.

Capabilities

  • CPU profiling
  • Memory profiling and heap snapshots
  • Flame graph generation
  • Bottleneck identification
  • Hot path analysis
  • Integration with APM tools (DataDog, New Relic)
  • Event loop analysis (Node.js)
  • Garbage collection analysis

Target Processes

  • performance-optimization

Input Schema

{
  "type": "object",
  "required": ["target"],
  "properties": {
    "target": {
      "type": "string",
      "description": "Target process, script, or endpoint"
    },
    "mode": {
      "type": "string",
      "enum": ["cpu", "memory", "heap", "all"],
      "default": "cpu"
    },
    "duration": {
      "type": "number",
      "default": 30,
      "description": "Profiling duration in seconds"
    },
    "options": {
      "type": "object",
      "properties": {
        "samplingInterval": {
          "type": "number",
          "default": 1000,
          "description": "Sampling interval in microseconds"
        },
        "generateFlameGraph": {
          "type": "boolean",
          "default": true
        },
        "outputFormat": {
          "type": "string",
          "enum": ["json", "html", "svg"],
          "default": "html"
        }
      }
    }
  }
}

Output Schema

{
  "type": "object",
  "properties": {
    "profile": {
      "type": "object",
      "properties": {
        "duration": { "type": "number" },
        "samples": { "type": "number" }
      }
    },
    "hotspots": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "function": { "type": "string" },
          "selfTime": { "type": "number" },
          "totalTime": { "type": "number" },
          "percentage": { "type": "number" }
        }
      }
    },
    "flameGraphPath": {
      "type": "string"
    },
    "memoryStats": {
      "type": "object",
      "properties": {
        "heapUsed": { "type": "number" },
        "heapTotal": { "type": "number" },
        "external": { "type": "number" }
      }
    },
    "recommendations": {
      "type": "array",
      "items": { "type": "string" }
    }
  }
}

Usage Example

{
  kind: 'skill',
  skill: {
    name: 'performance-profiler',
    context: {
      target: 'npm run start',
      mode: 'cpu',
      duration: 30,
      options: {
        generateFlameGraph: true,
        outputFormat: 'html'
      }
    }
  }
}