skills/security-alert-triage/SKILL.md
Interactive workflow for investigating and triaging security alerts — from alert review through enrichment, investigation, and resolution.
npx skillsauth add patrykkopycinski/elastic-cursor-plugin security-alert-triageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Guide the user through investigating and resolving security alerts in their Elastic Security deployment.
Use when the user asks to:
Also activates on keywords: "alert triage", "alert investigation", "SOC workflow", "alert queue", "security alerts", "alert review"
Do NOT use when:
security-full-setup)security-detection-engineering)Call get_cluster_context to get cached cluster awareness — version, health, installed features, and alerting capabilities.
Call triage_alerts with operation: "list" to get the current alert queue.
Present the alert overview:
Ask the user which alerts to investigate:
Call triage_alerts with operation: "get" and the alert ID to retrieve full alert details.
Present the alert context:
Gather additional context around the alert:
Host context:
Call esql_query to find recent activity on the affected host:
FROM logs-endpoint* | WHERE host.name == "<host>" AND @timestamp >= NOW() - 1h | STATS count = COUNT(*) BY event.action | SORT count DESC | LIMIT 20
User context:
Call esql_query to find the user's recent authentication activity:
FROM logs-* | WHERE user.name == "<user>" AND event.category == "authentication" AND @timestamp >= NOW() - 24h | STATS count = COUNT(*) BY event.outcome, source.ip | SORT count DESC
Process tree (for endpoint alerts):
Call elasticsearch_api to query the process tree using process.entity_id.
Present the enrichment findings and highlight anomalies.
Ask the user for their assessment:
Call manage_cases with operation: "create" to create a case:
Call triage_alerts with operation: "update_status" to set the alert to acknowledged.
Call kibana_api with POST /api/detection_engine/rules/<rule_id>/exceptions to create an exception:
Call triage_alerts with operation: "update_status" to set the alert to closed.
Suggest additional investigative queries:
Present:
get_cluster_context — cached cluster awareness (version, health, capabilities)triage_alerts — list, view, and update alert statusmanage_cases — create and manage investigation casesesql_query — run investigative queries for enrichmentelasticsearch_api — deep queries for process trees, network activitykibana_api — create exceptions, manage rule configurationelastic://docs/api/kibana — Detection Engine, Alerting, and Exception APIselastic://docs/api/security — Cases, Timeline, and Investigation APIsES_URL and ES_API_KEY configuredKIBANA_URL configured for alert and case managementInteractive Dashboard: When using Claude Desktop or other ext-apps hosts,
security_inboxserves as the entry point for triage andtriage_alertsrenders an interactive alert triage dashboard with severity filters, AI verdict cards, and acknowledge workflows. In Cursor/CLI, it returns markdown.
security-case-management — escalate triaged alerts into investigation casessecurity-detection-engineering — tune or create rules based on triage findingstesting
Interactive threat hunting workflow using ES|QL and Elasticsearch queries — from hypothesis formulation through data exploration, IOC search, and finding documentation.
testing
Start your security session with a personalized briefing — attacks, alerts, cases, rules, threat intel. Use as the first thing when starting security work.
testing
Interactive guide for complete Elastic Security setup — discovers data sources, assesses detection coverage, configures rules, and creates security dashboards.
testing
Guide for authoring custom detection rules — from threat hypothesis through rule creation, testing, and tuning with KQL, EQL, ES|QL, and threshold rules.