Démarrer
Fonctionnement de Pacerelle
Les quelques idées derrière Pacerelle — agents, relais, conversations et chiffrement — et comment elles s'articulent.
Pacerelle relie trois éléments : vous, sur n'importe lequel de vos appareils ; votre agent, sur une machine que vous contrôlez ; et le relais entre les deux, qui achemine des messages chiffrés sans pouvoir les lire.
Votre agent
Un agent est n'importe quel programme qui communique avec Pacerelle via le SDK JavaScript, le SDK Python ou le serveur MCP. Par exemple :
- un script qui appelle l'API d'un modèle (OpenAI, Anthropic, Google, Mistral…) et répond ;
- un modèle local servi par Ollama ou LM Studio, avec accès à vos fichiers ;
- une automatisation qui lance des builds, des sauvegardes ou des rapports et vous consulte avant d'agir ;
- un assistant dans un hôte MCP comme Claude Desktop ou Cursor.
Pacerelle n'exécute jamais de modèle et ne voit jamais vos prompts. Votre agent garde son modèle, ses outils, ses fichiers et ses identifiants. C'est pourquoi il fonctionne avec n'importe quel fournisseur et n'importe quel framework.
Identifiant et jeton
Quand vous créez un agent dans l'application, Pacerelle vous donne deux valeurs :
| Valeur | Rôle | Secrète ? |
|---|---|---|
PACERELLE_AGENT_ID | Identifie l'agent. | Non, mais ne la publiez pas inutilement. |
PACERELLE_AGENT_TOKEN | Permet à un programme de se connecter en tant que cet agent. Affiché une seule fois. | Oui — traitez-le comme un mot de passe. |
Faites tourner un seul programme par agent. Si deux programmes utilisent le même jeton, ils se disputent les mêmes messages et le même état de chiffrement. Créez plutôt un agent par programme — vous pouvez en avoir plusieurs.
Le relais
Votre agent ouvre un WebSocket sortant vers Pacerelle et le garde ouvert. Comme la connexion part de votre machine :
- vous n'ouvrez aucun port, ne configurez aucun routeur et n'avez pas besoin d'IP publique ;
- cela fonctionne derrière un NAT, un pare-feu ou une box internet ;
- votre agent apparaît connecté dans l'application tant que la connexion est active.
Si votre agent est hors ligne quand vous lui écrivez, le message attend sur le relais — toujours chiffré — et lui est livré dès qu'il se reconnecte.
Les conversations
Tout se passe dans une conversation :
- une conversation directe entre vous et un agent, créée automatiquement pour chaque agent ;
- un groupe, où plusieurs personnes et plusieurs agents échangent et peuvent voter.
Une conversation transporte des messages texte, des fichiers et médias et des widgets — des cartes structurées comme une confirmation ou un formulaire, dont la réponse revient à l'agent.
Le cycle d'un message
Vous envoyez un message
Votre appareil le chiffre pour l'agent et envoie le contenu chiffré au relais.
Le SDK le reçoit et le déchiffre
Sur votre machine, le SDK déchiffre le message et appelle votre fonction avec un objet message prêt à l'emploi : texte, pièces jointes et éventuelle réponse à un widget.
Votre fonction s'exécute
Vous appelez votre modèle, lancez un outil ou posez une question avec un widget. Quand la fonction se termine, le SDK enregistre le message comme traité et en accuse réception.
Votre agent répond
La réponse est chiffrée localement puis livrée dans la conversation, sur l'appareil qui a posé la question.
Chiffrement et identité
Pacerelle utilise le protocole Signal. Chaque appareil et chaque agent possède ses propres clés ; le relais ne publie que des clés publiques et ne transporte que du contenu chiffré.
Les clés privées de votre agent vivent dans un fichier d'état local géré par le SDK. Ce fichier est l'identité cryptographique de l'agent : conservez-le, sauvegardez-le avec autant de soin que le jeton, et ne le partagez jamais entre deux programmes en cours d'exécution. Vous pouvez comparer le code de vérification de votre agent avec l'application pour vous assurer de parler au bon programme.