AI agents and tools for the retail investor
Project description
๐ค Navam Invest
AI-Powered Investment Advisor for Retail Investors
Features โข Quick Start โข Documentation โข Contributing
๐ Overview
navam-invest brings institutional-grade portfolio intelligence to individual retail investors. Built with LangGraph and powered by Anthropic's Claude, it provides specialized AI agents for portfolio analysis, market research, and investment insightsโall accessible through an interactive terminal interface.
Why Navam Invest?
- ๐ฏ Institutional Intelligence: Access the same analytical depth once reserved for institutional portfolios
- ๐ Privacy-First: Run locally with your own API keysโyour data stays yours
- ๐ก Transparent: Full audit trails and explainable AI reasoning
- ๐ Free Data Sources: Leverages high-quality public APIs (FRED, Alpha Vantage)
- ๐ง Extensible: Modular architecture makes it easy to add new agents and data sources
โจ Features
๐ค AI Agents Powered by LangGraph
|
Portfolio Analysis Agent
|
Market Research Agent
|
๐ Real API Integrations
| API | Purpose | Cost |
|---|---|---|
| Alpha Vantage | Stock prices, company fundamentals | Free tier: 25 calls/day |
| FRED (St. Louis Fed) | Economic indicators, macro data | Free (unlimited) |
| Anthropic Claude | AI reasoning and tool orchestration | Pay-as-you-go |
๐ฌ Interactive Terminal UI
- Chat Interface: Natural language interaction with AI agents
- Real-time Streaming: Watch agents think and reason in real-time
- Markdown Rendering: Beautiful formatted output with tables and lists
- Agent Switching: Seamlessly switch between specialized agents
- Command Palette: Quick access to common actions
๐๏ธ Built on Modern Tech
LangGraph (Agent Orchestration) โ LangChain (Tools) โ Anthropic Claude (Reasoning)
โ
Textual (Terminal UI) + Typer (CLI) + httpx (Async HTTP)
๐ Quick Start
Prerequisites
- Python 3.9+ (3.13 recommended)
- pip or uv package manager
- API keys (see Configuration)
Installation
Option 1: Install from PyPI (Coming Soon)
pip install navam-invest
Option 2: Install from Source
git clone https://github.com/navam-io/navam-invest.git
cd navam-invest
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
Configuration
-
Copy environment template:
cp .env.example .env
-
Add your API keys to
.env:# Required ANTHROPIC_API_KEY=sk-ant-... # Optional (but recommended) ALPHA_VANTAGE_API_KEY=your_key_here FRED_API_KEY=your_key_here
-
Get API Keys (all free tiers available):
- Anthropic: console.anthropic.com (pay-as-you-go)
- Alpha Vantage: alphavantage.co/support/#api-key (free)
- FRED: fredaccount.stlouisfed.org/apikeys (free)
Usage
Launch the Interactive TUI
navam tui
Example Interactions
Portfolio Analysis:
You: What's the current price of AAPL?
Portfolio Agent: [Fetches real-time data and provides formatted response]
You: Show me Apple's fundamentals
Portfolio Agent: [Displays P/E ratio, EPS, market cap, sector info, etc.]
Market Research:
You: /research
You: What's the current GDP?
Research Agent: [Fetches latest GDP data from FRED with date and trend]
You: Give me key economic indicators
Research Agent: [Shows dashboard of GDP, unemployment, CPI, fed funds rate]
TUI Commands
| Command | Action |
|---|---|
/portfolio |
Switch to Portfolio Analysis Agent |
/research |
Switch to Market Research Agent |
/help |
Show help message |
Ctrl+C |
Clear chat history |
Ctrl+Q |
Quit application |
CLI Commands
navam tui # Launch interactive TUI
navam version # Show version information
navam --help # Show help
๐ Documentation
Project Structure
navam-invest/
โโโ src/navam_invest/
โ โโโ agents/ # ๐ค LangGraph agent implementations
โ โ โโโ portfolio.py # Portfolio analysis with ReAct pattern
โ โ โโโ research.py # Market research with macro tools
โ โโโ tools/ # ๐ง API integration tools
โ โ โโโ alpha_vantage.py # Stock price & fundamentals
โ โ โโโ fred.py # Economic indicators & macro data
โ โโโ tui/ # ๐ฌ Textual-based user interface
โ โ โโโ app.py # Chat interface with streaming
โ โโโ config/ # โ๏ธ Configuration management
โ โ โโโ settings.py # Pydantic settings with .env
โ โโโ cli.py # ๐ฅ๏ธ Typer CLI entry point
โโโ tests/ # โ
Test suite (pytest + async)
โ โโโ test_config.py
โ โโโ test_tools.py
โโโ refer/ # ๐ Reference documentation
โ โโโ langgraph/ # LangGraph docs & examples
โ โโโ specs/ # Project specifications
โโโ backlog/ # ๐ Development backlog
โ โโโ active.md # Current features
โ โโโ release-*.md # Release notes
โโโ .env.example # ๐ Environment template
โโโ pyproject.toml # ๐ฆ Package configuration
โโโ CLAUDE.md # ๐ค AI assistant guide
โโโ README.md # ๐ This file
Architecture
Technology Stack
| AI & Agents |
|
| User Interface |
|
| Data & HTTP |
|
Agent Design Pattern
Both agents implement the ReAct (Reasoning + Acting) pattern:
User Query โ Agent Reasoning โ Tool Selection โ Tool Execution โ Response Formatting
โ โ
โโโโโโโโโโโโโโโโโโโโโ Streaming Updates โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Portfolio Analysis Agent:
- Tools:
get_stock_price,get_stock_overview - Use cases: Stock analysis, fundamentals, investment research
Market Research Agent:
- Tools:
get_economic_indicator,get_key_macro_indicators - Use cases: Macro analysis, economic trends, regime detection
๐ ๏ธ Development
Setup Development Environment
# Clone and setup
git clone https://github.com/navam-io/navam-invest.git
cd navam-invest
python3 -m venv .venv
source .venv/bin/activate
# Install with dev dependencies
pip install -e ".[dev]"
Running Tests
# Run all tests with coverage
pytest
# Run specific test file
pytest tests/test_tools.py -v
# Run with coverage report
pytest --cov=src/navam_invest --cov-report=term-missing
Current Coverage: 7/7 tests passing โ
Code Quality
# Format code
black src/ tests/
# Lint
ruff check src/ tests/
# Type check
mypy src/
# Run all quality checks
black src/ tests/ && ruff check src/ tests/ && mypy src/
Development Tools
- Black - Code formatting (88 char line length)
- Ruff - Fast Python linter
- MyPy - Static type checking
- pytest - Testing framework with async support
- Textual DevTools - TUI hot-reload (
textual run --dev)
๐ค Contributing
Contributions are welcome! Here's how you can help:
- ๐ Report Bugs: Open an issue
- ๐ก Suggest Features: Start a discussion
- ๐ Improve Docs: Submit PR for documentation improvements
- ๐ง Submit Code: Fork, create branch, submit PR
Development Workflow
# 1. Create feature branch
git checkout -b feature/your-feature-name
# 2. Make changes and test
pytest
# 3. Format and lint
black src/ tests/
ruff check src/ tests/
# 4. Commit and push
git commit -m "feat: add your feature"
git push origin feature/your-feature-name
# 5. Open Pull Request
Adding New Agents
See CLAUDE.md for comprehensive guide on adding new LangGraph agents and tools.
๐ Roadmap
v0.2.0 (Planned)
- Portfolio optimization agent (MPT, Black-Litterman)
- Tax-loss harvesting agent
- SEC EDGAR filings integration
- Conversation persistence with checkpointers
- TUI panels for portfolio display
v0.3.0 (Planned)
- Multi-agent supervisor for coordinated analysis
- Backtesting framework
- Risk metrics dashboard
- Custom screening agents
- Export to CSV/JSON
Future
- Web UI (Streamlit or FastAPI + HTMX)
- Mobile app (React Native)
- Cloud deployment option
- Social trading features
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
Built with these amazing open-source projects:
- LangGraph - Agent orchestration framework
- LangChain - LLM application framework
- Anthropic Claude - AI reasoning engine
- Textual - Terminal UI framework
- Typer - CLI framework
Data sources:
- Alpha Vantage - Stock market data
- FRED - Economic data from St. Louis Fed
๐ Links
- Homepage: github.com/navam-io/navam-invest
- Documentation: View on GitHub
- Issues: Report bugs
- Discussions: Join the conversation
โญ If you find this project useful, please consider giving it a star!
Made with โค๏ธ by the Navam team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters