Files
evotraders/frontend
cillin 16b54d5ccc feat(agent): complete EvoAgent integration for all 6 agent roles
Migrate all agent roles from Legacy to EvoAgent architecture:
- fundamentals_analyst, technical_analyst, sentiment_analyst, valuation_analyst
- risk_manager, portfolio_manager

Key changes:
- EvoAgent now supports Portfolio Manager compatibility methods (_make_decision,
  get_decisions, get_portfolio_state, load_portfolio_state, update_portfolio)
- Add UnifiedAgentFactory for centralized agent creation
- ToolGuard with batch approval API and WebSocket broadcast
- Legacy agents marked deprecated (AnalystAgent, RiskAgent, PMAgent)
- Remove backend/agents/compat.py migration shim
- Add run_id alongside workspace_id for semantic clarity
- Complete integration test coverage (13 tests)
- All smoke tests passing for 6 agent roles

Constraint: Must maintain backward compatibility with existing run configs
Constraint: Memory support must work with EvoAgent (no fallback to Legacy)
Rejected: Separate PM implementation for EvoAgent | unified approach cleaner
Confidence: high
Scope-risk: broad
Directive: EVO_AGENT_IDS env var still respected but defaults to all roles
Not-tested: Kubernetes sandbox mode for skill execution
2026-04-02 00:55:08 +08:00
..

Frontend Quick Start

cd frontend
npm ci
npm run dev

Default dev URL: http://localhost:5173

The frontend expects the 大时代 gateway WebSocket on ws://localhost:8765 unless overridden.

Start the split backend services from the project root:

./start-dev.sh

That gives you:

  • control plane at http://localhost:8000/api
  • trading service at http://localhost:8001
  • news service at http://localhost:8002
  • runtime service at http://localhost:8003/api/runtime
  • gateway WebSocket at ws://localhost:8765

Frontend Environment Variables

You can point the frontend directly at those services with:

VITE_CONTROL_API_BASE_URL=http://localhost:8000/api
VITE_RUNTIME_API_BASE_URL=http://localhost:8003/api/runtime
VITE_NEWS_SERVICE_URL=http://localhost:8002
VITE_TRADING_SERVICE_URL=http://localhost:8001
VITE_WS_URL=ws://localhost:8765

There is also a starter template at frontend/env.template.

For production deployments, prefer:

cd frontend
npm ci
npm run build

This ensures the deployed frontend matches the checked-in package-lock.json.

Direct-Service Coverage

Current direct-call coverage includes:

  • runtime panel data loading
  • gateway port/runtime discovery
  • story
  • similar days
  • range explain
  • news for date
  • news categories
  • selected trading reads such as price history and insider trades

If these variables are not set, the frontend falls back to local defaults and compatibility paths where they still exist.