CtrlK
BlogDocsLog inGet started
Tessl Logo

officecli-financial-model

Use this skill when the user wants to build a financial model — 3-statement model, DCF valuation, LBO, SaaS unit economics, sensitivity / scenario analysis, debt schedule, or fundraising projections — in Excel. Trigger on: 'financial model', '3-statement model', 'P&L + BS + CF', 'DCF', 'WACC', 'NPV', 'terminal value', 'LBO', 'debt schedule', 'cash sweep', 'MOIC', 'IRR / XIRR', 'sensitivity table', 'scenario analysis', 'ARR model', 'unit economics', 'CAC / LTV', 'cap table forecast'. Output is a single formula-driven .xlsx. This skill is a scene layer on top of officecli-xlsx — it inherits every xlsx v2 rule (4-color code, visual floor, number formats, cache-drift, Known Issues, Delivery Gate minimum cycle). DO NOT invoke for a simple budget tracker, CSV dump, or operational KPI sheet — route those to officecli-xlsx base.

74

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Critical

Do not install without reviewing

SKILL.md
Quality
Evals
Security

Quality

Content

85%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, highly executable skill body with excellent workflow sequencing, pervasive validation gates, and genuine token discipline (no finance-theory padding, base rules delegated by pointer). Its main weaknesses are monolithic single-file structure with no reference files for the three full recipes, and some repetition of the cache-drift and write-order material across sections.

Suggestions

Split the three recipes into one-level-deep reference files (e.g. references/recipe-3-statement.md, recipe-dcf.md, recipe-lbo.md), keeping an overview plus the core principles and gates in SKILL.md with clearly signaled links — this is the main gap versus an ideal progressive-disclosure structure.

Consolidate the cache-drift guidance (currently restated in core principle 6, §Build-order & cache-drift, Recipe A Step 7, Gate 5, and Known Issues) into one canonical section that other spots reference with a single pointer.

Merge the write-order warning in Recipe C Step 3 with the §Write-order surgery section to remove the duplicated deadlock explanation.

DimensionReasoningScore

Conciseness

The body is disciplined for its complexity — it explicitly refuses to re-teach finance theory ('runnable skeleton, not finance theory', 'Terse reference — not a finance textbook') and delegates base xlsx rules by pointer rather than restating them. However, the cache-drift rule is restated ~5 times (core principle 6, §Build-order & cache-drift, Step 7, Gate 5, Known Issues) and the write-order/deadlock warning appears both in Recipe C Step 3 and its own section, so it sits at the 4 anchor ('efficient; minor instances of over-explanation that could be trimmed') rather than the lean 5.

4 / 5

Actionability

Fully executable throughout: complete heredoc batch commands, jq verification one-liners, executable gate scripts with REJECT branches, and exact prop names claimed help-verified. Placeholder row numbers ('substitute your row numbers') are explicitly justified ('the logic is the check, not the cell addresses'). Matches the 5 anchor ('fully executable; copy-paste ready code or commands; specific examples cover the common cases'); a 4 would need minor gaps, and none materially block execution.

5 / 5

Workflow Clarity

Each recipe has a MANDATORY build order with dependency rationale, and the delivery gates (4, 5, 6, 5b, 6.1) form explicit validation checkpoints with feedback loops — REJECT messages name the fix ('move to Assumptions', 're-set after close (see §Build-order & cache-drift)'). This matches the 5 anchor ('clear sequence with explicit validation steps; feedback loops for error recovery'); the batch-operation cap at 3 does not apply because validation is pervasive.

5 / 5

Progressive Disclosure

No bundle files exist (no references/, scripts/, or assets/), so the entire ~556-line body — three full recipes, gates, and a large Known Issues section — is inlined in SKILL.md when the recipes clearly belong in separate reference files. The xlsx-v2 pointers are clearly signaled, but that is a cross-skill dependency, not bundle organization. This matches the 3 anchor ('some structure but could be better organized; content that should be separate is inline') better than the 4 anchor, which requires most content to be appropriately placed in separate files.

3 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete capabilities, comprehensive natural trigger terms including acronyms and synonyms, explicit what/when, and an explicit reverse-routing clause that distinguishes it from the officecli-xlsx base skill. The only minor nit is the inherited-rules enumeration, which is informational rather than a capability, but it does not dilute the trigger or routing clarity.

DimensionReasoningScore

Specificity

The description enumerates multiple concrete deliverable types ('3-statement model, DCF valuation, LBO, SaaS unit economics, sensitivity / scenario analysis, debt schedule, or fundraising projections'), states the output artifact ('Output is a single formula-driven .xlsx'), and gives explicit routing boundaries. It matches the anchor 'lists multiple specific concrete actions; comprehensive coverage'; a 4 would require minor coverage gaps, and none are apparent for the financial-modeling domain.

5 / 5

Completeness

It explicitly answers both what ('build a financial model — [types] — in Excel. Output is a single formula-driven .xlsx') and when ('Use this skill when the user wants to... Trigger on: ...'), plus negative scope ('DO NOT invoke for a simple budget tracker, CSV dump, or operational KPI sheet'). This is the 5 anchor ('clearly and explicitly answers both what AND when with concrete trigger phrases'); a 4 would have a weaker 'when', which is not the case.

5 / 5

Trigger Term Quality

Trigger terms are extensive and natural — 'financial model', 'DCF', 'WACC', 'NPV', 'terminal value', 'LBO', 'debt schedule', 'cash sweep', 'MOIC', 'IRR / XIRR', 'sensitivity table', 'ARR model', 'CAC / LTV', 'cap table forecast' — covering synonyms, function names, and acronyms a user would actually say. This matches the 5 anchor ('comprehensive coverage of natural terms including synonyms'); a 4 would leave natural terms missing, and none are.

5 / 5

Distinctiveness Conflict Risk

It carves a clear niche ('scene layer on top of officecli-xlsx') and explicitly routes the overlapping cases away ('route those to officecli-xlsx base'), so conflict risk with the closely related base skill is minimized. Matches the 5 anchor ('clear niche with distinct triggers; minimal conflict risk'); a 4 would carry minor unresolved overlap, but the DO-NOT-INVOKE clause resolves it.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (561 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository
iOfficeAI/OfficeCLI
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.