Install
$ agentstack add skill-natan-mohart-24-strategy-skills-for-claude-business-case-builder ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Business Case Builder
When to use
Use whenever an initiative needs a funding decision and the "case" so far is a single optimistic revenue line with no downside scenario, no discount rate, and no stated conditions for success. Also use to stress-test someone else's business case before approving it.
What it does
Builds a driver-based (not top-line-only) economic model: revenue, cost structure, and investment broken into their actual drivers, run through the bundled NPV/IRR calculator, and stress-tested with a real sensitivity grid across revenue and discount-rate assumptions — producing not just a number, but the conditions under which that number holds.
Method
- Decompose revenue into real drivers, not a single top-line growth assumption: volume × price, or customers × ARPU × retention — whichever actually governs this business. A one-line revenue forecast is not a model, it's a guess with decimals.
- Decompose cost into COGS (variable, scales with revenue) and opex (largely fixed in the near term) by year, and be explicit about which costs actually scale and which don't — this is where most hand-built cases quietly overstate margin improvement.
- State the initial investment fully: capex, working capital, and one-time launch costs, not just the visible capex line.
- Run the bundled calculator (
scripts/npv_case.py) with a JSON config of discount rate, initial investment, and per-year revenue/COGS%/opex. It returns annual cash flows, NPV, IRR (via bisection, no external dependencies), and payback period. - Generate the sensitivity grid (built into the same script): NPV across a range of revenue swings and discount-rate swings. This is the step that turns a single confident number into an honest range.
- Read the grid for the breakeven condition: find the combination of revenue shortfall and discount rate at which NPV turns negative — that is the real risk boundary of the case, and it should be stated explicitly, not buried in an appendix.
- State the conditions required for the case to hold in plain language: "this case requires revenue to reach at least X% of plan by year 2, and holds at discount rates up to Y%" — tied directly to the sensitivity grid, not a vague "assumptions may vary" disclaimer.
Inputs
- Revenue drivers (volume, price, or customers/ARPU/retention) by year
- COGS % and opex by year
- Initial investment (capex + working capital + one-time costs)
- Discount rate (company's cost of capital or hurdle rate)
- Config saved as JSON matching the format documented at the top of
scripts/npv_case.py
Output format
Annual cash flow table; NPV, IRR, payback period; the revenue × discount-rate NPV sensitivity grid; a plain-language statement of the conditions required for the case to hold, anchored to where the grid turns negative.
Example
An initiative shows a headline NPV of $3.35M at a 10% discount rate. The sensitivity grid shows NPV stays positive even at -20% revenue and +2pt discount rate — a genuinely robust case. A second initiative shows a similar headline NPV but turns negative at -10% revenue, meaning it only works if the plan is hit almost exactly — a much weaker case that looked identical before the grid was run.
Common pitfalls
- Presenting a single-point NPV with no sensitivity, which hides how fragile the case actually is.
- Modeling revenue as one growth-rate line instead of real volume/price or customer/ARPU drivers.
- Leaving out working capital or one-time costs from the initial investment, overstating the return.
- Choosing a discount rate that flatters the case instead of using the company's actual cost of capital.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Natan-Mohart
- Source: Natan-Mohart/24-strategy-skills-for-claude
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.