Retour aux mises à jour
UpdatedAug 7, 2026

Argos — Mis à jour !

Analyse et Représentation des Graphes des Opérations Suspectes

Partager

Argos — Plateforme de traçage d'actifs blockchain

Argos est une plateforme d'investigation blockchain multi-langages pour tracer, analyser et visualiser les flux de fonds sur Ethereum et Bitcoin. Construite avec Rust, OCaml et 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)    |
  +-------------------+        +-------------------+

Le décodage, les analyses DeFi et le traçage s'exécutent en processus dans les binaires Rust via une FFI directe Rust↔OCaml (ocaml-interop) — il n'y a ni microservices séparés ni ports gRPC.

Démarrage rapide

Voir Démarrage rapide pour les instructions complètes d'installation.

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
Démarrage rapidePrérequis, installation, première exécution
ArchitectureTopologie du système et flux de données
API RESTPoints de terminaison de l'API et authentification
IndexeursBinaires des indexeurs de blockchain
Base de donnéesSchémas de base de données et partitionnement
DéploiementDocker, services, journaux, supervision
DockerImages Docker par service, recettes de build, configuration d'exécution
EnvironnementRéférence des variables d'environnement
TraçageAlgorithme de traçage des flux de fonds
Décodage et analyseDécodage et analyse (FFI OCaml en processus)
OSINTSources de données OSINT et ingestion
Algorithmes d'analyseAnalyse DeFi (arbitrage, sandwich, etc.)
ClusteringPipeline de regroupement et de classification d'adresses
Composant de décodageDécodage ABI
FrontendApplication React

Développement

Voir Conventions des développeurs :

Compilation

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

Licence

Propriétaire — Functori

Catégories