| --- |
| title: Getting Started |
| summary: Install TerraFin, configure the runtime, and run the first Python, CLI, and hosted-agent flows. |
| --- |
| |
| # Getting Started |
|
|
| This page is the shortest path from clone to a working TerraFin environment. |
|
|
| ## Prerequisites |
|
|
| - Python 3.11+ |
| - A local `.env` file if you want FRED, SEC EDGAR, private-access widgets, or |
| hosted-model credentials |
|
|
| ## Install |
|
|
| Core install: |
|
|
| ```bash |
| pip install . |
| ``` |
|
|
| Editable install: |
|
|
| ```bash |
| pip install -e . |
| ``` |
|
|
| Useful extras: |
|
|
| ```bash |
| pip install -e ".[dev]" |
| pip install -e ".[db]" |
| pip install -e ".[notebooks]" |
| ``` |
|
|
| ## Configure The Runtime |
|
|
| Start with the example file: |
|
|
| ```bash |
| cp .env.example .env |
| ``` |
|
|
| The most common env vars are: |
|
|
| | Variable | Why you care | |
| |----------|---------------| |
| | `FRED_API_KEY` | Enables FRED-backed economic series | |
| | `TERRAFIN_SEC_USER_AGENT` | Required for SEC EDGAR filings and guru 13F holdings | |
| | `TERRAFIN_HOST` / `TERRAFIN_PORT` | Server bind address | |
| | `TERRAFIN_AGENT_MODEL_REF` | Hosted model ref in `provider/model` format | |
| | `TERRAFIN_AGENT_TRANSCRIPT_DIR` | Optional override for local hosted chat history storage | |
|
|
| For the full matrix, read [Configuration](configuration.md). |
|
|
| ## First Python Request |
|
|
| ```python |
| from TerraFin import configure |
| from TerraFin.data import DataFactory |
| |
| configure() |
| data = DataFactory() |
| |
| spy = data.get("S&P 500") |
| aapl = data.get("AAPL") |
| ``` |
|
|
| ## First CLI Request |
|
|
| ```bash |
| terrafin-agent snapshot AAPL |
| terrafin-agent macro-focus "S&P 500" --view weekly |
| ``` |
|
|
| ## First Hosted Agent Session |
|
|
| ```bash |
| terrafin-agent runtime-create-session terrafin-assistant |
| ``` |
|
|
| Then send a message: |
|
|
| ```bash |
| terrafin-agent runtime-message runtime:example "Give me a compact AAPL market snapshot." |
| ``` |
|
|
| The hosted assistant can also be used from the browser widget once the |
| interface server is running. |
|
|
| Hosted agent chat history is stored locally as transcript files under |
| `.terrafin/agent/sessions/` by default. |
|
|
| ## Run The Interface |
|
|
| From `src/TerraFin/interface/`: |
|
|
| ```bash |
| python server.py run |
| ``` |
|
|
| Useful commands: |
|
|
| | Command | Behavior | |
| |---------|----------| |
| | `python server.py run` | Run in the foreground | |
| | `python server.py start` | Start in the background | |
| | `python server.py stop` | Stop the background process | |
| | `python server.py status` | Show whether the background process is running | |
| | `python server.py restart` | Restart the background process | |
|
|
| Default pages: |
|
|
| | URL | Purpose | |
| |-----|---------| |
| | `http://127.0.0.1:8001/chart` | Interactive chart surface | |
| | `http://127.0.0.1:8001/dashboard` | Dashboard and cache status | |
| | `http://127.0.0.1:8001/market-insights` | Macro and portfolio views | |
| | `http://127.0.0.1:8001/stock/AAPL` | Stock analysis page | |
| | `http://127.0.0.1:8001/calendar` | Earnings and macro calendar | |
|
|
| ## Notebooks And Scripts |
|
|
| Keep notebook setup explicit: |
|
|
| ```python |
| from TerraFin import configure, load_terrafin_config |
| |
| configure() |
| config = load_terrafin_config() |
| ``` |
|
|
| Use `configure(dotenv_path="/absolute/path/to/.env")` if the kernel is not |
| started from a directory where TerraFin can discover `.env` normally. |
|
|
| Notebook rules and layout guidance live in [Notebooks](notebooks.md). |
|
|
| ## Next Reads |
|
|
| - [Configuration](configuration.md) |
| - [Deployment & Operations](deployment.md) |
| - [Examples & Workflows](examples.md) |
| - [Agent Docs](agent/index.md) — both Hosted TerraFin Agent (Mode A) and the |
| external-agent skill / HTTP surface (Mode B). |
| - [TerraFin skill on GitHub](https://github.com/KiUngSong/TerraFin/blob/main/skills/terrafin/SKILL.md) — |
| drop-in for Claude Code / Codex (`cp -r skills/terrafin ~/.claude/skills/`). |
|
|