Appuyez sur / pour rechercher

Toute la documentation
docs Faites-le tourner quelque part Writ Desktop

S’exécute surDesktop

desktop ▸ votre machine

Tout le moteur, sur votre ordinateur.

Writ exécute des workflows d’actions web appelables et des moniteurs entièrement sur votre machine. Le moteur est embarqué en side-car limité au loopback ; rien ne quitte votre ordinateur tant que vous ne reliez pas explicitement un compte cloud.

Les runs locaux sont gratuits et non décomptés sur tous les plans — y compris le gratuit.

install ▸ plateformes

Installez-le.

Une app par plateforme, chacune embarquant le moteur. Choisissez le format attendu par votre machine ; la page de téléchargement propose le bon par défaut.

PlateformeInstalleurBuilds
macOS.dmg · .apparm64 · x86_64 — macOS 11.0 ou ultérieur
Windows.msi · installeur NSISx86_64 — installé pour toute la machine
Linux.deb · AppImagex86_64 · aarch64

Les téléchargements vivent sur la page Writ Desktop — cette page ne pointe jamais un build directement, donc un lien de doc périmé ne peut pas vous en donner un mauvais.

enregistrer ▸ éditer ▸ exécuter

Enregistrez une fois, rejouez toujours.

Vous pilotez un vrai navigateur et l’app écrit le workflow au fur et à mesure. Rien n’est deviné après coup depuis une capture d’écran : chaque action que vous faites devient une étape que vous pouvez ouvrir et modifier.

Chaque action devient une étape modifiableClics, saisies, navigations, attentes et extractions sont capturés en une liste ordonnée que vous pouvez réordonner, retemporiser ou supprimer.
L’assistant IA est dans l’enregistreurIl lit la page en direct et écrit l’extracteur à votre place : vous désignez ce que vous voulez au lieu d’écrire un sélecteur à la main.
Le mode Assist demande d’abordAvant tout ce qui modifie la page — un clic, un envoi, une étape d’achat — l’assistant s’arrête et vous attend.
Runs, planifications et moniteurs restent locauxLe même workflow tourne à l’heure dite ou en moniteur sans aller-retour vers le serveur de qui que ce soit.

Un run local n’entraîne aucun coût de calcul, sur aucun plan, quelle que soit la façon dont vous le lancez — depuis l’app, une planification, un SDK ou un client MCP.

mcp ▸ serveur local

Vos workflows comme outils, en local.

Le desktop enregistre un serveur MCP nommé writ. Ce nom est délibéré : un coordinateur auto-hébergé s’enregistre comme writ-selfhost et Writ Cloud comme writ-cloud, si bien que les trois cohabitent dans la même configuration client sans collision.

Installation en un clic

La page Connect de l’app écrit le serveur dans le fichier de configuration du client pour claude_code, claude_desktop, codex, cursor, windsurf et vscode. Vous pouvez aussi coller la configuration vous-même :

connect.sh

# The app's Connect page prints this with the absolute path to the
# bundled engine already filled in.
claude mcp add writ -- writ-agentd mcp
TransportCe dont le client a besoin
stdio (recommandé)Le client lance le moteur embarqué comme processus enfant. Aucune information d’authentification ne figure dans la configuration.
HTTP directUn client qui parle HTTP fabrique plutôt une clé wlk_ restreinte au run et l’envoie en Bearer.

Trois serveurs, trois noms

Celui que vous connectez décide de l’endroit où le travail s’exécute :

Où ça s’exécuteNom du serveur MCP
Writ Desktop (cette page)writ
Coordinateur auto-hébergéwrit-selfhost
Writ Cloudwrit-cloud

Le serveur local expose 31 outils. Deux d’entre eux — writ_search_api et writ_install_api, qui atteignent la marketplace — n’apparaissent qu’une fois un compte cloud relié. S’y ajoute un outil run_<name> par workflow que vous choisissez d’exposer.

verrous ▸ deux choses distinctes

Le verrou d’app n’est pas la 2FA persona.

On les confond sans arrêt, alors gardez-les séparés : le verrou d’app protège le coffre de Writ sur cette machine. La 2FA persona est le second facteur des sites que vous automatisez. Activer l’un ne change rien à l’autre.

Verrou d’app — votre coffre sur cette machine

Une phrase secrète sur les secrets stockés, avec une temporisation d’inactivité pour que s’éloigner reverrouille.

VerrouillerScelle le coffre immédiatement.
DéverrouillerVotre phrase secrète, saisie dans l’app.
Temporisation d’inactivitéReverrouille après une période sans activité, en secondes.
Codes de récupérationÉmis quand le coffre est déverrouillé — un coffre verrouillé n’en délivre aucun.

Tant que le coffre est verrouillé, tout ce qui a besoin d’un secret stocké échoue en 423 plutôt que de s’exécuter sans lui. Déverrouillez, puis relancez.

2FA persona — les sites que vous automatisez

Une persona porte un identifiant pour un site. Quand ce site demande un second facteur, la persona y répond :

MéthodeCe qui se passe à l’étape
noneLe site ne demande aucun second facteur.
totpLe code est fabriqué sur l’appareil au moment où l’étape s’exécute, et n’est jamais journalisé.
email_otpLe code reçu par e-mail est récupéré et soumis pour vous.
smsLe code reçu par SMS est récupéré et soumis pour vous.

Vous pouvez valider un secret TOTP sans le stocker — collez-le, vérifiez que le code correspond, puis passez à autre chose. L’import depuis une application d’authentification fonctionne pareil. Les secrets que vous saisissez ne sont jamais renvoyés par l’API.

mises à jour ▸ trois canaux

Des mises à jour prévisibles.

Chaque installation est sur exactement un canal, et n’applique que des mises à jour construites pour ce même canal. Le canal ne s’élargit jamais tout seul : une installation stable ne se met pas à tirer de la beta en douce.

CanalPour qui
stablePar défaut. Versions publiées uniquement.
betaSur inscription. Builds de préversion, en avance sur stable.
managedFixé par la politique de l’entreprise, pointant un flux de mise à jour interne.

Ce qui est vérifié avant d’appliquer une mise à jour

Une mise à jour est d’abord vérifiée, appliquée ensuite. Le déploiement est progressif : une version atteint les machines par vagues, pas toutes d’un coup.

SignatureLa version doit être signée par une clé que ce build accepte.
CanalLe canal de la version doit être celui de cette installation.
ExpirationUne version périmée ou rejouée est refusée.
Protection anti-retourUne version plus ancienne ne peut pas écraser une plus récente.
Version minimale supportéeUne version peut exiger un plancher avant de s’installer.
Somme de contrôleLes octets téléchargés doivent correspondre à l’empreinte approuvée avec la version.

Ces mêmes contrôles tournent sans aucun réseau : une mise à jour appliquée depuis un fichier sur une machine cloisonnée ou coupée d’Internet est vérifiée tout aussi strictement. Une politique gérée peut fixer le canal ou le flux de mise à jour, et l’utilisateur ne peut pas la remplacer.

faq

Questions desktop, répondues.

Faut-il un compte pour utiliser Writ Desktop ?
Pas pour enregistrer et exécuter. Le moteur est embarqué dans l’app et fonctionne seul. Relier un compte cloud ajoute les deux outils MCP de la marketplace et permet au travail dispatché depuis le cloud d’atteindre cette machine — tant que vous ne le faites pas, rien ne quitte votre ordinateur.
Les runs locaux coûtent-ils quelque chose ?
Non. Les runs locaux sont gratuits et non décomptés sur tous les plans, y compris le gratuit, et peu importe que le run ait été lancé à la main, par une planification, depuis un SDK ou depuis un client MCP. Seuls les runs cloud sont décomptés.
Quelle différence entre le verrou d’app et la 2FA persona ?
Le verrou d’app est une phrase secrète sur le coffre de Writ sur cette machine, avec temporisation d’inactivité et codes de récupération ; tant qu’il est verrouillé, tout ce qui a besoin d’un secret stocké échoue en 423. La 2FA persona est le second facteur des sites que vous automatisez — none, totp, email_otp ou sms — et les codes TOTP sont fabriqués sur l’appareil au moment où l’étape s’exécute.
Quel nom de serveur MCP le desktop utilise-t-il ?
writ. Un coordinateur auto-hébergé s’enregistre comme writ-selfhost et Writ Cloud comme writ-cloud, si bien que les trois cohabitent dans une même configuration client. Le transport recommandé est stdio, qui ne demande aucune information d’authentification dans la configuration ; un client en HTTP direct utilise plutôt une clé wlk_ restreinte au run.
Une installation stable peut-elle tirer un build beta ?
Non. Un client n’applique qu’une mise à jour dont le canal correspond au sien, et le canal ne s’élargit jamais tout seul. Si votre entreprise fixe une politique gérée, cette politique fige le canal ou un flux interne, et vous ne pouvez pas la remplacer depuis l’app.
L’app peut-elle se mettre à jour sans accès réseau ?
La vérification n’a pas besoin de réseau : signature, canal, expiration, protection anti-retour, version minimale supportée et somme de contrôle sont tous vérifiés localement. Une mise à jour appliquée depuis un fichier sur une machine coupée d’Internet reçoit donc le même traitement qu’une mise à jour téléchargée.

fin ▸ installer

Mettez le moteur sur votre propre machine.

Enregistrez un workflow dans un vrai navigateur, puis exécutez-le autant que vous voulez, gratuitement.