Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
92 lines (80 loc) · 3.99 KB
/
Copy path.env.example
File metadata and controls
92 lines (80 loc) · 3.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# ═══ LEVI Options Intelligence Agent — Environment ═══════════════════════════
# cp .env.example .env → fill in your values
# ── Tastytrade ────────────────────────────────────────────────────────────────
TT_USERNAME=your_tastytrade_username
TT_PASSWORD=your_tastytrade_password
TASTYTRADE_PAPER=true # false = LIVE money. Validate on paper first.
ACCT_SANDBOX= # Sandbox tier account
ACCT_CORE= # Core tier account
ACCT_HODL= # HODL tier account (alerts only, never auto-trades)
# ── White-label config ───────────────────────────────────────────────────────
LEVI_ENV=development
LEVI_CORS_ORIGINS=http://localhost:3000,http://localhost:5173
LEVI_CONFIG_PATH=./levi_config.json
LEVI_WORKSPACE_ROOT=./workspace
LEVI_DEFAULT_EXECUTION_MODE=paper_trading
LEVI_DEFAULT_TRADING_MODE=swing_trading
# Evidence ingestion (generate a URL-safe base64-encoded 32-byte key)
LEVI_EVIDENCE_ENCRYPTION_KEY=
LEVI_ALLOW_PLAINTEXT_EVIDENCE=false
LEVI_EVIDENCE_CONFIDENCE_THRESHOLD=0.70
LEVI_MAX_CSV_SIZE_MB=20
LEVI_MAX_CSV_ROWS=100000
LEVI_MAX_CSV_COLUMNS=250
LEVI_MAX_PDF_SIZE_MB=25
LEVI_MAX_PDF_PAGES=300
LEVI_MAX_EXTRACTED_CHARACTERS=2000000
# Phase 2B paper broker adapter (certificate/sandbox endpoint only)
TASTYTRADE_USERNAME=
TASTYTRADE_PASSWORD=
TASTYTRADE_API_URL=https://api.cert.tastyworks.com
TASTYTRADE_PAPER_ACCOUNT_ID=
TASTYTRADE_BROKER_CERT=
TASTYTRADE_POLL_INTERVAL=1
LEVI_EXECUTION_IDEMPOTENCY_WINDOW=3600
# Market data adapter
LEVI_MARKET_DATA_PRIMARY_SOURCE=broker
LEVI_MARKET_DATA_FALLBACK_SOURCE=yahoo
LEVI_QUOTE_CACHE_TTL_SECONDS=60
LEVI_MAX_QUOTE_AGE_OPTIONS=3
LEVI_MAX_QUOTE_AGE_STOCKS=15
LEVI_MAX_BID_ASK_SPREAD_PCT=5.0
# Phase 4 specialist network (model IDs are deployment configuration)
OPENROUTER_API_KEY=
LEVI_SCOUT_MODEL=
LEVI_ATLAS_MODEL=
LEVI_LENS_MODEL=
LEVI_SCRIBE_MODEL=
LEVI_LLM_TIMEOUT_SECONDS=30
LEVI_LLM_MAX_RETRIES=1
LEVI_CONSENSUS_MIN_CONFIDENCE=0.70
# Phase 6 authentication and persistence
SUPABASE_URL=
SUPABASE_ANON_KEY=
SUPABASE_JWT_SECRET=
DATABASE_URL=postgresql+psycopg://levi:change-me@localhost:5432/levi
LEVI_AUTH_AUDIENCE=authenticated
LEVI_AUTH_ISSUER=
LEVI_AUTH_REDIRECT_ALLOWLIST=http://localhost:5173/auth/callback
LEVI_AUTH_ENABLED=false
LEVI_PERSISTENCE_ENABLED=false
# ── Execution ────────────────────────────────────────────────────────────────
AUTO_EXECUTE=false # true = no confirmation prompts (after 30d paper)
CONSENSUS_REQUIRED=true # true = 3/3 agent vote required to route entries
RUN_BOT=false # Railway API-only mode until paper trading is enabled
# (if true with missing keys → alert-only mode)
# ── Consensus Network + Sub-Agent keys ───────────────────────────────────────
XAI_API_KEY= # Grok / xAI → console.x.ai
ANTHROPIC_API_KEY= # Claude → console.anthropic.com
DEEPSEEK_API_KEY= # DeepSeek R1 via OpenRouter — deepseek/deepseek-r1
PERPLEXITY_API_KEY= # SCOUT + LENS live data verification
# Model overrides (optional)
GROK_MODEL=grok-4
CLAUDE_MODEL=claude-sonnet-4-5
DEEPSEEK_MODEL=deepseek/deepseek-r1
PERPLEXITY_MODEL=llama-3.1-sonar-large-128k-online
AGENT_TIMEOUT_SEC=25
PORT=8000
# ── Master Risk Moat (change only with intention) ─────────────────────────────
SANDBOX_MAX_PREMIUM=150.00 # $ hard ceiling per Sandbox trade
LARGE_ACCT_POSITION_PCT=3.29 # % of Core net liq per position