implementing-nerc-cip-compliance-controls
Helps your agent implement security rules for electrical systems, ensuring compliance and protecting against cyber threats.
What it does
This tool helps classify critical computer systems for the electric grid (BES Cyber Systems) into high, medium, or low impact categories, as required by NERC CIP standards. It also aids in implementing other security and management rules.
When to use it
- ✓When you need to classify electric grid computer systems to comply with NERC CIP standards.
- ✓When preparing for a NERC CIP compliance audit.
- ✓When implementing the latest CIP standard updates for 2025.
Example of what to ask your AI
“Classify my generation control systems as high, medium, or low impact based on their connected MW and network requirements.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The tool analyzes your systems' information (like asset type, power capacity, and functions) and compares it against the criteria defined in NERC CIP standards to determine the impact level.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill implementing-nerc-cip-compliance-controlsOr download just the file:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/implementing-nerc-cip-compliance-controls/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Implementing NERC CIP Compliance Controls
When to Use
- When a registered entity must achieve or maintain NERC CIP compliance for BES cyber systems
- When preparing for a NERC CIP compliance audit by the Regional Entity
- When implementing the 2025 CIP standard updates (CIP-003-9, CIP-005-7, CIP-010-4, CIP-013-2)
- When categorizing BES cyber systems after commissioning new generation, transmission, or control center assets
- When developing a compliance monitoring and evidence collection program
Do not use for non-BES industrial systems (see implementing-iec-62443-security-zones), for general IT compliance frameworks (see auditing-cloud-with-cis-benchmarks), or for physical security of substations without cyber components.
Prerequisites
- Understanding of NERC CIP standards (CIP-002 through CIP-014)
- BES cyber system inventory with impact ratings (high, medium, low)
- Access to Electronic Security Perimeter (ESP) network diagrams and firewall configurations
- Compliance management system for evidence collection and audit documentation
- Familiarity with NERC Glossary of Terms (BES Cyber Asset, BES Cyber System, Electronic Access Point)
Workflow
Step 1: Categorize BES Cyber Systems (CIP-002-5.1a)
Identify and categorize all BES cyber systems based on their impact to the reliable operation of the Bulk Electric System.
#!/usr/bin/env python3
"""NERC CIP BES Cyber System Categorization Tool.
Implements CIP-002-5.1a categorization criteria to classify
BES cyber systems as high, medium, or low impact.
"""
import json
import sys
from dataclasses import dataclass, field, asdict
from datetime import datetime
@dataclass
class BESCyberSystem:
"""Represents a BES Cyber System for CIP-002 categorization."""
system_id: str
name: str
description: str
location: str
asset_type: str # control_center, generation, transmission, distribution
connected_mw: float = 0
transmission_kv: float = 0
is_control_center: bool = False
is_backup_control_center: bool = False
has_cranking_path: bool = False
has_blackstart: bool = False
is_sps_ras: bool = False # Special Protection System / Remedial Action Scheme
impact_rating: str = "" # high, medium, low
categorization_basis: str = ""
cyber_assets: list = field(default_factory=list)
class CIP002Categorizer:
"""NERC CIP-002-5.1a BES Cyber System categorization engine."""
def __init__(self):
self.systems = []
self.categorization_date = datetime.now().isoformat()
def add_system(self, system: BESCyberSystem):
self.systems.append(system)
def categorize_all(self):
"""Apply CIP-002 Attachment 1 criteria to all systems."""
for system in self.systems:
self._categorize_system(system)
def _categorize_system(self, sys):
"""Apply high, medium, low impact criteria per CIP-002 Attachment 1."""
# HIGH IMPACT criteria (CIP-002 Attachment 1, Criterion 1)
if sys.is_control_center and sys.asset_type == "control_center":
# Control Centers that perform the functional obligations
# of a Reliability Coordinator, Balancing Authority, or TOP
sys.impact_rating = "high"
sys.categorization_basis = (
"CIP-002 Att.1 Criterion 1.1: Control Center performing "
"RC/BA/TOP functional obligations"
)
return
if sys.is_backup_control_center and sys.asset_type == "control_center":
sys.impact_rating = "high"
sys.categorization_basis = (
"CIP-002 Att.1 Criterion 1.2: Backup Control Center performing "
"RC/BA/TOP functional obligations"
)
return
if sys.connected_mw >= 3000:
sys.impact_rating = "high"
sys.categorization_basis = (
f"CIP-002 Att.1 Criterion 1.3: Generation >= 3000 MW "
f"(actual: {sys.connected_mw} MW)"
)
return
# MEDIUM IMPACT criteria (CIP-002 Attachment 1, Criterion 2)
if sys.connected_mw >= 1500 and sys.asset_type == "generation":
sys.impact_rating = "medium"
sys.categorization_basis = (
f"CIP-002 Att.1 Criterion 2.1: Generation >= 1500 MW "
f"(actual: {sys.connected_mw} MW)"
)
return
if sys.transmission_kv >= 500:
…
FAQ
What are 'BES Cyber Systems'?
These are computer systems essential for the reliable operation of the Bulk Electric System (BES).
What does 'NERC CIP Compliance' mean?
It means following the rules and standards set by the North American Electric Reliability Corporation (NERC) to ensure the security and reliability of electrical systems.
Does this tool replace a human auditor?
No, this tool helps organize and classify information to facilitate the compliance and audit process, but final interpretation and responsibility remain human.
Details
Original description by the author
Implements NERC CIP controls for Bulk Electric System (BES) cyber systems: asset categorization (CIP-002), electronic security perimeters (CIP-005), system security management (CIP-007), configuration management (CIP-010), and supply chain risk (CIP-013), including 2025 MFA updates. Use when a registered entity must achieve or maintain NERC CIP compliance, prepare for a Regional Entity audit, or c
Popularity
- GitHub stars
- 35k
- Ranking position
- #5914
- License
- Apache-2.0
- Updated
- 8/31/2026
Comments
- …
More skills from this repository
abusing-dpapi-for-credential-access
Gives your AI agent ready-made instructions for a specific task, so it does it better and faster.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Teaches your AI agent to write clear, well-structured text.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Helps your agent prepare an environment for CMMC Level 2 compliance. It implements security requirements and manages necessary documentation.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Helps your agent create exact copies of hard drives. This is useful for ensuring no information is lost or altered during investigations.
mukul975/Anthropic-Cybersecurity-Skills
Similar skills
django-security
Helps your agent implement security practices in Django applications. It focuses on authentication, authorization, and prevention against common attacks, ensuring more secure code.
affaan-m/ECC
laravel-security
Helps your agent secure Laravel applications against threats. Implements security practices for authentication, authorization, and common attack prevention.
affaan-m/ECC
module-regression
Helps your agent manage changes in large projects. Ensures code changes in one part don't break other parts.
affaan-m/ECC