Elasticsearch Audit
aspectrr/deer
Enable, configure, and query Elasticsearch security audit logs.
Create, tune, and manage Elastic Security detection rules (SIEM and Endpoint).
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install elastic/agent-skills security-detection-rule-management --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/security/detection-rule-management .claude/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .claude/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-managementType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install elastic/agent-skills security-detection-rule-management --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/security/detection-rule-management .agents/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .agents/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install elastic/agent-skills security-detection-rule-management --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/security/detection-rule-management .cursor/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .cursor/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/elastic/agent-skills.git --path skills/security/detection-rule-management--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install elastic/agent-skills security-detection-rule-management --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/security/detection-rule-management .gemini/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .gemini/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install elastic/agent-skills security-detection-rule-managementInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/security/detection-rule-management .github/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .github/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/agent-skills --skill security-detection-rule-management -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install elastic/agent-skills security-detection-rule-management --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/agent-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/security/detection-rule-management .opencode/skills/security-detection-rule-management && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "security-detection-rule-management" agent skill from https://github.com/elastic/agent-skills/tree/main/skills/security/detection-rule-management into .opencode/skills/security-detection-rule-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "security-detection-rule-management", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
security-detection-rule-managementCreate, tune, and manage Elastic Security detection rules (SIEM and Endpoint).
Security Detection Rule Management is an agent skill from elastic/agent-skills, published by the product's own GitHub organization. Create, tune, and manage Elastic Security detection rules (SIEM and Endpoint). Use for false positives, exceptions, new coverage, noisy rules, or rule management via Kibana API.
Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts and reference files (for example `references/detection-api-reference.md`, `references/endpoint-behavior-tuning-workflow.md` and `references/endpoint-exceptions-guide.md`). Compatibility notes: Requires Node.js 22+, network access to Kibana and Elasticsearch. Environment variables: KIBANAURL plus KIBANAAPIKEY or KIBANAUSERNAME/KIBANAPASSWORD…
It sits in Security, covering Security operations. It works with Elasticsearch. The repository describes itself as: Official Elastic Skills. The licence is Apache-2.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit baa5111. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 6 files in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodenpmFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
attack.mitre.orgFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ELASTICSEARCH_API_KEYKIBANA_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires Node.js 22+, network access to Kibana and Elasticsearch. Environment variables: KIBANA_URL plus KIBANA_API_KEY or KIBANA_USERNAME/KIBANA_PASSWORD; ELASTICSEARCH_URL or ELASTICSEARCH_CLOUD_ID plus ELASTICSEARCH_API_KEY or ELASTICSEARCH_USERNAME/ELASTICSEARCH_PASSWORD.
From compatibility in the SKILL.md frontmatter.
Security Detection Rule Management loads about 3.9k tokens when it runs, and up to ~10k if it reads all its reference files. Until then it costs about 53 tokens; SKILL.md has 1,324 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
environment variables (or add them to a `.env` file in the workspace root):Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from elastic/agent-skills at commit baa5111, republished under its Apache-2.0 licence (© elastic). 1,324 words, ~3,881 tokens.
.claude/skills/security-detection-rule-management/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.Create new detection rules for emerging threats and coverage gaps, and tune existing rules to reduce false positives.
All operations use the Kibana Detection Engine API via rule-manager.js.
Install dependencies before first use from the skills/security directory:
cd skills/security && npm installSet the required environment variables (or add them to a .env file in the workspace root):
export ELASTICSEARCH_URL="https://your-cluster.es.cloud.example.com:443"
export ELASTICSEARCH_API_KEY="your-api-key"
export KIBANA_URL="https://your-cluster.kb.cloud.example.com:443"
export KIBANA_API_KEY="your-kibana-api-key"| Task | Tools to call (in order) |
|---|---|
| Tune noisy SIEM rule | rule_manager find/noisy-rules → run_query (investigate FPs) → rule_manager patch or add-exception |
| Add endpoint behavior exception | fetch_endpoint_rule (get rule definition from GitHub) → add_endpoint_exception (scoped to rule.id) |
| Create new detection rule | run_query (test query against data) → rule_manager create |
| Investigate rule alert volume | rule_manager get → run_query (query alerts index) |
For endpoint behavior rules, always fetch the rule definition first to understand query logic and existing exclusions
before adding an exception. For SIEM rules, always investigate alert patterns with run_query before tuning.
Critical: For endpoint behavior rules, always use fetch_endpoint_rule (not shell or direct script calls) to get
the rule definition, then use add_endpoint_exception to add the exception. These are dedicated tools — do not invoke
the underlying scripts manually.
Find noisy rules with noisy-rules or find, then get the rule definition and investigate alerts:
node skills/security/detection-rule-management/scripts/rule-manager.js noisy-rules --days 7 --top 20
node skills/security/detection-rule-management/scripts/rule-manager.js find --filter "alert.attributes.name:*Suspicious*" --brief
node skills/security/detection-rule-management/scripts/rule-manager.js get --id <rule_uuid>
node skills/security/alert-triage/scripts/run-query.js "kibana.alert.rule.name:\"<rule_name>\"" --index ".alerts-security.alerts-*" --days 7 --fullLook for patterns: same process/user/host → exception candidate; broad pattern → tighten query; legitimate software → exception; too broad → rewrite or adjust threshold.
In order of preference:
Add exception — Best for specific known-good processes, users, or hosts. Does not modify the rule query. Use when the rule is correct in general but fires on known-legitimate activity.
Tighten the query — Patch the rule's query to exclude the FP pattern. Best when the false positives stem from the query being too broad.
Adjust threshold / alert suppression — For threshold rules, increase the threshold value. For any rule type, enable alert suppression to reduce duplicate alerts on the same entity.
Reduce risk score / severity — Downgrade the rule's priority if it generates many low-value alerts but still has some detection value.
Disable the rule — Last resort. Only if the rule provides no value or is completely redundant with another rule.
Add exception (single/multi-condition, wildcard via matches):
node skills/security/detection-rule-management/scripts/rule-manager.js add-exception \
--rule-uuid <rule_uuid> \
--entries "process.executable:is:C:\\Program Files\\SCCM\\CcmExec.exe" "process.parent.name:is:CcmExec.exe" \
--name "Exclude SCCM" --comment "FP: SCCM deployment" --tags "tuning:fp" "source:soc" --yesPatch query, threshold, severity, or disable:
node skills/security/detection-rule-management/scripts/rule-manager.js patch --id <rule_uuid> --query "process.name:powershell.exe AND NOT process.parent.name:CcmExec.exe" --yes
node skills/security/detection-rule-management/scripts/rule-manager.js patch --id <rule_uuid> --max-signals 50 --yes
node skills/security/detection-rule-management/scripts/rule-manager.js patch --id <rule_uuid> --severity low --risk-score 21 --yes
node skills/security/detection-rule-management/scripts/rule-manager.js disable --id <rule_uuid> --yesWrite operations (patch, enable, disable, delete, add-exception, bulk-action) prompt for confirmation by
default. Pass --yes to skip the prompt (required when called by an agent).
Verify with rule-manager.js get --id <rule_uuid>. Update triage cases via the case-management skill.
Specify MITRE ATT&CK technique(s), required data sources (Endpoint, Network, Cloud), and malicious vs legitimate
behavior. Common indexes: logs-endpoint.events.process-*, logs-endpoint.events.network-*,
.alerts-security.alerts-*, logs-windows.*, logs-aws.*. Key fields: process.name, process.command_line,
process.parent.name, destination.ip, winlog.event_id, event.action. Verify data with run-query.js:
node skills/security/alert-triage/scripts/run-query.js "process.name:certutil.exe" --index "logs-endpoint.events.process-*" --days 30 --size 5Rule types: query (KQL field matching), eql (event sequences), esql (aggregations), threshold (volume-based),
threat_match (IOC correlation), new_terms (first-seen). Test against Elasticsearch before creating:
node skills/security/alert-triage/scripts/run-query.js "process.name:certutil.exe AND process.command_line:(*urlcache* OR *decode*)" \
--index "logs-endpoint.events.process-*" --days 30For EQL, use --query-file to avoid shell escaping issues.
Validate query syntax before creating or patching a rule. The validate-query command catches common errors locally
— escaped backslashes, mismatched parentheses, unbalanced quotes, and duplicate boolean operators:
node skills/security/detection-rule-management/scripts/rule-manager.js validate-query \
--query "process.name:taskkill.exe AND process.command_line:(*chrome.exe* OR *msedge.exe*)" --language kueryThe create and patch commands also run validation automatically and reject invalid queries. Pass --skip-validation
only if you are certain the query is correct despite triggering a check.
Common KQL syntax mistakes:
*/IM chrome.exe*, not *\/IM chrome.exe*.( must have a matching )." must be paired.AND AND or OR OR is always an error.node skills/security/detection-rule-management/scripts/rule-manager.js create \
--name "Certutil URL Download or Decode" \
--description "Detects certutil.exe used to download files or decode Base64 payloads, a common LOLBin technique." \
--type query \
--query "process.name:certutil.exe AND process.command_line:(*urlcache* OR *decode*)" \
--index "logs-endpoint.events.process-*" \
--severity medium --risk-score 47 \
--tags "OS:Windows" "Tactic:Defense Evasion" "Tactic:Command and Control" \
--false-positives "IT administrators using certutil for legitimate certificate operations" \
--references "https://attack.mitre.org/techniques/T1140/" \
--interval 5m --disabledFor complex rules (EQL sequences, MITRE mappings, alert suppression), use create --from-file rule_definition.json and
--threat-file. See references/detection-api-reference.md for schema.
Monitor alert volume with noisy-rules --days 3 --top 10 and tune false positives as needed.
Tune Elastic Endpoint behavior rules by adding Endpoint exceptions scoped to specific rules. Endpoint exceptions live in Security → Exceptions → Endpoint Security Exception List, not under individual SIEM rules.
Key principles: Always fetch the rule definition from protections-artifacts first. Always scope exceptions to the
rule (rule.id or rule.name). Use full paths over process names. Run the mandatory entity cross-check (Step 4b)
before any exception. Simulate impact (Step 5b) and aim for ≥60% noise reduction.
Scripts: fetch-endpoint-rule-from-github.js (get rule TOML by id), add-endpoint-exception.js (add to Endpoint
Exception List; rule.id/rule.name required), check-exclusion-best-practices.js.
For the full step-by-step workflow (Steps 1–6), queries, and simulation templates, see references/endpoint-behavior-tuning-workflow.md. For exclusion best practices, see references/endpoint-rule-exclusion-best-practices.md.
All commands are run from the workspace root. All output is JSON unless noted.
| Command | Description |
|---|---|
find | Search/list rules with optional KQL filter |
get | Get a rule by --id or --rule-id |
create | Create a rule (inline flags or --from-file) |
patch | Patch specific fields on a rule |
enable | Enable a rule |
disable | Disable a rule |
delete | Delete a rule |
export | Export rules as NDJSON |
bulk-action | Bulk enable/disable/delete/duplicate/edit |
add-exception | Add an exception item to a rule |
list-exceptions | List items on an exception list |
create-shared-list | Create a shared exception list |
noisy-rules | Find noisiest rules by alert volume |
validate-query | Check query syntax before create/patch |
Endpoint behavior tuning: fetch-endpoint-rule-from-github.js (get rule TOML by id), add-endpoint-exception.js
(add to Endpoint Exception List; rule.id/rule.name required), check-exclusion-best-practices.js.
Pass entries as field:operator:value. Operators: is, is_not, is_one_of, is_not_one_of, exists,
does_not_exist, matches, does_not_match. Example: process.name:is:svchost.exe,
file.path:matches:C:\\Program Files\\*.
alert-triage skillcase-management skillcreate, patch, enable, disable, delete, add-exception, bulk-action,
add-endpoint-exception) prompt for confirmation. Pass --yes or -y to skip when called by an agent.rule.id or
rule.name in the entries. A broad, unscoped exception can silently reduce detection coverage.--dry-run with bulk-action to preview impact before executing bulk changes.| Variable | Required | Description |
|---|---|---|
ELASTICSEARCH_URL | Yes | Elasticsearch URL (for noisy-rules aggregation) |
ELASTICSEARCH_API_KEY | Yes | Elasticsearch API key |
KIBANA_URL | Yes | Kibana URL (for rules API) |
KIBANA_API_KEY | Yes | Kibana API key |
© elastic, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 10 other files (scripts, references) in skills/security/detection-rule-management of elastic/agent-skills.
Open the folder on GitHubat commit baa5111
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in elastic/agent-skills, which our catalogue first saw on October 7, 2026.
Security Detection Rule Management next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Security Detection Rule Management this skillelastic/agent-skills | 592 | 1 repos | ~3.9k | Automated safety check: Notes | Apache-2.0 | |
| Elasticsearch Auditaspectrr/deer | 405 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Performing Alert Triage With Elastic Siemmukul975/Anthropic-Cybersecurity-Skills | 34k | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Building Threat Feed Aggregation With Mispmukul975/Anthropic-Cybersecurity-Skills | 34k | — | ~3.2k | Automated safety check: Pass | Apache-2.0 | |
| Kubernetes Network Security Auditkubeshark/kubeshark | 12k | — | ~7.3k | Automated safety check: Notes | Apache-2.0 | |
| Chaitin CLIchaitin/chaitin-cli | 114 | — | ~15k | Automated safety check: Notes | GPL-3.0 |
aspectrr/deer
Enable, configure, and query Elasticsearch security audit logs.
mukul975/Anthropic-Cybersecurity-Skills
Perform systematic alert triage in Elastic Security SIEM—classifying, prioritizing, and investigating alerts using Kibana, ES|QL queries, and ECS-normalized data—to drive SOC analyst workflows.
mukul975/Anthropic-Cybersecurity-Skills
Deploy MISP via Docker and configure feeds from sources like abuse.ch, AlienVault OTX, and CIRCL to aggregate, correlate, and distribute threat intelligence, including automated feed synchronization…
kubeshark/kubeshark
Hunts for compromised workloads and malicious traffic in a Kubernetes cluster by sweeping network data through Kubeshark MCP, mapped to MITRE ATT&CK.
chaitin/chaitin-cli
A skill your agent uses when running chaitin-cli commands to manage Chaitin security products: SafeLine WAF (site management, IP blocking, ACL, policy rules, attack logs), X-Ray vulnerability…
Nebulock-Inc/agentic-threat-hunting-framework
GATES method validation for hunt-derived detections. An agent skill from Nebulock-Inc/agentic-threat-hunting-framework.
elastic/agent-skills
Triage Elastic Security alerts — gather context, classify threats, create cases, and acknowledge.
elastic/agent-skills
Create, search, update, and manage SOC cases via the Kibana Cases API.
elastic/agent-skills
Create and manage Kibana Dashboards and Lens visualizations.
elastic/agent-skills
Generate sample security events, attack scenarios, and synthetic alerts for Elastic Security.
elastic/agent-skills
Onboard an Elastic Cloud organization: configure the elastic CLI's Cloud context and API key, establish a default region, then invite users, assign predefined or custom Serverless project roles, and…
elastic/agent-skills
Create and manage Elastic ML anomaly detection jobs via the API.
Works with
Categories
Create, tune, and manage Elastic Security detection rules (SIEM and Endpoint). Security Detection Rule Management is an agent skill from elastic/agent-skills, published by the product's own GitHub organization. Create, tune, and manage Elastic Security detection rules (SIEM and Endpoint).
Security Detection Rule Management fits situations like: false positives; rule management via Kibana API.
Run `npx skills add elastic/agent-skills --skill security-detection-rule-management -a claude-code`. Or copy the skill folder (skills/security/detection-rule-management in elastic/agent-skills) into .claude/skills/security-detection-rule-management in your project. Claude Code loads it when a task matches its description.
Run `npx skills add elastic/agent-skills --skill security-detection-rule-management -a codex`. Or copy the skill folder (skills/security/detection-rule-management in elastic/agent-skills) into .agents/skills/security-detection-rule-management in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add elastic/agent-skills --skill security-detection-rule-management -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/security-detection-rule-management, .gemini/skills/security-detection-rule-management, .github/skills/security-detection-rule-management and .opencode/skills/security-detection-rule-management in your project.
Going by SKILL.md and its folder, Security Detection Rule Management needs JavaScript for the scripts in its folder, the command-line tools its instructions call (node and npm) and credentials named ELASTICSEARCH_API_KEY and KIBANA_API_KEY. Our summary lists: Node.js; A credential in KIBANA_API_KEY; A credential in ELASTICSEARCH_API_KEY. Compatibility (from SKILL.md): Requires Node.js 22+, network access to Kibana and Elasticsearch. Environment variables: KIBANA_URL plus KIBANA_API_KEY or KIBANA_USERNAME/KIBANA_PASSWORD; ELASTICSEARCH_URL or ELASTICSEARCH_CLOUD_ID plus ELASTICSEARCH_API_KEY or ELASTICSEARCH_USERNAME/ELASTICSEARCH_PASSWORD. .
SKILL.md names 1 domain. In commands or code: attack.mitre.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Security Detection Rule Management is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Security Detection Rule Management: Elasticsearch Audit (aspectrr/deer, 405 stars), Performing Alert Triage With Elastic Siem (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Building Threat Feed Aggregation With Misp (mukul975/Anthropic-Cybersecurity-Skills, 34k stars) and Kubernetes Network Security Audit (kubeshark/kubeshark, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
elastic (a GitHub organization, an official publisher) maintains it in elastic/agent-skills, which has 592 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 7, 2026.
Source: elastic/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.