| name | db-query-analyzer |
| description | Analyze database query performance with execution plans and index recommendations |
| allowed-tools | ["Bash","Read","Write","Glob"] |
| graph | {"domains":["domain:software-engineering"],"specializations":["specialization:software-architecture"],"skillAreas":["skill-area:backend-data-persistence","skill-area:postgres-tuning"],"roles":["role:backend-engineer","role:architect"],"workflows":["workflow:technical-debt-reduction"],"topics":["topic:technical-debt"]} |
Database Query Analyzer Skill
Overview
Analyzes database query performance including execution plan analysis, index recommendations, slow query identification, and optimization suggestions.
Capabilities
- Query execution plan analysis
- Index recommendation
- Slow query identification
- Query optimization suggestions
- Table scan detection
- Join optimization analysis
- Support for PostgreSQL, MySQL, SQL Server
Target Processes
- performance-optimization
- data-architecture-design
Input Schema
{
"type": "object",
"required": ["queries"],
"properties": {
"queries": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sql": { "type": "string" },
"name": { "type": "string" }
}
}
},
"database": {
"type": "string",
"enum": ["postgresql", "mysql", "sqlserver", "oracle"],
"default": "postgresql"
},
"connectionString": {
"type": "string",
"description": "Database connection string (optional, for live analysis)"
},
"options": {
"type": "object",
"properties": {
"analyzeExplain": {
"type": "boolean",
"default": true
},
"suggestIndexes": {
"type": "boolean",
"default": true
},
"slowQueryThreshold": {
"type": "number",
"default": 1000,
"description": "Slow query threshold in milliseconds"
}
}
}
}
}
Output Schema
{
"type": "object",
"properties": {
"analyses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"query": { "type": "string" },
"executionPlan": { "type": "object" },
"estimatedCost": { "type": "number" },
"issues": { "type": "array" },
"suggestions"
Usage Example
{
kind: 'skill',
skill: {
name: 'db-query-analyzer',
context: {
queries: [
{ sql: 'SELECT * FROM users WHERE email = ?', name: 'get-user-by-email' }
],
database: 'postgresql',
options: {
analyzeExplain: true,
suggestIndexes: true
}
}
}
}