Votre IA reçoit des outils.
Le réseau ne reçoit rien.
Searxly Agentic Tools est un petit serveur qui tourne dans l'app, sur votre machine, et laisse votre propre IA locale appeler les outils web privés de Searxly. Il n'écoute que sur loopback, exige un jeton sur chaque requête, et est désactivé jusqu'à ce que vous l'activiez. Aucune autre machine, et aucune entreprise d'IA, ne peut l'atteindre. Et chaque appel qu'il accepte est filtré par Bulwark — le même bouclier open source qui protège les résumés, étendu pour protéger toute la boucle d'outils.
Searxly expose les outils. Vous apportez le modèle.
Searxly ne livre plus d'IA qui lui soit propre. À la place, il expose sa navigation privée comme outils que le modèle local que vous faites déjà tourner peut appeler via le Model Context Protocol. Cette page porte sur la façon dont ce serveur d'outils est sécurisé — chaque barrière entre les requêtes de votre modèle et le reste de votre machine, et pourquoi rien ici n'atteint jamais un cloud.
Local par construction, désactivé par défaut.
Loopback seul
Le serveur se lie à 127.0.0.1 et jamais à 0.0.0.0. En défense en profondeur, même une connexion qui arriverait d'une façon ou d'une autre depuis hors de la machine est refusée purement et simplement.
Jeton sur chaque requête
Un jeton aléatoire est créé dans votre Keychain et exigé comme identifiant bearer sur chaque appel, comparé en temps constant. Pas de jeton, pas d'outils.
Anti DNS-rebinding
Toute requête portant un en-tête Origin est rejetée, et le Host doit être loopback — pour qu'une page web malveillante ne puisse pas tromper votre navigateur pour piloter le serveur dans votre dos.
Désactivé par défaut
Il est livré désactivé. L'activer est un choix explicite, et son statut s'affiche clairement pendant qu'il tourne.
Interrupteurs par outil
Activez ou désactivez des outils individuellement. Un outil désactivé disparaît de la découverte et est refusé si un modèle tente de l'appeler quand même.
Le contrôle du navigateur est un second opt-in
Les outils qui peuvent agir sur votre onglet — click, type, navigate — sont masqués et refusés jusqu'à ce que vous activiez séparément le contrôle du navigateur.
Rien vers aucun fournisseur d'IA
Les outils empruntent votre propre SearXNG et votre propre machine. Searxly n'envoie rien à aucun hôte de modèle ; l'IA est celle que vous avez choisi de faire tourner.
S'exécute sandboxé
Le serveur vit à l'intérieur de l' App Sandbox avec uniquement l'entitlement de serveur loopback dont il a besoin — rien de plus.
Chaque appel journalisé
Un journal d'activité en direct enregistre chaque appel d'outil, pour que vous puissiez voir exactement ce que votre modèle a fait et quand.
Bulwark sur chaque appel
Chaque appel est filtré par Bulwark avant d'être exécuté, et chaque résultat web est scanné et enveloppé comme données avant que votre modèle ne le lise. Détails ci-dessous.
Les attaques mettent les actions en pause
Si une page tente d'instruire votre modèle, les outils qui agissent sont mis en pause sur le champ. La recherche et la lecture continuent de fonctionner ; seul vous pouvez appuyer sur reprendre.
Boucles emballées stoppées
Une limite de débit glissante et une détection d'appels répétés empêchent un modèle bloqué — ou détourné — de marteler les outils plus vite que n'importe quel vrai travail, et indiquent au modèle exactement combien attendre avant de réessayer.
Demander avant d'agir
Remplir un formulaire est libre, mais soumettre un — poster des données, créer un compte, envoyer un message — s'arrête pour votre approbation en un geste. Seule l'étape irréversible attend sur vous.
Un agent déconnecté
En option, murer l'agent dans un onglet privé déconnecté, pour qu'il ne puisse pas agir comme le vous connecté ni toucher à vos sessions et cookies.
Votre kill switch instantané
Un geste met en pause chaque outil d'action pendant que la recherche et la lecture continuent — dès que quelque chose semble louche, vous l'arrêtez net.
Coordonnées personnelles, expurgées
E-mails, numéros de téléphone, numéros de carte, noms et adresses dans les résultats d'outils sont remplacés par des placeholders par Rampart avant que votre modèle ne les voie jamais — pour qu'un modèle cloud ne reçoive jamais vos données privées.
Lire est facile. Agir, c'est le risque.
Un résumeur qui se fait duper écrit un mauvais résumé. Un agent qui se fait duper fait des choses. Quand un modèle peut appeler des outils, une page hostile ne fausse pas seulement la réponse — elle tente de diriger le prochain appel d'outil. C'est pourquoi chaque appel Agentic Tools passe par Bulwark, notre garde-fou open source, passé de la protection des résumés à celle de toute la boucle agent. Il tourne aussi dans l'autre sens : Rampart retire les informations personnelles de chaque résultat avant que votre IA ne le voie, pour que rien de privé ne fuie vers un modèle cloud.
Une page hostile tente de devenir vos mains.
L'attaque d'agent canonique est une chaîne d'escalade : le modèle lit une page qui cache une instruction, l'instruction lui dit d'appeler un outil différent, et cet appel emporte vos données vers le serveur de quelqu'un d'autre. Bulwark casse la chaîne à plus d'un maillon — pour qu'un modèle même dupé ne puisse pas achever le vol.
- ✓Le texte de la page atteint le modèle enveloppé comme données, pas comme instructions
- ✓L'attaque est détectée — les outils qui agissent sont mis en pause
- ✓Le lien d'exfiltration lui-même est refusé sur sa seule forme
Trois points d'étranglement.
Arguments avant qu'un outil ne s'exécute
Chaque argument est filtré. Les liens qui n'existent que pour emporter des données sont refusés sur leur seule forme — des milliers de caractères de long, un énorme blob encodé dans la query, des identifiants cuits dans l'hôte, ou un schéma non web comme javascript:. Les arguments portant de l'Unicode invisible (le tour des caractères cachés) sont refusés purement et simplement. Le modèle reçoit une raison en langage clair, pas un échec silencieux.
Sorties après qu'un outil web renvoie
Résultats de recherche, pages et instantanés sont assainis, scorés contre les signatures d'injection multilingues de Bulwark, et enveloppés dans une frontière à nonce aléatoire avant que votre modèle ne les lise — le même spotlighting qui protège les résumés. Le contenu arrive comme indubitablement des données; une fausse balise de fermeture dans la page ne peut pas s'échapper de l'enveloppe.
La boucle à travers les appels
Une limite de débit glissante stoppe les boucles emballées. Et la règle de taint: dès qu'un contenu injecté est vu dans un résultat, chaque outil qui agit — click, type, navigate, ouvrir des onglets, enregistrer des favoris — est refusé, tandis que la recherche et la lecture en lecture seule continuent. La pause tient jusqu'à ce qu'un humain y mette fin.
En pause veut dire en pause — jusqu'à ce que vous disiez le contraire.
Quand la protection se déclenche, Réglages → Agentic Tools montre ce qui s'est passé en mots clairs — quel outil a amené le contenu hostile, et ce qui est en pause — à côté d'un unique bouton Reprendre les actions. Le refus que reçoit votre modèle lui dit de vous demander à vous, pas de réessayer. Aucun délai ne le réarme en silence ; aucun modèle ne peut s'en sortir en parlant.
La réserve honnête s'applique ici comme partout : l'injection de prompt n'est pas un problème résolu, et personne ne devrait vous dire que son agent est inviolable. Le travail de Bulwark est un confinement en couches — les attaques faciles échouent purement et simplement, les dures déclenchent un fil en passant, et dès que l'une le fait, votre navigateur cesse d'agir et se met à demander.
Chaque requête traverse un parcours d'obstacles.
Un appel d'outil de votre modèle arrive sur l'interface loopback, porte son jeton bearer, et est contrôlé pour un Origin hostile avant que quoi que ce soit ne s'exécute. Puis Bulwark filtre l'appel lui-même — arguments, débit, et si les actions sont en pause. Ce n'est qu'alors que l'outil s'exécute — contre votre propre SearXNG ou votre propre onglet actif — et le résultat revient scanné, enveloppé et journalisé. À aucun moment une requête, un prompt ou un résultat ne traverse vers un serveur Searxly ou un fournisseur d'IA.
- ✓Liaison loopback — injoignable depuis le réseau
- ✓Jeton, Origin et Host vérifiés à chaque appel
- ✓Bulwark filtre l'appel et enveloppe le résultat
- ✓S'exécute contre votre SearXNG, sur votre Mac
Un backend d'IA de navigateur typique
- ✕Votre prompt et le contexte de page partent vers les serveurs d'un vendeur
- ✕Le modèle est le leur — vous ne pouvez ni le voir ni le remplacer
- ✕Toujours actif, lié à un compte et une identité publicitaire
- ✕Les appels d'outils tournent sans garde — une page hostile peut les diriger
- ✕Vous faites confiance à un pipeline que vous ne pouvez pas inspecter
Searxly Agentic Tools
- ✓Les outils tournent sur votre Mac — rien n'est envoyé à aucune entreprise d'IA
- ✓Le modèle est le vôtre, celui que vous faites tourner
- ✓Désactivé par défaut · loopback seul · protégé par jeton
- ✓Chaque appel filtré par Bulwark — open source, auditable
- ✓Standard ouvert, chaque appel journalisé
Le serveur est local. Votre choix de modèle est le vôtre.
Les outils de Searxly ne quittent jamais votre Mac — mais l'IA qui les appelle est une que vous choisissez. Pointez Agentic Tools vers un modèle local comme Ollama ou LM Studio et toute la boucle est sur l'appareil, vérifiable avec un moniteur réseau. Pointez-le vers un modèle cloud et, bien que Searxly fasse toujours tourner les outils localement, ce que votre client envoie à ce fournisseur est entre vous et eux. Si vous voulez que rien du tout ne parte, faites tourner un modèle local. Agentic Tools a été conçu exactement pour ça.
« La capacité sans la surveillance. »
L'assistant le plus privé est celui que vous faites déjà tourner — muni d'outils honnêtes et de rien à appeler à la maison.