agentleFS
equinorequinor/neqsim/.github/skills/neqsim-capacity-increase-screening/SKILL.md

neqsim-capacity-increase-screening

Skill167 starsChanged 7 months agoApache-2.0View on GitHub

Ideation and screening of capacity-increase ideas on an existing host across wells, subsea flow system and topside - AICD/ICD/DAR completions, subsea separation or boosting, separator pressure, scrubber internals, compressor and pump modifications. USE WHEN: asked to accelerate or increase production, find what to debottleneck first, or rank ideas on scope, cost, emissions, HSE and value with a maturation pipeline and host ullage for future tie-ins.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the question is "which ideas lift or accelerate production on this host, and which should be matured?" It turns a …

    line 9
  2. Distinctive:

    Calibrate on the plant before using a window: If an operating window includes anti-surge recycle, a calibration of K or power against total …

    line 52
  3. Distinctive:

    Annual mean hides peaks: Run mean and p90-day rates.

    line 54
  4. Distinctive:

    Combinations are not additive: Run the pair and the triple of the top ideas.

    line 57
  5. Distinctive:

    Do not let the model rank ideas it cannot see: If the dominant limit is outside the model (produced water, flare, power), screen it against …

    line 61

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Capacity Increase Screening (wells, subsea, topside)

Use this skill when the question is "which ideas lift or accelerate production on this host, and which should be matured?" It turns a calibrated host model into a ranked idea register. It does not replace the equipment-specific skills it calls.

Workflow

  1. Baseline. Build or reuse the host model on a plan profile (oil, gas, water per year). Close mass balance and compare with plant data before any lever is tested (neqsim-process-modeling, neqsim-model-calibration-and-data-reconciliation).
  2. Constraint map. Register the limit of every unit on the oil, gas, water and power paths and label its basis (vendor design case, code, operator monitoring limit, demonstrated peak). Run the year grid and record utilisation per constraint, not only the maximum (neqsim-capacity-and-utilization-analysis; ProcessModelDebottleneckStudy, BottleneckTracker).
  3. Binding sequence. List which constraint binds in which years and what the next one is. A lever that relieves constraint A only buys time until constraint B binds.
  4. Idea long list. Fill the lever catalogue below with the asset's own ideas first, then add missing families. Ask the asset for design margins, planned shutdowns and earlier studies before ranking.
  5. Lever runs. Express each idea as a change to the model or its feed, rerun the year grid, and record the new binding sequence and the volume or time gained.
  6. Register and score. One row per idea with scope, cost class, emissions, HSE, value and maturity (schema below). Test combinations, since levers rarely add.
  7. Maturation pipeline and host ullage. Assign each idea a next stage and report the per-year ullage left on every constraint for future tie-ins (TieInCapacityPlanner, HostFacility).

Lever catalogue

DomainIdeaConstraint it relievesHow to model itMain risk
WellsAICD, AICV, ICD, DAR-type autonomous or adjustable completionsWater and gas handling, liquid rateInflowControlCompletion.compareAtSameOil gives the water and gas change per barrel of oil and the extra drawdown; carry the result into WellDeliverabilityCurve / IntegratedProductionModelBenefit is reservoir-dependent and unproven until a well test; productivity penalty
WellsGas lift rate, lift-gas allocation, choke strategyLiquid rate, gas compressionGasLiftNetworkOptimizer, NetworkOptimizerLift gas loads the same compressors
WellsNew or sidetracked wells, infillPlateau lengthPlan profile with new wells; not a debottleneckCost class and rig availability
SubseaBoosting (multiphase pump, wet-gas compression)Wellhead back-pressure, plateau rateSubseaBooster plus flowline hydraulics (PipeBeggsAndBrills, TwoFluidPipe)Power supply, reliability, intervention cost
SubseaBulk water or gas separationTopside water, liquid or gas pathSubseaSeparationStation: split gas, liquid and water before the riser, boost liquid and reinject water, read the powerQualification, power, controls, hydrate and slug control
SubseaFlowline or riser pressure-drop reduction, slug controlBack-pressure, separator surgeHydraulic rerun with changed diameter, routing or choking (neqsim-flow-assurance)Hydrate, wax and slugging margin
TopsideHigher separation pressureGas compression suction, scrubber loadPressure setpoint on the inlet separator; recompression power fallsOil spec, flashing, vessel rating
TopsideScrubber internals, cyclones, vane packsGas load factor (K) and momentum limitsNew K limit on the unit; check carry-over (SeparatorMechanicalDesign)Vessel pressure rating, liquid carry-over
TopsideCompressor re-wheel, speed, driver, anti-surge strategyCompressor flow, power, surgeNew chart or driver limit (neqsim-rotating-equipment-design, neqsim-compressor-antisurge-recycle)Casing limits, power from the driver or grid
TopsidePump upgrade (water injection, export), heater or cooler capacityWater, liquid or temperature pathCapacity constraint on the unitUtility demand
TopsideProduced-water treatment, flare, power capacityWater discharge, flare load, electrical loadSeparate screen against demonstrated peak and design casePermit limits
SystemDebottleneck sequencing across several of the aboveThe next binding constraintDebottleneckingAdvisor, ProcessModelDebottleneckRankingInteractions

Name a family as screened only when the model rests on assumed constants rather than tests. The completion and separation classes below are screening models: the device constants and the carry-over fractions must come from vendor flow-loop or qualification data before the result is used for more than ranking.

NeqSim classes for the well and subsea levers

  • InflowControlDevice (neqsim.process.equipment.reservoir): pressure drop of an ICD (nozzle), AICD (dP = a rho_mix^2/rho_cal (mu_cal/mu_mix)^y q^x, calibrated on a reference point), AICV (closes on low viscosity) and DAR (density-window restrictor; the window and residual opening are inputs because the characteristic is vendor specific), and the inverse flow for a given pressure drop.
  • InflowControlCompletion: zones with productivity index and in-situ water and gas fractions sharing one drawdown. compareAtSameOil(bareDrawdown, maxDrawdown) returns the extra drawdown the device needs for the same oil and the water and gas reductions at that oil; isOilRateReached() is false when the limit stops it. The phase split of a zone is fixed, so a coning-driven benefit is an upper bound. Use the water and gas reductions as the low/base/high lever in the host model.
  • SubseaSeparationStation (neqsim.process.equipment.subsea): ThreePhaseSeparator with liquid and water pumps; set setWaterRemovalEfficiency, setOilInWaterFraction, setGasCarryUnderFraction, setLiquidExportPressure, setWaterInjectionPressure. Read getGasOutStream(), getLiquidOutStream() (to the host), getWaterOutStream(), getWaterRemovedFraction() and getTotalPowerKW(). Feed the liquid and gas streams to the host model in place of the well stream, and put the power in the emissions and electrical-load check.

Other stations (compression, hydrate and slug control, power from shore) are outside these classes; SubseaBooster covers boosting.

Rules that keep the ranking honest

  • Model the lever, not the outcome. An AICD or DAR lever is an assumed shift in water and gas per barrel of oil. Report low, base and high shifts and the break-even shift at which the idea stops paying; never a single point.
  • Binding metric switches. A vessel can switch binding metric (water, then oil, then gas) when the feed changes. Fit responses per (unit, metric) and rerun after every lever.
  • Calibrate on the plant before using a window. If an operating window includes anti-surge recycle, a calibration of K or power against total flow overstates the future. Calibrate on net flow and keep the recycle share separate.
  • Show two limit bases. Vendor or code limit and operator monitoring limit can differ in both directions. Present utilisation on both and say which one the decision uses.
  • Annual mean hides peaks. Run mean and p90-day rates; exceedances occur on peak days.
  • Surge and minimum-flow rows are turndown indicators, not capacity rows.
  • Value needs a timeline. Acceleration value is earlier barrels, not only more barrels. Use the plan profile with and without the lever and discount both (neqsim-field-economics).
  • Combinations are not additive. Run the pair and the triple of the top ideas. Report the interaction. With up to about six levers, evaluate every combination on the utilisation algebra (not new model runs) and give each lever its Shapley share of the combined gain.
  • The plan profile is already capacity-capped. Count a lever's gain only in years where the base utilisation of the relieved constraint is near 1 (for example 0.85 or more), and state where the unconstrained potential comes from. If it is missing, that is the main data gap, since it sets the value scale.
  • Scale rate-dependent case inputs. Wash water, lift gas and similar fixed inputs in a case runner give mass imbalance at low rates; scale them with rate and check the mass balance in the first and last year.
  • Record what is ruled out and why (for example a lever that moves a constraint that is not binding), so it is not re-proposed.
  • Do not let the model rank ideas it cannot see. If the dominant limit is outside the model (produced water, flare, power), screen it against demonstrated peaks and label it so.
  • Match the subsea option to the binding stream. Water separation helps only when water or liquid binds; when a gas-side cluster binds (gas scrubber K, contactor momentum, injection power), screen gas-liquid separation with local gas reinjection as the subsea alternative, with the compression power from a Compressor on the separated gas, and compare it with the topside package it would replace.
  • Re-run the saved valuation before reusing a task. Rebuild results.json from the scripts; a copied task can hold results from an older script version (one such rerun moved an all-levers NPV by 20 %). Check that valuation scripts still run after any edit, since a line merge can hide an elif inside a comment.
  • Nameplate times regularity can be below the booked plan. For a water-flooded host the plan load for liquid, water and gas incl. lift gas often exceeds nameplate times production efficiency (one NCS FPSO: booked liquid 42.5 kSm3/d against 40 x 0.91). Test each constraint (oil, liquid, water, gas_incl_lift) against the plan peak and use the larger of the two as plan-consistent capacity; otherwise ullage is zero for decades and every tie-in looks impossible. State the capacity basis as an asset-team input.
  • Ullage is per constraint and the binding one moves. Compute free ullage for oil, liquid, water and gas incl. lift separately; the binding constraint typically moves oil, then liquid, then gas incl. lift, then water as the water cut grows. A new tie-in barrel is limited by the tightest constraint at its own water-oil and gas-oil ratio, not by oil ullage.
  • Cheapest access first: spare slots and host-platform wells before a new template. For an infill or second-target request, always value three alternatives on the same profile model before the hub: wells from spare slots on existing templates, wells from the host platform (free slots, sidetracks), and the new template. In the Breidablikk 5th template study the hub was at NPV P50 about zero with P(NPV<0) about 50 %, spare slots +374 and platform wells +388 MNOK (P(NPV<0) 7 % and 2 %): the hub only has a case for the targets the cheaper routes cannot reach. Slot status and reach are the first data request.
  • Gas intensity per barrel is the currency of a shared LP system. LP gas per Sm3 oil = GOR + lift GLR; a heavy-oil, high-water target (Grane Nord: GOR 76 + GLR 152) needs 2.2 times the LP gas of a light depletion target (Breidablikk: 27 + 76). Compute it per well group before ranking targets, and let the stream mix set the curtailment.
  • Late tie-ins displace booked barrels. Net new oil is the new production minus the base barrels displaced in the binding constraint; report the displaced share by first-oil year (one case: 43 % for first oil in 2030, 5 % or less after 2036) and the first-oil year that maximises P50 value, which is later than the earliest technical date.

Idea register schema

One row per idea; keep it in the task folder and in results.json (key_results.idea_register).

FieldContent
id, domain, titleStable id, well/subsea/topside/system, one line
mechanism, constraint_relievedPhysical reason, the binding constraint and years
upliftOil, gas and liquid volume or acceleration per year, low/base/high
scopeWhat is installed or changed, shutdown needed (yes/no, days), interfaces
cost_classAACE class with range; neqsim-equipment-cost-estimation, ProcessCostEstimate
emissionsChange in power, flaring and fuel as kg CO2e per Sm3 oil equivalent and absolute; EmissionsTracker
hseExposure change: lifting and shutdown hours, new hydrocarbon inventory, new rotating equipment, ESD or relief impact. Use a 1-5 rating and a one-line reason
valueNPV or value per unit cost with the discount rate, price and profile stated
maturityConcept status, TRL, evidence in hand, evidence missing
interactionsIdeas it adds to, overlaps with, or blocks
stage, next_stepPipeline stage and the one action that moves it

Score on the five criteria (scope, cost, emissions, HSE, value) with stated weights, and show the ranking under at least two weight sets so a reader can see whether it is stable.

Maturation pipeline

StageMeaningExit test
0 IdeaNamed, no evidenceMechanism and constraint identified
1 ScreenedModelled, scored, Class 5 costPositive value in base case, no HSE showstopper
2 Asset-validatedAsset confirms limits, shutdown windows and design marginsLocal knowledge recorded as evidence
3 Concept studyFEL-1 study with Class 4 estimateValue robust to low case
4 Modification project or new featureHanded to the ownerFunding route and owner named
Parked / killedReason recordedRevisit trigger stated

Typical stage-2 questions for the asset: measured design margins, vendor datasheet case, planned turnaround dates, installed spare slots, power headroom, past debottlenecking scope, and well-test evidence for completion ideas.

Host readiness for future tie-ins

After the lever runs, report for each year and constraint: remaining ullage on oil, gas, water, power and the unit that binds. Hand the result to TieInCapacityPlanner or the area-development workflow with the capacity basis and plan version. State which ideas must be installed before a given tie-in and which only add margin.

Deliverables

  • Constraint map and binding sequence on the year grid, with the limit basis per constraint.
  • Lever results per idea and for the top combinations.
  • The idea register, the ranking under two weight sets and the pipeline view.
  • Host ullage table.
  • Assumptions, data gaps, and a list of asset questions. Fill results.json assumptions, data_gaps and agent_workflow_plan.

Related skills

  • neqsim-capacity-and-utilization-analysis - constraints, snapshots, tie-in bottleneck study.
  • neqsim-integrated-production-and-lifecycle - well deliverability, gas-lift allocation, tie-in planner, lifecycle.
  • neqsim-subsea-and-wells - subsea equipment, well design, SURF cost.
  • neqsim-field-development and neqsim-field-economics - concept comparison and NPV.
  • neqsim-equipment-cost-estimation - AACE-class cost.
  • neqsim-optimization-and-doe and neqsim-agentic-process-optimization - search and closed-loop setpoints.
  • neqsim-professional-reporting - how the result is written up.

Gated concepts and allowable CAPEX (design-to-cost)

For re-use concepts (slot recovery, satellites on existing templates, re-use of hardware) the value depends on availability gates: line or umbilical capacity, slot fitness, spare hardware. Model each gate as a Bernoulli draw with a named fallback concept (and a delay), report the NPV distribution unconditionally and conditional on the gates passing, and include the gate as a pass/fail swing in the tornado. For design-to-cost, bisect a CAPEX scale factor on fixed Monte Carlo draws until the P50 NPV is zero (and the 30th percentile zero for a 70 % chance of positive value), and report the allowable CAPEX, the required cut and the break-even EUR per well. Worked example: the HEP reset task (task_solve, 2026-10-09 HEP VPbo): template concepts need 29-37 % lower CAPEX while slot-recovery sidetracks are positive when the line and slot gates pass.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.