Open the app
The research system

Agent orchestration

LangGraph workflows: explicit graphs, conditional routing, human-in-the-loop checkpoints — never one open-ended loop.

The agent layer is not a single open-ended autonomous loop. Every workflow is an explicit LangGraph graph: stateful, long-running, conditionally routed, with human-in-the-loop checkpoints, retries and persistent execution state.

Why LangGraph

  • Stateful, long-running workflows with persistent execution state.
  • Conditional routing — the graph decides which agents run, in what order.
  • Human-in-the-loop checkpoints where governance is required.
  • Retries and deterministic, inspectable workflow structure.
  • Multi-agent coordination instead of one giant prompt.

A research graph

Opportunity detected
        │
        ▼
Data completeness check ──insufficient──► collect more data
        │ sufficient
        ▼
Quant analysis → Security analysis → Social & narrative analysis
        │
        ▼
Memory retrieval → Multi-agent debate → Risk validation
        │
        ├── Rejected
        ├── Watch
        ├── Human review
        └── Approved
A research workflow: completeness gate → analysts → memory → adversarial debate → risk validation → an explicit decision (rejected / watch / human review / approved).

The scout surfaces candidates; the quant, security, on-chain and social agents enrich them; the debate agent tries to invalidate the trade; the risk agent can block it. Only what survives is scored and surfaced for governance.

Tool calls are the safety boundary
Each agent reaches the system only through registered, schema-validated, authorized tools. There is no arbitrary order-placement tool and no shell access; the execution engine is a separate, isolated service. Workflow runs are persisted (see workflow_runs) so every decision path is auditable.