Agent skill
dcf-valuation
Performs discounted cash flow (DCF) valuation analysis to estimate intrinsic value per share. Triggers when user asks for fair value, intrinsic value, DCF, valuation, "what is X worth", price target, undervalued/overvalued analysis, or wants to compare current price to fundamental value.
Install this agent skill to your Project
npx add-skill https://github.com/virattt/dexter/tree/main/src/skills/dcf
SKILL.md
DCF Valuation Skill
Workflow Checklist
Copy and track progress:
DCF Analysis Progress:
- [ ] Step 1: Gather financial data
- [ ] Step 2: Calculate FCF growth rate
- [ ] Step 3: Estimate discount rate (WACC)
- [ ] Step 4: Project future cash flows (Years 1-5 + Terminal)
- [ ] Step 5: Calculate present value and fair value per share
- [ ] Step 6: Run sensitivity analysis
- [ ] Step 7: Validate results
- [ ] Step 8: Present results with caveats
Step 1: Gather Financial Data
Call the get_financials tool with these queries:
1.1 Cash Flow History
Query: "[TICKER] annual cash flow statements for the last 5 years"
Extract: free_cash_flow, net_cash_flow_from_operations, capital_expenditure
Fallback: If free_cash_flow missing, calculate: net_cash_flow_from_operations - capital_expenditure
1.2 Financial Metrics
Query: "[TICKER] financial metrics snapshot"
Extract: market_cap, enterprise_value, free_cash_flow_growth, revenue_growth, return_on_invested_capital, debt_to_equity, free_cash_flow_per_share
1.3 Balance Sheet
Query: "[TICKER] latest balance sheet"
Extract: total_debt, cash_and_equivalents, current_investments, outstanding_shares
Fallback: If current_investments missing, use 0
1.4 Analyst Estimates
Query: "[TICKER] analyst estimates"
Extract: earnings_per_share (forward estimates by fiscal year)
Use: Calculate implied EPS growth rate for cross-validation
1.5 Current Price
Call the get_market_data tool:
Query: "[TICKER] price snapshot"
Extract: price
1.6 Company Facts
Call the get_financials tool:
Query: "[TICKER] company facts"
Extract: sector, industry, market_cap
Use: Determine appropriate WACC range from sector-wacc.md
Step 2: Calculate FCF Growth Rate
Calculate 5-year FCF CAGR from cash flow history.
Cross-validate with: free_cash_flow_growth (YoY), revenue_growth, analyst EPS growth
Growth rate selection:
- Stable FCF history → Use CAGR with 10-20% haircut
- Volatile FCF → Weight analyst estimates more heavily
- Cap at 15% (sustained higher growth is rare)
Step 3: Estimate Discount Rate (WACC)
Use the sector from company facts to select the appropriate base WACC range from sector-wacc.md.
Default assumptions:
- Risk-free rate: 4%
- Equity risk premium: 5-6%
- Cost of debt: 5-6% pre-tax (~4% after-tax at 30% tax rate)
Calculate WACC using debt_to_equity for capital structure weights.
Reasonableness check: WACC should be 2-4% below return_on_invested_capital for value-creating companies.
Sector adjustments: Apply adjustment factors from sector-wacc.md based on company-specific characteristics.
Step 4: Project Future Cash Flows
Years 1-5: Apply growth rate with 5% annual decay (multiply growth rate by 0.95, 0.90, 0.85, 0.80 for years 2-5). This reflects competitive dynamics.
Terminal value: Use Gordon Growth Model with 2.5% terminal growth (GDP proxy).
Step 5: Calculate Present Value
Discount all FCFs → sum for Enterprise Value → subtract Net Debt → divide by outstanding_shares for fair value per share.
Step 6: Sensitivity Analysis
Create 3×3 matrix: WACC (base ±1%) vs terminal growth (2.0%, 2.5%, 3.0%).
Step 7: Validate Results
Before presenting, verify these sanity checks:
-
EV comparison: Calculated EV should be within 30% of reported
enterprise_value- If off by >30%, revisit WACC or growth assumptions
-
Terminal value ratio: Terminal value should be 50-80% of total EV for mature companies
- If >90%, growth rate may be too high
- If <40%, near-term projections may be aggressive
-
Per-share cross-check: Compare to
free_cash_flow_per_share × 15-25as rough sanity check
If validation fails, reconsider assumptions before presenting results.
Step 8: Output Format
Present a structured summary including:
- Valuation Summary: Current price vs. fair value, upside/downside percentage
- Key Inputs Table: All assumptions with their sources
- Projected FCF Table: 5-year projections with present values
- Sensitivity Matrix: 3×3 grid varying WACC (±1%) and terminal growth (2.0%, 2.5%, 3.0%)
- Caveats: Standard DCF limitations plus company-specific risks
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
x-research
X/Twitter public sentiment research. Searches X for real-time perspectives, market sentiment, expert opinions, breaking news, and community discourse. Use when: user asks "what are people saying about", "X/Twitter sentiment", "check X for", "search twitter for", "what's CT saying about", or wants public opinion on a stock, sector, company, or market event.
setup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
edit-article
Edit and improve articles by restructuring sections, improving clarity, and tightening prose. Use when user wants to edit, revise, or improve an article draft.
scaffold-exercises
Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.
obsidian-vault
Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.
git-guardrails-claude-code
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.
Didn't find tool you were looking for?