Sécurité
Chaque garantie rattachée à ce qui la tient, une garde, un test, une propriété de compilation, et celles que rien ne tient encore, dites franchement.
Livré dans la construction courante. Vous pouvez le faire sur votre machine aujourd’hui.
Une page de sécurité qui énumère des intentions est une page de réclame. Chaque ligne ci-dessous nomme ce qui la tient, et celles que rien ne tient encore le disent.
| Garantie | Tenue par | État |
|---|---|---|
| Les clés vivent dans le trousseau macOS, jamais dans un fichier, une base ou un journal, et ne partent que chez le fournisseur auquel elles appartiennent | Aucun chemin de code n’écrit une clé dans un fichier, une base ou un journal | Tenue |
| Aucun chemin d’écriture vers un courtier | Le flux de marché n’expose aucune méthode d’écriture, vérifiable par compilation | Tenue |
| Un rôle ne voit que les outils que ses capacités couvrent | Le registre d’outils filtre par capacité ; deux tests tiennent la porte | Testée |
| Aucun rôle ne tient à la fois les données de l’utilisateur et un accès extérieur arbitraire | Un audit au démarrage sur tout le roster ; une violation empêche l’application de s’ouvrir | Tenue au démarrage |
| Exécuter du code et atteindre l’extérieur ne se cumulent jamais | Le même audit, le bac à sable coupe le réseau, l’audit garde son sens à la coupure | Tenue au démarrage |
| Écrire un classeur n’ouvre aucun réseau | La capacité est classée parmi celles sans accès extérieur | Testée |
| Un appel d’outil ne peut pas choisir son chemin de fichier | Le schéma de l’outil ne porte aucune clé de chemin ; une garde inspecte le schéma | Testée |
| Une adresse de source portant un secret est caviardée avant le journal | Le rédacteur de provenance caviarde à l’entrée | Testée |
| Une carte tourne dans son propre atelier isolé | Une carte, un processus, un atelier | Testée |
| Une carte ne peut pas lire l’atelier d’une carte voisine | Mode de configuration strict sur le CLI, plus la liste de refus déposée | Mesurée le 2026-08-26 |
| Quitter arrête tout processus que l’application a démarré | Le chemin de sortie parcourt les processus démarrés | Testée |
| Un moteur absent ne coûte rien | Le contrôle préalable refuse le format avant qu’aucun processus ne démarre | Observée en exécution réelle |
| Le serveur de Deskworth ne voit jamais vos données | Le schéma du plan de contrôle est vérifié par une garde mécanique, la liste ne peut donc pas grossir en silence | Testée |
#Le serveur d’outils local
Il se lie à l’adresse de bouclage sur un port que le système choisit, et chaque appel porte un jeton porteur délivré à une carte. Un appel sans jeton connu est refusé sans qu’on lui dise pourquoi.
- DISPONIBLEUn jeton porteur par carteChaque carte désigne le même serveur avec son propre jeton, et aucune carte ne voit celui d’une autre. Le jeton est écrit dans la déclaration d’atelier de la carte.
- DISPONIBLEBouclage seulAucune autre machine ne peut l’atteindre. L’adresse n’est pas configurable, et un connecteur tiers n’a pas le droit de prendre le nom du serveur.
- PRÉVUValidation d’origine à chaque requêteLa révision courante du transport exige qu’un serveur valide l’origine des requêtes entrantes et refuse une origine invalide, précisément pour défendre un serveur local contre une page dans un navigateur 3. Ce serveur est antérieur à cette révision et s’appuie sur le jeton par carte à la place. C’est un écart de conformité, et il est écrit ici plutôt que tu.
#Un contenu récupéré est une donnée, jamais une instruction
Tout ce qu’un outil récupère à l’extérieur, un dépôt réglementaire, une dépêche, une page, est traité comme une donnée. Ce n’est jamais exécuté comme une instruction adressée à l’agent. C’est une règle de conception du système de capacités plutôt qu’un filtre appliqué après coup, et les outils qui rendent de la prose de tiers le déclarent : l’avertissement est attaché par le serveur au lieu d’être laissé à la mémoire de qui a écrit l’outil.
#Ce qui n’est pas prouvé
- La frontière des sous-agents est écrite et testée, et rien ne l’appelle. L’héritage de la portée et du budget n’est donc éprouvé dans aucune délégation réelle.
- Une interruption brutale venue de l’extérieur contourne le chemin de sortie. Un processus orphelin a été observé exactement de cette manière. C’est le comportement attendu d’un signal, pas une fuite du chemin de sortie.
- Aucun canal de signalement de faille n’est publié à ce jour. Voyez la page Sécurité des ressources pour ce que cela veut dire aujourd’hui.
#Sources
- Deskworth OS, product state at 0.0.23DeskworthDocument interne, non publié
- The canonical role registry, mirrored on this siteDeskworthDocument interne, non publié
- Model Context Protocol, Streamable HTTP transportModel Context Protocol projecthttps://modelcontextprotocol.io/specification/2026-07-28/basic/transports/streamable-http
- The tool registry, mirrored on this siteDeskworthDocument interne, non publié