.claude/skills/guardrails/SKILL.md
# Skill: Guardrails Awareness ## Purpose Ensure that every success metric is paired with at least one guardrail metric, and that positive findings are checked for trade-offs before being presented as wins. ## When to Use Apply this skill in two situations: 1. **When defining metrics** — after using the Metric Spec skill, check whether the metric has a guardrail pair 2. **When reporting positive findings** — before presenting any improvement, check whether a related guardrail metric degraded #
npx skillsauth add ai-analyst-lab/ai-analyst .claude/skills/guardrailsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Ensure that every success metric is paired with at least one guardrail metric, and that positive findings are checked for trade-offs before being presented as wins.
Apply this skill in two situations:
A guardrail metric is a metric you don't want to degrade while optimizing a success metric. Guardrails protect against winning the metric game while losing the business game.
SUCCESS METRIC: The metric you're trying to improve
GUARDRAIL: The metric that must not get worse
The rule: Never celebrate an improvement on a success metric without checking its guardrail(s). An improvement with a degraded guardrail is a trade-off, not a win.
| Success Metric | Guardrail(s) | Why | |---------------|-------------|-----| | Conversion rate | Average order value, Return rate | Aggressive discounts inflate conversion but erode margin and invite returns | | Signup rate | Activation rate, 7-day retention | Lowering the signup bar brings in unqualified users who churn immediately | | Revenue per user | User satisfaction (NPS/CSAT), Support ticket volume | Monetization pressure degrades experience | | Feature adoption | Core workflow completion, Session duration | Forcing feature usage may disrupt existing workflows | | Time to complete (speed) | Error rate, Quality score | Rushing degrades accuracy | | Cost reduction | Quality, Customer satisfaction | Cutting costs can degrade service | | Engagement (DAU, sessions) | Revenue per user, Churn rate | Engagement tricks (notifications, dark patterns) don't translate to value | | Support resolution time | Customer satisfaction, Reopen rate | Fast close ≠ good close if tickets reopen |
After specifying a metric using the Metric Spec skill, add a guardrail section:
### Guardrails
| Guardrail Metric | Acceptable Range | Check Frequency |
|-----------------|-----------------|-----------------|
| [guardrail 1] | [must stay above X / must not increase by >Y%] | [same cadence as success metric] |
| [guardrail 2] | [threshold] | [cadence] |
Rules for selecting guardrails:
Before presenting any statement like "[metric] improved by X%," run this check:
GUARDRAIL CHECK
□ Identified guardrail metric(s) for [success metric]
□ Computed guardrail metric(s) over the same time period
□ Compared guardrail to baseline / acceptable range
□ Result: [CLEAR / TRADE-OFF / DEGRADED]
Verdicts:
| Verdict | Guardrail Status | How to Present | |---------|-----------------|----------------| | CLEAR | Guardrail stable or improved | Present the improvement as a win | | TRADE-OFF | Guardrail slightly degraded (<10% relative) | Present the improvement AND the trade-off: "Conversion improved 15%, but AOV decreased 5%. Net revenue impact is +8%." | | DEGRADED | Guardrail significantly degraded (>10% relative) | Do NOT present as a win. Present as: "Conversion improved 15%, but return rate doubled. The net impact may be negative — further investigation needed." |
When a guardrail is degraded:
When guardrails are checked, add this section to the analysis report:
## Guardrail Check
| Success Metric | Change | Guardrail | Change | Verdict |
|---------------|--------|-----------|--------|---------|
| [metric] | +X% | [guardrail 1] | [no change / +Y% / -Z%] | CLEAR / TRADE-OFF / DEGRADED |
| | | [guardrail 2] | [change] | [verdict] |
**Net assessment:** [The improvement is real / The improvement comes with a trade-off / The improvement may be net negative]
## Guardrail Check
| Success Metric | Change | Guardrail | Change | Verdict |
|---------------|--------|-----------|--------|---------|
| Checkout conversion | +12% | Avg order value | +2% (stable) | CLEAR |
| | | Return rate | -1% (improved) | CLEAR |
**Net assessment:** The conversion improvement is a genuine win. Both guardrails are stable or improving.
## Guardrail Check
| Success Metric | Change | Guardrail | Change | Verdict |
|---------------|--------|-----------|--------|---------|
| Signup rate | +25% | 7-day activation | -8% | TRADE-OFF |
| | | 30-day retention | -3% (within normal range) | CLEAR |
**Net assessment:** The signup rate improvement is partially offset by lower activation. The new signups are less qualified. Recommend segmenting the new signups to identify which acquisition channel is bringing lower-quality users.
## Guardrail Check
| Success Metric | Change | Guardrail | Change | Verdict |
|---------------|--------|-----------|--------|---------|
| Resolution time | -40% (faster) | Reopen rate | +85% | DEGRADED |
| | | CSAT score | -22% | DEGRADED |
**Net assessment:** The faster resolution time is coming at the cost of quality. Tickets are being closed prematurely and reopened, and customer satisfaction has dropped significantly. This is NOT a net improvement. Recommend reverting the process change and investigating sustainable ways to reduce resolution time.
testing
# Skill: {{BLANK_1_SKILL_NAME}} ## Purpose {{BLANK_2_WHEN_TO_FIRE}} ## When to Use Fires automatically when the user asks Claude to do something that matches the trigger condition above. ## Instructions 1. Detect the trigger condition 2. Execute your guardrail check 3. If the check matters, print a clear, visible warning with "{{BLANK_3_SIGNATURE_PHRASE}}" as the first line 4. Continue with the analysis, incorporating the warning into the output ## Anti-Patterns - Do not fire when the condit
development
# Skill: Visualization Patterns ## Purpose Ensure every chart Claude Code produces follows high-quality design standards with named themes, consistent styling, and clear data communication. ## When to Use Apply this skill whenever generating a chart, graph, or data visualization. Always apply the active theme unless the user specifies otherwise. Default theme: `minimal`. ## Instructions ### Pre-flight: Load Learnings Before executing, check `.knowledge/learnings/index.md` for relevant entrie
development
# Skill: Triangulation / Sanity Check ## Purpose Cross-reference analytical findings against multiple data sources, external benchmarks, and common sense to catch errors before they become bad decisions. ## When to Use Apply this skill after every analysis, before presenting findings to stakeholders, and whenever a result seems surprising. If a finding would change a decision, it MUST be triangulated first. ## Instructions ### Triangulation Framework Every finding gets checked through four
data-ai
# Skill: Tracking Gap Identification ## Purpose Assess whether the data needed for an analysis actually exists, identify what's missing, and produce prioritized instrumentation requests for engineering when gaps are found. ## When to Use Apply this skill after the Data Explorer agent inventories available data, when an analysis requires data that might not exist, or when initial query results suggest incomplete tracking. Run before committing to an analysis approach. ## Instructions ### Gap