{"id":48908725,"url":"https://github.com/aojdevstudio/finance-guru","last_synced_at":"2026-04-16T22:03:58.050Z","repository":{"id":324144449,"uuid":"1079028084","full_name":"AojdevStudio/Finance-Guru","owner":"AojdevStudio","description":"Finance Guru™ - AI-powered family office system built on BMAD-CORE™ v6 architecture","archived":false,"fork":false,"pushed_at":"2026-03-13T18:54:18.000Z","size":30032,"stargazers_count":288,"open_issues_count":1,"forks_count":85,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-03-14T07:14:24.093Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AojdevStudio.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":"aojdevstudio","thanks_dev":null,"custom":null}},"created_at":"2025-10-18T23:50:19.000Z","updated_at":"2026-03-12T10:31:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/AojdevStudio/Finance-Guru","commit_stats":null,"previous_names":["aojdevstudio/finance-guru"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/AojdevStudio/Finance-Guru","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AojdevStudio%2FFinance-Guru","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AojdevStudio%2FFinance-Guru/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AojdevStudio%2FFinance-Guru/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AojdevStudio%2FFinance-Guru/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AojdevStudio","download_url":"https://codeload.github.com/AojdevStudio/Finance-Guru/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AojdevStudio%2FFinance-Guru/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31905896,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"ssl_error","status_checked_at":"2026-04-16T18:21:47.142Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-16T22:03:40.945Z","updated_at":"2026-04-16T22:03:58.026Z","avatar_url":"https://github.com/AojdevStudio.png","language":"Python","funding_links":["https://buymeacoffee.com/aojdevstudio"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/images/finance-guru-logo.png\" alt=\"Finance Guru Logo\" width=\"200\"/\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eFinance Guru™\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eStop juggling 10 browser tabs for financial analysis.\u003cbr\u003eOne command activates 8 AI specialists who work together as your private family office.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ossieirondi/family-office/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/ossieirondi/family-office?style=social\" alt=\"GitHub stars\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/ossieirondi/family-office/network/members\"\u003e\u003cimg src=\"https://img.shields.io/github/forks/ossieirondi/family-office?style=social\" alt=\"GitHub forks\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.python.org/downloads/\"\u003e\u003cimg src=\"https://img.shields.io/badge/python-3.12+-blue.svg\" alt=\"Python 3.12+\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://claude.ai/claude-code\"\u003e\u003cimg src=\"https://img.shields.io/badge/Claude%20Code-Powered-blueviolet\" alt=\"Claude Code\"\u003e\u003c/a\u003e\n  \u003ca href=\"#13-production-ready-analysis-tools\"\u003e\u003cimg src=\"https://img.shields.io/badge/analysis%20tools-13-green.svg\" alt=\"Tools\"\u003e\u003c/a\u003e\n  \u003ca href=\"#what-i-built\"\u003e\u003cimg src=\"https://img.shields.io/badge/AI%20agents-13-orange.svg\" alt=\"Agents\"\u003e\u003c/a\u003e\n  \u003ca href=\"#license\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-AGPL--3.0-blue.svg\" alt=\"License: AGPL-3.0\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/images/finance-guru-architecture.png\" alt=\"Architecture\" width=\"800\"/\u003e\n\u003c/p\u003e\n\n---\n\n## The Problem I Solved\n\nI was drowning in complexity. Every investment decision meant:\n- Opening Yahoo Finance for prices\n- Switching to a spreadsheet for calculations\n- Googling \"how to calculate Sharpe ratio\" (again)\n- Copy-pasting data between 5 different tools\n- Second-guessing myself because I couldn't see the full picture\n\n**The real cost wasn't time—it was confidence.** I never felt certain my analysis was complete.\n\n## The Insight\n\nWhat if instead of me becoming an expert in everything, I could have a *team* of experts who already knew my portfolio, my risk tolerance, and my goals?\n\nNot a chatbot. Not an app. A **personal family office** that treats me like a wealth management client—but built on AI agents that can actually run calculations.\n\n## What I Built\n\nFinance Guru™ is my private AI-powered family office. It's not software you install—it's a system where Claude transforms into specialized financial agents who work exclusively for me.\n\n**One command:**\n```bash\n/finance-orchestrator\n```\n\n**Eight specialists activate:**\n\n| Agent | Expertise | What They Do |\n|-------|-----------|--------------|\n| **Cassandra Holt** | Orchestrator | Coordinates the team, routes my requests |\n| **Market Researcher** | Intelligence | Scans markets, identifies opportunities |\n| **Quant Analyst** | Data Science | Runs calculations, builds models |\n| **Strategy Advisor** | Portfolio | Optimizes allocations, validates strategies |\n| **Compliance Officer** | Risk | Checks position limits, flags concerns |\n| **Margin Specialist** | Leverage | Analyzes margin strategies safely |\n| **Dividend Specialist** | Income | Optimizes yield, tracks distributions |\n| **Tax Optimizer** | Efficiency | Structures holdings for tax advantage |\n\n## See It In Action\n\n**Me:** \"Should I add more TSLA to my portfolio?\"\n\n**What happens behind the scenes:**\n```bash\n# Market Researcher checks momentum\nuv run python src/utils/momentum_cli.py TSLA --days 90\n\n# Quant Analyst calculates risk metrics\nuv run python src/analysis/risk_metrics_cli.py TSLA --days 90 --benchmark SPY\n\n# Quant Analyst checks market-implied risk\nuv run python src/analysis/itc_risk_cli.py TSLA --universe tradfi\n\n# Strategy Advisor checks correlation with existing holdings\nuv run python src/analysis/correlation_cli.py TSLA PLTR NVDA --days 90\n\n# Compliance Officer validates position size\n# → Checks if addition exceeds concentration limits\n```\n\n**What I get:** A coordinated answer that considers momentum, risk, correlation, and compliance—not just a single data point.\n\n## The Technical Foundation\n\n### 13 Production-Ready Analysis Tools\n\nEvery tool follows the same bulletproof pattern:\n\n```\nPydantic Models → Calculator Classes → CLI Interfaces\n     ↓                    ↓                  ↓\n Type Safety         Business Logic      Agent Access\n```\n\n| Category | Tools | Key Metrics |\n|----------|-------|-------------|\n| **Risk** | Risk Metrics, ITC Risk | VaR, CVaR, Sharpe, Sortino, Max Drawdown, Beta, Alpha |\n| **Technical** | Momentum, Moving Averages, Volatility | RSI, MACD, Golden Cross, Bollinger Bands, ATR |\n| **Portfolio** | Correlation, Optimizer, Backtester | Diversification score, Max Sharpe, Risk Parity |\n| **Options** | Options Pricer | Black-Scholes, Greeks, Implied Volatility |\n| **Hedging** | Total Return, Rolling Tracker, Hedge Sizer, Hedge Comparison | DRIP modeling, put roll alerts, contract sizing, SQQQ vs puts analysis |\n\n### External Risk Intelligence\n\n**ITC Risk Models API** integration provides market-implied risk scores:\n- Real-time risk assessment for TSLA, AAPL, MSTR, NFLX, SP500, commodities\n- Risk bands help agents validate entry/exit timing\n- Complements internal quant metrics with external perspective\n\n### Hedging \u0026 Portfolio Protection Toolkit\n\nFour CLI tools for managing downside protection, built from real advisory sessions:\n\n```bash\n# Compare total returns across tickers (price + dividends + DRIP)\nuv run python src/analysis/total_return_cli.py JEPI JEPQ QQQI --days 180\n\n# Check put option positions and get roll suggestions\nuv run python src/analysis/rolling_tracker_cli.py status\nuv run python src/analysis/rolling_tracker_cli.py suggest-roll --dte-threshold 7\n\n# Size hedge contracts based on portfolio value and monthly budget\nuv run python src/analysis/hedge_sizer_cli.py --portfolio-value 200000 --budget 500\n\n# Compare SQQQ inverse ETF vs protective puts for a market drop scenario\nuv run python src/analysis/hedge_comparison_cli.py --drop-pct 20 --days 30\n```\n\nAll hedging tools share 13 Pydantic models and read defaults from `user-profile.yaml` via the config loader.\n\n## Quick Start\n\n**For complete installation instructions, see [docs/setup/SETUP.md](docs/setup/SETUP.md)**\n\n### Prerequisites\n```bash\n# Claude Code (the orchestration platform)\ncurl -fsSL https://claude.ai/install.sh | bash\n\n# Python 3.12+ with uv package manager\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n\n# Bun (for onboarding and hooks)\ncurl -fsSL https://bun.sh/install | bash\n\n# Docker (optional, for Google Drive MCP)\n# Install from https://docs.docker.com/get-docker/\n```\n\n### Setup\n\n```bash\n# 1. Fork and clone the repository\ngit clone https://github.com/YOUR-USERNAME/family-office.git\ncd family-office\n\n# 2. Run the setup script\n./setup.sh\n```\n\nThe setup script will:\n- Create your private documentation directories\n- Set up portfolio data folders\n- Create user profile template\n- Install Python dependencies\n- Load Finance Guru agent commands (symlinks to ~/.claude/commands/fin-guru)\n- Load Finance Guru skills (9 skills linked to ~/.claude/skills/)\n- Run interactive onboarding wizard\n\n**Need help?** See the [complete setup guide](docs/setup/SETUP.md) for troubleshooting and configuration details.\n\n### What Gets Installed\n\nThe setup script symlinks Finance Guru components to your global Claude Code configuration:\n\n**Agent Commands** (→ `~/.claude/commands/fin-guru/`):\n- `/fin-guru:agents:finance-orchestrator` - Main orchestrator (Cassandra Holt)\n- `/fin-guru:agents:market-researcher` - Market intelligence specialist\n- `/fin-guru:agents:quant-analyst` - Quantitative analysis specialist\n- `/fin-guru:agents:strategy-advisor` - Portfolio strategy specialist\n- `/fin-guru:agents:compliance-officer` - Risk and compliance specialist\n- `/fin-guru:agents:margin-specialist` - Leverage analysis specialist\n- `/fin-guru:agents:dividend-specialist` - Income optimization specialist\n- `/fin-guru:agents:onboarding-specialist` - First-time setup guide\n\n**Skills** (→ `~/.claude/skills/`):\n- `fin-core` - Core Finance Guru system context\n- `margin-management` - Margin Dashboard integration\n- `PortfolioSyncing` - Fidelity CSV → Google Sheets sync\n- `MonteCarlo` - Monte Carlo simulation runner\n- `retirement-syncing` - Retirement account sync (Vanguard/Fidelity)\n- `dividend-tracking` - Dividend data sync\n- `FinanceReport` - PDF analysis report generator\n- `TransactionSyncing` - Transaction history import\n- `formula-protection` - Spreadsheet formula protection\n\nThese symlinks allow you to use Finance Guru commands and skills from any Claude Code session.\n\n### Onboarding (First Time Users)\n\n**Important:** Run the Onboarding Specialist before using Finance Guru.\n\n```bash\n# Start Claude Code in the project\nclaude\n\n# Activate the Onboarding Specialist\n/fin-guru:agents:onboarding-specialist\n```\n\nThe Onboarding Specialist will guide you through:\n1. Financial assessment questionnaire\n2. Portfolio profile creation\n3. Risk tolerance configuration\n4. Strategy recommendations\n\n### After Onboarding\n\nOnce your profile is set up, activate the full Finance Guru system:\n\n```bash\n# Activate Finance Guru\n/fin-guru:agents:finance-orchestrator\n\n# Or go direct to a specialist\n*quant            # \"Analyze TSLA risk profile\"\n*strategy         # \"Optimize my portfolio allocation\"\n*market-research  # \"What's the momentum on NVDA?\"\n```\n\n### Justfile Recipes\n\nFinance Guru uses a [justfile](https://github.com/casey/just) as a command launchpad. Run `just --list` to see all available recipes.\n\n**Context Loading** — inject architecture diagrams into Claude Code sessions:\n\n| Command | What It Does |\n|---------|--------------|\n| `just load-diagrams` | Load all mermaid architecture diagrams |\n| `just load-hedging` | Load hedging integration architecture |\n| `just load-explorer` | Load interactive knowledge explorer architecture |\n| `just load \u003ckeyword\u003e` | Load a specific diagram by keyword match |\n\n**Agent Personas** — launch Claude Code as a Finance Guru specialist:\n\n| Command | Specialist |\n|---------|------------|\n| `just orchestrator` | Finance Orchestrator (Cassandra Holt) |\n| `just quant` | Quant Analyst |\n| `just strategy` | Strategy Advisor |\n| `just market` | Market Researcher |\n| `just compliance` | Compliance Officer |\n| `just margin` | Margin Specialist |\n| `just dividend` | Dividend Specialist |\n| `just teaching` | Teaching Specialist |\n| `just builder` | Builder |\n| `just qa` | QA Advisor |\n\nSee [docs/guides/just-commands.md](docs/guides/just-commands.md) for the full reference.\n\n## 🍴 Fork Model: Use Finance Guru Safely\n\nFinance Guru is designed to be **forked** and used privately. Here's how it works:\n\n### Architecture for Privacy\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/fork-model.png\" alt=\"Finance Guru Fork Model\" width=\"100%\"\u003e\n\u003c/p\u003e\n\n### How to Use\n\n1. **Fork this repository** to your GitHub account\n2. **Clone to your machine** (never commit personal data)\n3. **Run onboarding** to generate your private configs\n4. **Pull upstream updates** safely (configs in .gitignore)\n\n### What's Tracked vs. Ignored\n\n**Tracked (safe to commit):**\n- ✅ Tools (`src/`, `scripts/`)\n- ✅ Agent definitions (`fin-guru/agents/`)\n- ✅ Templates (`scripts/onboarding/modules/templates/`)\n- ✅ Documentation (`docs/`, `README.md`)\n- ✅ Package files (`pyproject.toml`, `package.json`)\n\n**Ignored (private data):**\n- 🔒 `fin-guru/data/user-profile.yaml` (your financial data)\n- 🔒 `notebooks/updates/*.csv` (your account exports)\n- 🔒 `.env` (your API keys)\n- 🔒 `fin-guru-private/` (your private strategies)\n\n### Updating Your Fork\n\n```bash\n# Add upstream remote (one-time)\ngit remote add upstream https://github.com/ORIGINAL-AUTHOR/family-office.git\n\n# Pull updates (safe - won't touch your private configs)\ngit fetch upstream\ngit merge upstream/main\n\n# Your private data stays untouched\n```\n\n### Security Checklist\n\nBefore pushing to GitHub:\n\n```bash\n# Verify private files are ignored\ngit status --ignored\n\n# Ensure no sensitive data in commit\ngit diff --cached\n\n# Check .env is ignored\nls -la .env  # Should show file exists locally\ngit check-ignore .env  # Should output \".env\" (confirmed ignored)\n```\n\n## Project Structure\n\n```\nfamily-office/\n├── src/                      # Analysis engine (13 tools)\n│   ├── analysis/             # Risk, correlation, options, hedging CLIs\n│   ├── strategies/           # Backtester, optimizer\n│   ├── utils/                # Momentum, volatility, validators\n│   ├── models/               # Pydantic type definitions\n│   └── config/               # Config loader (CLI-override-YAML-default chain)\n├── fin-guru/                 # Agent system\n│   ├── agents/               # 13 specialist definitions\n│   ├── tasks/                # Workflow configurations\n│   └── data/                 # Knowledge base \u0026 templates\n├── tests/                    # 365+ pytest tests\n└── justfile                  # Command launchpad (just --list)\n```\n\n## Why This Approach Works\n\n**Traditional tools** give you data. Finance Guru gives you **judgment**.\n\nThe difference:\n- A stock screener tells you RSI is 75\n- Finance Guru tells you \"RSI is overbought, but your portfolio is underweight tech, and Compliance says you have room for a small position if Quant's risk metrics confirm\"\n\n**It's the coordination that creates value**—not any single calculation.\n\n## Security \u0026 Privacy\n\n- All data stays local on my machine\n- No external access to financial information\n- Portfolio data never leaves this repository\n- This is a private system, not a service\n\n## Built With\n\n- **Claude Code** - Multi-agent orchestration\n- **Python 3.12** - Analysis engine\n- **Pydantic** - Type-safe validation\n- **yfinance** - Market data\n- **pandas/numpy/scipy** - Calculations\n- **ITC Risk Models** - External risk intelligence\n\n## Context Management\n\nFinance Guru is designed for **token efficiency**. Even with extensive startup context injection, you retain ample room for complex analysis.\n\n### Typical Session Context Usage\n\n| Component | Tokens | % of 200k |\n|-----------|--------|-----------|\n| System prompt | 3.8k | 1.9% |\n| System tools | 17.8k | 8.9% |\n| MCP tools | 1.5k | 0.8% |\n| Custom agents | 1.0k | 0.5% |\n| Memory files (CLAUDE.md) | 2.5k | 1.2% |\n| Skills | 3.6k | 1.8% |\n| Messages | 22.2k | 11.1% |\n| **Free space** | **103k** | **51.3%** |\n| Autocompact buffer | 45.0k | 22.5% |\n\n**Key insight**: With Finance Guru context auto-loaded at session start, you still have **51% free context** for actual work.\n\n### Why This Works\n\n1. **CLI-First Architecture**: Heavy computation happens in Python CLI tools, not in context. When you run `risk_metrics_cli.py`, the calculation happens outside the token window.\n\n2. **Session Start Hooks**: The `load-fin-core-config.ts` hook injects:\n   - System configuration\n   - User profile with portfolio strategy\n   - Latest Fidelity balances and positions\n   - fin-core skill content\n\n3. **Skills Auto-Activate**: Instead of loading all domain knowledge upfront, skills load on-demand based on your prompts and file paths.\n\n4. **Structured Context**: YAML configs and markdown docs compress well and are easy for Claude to parse.\n\nSee [docs/reference/hooks.md](docs/reference/hooks.md) for details on the hooks system.\n\n## Requirements\n\n### Required MCP Servers\n\nThese MCP servers must be configured for Finance Guru to function:\n\n| MCP Server | Purpose | Required For |\n|------------|---------|--------------|\n| **exa** | Market research, intelligence gathering | Market Researcher agent, web searches |\n| **bright-data** | Web scraping, data extraction | Alternative data sources, live data |\n| **sequential-thinking** | Complex financial reasoning | Multi-step analysis workflows |\n\n### Optional MCP Servers\n\nEnhance functionality but not required:\n\n| MCP Server | Purpose | Use Case |\n|------------|---------|----------|\n| **gdrive** | Google Sheets integration | Portfolio tracking, DataHub sync |\n| **perplexity** | AI-powered search with citations | Deep research, market analysis |\n| **financial-datasets** | Real-time market data | Live price feeds |\n| **context7** | Documentation lookup | Framework reference |\n| **nano-banana** | Image generation | Chart visualization |\n\n### Optional APIs\n\nAll market data is fetched via yfinance by default. These APIs are optional enhancements:\n\n| API | Purpose | Get Key |\n|-----|---------|---------|\n| **Finnhub** | Real-time intraday prices | [finnhub.io](https://finnhub.io/) (free tier: 60 calls/min) |\n| **ITC Risk Models** | External risk intelligence | Contact ITC directly |\n| OpenAI | Alternative LLM for specific tasks | [platform.openai.com](https://platform.openai.com/) |\n\n### Environment Setup\n\n```bash\n# Copy example env file\ncp .env.example .env\n\n# Edit with your API keys (all optional - yfinance works without keys)\nFINNHUB_API_KEY=your_key_here    # For real-time prices\nITC_API_KEY=your_key_here        # For ITC risk scores\n```\n\n## Documentation\n\n| Document | Description |\n|----------|-------------|\n| [docs/index.md](docs/index.md) | Documentation hub |\n| [docs/setup/SETUP.md](docs/setup/SETUP.md) | **Complete setup guide** (start here) |\n| [docs/setup/api-keys.md](docs/setup/api-keys.md) | **API key acquisition guide** |\n| [docs/setup/TROUBLESHOOTING.md](docs/setup/TROUBLESHOOTING.md) | **Comprehensive troubleshooting** |\n| [docs/reference/api.md](docs/reference/api.md) | CLI tools reference |\n| [docs/reference/hooks.md](docs/reference/hooks.md) | Hooks system documentation |\n| [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md) | Contribution guidelines |\n| [docs/guides/just-commands.md](docs/guides/just-commands.md) | Just command recipes reference |\n| [fin-guru/README.md](fin-guru/README.md) | Finance Guru module documentation |\n\n**Note:** After running `setup.sh`, your personal strategies and analysis will be in `fin-guru-private/` (gitignored).\n\n## Educational Disclaimer\n\nFinance Guru™ is for educational purposes only. This is not investment advice. All investments carry risk, including potential loss of principal. Always consult licensed financial professionals before making investment decisions.\n\n## License\n\nFinance Guru is free software licensed under the **GNU Affero General Public License v3.0 (AGPLv3)**.\n\n### What This Means for You\n\n**You are free to:**\n- ✅ **Use** Finance Guru for any purpose (personal, commercial, educational)\n- ✅ **Study** the source code and understand how it works\n- ✅ **Modify** the code to suit your needs\n- ✅ **Share** copies with others\n- ✅ **Distribute** your modifications\n\n**Under these conditions:**\n- 📖 **Source code must remain open** (copyleft) - derivatives must use AGPLv3\n- 🌐 **Network users get source access** - if you run Finance Guru as a service, users must be able to get the source\n- 📝 **Changes must be documented** - state what you modified and when\n- 🔄 **Same license for derivatives** - any modifications must also be AGPLv3\n\n### Why AGPLv3?\n\nAGPLv3 is the strongest copyleft license, designed specifically for server software. It ensures:\n\n1. **Community Protection**: Prevents companies from taking this code, modifying it, running it as a SaaS, and keeping improvements private\n2. **Transparency**: Anyone using Finance Guru (especially financial analysis tools) can audit the code\n3. **Freedom Forever**: Guarantees the software stays free and open for all future users\n\n### Network Copyleft (Section 13)\n\nThe key difference from regular GPL: If you run a modified version of Finance Guru on a server and let people interact with it over a network, **you must provide them with the source code**.\n\nThis prevents the \"cloud loophole\" where someone could use your work without contributing back.\n\n### Compatible With\n\n- **Other AGPLv3 projects**: Freely combine\n- **GPLv3 projects**: Compatible (see Section 13 of license)\n- **Permissive licenses** (MIT, Apache, BSD): Can be included in AGPLv3 projects\n\n### Not Compatible With\n\n- ❌ Proprietary/closed-source projects cannot include Finance Guru code\n- ❌ GPL v2-only projects (but GPLv2-or-later is compatible via GPLv3)\n\n### Full License Text\n\nSee [LICENSE](LICENSE) for the complete legal terms.\n\n### Questions?\n\n- **\"Can I use this for my business?\"** Yes! AGPLv3 allows commercial use.\n- **\"Do I need to open-source my portfolio data?\"** No. Your data isn't part of the software.\n- **\"Can I sell Finance Guru?\"** Yes, but you must provide source code to buyers.\n- **\"Can I make a proprietary fork?\"** No. All derivatives must be AGPLv3.\n\nFor more on AGPLv3, see the [GNU project page](https://www.gnu.org/licenses/agpl-3.0.html).\n\n## Star History\n\nIf you find Finance Guru useful, please ⭐ star the repo to help others discover it!\n\n[![Star History Chart](https://api.star-history.com/svg?repos=AojdevStudio/Finance-Guru\u0026type=Date)](https://star-history.com/#AojdevStudio/Finance-Guru\u0026Date)\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eFinance Guru™ v2.0.0\u003c/strong\u003e\u003cbr\u003e\n  My AI-powered family office, working exclusively for me.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003csub\u003eIf Finance Guru helps you, please ⭐ star the repo!\u003c/sub\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faojdevstudio%2Ffinance-guru","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faojdevstudio%2Ffinance-guru","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faojdevstudio%2Ffinance-guru/lists"}