Grid Capacity Planning logo

Grid Capacity Planning

Organization
Amazon-Quick
grid-capacity-planning

Perform long-range transmission and distribution capacity planning: load growth forecasting, distributed energy resource hosting capacity, N-1 contingency screening, transfer capability, substation loading, and capital investment plans. Use when asked to 'forecast load growth', 'run a hosting capacity analysis', 'screen N-1 contingencies', 'calculate ATC or transfer capability', 'assess substation loading', or 'build a capital investment plan' for a power grid

Overview

PublisherAmazon-Quick
RepositoryAmazon-Quick-official-catalog
Skill namegrid-capacity-planning
Stars
50
Forks
4
Bundled files
4
LicenseMIT-0
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 4 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by Amazon-Quick on GitHub. Read the source before you install it.

Installation

Install the Grid Capacity Planning AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/Amazon-Quick/Amazon-Quick-official-catalog/tree/main/skills/energy-utilities/grid-capacity-planning
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/Amazon-Quick/Amazon-Quick-official-catalog.git /tmp/Amazon-Quick-official-catalog
mkdir -p .claude/skills
cp -r /tmp/Amazon-Quick-official-catalog/skills/energy-utilities/grid-capacity-planning .claude/skills/grid-capacity-planning
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Grid Capacity Planning in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Grid Capacity Planning on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Grid Capacity Planning is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Overview

Grid Capacity Planning performs long-range transmission and distribution planning analysis. It integrates load forecasting (econometric, end-use, and trending methods), hosting capacity determination for distributed energy resources (DER), N-1 contingency screening, and power transfer sensitivity factor computation. The skill calculates Available Transfer Capability (ATC) and identifies thermal bottlenecks that require capital investment. It produces planning-grade outputs: 5/10/20-year load growth scenarios, substation loading assessments, hosting capacity maps, and capital expenditure requirements.

Workflow

  • references/forecasting-methods.md: econometric, end-use, and trending load growth math; weather normalization; scenario construction.
  • references/power-system-analysis.md: PTDF, LODF, N-1 screening, ATC/TTC/TRM/ ETC/CBM, hosting capacity, substation loading, and the sandbox reality for power flow.
  • references/investment-costs.md: PWRR, capital recovery factor, planning-level unit costs, and estimating discipline.

Key terms:

  • DER: distributed energy resource (rooftop solar, storage, small generation).
  • Hosting capacity (HC): maximum DER a feeder accepts without violating limits.
  • PTDF / LODF: power transfer and line outage distribution factors (DC linear sensitivity factors).
  • ATC: Available Transfer Capability = TTC - TRM - ETC - CBM.
  • N-1: loss of any single element. N-1-1: two sequential losses. N-2: simultaneous double contingency.

<Workflow - Load Growth Forecasting description="Develop load growth projections using econometric, end-use, or trending methods." tools=[get_current_time, run_python, file_read, file_write, web_search, url_fetch, open_in_session_tab] triggers=["Load forecast", "load growth", "demand projection", "how much will load grow"]

  1. [Agent] Verify reference data before any calculation. Identify which time-sensitive values are needed (elasticities, prices, costs, regulatory limits) and fetch each from an authoritative source with web_search or url_fetch, per Rule 2. Get the current date with get_current_time so planning years (5/10/20) are anchored correctly. Validate: Every time-sensitive value has a verified source or a user-provided value. If fails: Stop and ask the user to confirm or provide the value.

  2. [Agent] Read historical load data. Determine granularity (annual peaks, monthly energy, hourly profiles) and coverage (number of years). Validate: Structured historical series loaded with a known time base. If fails: Ask the user for historical load data in a structured format.

  3. [Agent] Perform weather normalization if temperature data is available, per references/forecasting-methods.md (CDD/HDD regression, normalize to 50th-percentile or 90/10 design weather). Validate: Normalized series produced, or absence of weather data recorded. If fails: Proceed with raw data and note that results are not weather-normalized.

  4. [Agent] Fit the applicable models in run_python per references/forecasting-methods.md: trending (exponential, linear, logistic; select by adjusted R^2), econometric (if economic data available), and end-use (if end-use data available). Validate: At least one model fits with reported goodness-of-fit. If fails: Fall back to the trending method on available peaks.

  5. [Agent] Generate low/base/high scenarios per 3-4 and references/forecasting-methods.md. Validate: Three scenarios exist with stated assumptions. If fails: Use plus/minus one standard error of the regression as high/low bounds.

  6. [Agent] Produce outputs per planning year (5, 10, 20): peak demand (MW) and annual energy (GWh) by zone/substation, CAGR per scenario, and uncertainty band width. Write tables to an Excel workbook (canvas_xlsx) and growth curves (highcharts with html_design), then open with open_in_session_tab. Include the Rule 3 disclaimer on the deliverable. Validate: Workbook and chart created and opened in a session tab. If fails: Fall back to a text or Markdown table.

</Workflow - Load Growth Forecasting>

<Workflow - Hosting Capacity Analysis description="Determine maximum DER interconnection capacity at each bus or feeder before violations occur." tools=[run_python, file_read, file_write, open_in_session_tab] triggers=["Hosting capacity", "DER interconnection", "how much solar can connect", "PV hosting"]

  1. [Agent] Load the network model into a numpy representation in run_python. Validate topology: no isolated buses, transformer tap ranges present, base-case power flow converges. Validate: Model parses and a base case is defined. If fails: Report model issues and request corrections.

  2. [Agent] Establish the base case (no DER): compute bus voltages and branch flows, verify no base-case violations. See references/power-system-analysis.md. Validate: Base case has no violations. If fails: Adjust the slack/reference bus or voltage setpoints and note it.

  3. [Agent] For each candidate bus (or specified DER queue locations), run the iterative hosting capacity method in references/power-system-analysis.md, incrementing DER until the first violation or the practical upper bound. Process buses in bounded batches to respect the 60-second run_python limit, writing intermediate results to disk. Validate: A hosting capacity value is recorded for each candidate bus. If fails: Reduce the step size for precision or report convergence issues.

  4. [Agent] Classify the limiting factor per bus: thermal, voltage, protection, or reverse flow. Validate: Every bus with an HC value has a limiting factor. If fails: Re-run the binding case and inspect which criterion tripped first.

  5. [Agent] Produce a hosting capacity map/table: bus ID, HC (MW), limiting factor, limiting element, per-feeder totals, and mitigation recommendations (voltage regulators, reconductoring, storage). Write results and open in a session tab with the Rule 3 disclaimer. Validate: Results file created and opened. If fails: Summarize the top constraints in text.

</Workflow - Hosting Capacity Analysis>

<Workflow - N-1 Contingency Screening description="Screen all single-element outages for thermal and voltage violations." tools=[run_python, file_read, file_write, open_in_session_tab] triggers=["N-1 contingency", "contingency analysis", "what overloads under outage", "reliability screening"]

  1. [Agent] Load the network model and build the contingency list: use user-specified contingencies if given, otherwise generate the full N-1 list (all branches with rating > 0). Validate: Contingency list is non-empty. If fails: Ask the user for the network model.

  2. [Agent] Compute PTDF and LODF matrices with DC power flow in run_python per references/power-system-analysis.md. Remove the slack row/column before inverting B; flag any islanding LODF. Validate: PTDF and LODF matrices computed without singularity. If fails: Fall back to sequential AC contingency if an AC solver is available; otherwise report the singularity and its cause.

  3. [Agent] Screen all contingencies with LODF, computing post-contingency loading against emergency ratings. Batch the loops to respect the 60-second limit and write violations to disk incrementally. Validate: Every (contingency, monitored branch) pair evaluated. If fails: Reduce batch size and resume from the last checkpoint.

  4. [Agent] Rank violations by severity: worst overload first, grouped by contingency and by monitored element. Use the Performance Index in the reference for prioritization. Validate: A ranked violation list exists. If fails: Re-sort from the saved violation records.

  5. [Agent] Validate the top violations with full AC power flow if a solver or user-supplied AC results are available; otherwise state that results are DC-only. Validate: Top violations confirmed by AC, or DC-only status stated. If fails: Note the DC screening approximation (5 to 10 percent versus AC).

  6. [Agent] Produce a contingency screening report: summary table (contingency, monitored element, pre- and post-contingency flow, rating, loading%), a thermal violation view, and mitigation options. Open in a session tab with the Rule 3 disclaimer. Validate: Report created and opened. If fails: Provide a text-based violation summary.

</Workflow - N-1 Contingency Screening>

<Workflow - Transfer Capability Calculation description="Calculate ATC for a specified transfer path using PTDF-based methods." tools=[run_python, file_read, file_write, open_in_session_tab] triggers=["ATC", "transfer capability", "how much can transfer", "path rating", "TTC"]

  1. [Agent] Identify the transfer source and sink areas (sets of buses). Validate: Source and sink bus sets defined. If fails: Ask the user to specify source and sink zones.

  2. [Agent] Compute TTC with the linearized method in references/power-system-analysis.md, taking the minimum of the N-0 and N-1 limits over all monitored branches. Validate: TTC computed with the limiting element identified. If fails: Report which branch is the binding element and the assumptions used.

  3. [Agent] Determine margins: TRM (utility methodology or default 3 percent of TTC), CBM (from a generation reliability study or default 0), and ETC (sum of existing firm commitments on the path). Verify any assumed percentages per Rule 2. Validate: TRM, CBM, and ETC each have a stated source or documented default. If fails: Ask the user for the margin methodology.

  4. [Agent] Calculate ATC = TTC - TRM - ETC - CBM. If ATC < 0, report the path as fully committed or constrained. Validate: ATC computed with all four components shown. If fails: Recheck component units and signs.

  5. [Agent] Produce a transfer capability summary: limiting element, limiting contingency (if N-1 limited), sensitivity to relief, and available ATC for new service. State the study conditions. Open in a session tab with the Rule 3 disclaimer. Validate: Summary created and opened. If fails: Provide a text summary of the ATC components.

</Workflow - Transfer Capability Calculation>

<Workflow - Investment Planning description="Translate reliability violations and load growth into a capital investment plan." tools=[run_python, file_read, file_write, web_search, url_fetch, open_in_session_tab, start_task, get_task_result] triggers=["Investment plan", "capital plan", "what do we need to build", "how to fix overloads", "capex requirements"]

  1. [Agent] Collect all identified needs: thermal violations from N-1 screening (with year of first occurrence from load growth), substations above 80 percent of N-1 firm capacity, hosting capacity shortfalls versus the DER queue, and transfer capability gaps versus projected transfers. Validate: A consolidated needs list exists with a year of need for each. If fails: Re-run the upstream workflow that produced the missing input.

  2. [Agent] For each need, develop solution alternatives from references/investment-costs.md (reconductoring, new line, transformer, storage, demand-side management). Validate: Each need has at least one alternative. If fails: Flag needs with no viable alternative for user input.

  3. [Agent] Estimate costs for each alternative. Verify current unit costs per Rule 2 (do not treat the reference table as current without a lookup), add a contingency factor (default 20 percent), apply regional multipliers, and compute PWRR over a 30-year period using the utility WACC (default 7 percent, labeled as an assumption). For a large candidate set, run the cost and PWRR computation as a background task with start_task and collect it with get_task_result. Validate: Every alternative has a cost with a stated year-dollar basis and contingency factor. If fails: Report which costs could not be verified and ask the user.

  4. [Agent] Prioritize investments by year of need, then severity, and flag "least regret" investments that address multiple needs. Validate: A ranked investment list exists. If fails: Re-sort from the saved needs and cost records.

  5. [Agent] Produce the capital investment plan: a 5-year near-term plan with specific projects and costs, a 10-year plan with plus/minus 30 percent ranges, a 20-year programmatic view, capex by category, and an annual spending profile. Write to a multi-tab Excel workbook (canvas_xlsx) and open in a session tab with the Rule 3 disclaimer. Validate: Workbook created and opened. If fails: Provide a Markdown summary with key projects and costs.

</Workflow - Investment Planning>

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Grid Capacity Planning AI skill do?

Perform long-range transmission and distribution capacity planning: load growth forecasting, distributed energy resource hosting capacity, N-1 contingency screening, transfer capability, substation loading, and capital investment plans. Use when asked to 'forecast load growth', 'run a hosting capacity analysis', 'screen N-1 contingencies', 'calculate ATC or transfer capability', 'assess substation loading', or 'build a capital investment plan' for a power grid

Why use Grid Capacity Planning on TypingMind?

Because you install it once and use it with any model. Grid Capacity Planning is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Grid Capacity Planning in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/Amazon-Quick/Amazon-Quick-official-catalog/tree/main/skills/energy-utilities/grid-capacity-planning. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Grid Capacity Planning?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Grid Capacity Planning?

As many as you like. As long as a model supports skills, you can use Grid Capacity Planning with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Grid Capacity Planning AI skill free?

Yes. It is published on GitHub by Amazon-Quick under the MIT-0 license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇