scenario-model
Skill2 starsChanged 4 months agoMITView on GitHub
Build financial scenario models for cost-out initiatives — Conservative/Base/Stretch with FY26–28 phasing, sensitivity table, and Excel workbook output.
In this repository37 other files it gives its agents.
- commercial-insightSkill
- data-requestSkill
- duckdbSkill
- intelligence-internal-commsSkill
- market-intelSkill
- sql-reviewSkill
- xlsxSkill
- docxSkill
- pdfSkill
- pptxSkill
- theme-factorySkill
- utility-markitdownSkill
- thinkcellSkill
- clevel-reviewSkill
- exec-commsSkill
- partner-reviewSkill
- working-constructSkill
- route-taskSkill
- pm-customer-journeySkill
- pm-exec-onboardingSkill
- pm-problem-statementSkill
- pm-proto-personaSkill
- pm-storyboardSkill
- pm-user-storySkill
- kanban-curateSkill
- epic-builderSkill
- exec-summarySkill
- steerco-packSkill
- program-trackerSkill
- weekly-reviewSkill
- book-deskSkill
- draw-excalidraw-diagramSkill
- mcp-builderSkill
- notion-workboardSkill
- smartsheetSkill
- utility-transcribeSkill
- writing-humanizerSkill
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 9 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
When Jacob has identified a cost lever and wants to quantify the range of outcomes
- Distinctive: line 29
Do not proceed to Step 2 until cost base and lever type are confirmed.
- Distinctive: line 42
Never present a single number — always a range (Conservative to Stretch)
- Distinctive: line 74
All cells formula-driven. Reference the cost base input cell — do not hardcode.
- Distinctive: line 80
ALWAYS invoke the davila7-xlsx skill pattern: Never use raw openpyxl without the skill.
- Very specific: line 99
All savings cells use formulas (e.g.
- Very specific: line 114
Use Excel formulas — =SUM(), =AVERAGE(), =cell_ref * pct_ref — never hardcode computed values
- Very specific: line 118
Run recalc.py to verify zero formula errors before delivery if available
- Distinctive: line 136
Always use Excel formulas — never hardcode computed values
- Distinctive: line 137
Verify assumptions with Jacob before generating the workbook — ask if not provided
- Distinctive: line 138
Never present a single savings number — always Conservative to Stretch range
- Distinctive: line 142
If cost base is unknown, ask Jacob or mark as "requires data" — do not guess
≈ “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.
Files
Scenario Model Skill
Purpose
Build financial scenario models for cost productivity initiatives. Takes a cost lever and models Conservative/Base/Stretch outcomes with phasing across FY26–28. Output is always an Excel workbook with formulas — never hardcoded computed values.
Trigger Phrases
- "model this", "scenario model", "what's the upside/downside", "size the opportunity"
- "how much could we save", "build a business case model", "financial model for [initiative]"
- When Jacob has identified a cost lever and wants to quantify the range of outcomes
Execution Steps
Step 1 — Define the Lever
Confirm the following before proceeding. If any are missing, ask Jacob directly:
- What is being optimised? (e.g. payment terms, vendor consolidation, travel policy, headcount)
- What is the current cost base? Annual run-rate in AUD. If unknown, flag as "requires data".
- What are the available levers? Rate / volume / mix / policy / process
- What data exists? The spend cube, data request outputs, or provided in conversation
- What is the initiative timeline? Any known constraints on FY26 landing (contracts, systems, approvals)
Do not proceed to Step 2 until cost base and lever type are confirmed.
Step 2 — Build the Scenario Table
Three scenarios, each with stated assumptions:
| Scenario | Description | Saving % | What has to be true |
| Conservative | Minimum credible outcome — quick wins only | X% | [specific assumptions] |
| Base Case | Realistic outcome with normal execution | Y% | [specific assumptions] |
| Stretch | Best case with full execution and tailwinds | Z% | [specific assumptions] |
- Never present a single number — always a range (Conservative to Stretch)
- Separate one-off savings from recurring (annualised) savings
- Assumptions not confirmed by Jacob must be flagged as "⚠ Unverified"
Step 3 — Phase Across Financial Years
Apply the following phasing logic (adjust if Jacob provides initiative-specific timelines):
| Lever Type | FY26 | FY27 | FY28 |
| Quick wins (policy enforcement, payment timing) | 100% | 100% | 100% |
| Negotiations (vendor consolidation, rate reduction) | 50% | 100% | 100% |
| Structural (operating model, system changes) | 0% | 50% | 100% |
- FY26: What can land this year (~9 months remaining from July 2025)
- FY27: What requires structural change (contracts, systems, policy)
- FY28: Full run-rate once changes are embedded
Step 4 — Sensitivity Table
Show outcomes at 5%, 10%, 15%, 20%, 25% reduction on the cost base:
| Saving % | Annual Saving ($) | 3-Year Cumulative ($) | % of FY26 target | % of 3-year target |
| 5% | ||||
| 10% | ||||
| 15% | ||||
| 20% | ||||
| 25% |
All cells formula-driven. Reference the cost base input cell — do not hardcode.
Step 5 — Generate Excel Workbook
ALWAYS invoke the davila7-xlsx skill pattern. Never use raw openpyxl without the skill.
Venv: <workspace>/.venv
Logo: Template/logo.png (brand-adaptable, bring your own asset)
Save to: 4 - Projects/[initiative-name]/[YYMMDD]_Scenario_Model_[name].xlsx
Workbook Structure (4 tabs)
Tab 1 — Cover
- Company logo top-left (white/no-fill header band, do not use a dark band behind logo)
- Report title, large navy text
- Synopsis: max 2 sentences — state the initiative and how the model was built. Then dot points for key findings.
- Assumptions: listed in full. Mark unverified assumptions with "⚠ Unverified".
- Tab guide: one-line description per sheet
Tab 2 — Scenario Model Columns: Cost Base | Saving % | Annual Saving $ | FY26 Phased | FY27 Phased | FY28 Phased | 3-Year Cumulative
- One row per scenario: Conservative / Base Case / Stretch
- All savings cells use formulas (e.g.
=cost_base * saving_pct) - Phased columns reference the lever type phasing percentages as named cells or a lookup
- Assumptions block below the table — label each one, mark unverified
Tab 3 — Sensitivity
- Matrix: saving % rows (5%–25%) × metric columns (Annual $, 3-Year Cumulative, % of target, % of 3-year)
- Single input cell for cost base at top of sheet — all formulas reference it
- Highlight the Base Case row
Tab 4 — Phasing
- Waterfall / build view: FY26 → FY27 → FY28 run-rate
- Split by lever type (Quick Win / Negotiation / Structural)
- Show cumulative savings build across 3 years per scenario
Formula & Quality Rules
- Use Excel formulas —
=SUM(),=AVERAGE(),=cell_ref * pct_ref— never hardcode computed values - Named ranges for key inputs: cost base, saving percentages, phasing factors
- Currency format:
$#,##0(no decimals) for all dollar cells - Percentage format:
0%for all rate cells - Run
recalc.pyto verify zero formula errors before delivery if available
Company Context
| Field | Value |
| Company | A large ASX-listed infrastructure services enterprise (~$6B revenue, ~35,000 people) |
| Cost program | 8 figure FY26 / 9 figure 3-year |
| Currency | AUD — formatted $#,##0 (no decimals) |
| Brand | Brand-adaptable output (bring your own theme) |
| No | Pie charts, 3D effects, WordArt |
Rules
- Always use Excel formulas — never hardcode computed values
- Verify assumptions with Jacob before generating the workbook — ask if not provided
- Never present a single savings number — always Conservative to Stretch range
- Separate one-off savings from recurring (annualised) savings
- Phase realistically — do not assume everything lands in FY26
- Flag unverified assumptions with "⚠ Unverified" on the cover sheet
- If cost base is unknown, ask Jacob or mark as "requires data" — do not guess
- Append a dated entry to
4 - Projects/[initiative-name]/log.mdon completion
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
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.

