Unified risk engine with VaR, stress testing, volatility regimes, and automated controls
57
48%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./src/skills/bundled/risk/SKILL.mdQuality
Discovery
32%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description identifies a clear financial risk management domain and names several specific techniques (VaR, stress testing, volatility regimes), which provides some distinctiveness. However, it reads as a tagline rather than a functional description—it lacks concrete action verbs describing what the skill does and entirely omits a 'Use when...' clause, making it difficult for Claude to know when to select this skill over others.
Suggestions
Add a 'Use when...' clause with explicit triggers, e.g., 'Use when the user asks about portfolio risk, Value at Risk calculations, stress test scenarios, or volatility analysis.'
Replace the noun-phrase style with concrete action descriptions, e.g., 'Calculates Value at Risk (VaR), runs stress test scenarios, detects volatility regime shifts, and applies automated risk controls.'
Include natural language variations of key terms such as 'value at risk', 'risk management', 'portfolio risk', 'risk metrics', and 'drawdown analysis' to improve trigger term coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (risk) and lists some specific capabilities (VaR, stress testing, volatility regimes, automated controls), but these are listed as brief noun phrases rather than concrete actions describing what the skill actually does with them. | 2 / 3 |
Completeness | Provides a partial 'what' (unified risk engine with listed features) but completely lacks any 'when' clause or explicit trigger guidance. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the 'what' is also weak enough to warrant a 1. | 1 / 3 |
Trigger Term Quality | Includes some relevant technical keywords like 'VaR', 'stress testing', 'volatility regimes' that a finance professional might use, but misses common variations and natural language terms users might say (e.g., 'value at risk', 'risk management', 'portfolio risk', 'risk analysis', 'drawdown'). | 2 / 3 |
Distinctiveness Conflict Risk | The combination of VaR, stress testing, and volatility regimes is fairly specific to financial risk management, which helps distinguish it, but 'automated controls' is vague and could overlap with other operational or compliance skills. Without explicit trigger conditions, overlap risk increases. | 2 / 3 |
Total | 7 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid API reference skill with excellent actionability — concrete, executable code examples cover every major feature. Its main weaknesses are its monolithic structure (everything in one large file rather than split into overview + detailed references) and the lack of explicit validation/feedback loops for critical risk management workflows. The content is mostly efficient but could trim some obvious best practices and redundant descriptions.
Suggestions
Split the detailed TypeScript API reference and configuration tables into separate files (e.g., API_REFERENCE.md, CONFIGURATION.md) and keep SKILL.md as a concise overview with links to each.
Add explicit validation steps for critical workflows — e.g., after configuring limits, verify with '/risk limits'; after kill switch recovery, confirm status with '/risk status' before resuming trading.
Trim the Best Practices section to only non-obvious, actionable guidance — items like 'Don't override — Respect the circuit breaker' and 'Start conservative' don't add value for Claude.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is fairly comprehensive but includes some unnecessary verbosity — the best practices section states obvious advice ('Don't override — Respect the circuit breaker'), and some tables repeat information already shown in code examples. However, most content is reference-worthy and not padded with explanations of basic concepts. | 2 / 3 |
Actionability | Excellent actionability throughout — every API section includes fully executable TypeScript code with realistic parameters, chat commands are copy-paste ready with clear syntax, and the validateTrade example shows both the success and failure paths with concrete field names and values. | 3 / 3 |
Workflow Clarity | The 10-step validation order is clearly documented with a summary table, and the recovery process has a clear sequence. However, there are no explicit validation checkpoints or feedback loops for critical operations like configuring limits, resetting after a kill switch, or verifying that risk engine initialization succeeded — important for a system managing financial risk. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear sections and headers, but it's a monolithic ~250-line file that could benefit from splitting the detailed API reference, stress test scenarios, and configuration tables into separate reference files. The chat commands, TypeScript API, and reference tables are all inline rather than appropriately distributed. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
e71a5f6
Table of Contents
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.