Back to updates
UpdatedAug 4, 2026

Argos — Updated!

Analysis and Representation of Graphs of Suspicious Operations (Analyse et Représentation des Graphes des Opérations Suspectes)

Share

Argos — Blockchain Asset Tracing Platform

Argos is a multi-language blockchain investigation platform for tracing, analyzing, and visualizing fund flows on Ethereum and Bitcoin. Built with Rust, OCaml, and TypeScript/React.

Architecture

                     +-----------------------+
                     |  Frontend (React 19)  |
                     |  Vite + Tailwind CSS  |
                     +-----------+-----------+
                                 | HTTP/REST
                     +-----------v-----------+
                     |    REST API (Rust)    |
                     |   Axum — port 8990   |
                     |                       |
                     | in-process OCaml FFI  |
                     | (ocaml-interop):      |
                     |  database_ffi.so —    |
                     |  tracing + full decode|
                     +-----------+-----------+
                                 |
         +-----------------------v----------------------+
         |             PostgreSQL (11 DBs)              |
         |                   Redis                      |
         +----------------------------------------------+

  +------------------+          +------------------+
  | Ethereum node    |          | Bitcoin node     |
  +--------+---------+          +--------+---------+
           |                             |
  +--------v----------+        +--------v----------+
  | Rust indexers x2  |        | Rust indexers x2  |
  | (psql x           |        | (psql x           |
  |  latest/hist)     |        |  latest/hist)     |
  |                   |        |                   |
  | in-process OCaml  |        | in-process OCaml  |
  | FFI: analyses_ffi |        | FFI: analyses_ffi |
  | .so (decode +     |        | .so (decode +     |
  | defi_analyses)    |        | defi_analyses)    |
  +-------------------+        +-------------------+

Decode, DeFi analyses, and tracing run in-process inside the Rust binaries via a direct Rust↔OCaml FFI (ocaml-interop) — there are no separate microservices and no gRPC ports.

Quick Start

See Getting Started for full setup instructions.

git clone [email protected]:functori/argos/argos.git
cd argos
cp argos.secret.env.example argos.secret.env  # Fill in secrets
set -o allexport && . ./argos.env && . ./argos.secret.env && set +o allexport
make install-deps
make create-tablespaces
make migrate-databases
make build

Documentation

DocumentDescription
Getting StartedPrerequisites, installation, first run
ArchitectureSystem topology and data flows
REST APIAPI endpoints and authentication
IndexersBlockchain indexer binaries
DatabaseDatabase schemas and partitioning
DeploymentDocker, services, logs, monitoring
DockerPer-service Docker images, build recipes, runtime configuration
EnvironmentEnvironment variables reference
TracingFund-flow tracing algorithm
Decode and AnalysisDecode and analysis (in-process OCaml FFI)
OSINTOSINT data sources and ingestion
Analysis AlgorithmsDeFi analysis (arbitrage, sandwich, etc.)
ClusteringAddress clustering and classification pipeline
Decode ComponentABI decoding
FrontendReact application

Development

See Developer Conventions:

Build

make install-deps      # Install all dependencies (OCaml, Rust, Node, Python)
make build             # Build backend (Rust + OCaml)
make build-front       # Build frontend
make create-tablespaces  # Create PostgreSQL tablespace directories
make migrate-databases   # Create databases and run migrations
make run-tests           # Run tests
make lint-backend        # Lint backend (clippy, ocamlformat)
make lint-frontend       # Lint frontend (eslint)
make format            # Auto-format all code

License

Proprietary — Functori

Categories