grid-sim-operator

A procedure for operating a simulated balancing-authority console. A balancing authority keeps electricity generation and customer demand matched so grid frequency stays within safe limits.

In plain words
What is it for?
Assessing grid conditions, committing reserves, balancing supply and load, managing dispatch intervals, and settling their results.
Why use it?
It organizes the observations and actions needed to manage generation, demand, reserves, equipment status, and dispatch settlement.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/comisai/comis/grid-operator
Any agent
npx skills add comisai/comis --skill grid-operator
Clone the repo
git clone --depth 1 https://github.com/comisai/comis

Made for: Claude Code, Codex.

Per session 61 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 747 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00061 $0.00747
Opus 5 $0.00030 $0.00374
Sonnet 5 $0.00012 $0.00149
Haiku 4.5 $0.00006 $0.00075

Measured 2d ago against content hash 10a2576b7b13, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

grid-sim-operator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (handlers.mjs), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

test/live/self-driving/sim/grid-operator/SKILL.md · 39 lines

How it starts

The opening of the file, as written. The whole thing — 39 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are the operator on shift for a balancing authority (control area). Your job is to keep generation and load in balance so system frequency stays inside its operating limits, then settle the dispatch interval. This skill explains how to use the console toolswhat to do with what you observe (how much reserve, when, which strategy) is your call as the operator.

Your tools (mcp:grid-sim/*)

Observe (read-only — assess the area):

  • get_load — the current served load (MW) and its near-term trend.
  • get_generation — current output by asset (MW online, type, and remaining headroom), plus the online total.
  • forecast { horizon } — the short-horizon forecast for load and per-type generation (including renewables) over the next intervals.
  • get_reserves — reserve capacity: how much is available to commit, how much is already committed, and how long each reserve takes to come online.
  • asset_status { asset } — per-asset health/derate flags and any condition warnings the units are reporting. Omit asset for all units.
  • frequency — the current system frequency (Hz), nominal, and the operating limits you must stay within.

Act (consequential):

  • commit_reserve { mw, resource } — make reserve capacity available to the area. Committing has a standby cost; no energy is delivered until it is allowed to respond.
  • set_dispatch_strategy { strategy } — choose how the area balances at settlement: static (hold the current dispatch) or follow (let committed reserve respond to the imbalance).
  • dispatch { asset, deltaMw } — change an asset's output set-point (positive ramps up, negative ramps down). Bounded by that asset's headroom.
  • shed_load { mw } — curtail firm customer load to relieve a shortfall. High penalty — a last resort.
  • settle_interval { note } — advance and settle the interval. The system resolves load against generation and reserves and returns the graded outcome.

How to run an interval

  1. Read the area first: get_load, get_generation, frequency, and get_reserves to see where you stand.
  2. Look ahead and at unit health: forecast and asset_status tell you what is coming and which units to trust.
  3. Position the area with the act tools (commit_reserve, set_dispatch_strategy, dispatch) before you settle.
  4. settle_interval once to resolve the interval. This is terminal and returns the grade — call it last.

Read the full file on GitHub · 39 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 39 lines · 61 tokens per session scan A 10a2576b7b13

Subscribe to this mod's changes

grid-sim-operator is a skill published in the GitHub repository comisai/comis (5 stars, last pushed 2d ago), licensed Apache-2.0. It adds 61 tokens to every session and 747 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

org-sync

Use when the CEO wants an organization-wide sync across PuPu's agent teams — running each org's internal sync, then a cross-org sync where departments challenge each other, converging into one decision list. Triggers: "跑一次 org sync", "全局同步", "组织盘点", "/org-sync", "各部门现在什么情况", "有什么要我拍板的".

haoxiang-xu/PuPu · 82 tokens

release-feature-audit

Use when a new PuPu feature finishes implementation and needs its consistency audit before its ticket is marked done — "audit #123", "审计这个功能", "这个 feature 过一遍检查" — or when release-close-sprint roll-call finds a new feature that was never audited. Also covers standalone i18n checks ("漏翻了吗", "检查 i18n"), which used to be…

haoxiang-xu/PuPu · 94 tokens

growth-analyst

Use when analyzing PuPu's open-source growth or health for the founder — GitHub traffic, downloads/installs, releases, community, or contributor activity — or when producing a growth report or weekly COO report. Repo is haoxiang-xu/PuPu. Triggers: "how is PuPu growing?", "are people installing PuPu?", "which release…

haoxiang-xu/PuPu · 102 tokens

test-api

Use when running QA / regression tests against PuPu, when verifying a code change actually works in the running app, or when reading PuPu UI/state without screenshotting manually. Triggers on tasks like "test that PuPu still creates chats correctly", "verify the new model selector works end-to-end", "send a message…

haoxiang-xu/PuPu · 110 tokens

gitnexus-impact-analysis

Use when the user wants to know what will break if they change something, or needs safety analysis before editing code. Examples: "Is it safe to change X?", "What depends on this?", "What will break?".

haoxiang-xu/PuPu · 50 tokens

gitnexus-refactoring

Use when the user wants to rename, extract, split, move, or restructure code safely. Examples: "Rename this function", "Extract this into a module", "Refactor this class", "Move this to a separate file".

haoxiang-xu/PuPu · 53 tokens