* fix: per-tier fallback LLM for provider 404/policy errors - tool_runner: catch status_code==404 from chain.invoke(), re-raise as RuntimeError with actionable message (OpenRouter privacy URL + env var hint) - langgraph_engine: wrap astream_events in try/except, detect policy errors and re-raise with model/provider context - langgraph_engine: _run_one_ticker distinguishes policy 404s (logger.error, no traceback) from real bugs (logger.exception with traceback); if fallback is configured, rebuilds pipeline with fallback model tier and retries - langgraph_engine: add _is_policy_error() and _build_fallback_config() helpers - default_config: add quick/mid/deep_think_fallback_llm + _provider keys (TRADINGAGENTS_QUICK_THINK_FALLBACK_LLM etc.) - .env.example: document new fallback env vars Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * docs: ADR 017 LLM policy fallback, correct ADR 016 findings, update CLAUDE.md - docs/agent/decisions/017: add ADR for per-tier LLM fallback design decision - docs/agent/decisions/016: correct 3 inaccurate review findings — list_pm_decisions ObjectId projection, created_at datetime type, and base_dir pointer handling are all already correctly implemented in PR#106 - CLAUDE.md: add Per-Tier Fallback LLM section and _is_policy_error critical pattern - CURRENT_STATE.md: update milestone and recent progress for PR#106/107/108 merges Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| backend | ||
| frontend | ||
| DESIGN.md | ||
| README.md | ||
| __init__.py | ||
README.md
AgentOS: Visual Observability & Command Center
AgentOS is a real-time observability and command center for the TradingAgents framework. It provides a visual interface to monitor multi-agent workflows, analyze portfolio risk metrics, and trigger automated trading pipelines.
System Architecture
- Backend: FastAPI (Python)
- Orchestrates LangGraph executions.
- Streams real-time events via WebSockets.
- Serves portfolio data from Supabase.
- Port:
8088(default)
- Frontend: React (TypeScript) + Vite
- Visualizes agent workflows using React Flow.
- Displays high-fidelity risk metrics (Sharpe, Regime, Drawdown).
- Provides a live terminal for deep tracing.
- Port:
5173(default)
Getting Started
1. Prerequisites
- Python 3.10+
- Node.js 18+
- uv (recommended for Python environment management)
2. Backend Setup
# From the project root
export PYTHONPATH=$PYTHONPATH:.
uv run python agent_os/backend/main.py
The backend will start on http://127.0.0.1:8088.
3. Frontend Setup
cd agent_os/frontend
npm install
npm run dev
The frontend will start on http://localhost:5173.
Key Features
- Literal Graph Visualization: Real-time DAG rendering of agent interactions.
- Top 3 Metrics: High-level summary of Sharpe Ratio, Market Regime, and Risk/Drawdown.
- Live Terminal: Color-coded logs with token usage and latency metrics.
- Run Controls: Trigger Market Scans, Analysis Pipelines, and Portfolio Rebalancing directly from the UI.
Port Configuration
AgentOS uses port 8088 for the backend to avoid conflicts with common macOS services. The frontend is configured to communicate with 127.0.0.1:8088.