evaluate-pension
This skill should be used when the user asks to "evaluate pension", "analyze pension", "review pension plan", "compare pension alternatives", "check pension fees", "pension cost analysis", "should I cancel my pension", "is my Riester worth it", or "pension surrender value". Analyzes private pension plans for cost-efficiency, projected returns, and compares against alternatives in the German financial system.
What this skill does
# Evaluate Pension
Analyze the current private pension plan for cost-efficiency, projected returns, and compare against alternatives available in Germany. Produce a comprehensive evaluation report that enables informed decision-making about pension optimization.
Load `${CLAUDE_PLUGIN_ROOT}/skills/financial-analysis/references/german-financial-system.md` for detailed German tax parameters, pension system overview, and regulatory context.
## Step 1: Gather Pension and Employment Data
Read the pension data file at `finance/data/pension.md`. Extract all available details:
- **Provider** (e.g., Allianz, ERGO, Deutsche Rentenversicherung Bund)
- **Plan type**: Riester-Rente, Rürup-Rente (Basisrente), private Rentenversicherung, fondsgebundene Rentenversicherung, betriebliche Altersvorsorge (bAV)
- **Monthly/annual contribution amount**
- **Fee structure**: Abschlusskosten (acquisition costs), Verwaltungskosten (administration fees), Fondskosten / TER (total expense ratio for fund-linked products), Wechselkosten (switching costs)
- **Contract start date and remaining term**
- **Current contract value** (Rückkaufswert / surrender value)
- **Guaranteed capital** (Garantiekapital) and guaranteed interest rate (Garantiezins)
- **Projected payout**: provider's optimistic and conservative scenarios
- **Fund allocation** (for fondsgebundene products): which funds, what allocation
Read the employment data file at `finance/data/employment.md`. Extract:
- **Gross annual salary** (Bruttojahresgehalt) for contribution ceiling calculations
- **Tax bracket** (Steuerklasse) and marginal tax rate
- **Employer pension contributions** (Arbeitgeberzuschuss) if applicable
- **Employment status** (angestellt, selbstständig, verbeamtet) as this affects eligibility for Riester/Rürup
If either file is missing or incomplete, note the gaps explicitly in the report and proceed with available data. Flag missing data points as assumptions.
## Step 2: Research Current Market Benchmarks
Perform web searches to gather up-to-date comparison data:
1. Search for "beste Riester-Rente Vergleich aktuell" or the equivalent for the identified plan type to find current top-rated comparable products and their fee structures.
2. Search for "MSCI World ETF 10-Jahres-Rendite" to obtain the current 10-year annualized return of broad market index ETFs.
3. Search for "günstigste ETF Rentenversicherung Deutschland" (e.g., myPension, fairr, ETF Rürup) to find low-cost pension wrapper alternatives.
4. Search for "Scalable Capital Trade Republic Sparplan Kosten" to get current broker fee structures for self-directed ETF investing.
5. Search for "Sparerpauschbetrag aktuell" and "Kapitalertragsteuer Deutschland" to confirm current tax-free allowances and capital gains tax rates.
Record all sources with URLs for citation in the report.
## Step 3: Calculate Total Cost Drag
Compute the cumulative impact of fees on the pension plan's performance over the remaining investment horizon:
1. Determine remaining years to retirement: assume retirement age 67 unless the pension data specifies otherwise. Calculate `years_remaining = 67 - current_age`.
2. Calculate **annual cost ratio**: sum all recurring fees (Verwaltungskosten + TER + any percentage-based charges) as a single annual percentage of assets.
3. Calculate **upfront cost impact**: determine what portion of Abschlusskosten has already been paid (typically spread over first 5 years via Zillmerung) and what remains.
4. Model the **cost drag over the full period**:
- Project the portfolio value WITH current fees applied annually.
- Project the portfolio value WITHOUT fees (gross return only).
- The difference is the total cost drag in euros.
5. Express the cost drag as: total euros lost to fees, percentage of final portfolio value sacrificed, and equivalent monthly pension reduction.
Use a moderate 7% gross return assumption for the base case. Show sensitivity at 5% and 9%.
## Step 4: Compare Against Alternatives
Build a projection comparison across three scenarios. For each scenario, model monthly contributions equal to the current pension contribution amount.
### Scenario A: Current Pension Plan
Use the provider's projected returns. Also calculate an independent projection using realistic return assumptions minus the plan's actual fee load.
### Scenario B: Low-Cost Pension Wrapper
Model a low-cost ETF-based pension product (e.g., ETF Rürup via myPension or fairr, or Nettopolice Rentenversicherung). Typical fee structure: 0.3%-0.6% total annual cost including ETF TER. Apply the same gross return assumptions.
### Scenario C: Self-Directed ETF Portfolio
Model a DIY approach via a German neo-broker:
- Assume a globally diversified ETF portfolio (e.g., MSCI World or FTSE All-World).
- TER: 0.07%-0.22% annually.
- No additional wrapper fees.
- Include transaction costs if applicable (most Sparpläne are free at Trade Republic/Scalable Capital).
For all three scenarios, calculate and display:
- Portfolio value at 10, 20, and 30 years (or remaining years to retirement, whichever is less).
- Total contributions paid over each period.
- Total fees paid over each period.
- Projected monthly pension payout (for insurance products, use a standard annuity factor; for ETF portfolios, use the 4% safe withdrawal rate as a reference).
## Step 5: Evaluate Tax Treatment
Analyze the tax implications for each scenario. For detailed calculation methodology — Riester-Rente Grundzulage/Kinderzulage math, Rürup-Rente deductibility percentages, Private Rentenversicherung Ertragsanteilbesteuerung rates, and ETF Teilfreistellung calculations — load `references/pension-tax-treatment.md`.
Key tax characteristics per scenario:
- **Riester-Rente**: State subsidies (Grundzulage + Kinderzulage) plus Sonderausgabenabzug up to 2,100 EUR/year; fully taxed at personal rate in retirement.
- **Rürup-Rente**: ~100% deductible contributions (up to ~27,566 EUR single in 2025); taxable payout portion rises to 100% by 2058.
- **Private Rentenversicherung**: No contribution deductibility; favourable Ertragsanteilbesteuerung in payout phase (e.g., 18% taxable share at age 67).
- **Self-Directed ETF**: Vorabpauschale during accumulation; 26.375% Kapitalertragsteuer on withdrawal with 30% Teilfreistellung for equity ETFs (effective ~18.46%).
Summarize the tax comparison in a table showing effective tax rates for each option during accumulation and payout phases.
## Step 6: Assess Switching Feasibility
Evaluate whether changing the current pension arrangement is practical:
1. **Surrender value** (Rückkaufswert): Compare against total contributions paid. If the surrender value is significantly below contributions, calculate the realized loss from cancellation.
2. **Anbieterwechsel** (provider switch): Determine if the plan type allows transferring to a different provider without cancellation (Riester plans allow this; most private Rentenversicherungen do not).
3. **Beitragsfreistellung** (paid-up status): Evaluate making the plan paid-up (stopping contributions) while keeping the existing contract value invested. Compare the outcome of redirecting future contributions to a lower-cost alternative versus continuing the current plan.
4. **Penalty clauses**: Identify any early termination penalties, Stornoabzug, or other contractual costs.
5. **Timing considerations**: Note if the contract is past the Zillmerung period (typically 5 years), as cancellation becomes less costly after upfront fees have been fully charged.
Provide a clear recommendation: cancel, switch provider, make paid-up and redirect, or continue.
## Step 7: Generate the Evaluation Report
Create the output file at `finance/reports/pension-evaluation-YYYY-MM.md`, replacing YYYY-MM with the current year and month. Structure the report as follows:
```markdown
---
title: "Pension Plan Evaluation"
date: YYYY-MM-DD
type: pension-evaluation
status: draft
pension-provider: "[provider name]"
pension-type: "[plan type]Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.