Des loops d'agents IA qui construisent votre application, et la finissent.

Un architecte, un développeur, un relecteur et un testeur se passent le travail autour d'un ring sur votre propre ordinateur. Lorsque les tâches se terminent, vous obtenez un rapport final, et votre application est accessible en un clic dans un aperçu en direct.

Gratuit avec des modèles gratuits, vos propres clés ou des modèles locaux · Windows, macOS, Linux

Une invite s'arrête lorsque le modèle s'arrête.

Demandez une application à un seul modèle et vous obtenez une seule réponse. Dans un loop, cette réponse est la première passe : le bubble suivant la lit, un contrôle échoué l'envoie au correcteur pendant que le loop attend, et le ring tourne à nouveau.

Une invite

InviteLe modèle a écrit 14 fichiers
  • Relunon
  • Tests exécutésnon
  • Commence par une commandeinconnu

Un loop exemple de journal

  1. tour 1DéveloppeurWrote app/src/App.tsx (+142/-0)PASS
  2. tour 1RelecteurVisual Review: Failed — 2 blockingFAILCorrecteur
  3. tour 1CorrecteurEdited app/src/App.tsx (+9/-4)PASS
  4. tour 1Testeurnpm test exited 0PASS
  5. tour 2RelecteurVisual Review: Passed — 0 blockingPASS
Fonctionnement

D'une phrase à un tableau qui s'exécute.

  1. 01

    Dites au Manager ce que vous fabriquez.

    Le Manager est un chat qui planifie le tableau avec vous. En mode Plan, il lit votre dossier, pose les questions nécessaires et écrit des cartes dans le Task Book une fois que vous êtes d'accord.

  2. 02

    Passez à Build.

    Build propose les loops : qui siège dans chaque ring, quel dossier chacun peut modifier et où va le travail lorsqu'un contrôle échoue. Rien n'est placé tant que vous ne pressez pas Générer.

  3. 03

    Appuyez sur Lecture. Les loops s'exécutent en même temps.

    Chaque bubble exécute une passe, et sa sortie constitue l'entrée du bubble suivant. Par défaut, un Sub-loop s'exécute lorsque le bubble qui le précède échoue, de sorte qu'une révision échouée va au Fixer pendant que le loop attend. Des limites arrêtent un loop qui continue d'échouer au lieu de le laisser passer toute la nuit.

  4. 04

    Récupérez le résultat fini.

    Lorsqu'une exécution se termine faute de travail, l'application rédige un rapport final à partir de l'historique, avec un aperçu en direct de votre application à côté.

Un suivi d'habitudes. Une page, React, enregistrée dans le navigateur.

Je vais rédiger les cartes une fois qu'un point sera réglé.

En attente d'une décision

Quand les habitudes d'une journée doivent-elles se réinitialiser ?

À minuit heure locale recommandéÀ l'ouverture de l'application chaque jourOu écrivez la vôtre…

Générer ce tableau ?

Appécrit app/
ArchitecteDesignerDéveloppeurRelecteurFixTesteur
Fix · ON_FAILCorrecteur
Docsécrit docs/
ChercheurDocumentaliste
AppRelecteur · tour 4Exécutions maximales de la loop19 sur 100
DocsDocumentaliste · tour 2Exécutions maximales de la loop4 sur 100

Task Book

0Draft
3Approuvé
2En cours d'implémentation
1Examen
6Terminé
0Bloqué
DéveloppeurPASSRelecteurFAILCorrecteur

L'application est terminée. Son rapport et son aperçu sont prêts.

L'exécution s'est terminée et a rédigé un rapport final : ce qui a été construit, comment l'exécuter, ce qui a été testé et ce qui manque.

Rapport final
Aperçu en directEn cours

Les éléments qui maintiennent l'intégrité d'un loop.

Les exécutions longues fonctionnent lorsque chaque bubble a un rôle précis, une portée limitée et un endroit où envoyer ses erreurs.

Plusieurs loops, un seul tableau

Chaque loop exécute sa propre ligne à son propre rythme. Les loops s'échangent du travail via le Task Book et les fichiers sur disque, jamais par le contexte des autres.

Quatre modes Manager

Un mode définit ce que le Manager est autorisé à modifier. Vous seul le changez, et Build n'écrit aucun code.

Un filtre sur chaque commande

Les commandes sont analysées avant leur exécution. Les validations et les suppressions demandent d'abord l'autorisation ; les shells, l'accès distant et les chemins hors du projet sont refusés.

  • Anthropic
  • OpenAI
  • Google
  • OpenRouter
  • NVIDIA
  • Ollama
  • LM Studio

Sept fournisseurs, vos clés

Choisissez un modèle par bubble, ou un pool allant jusqu'à huit qui passe au suivant si l'un d'eux est indisponible ou soumis à une limite de débit. Les offres gratuites et les modèles locaux sont pris en compte.

Leçons conservées

Lorsqu'un appel est refusé, le loop en tire une leçon qui est transmise à la passe suivante. Vous pouvez accepter, rejeter ou oublier chacune d'elles, et définir son niveau de certitude.

Terminé signifie que vous pouvez le vérifier.

Une exécution qui se termine d'elle-même fournit trois éléments. Vous lisez ce qui s'est passé au lieu de demander à un modèle comment cela s'est déroulé.

RapportTerminé
  • S'exécute avec une seule commande, depuis un README
  • Les tests réussissent
  • Présentable, la révision visuelle est passée avec succès.

Ce qui a été construit

  • app/src/App.tsx+142
  • app/src/habits.ts+61
  • app/src/App.test.tsx+48
  • app/README.md+22

Cartes du Task Book terminées : 9

Comment l'exécuter

Installer d'abord :

npm install

Depuis README.md :

npm run dev

Ce qui a été testé

npm test

Réussi, 29/09/2026 14:14:07.

Ce qui manque

Rien de visible dans l'historique de l'exécution.

Examen visuel : réussi

1280 × 800 et 390 × 844 · 0 bloquant

En courslocalhost:5173
Aujourd'huiSérie de 6 jours
  • Lire 20 pages
  • Marcher 30 minutes
  • Pas de téléphone après 22:00
+ Ajouter une habitude
Exemple de transmission provenant d'une petite exécution de suivi d'habitudes.
  1. Examen visuel

    Le relecteur ouvre l'application dans un vrai navigateur aux largeurs d'ordinateur et de téléphone. Les pages blanches, les dépassements, les images cassées et le texte fictif entraînent un échec immédiat. Si vous avez défini un modèle de vision, il évalue également les captures d'écran par rapport à votre DESIGN.md. La ligne Présentable du rapport indique son verdict.

  2. Rapport final

    Généré à partir de l'historique de l'exécution, sans demander à un modèle de s'auto-évaluer : ce qui a été construit, la commande pour l'exécuter, la dernière série de tests avec son code de sortie, et ce qui manque encore.

  3. Aperçu en direct

    Le serveur de développement de votre application, un par tableau et isolé de l'exécution. Une nouvelle exécution ne l'arrête pas, permettant à une application Vite de suivre les modifications du loop. Démarrez, redémarrez et arrêtez-le depuis l'onglet Rapport.

L'application s'exécute là où se trouve votre code.

Perfica est une application de bureau. Votre code est uniquement envoyé au modèle que vous choisissez, et avec un modèle local, il ne quitte jamais l'ordinateur.

S'exécute sur votre ordinateur
Chaque exécution et chaque tour du Manager sont gérés par un processus sur cette machine. Aucun serveur Perfica ne se trouve entre vous et votre code.
Les clés restent sur cet appareil
Stockées de manière chiffrée (AES-256-GCM) sur cette machine et jamais conservées dans la page. L'application ne détient aucune clé propre.
Aucun compte requis
Tout fonctionne sans compte. Un compte sert uniquement à la synchronisation, ce à quoi Cloud est destiné.
Votre projet reste un dossier
Le tableau, le Task Book et l'historique des exécutions résident dans un dossier au sein de votre projet qui s'exclut automatiquement de git. Si le dossier n'est pas encore un dépôt git, Perfica le transforme en un tel dépôt pour que chaque passe puisse être validée, et vous en informe au préalable. Cela n'est jamais fait sur votre dossier personnel ou à la racine d'un lecteur.
Les secrets sont interdits d'accès
Les agents ne peuvent pas lire les fichiers .env, les clés ou les certificats, et leurs commandes s'exécutent sans variables portant des noms tels que KEY, SECRET ou TOKEN.
Rien de volumineux n'est téléchargé sans demande
L'image Docker du sandbox, le navigateur des agents et le modèle de dictée ne sont téléchargés que lorsque vous les activez. Les mises à jour et la liste des prix des modèles proviennent de GitHub.
Tarification

Gratuit à l'utilisation. Cloud lorsque vous voulez la synchronisation.

Gratuit

$0

Toute l'application. Tous les loops, bubbles, modes et outils.

  • Vos propres clés pour Anthropic, OpenAI, Google, OpenRouter ou NVIDIA
  • Modèles gratuits provenant d'une clé OpenRouter ou Gemini gratuite, ou modèles locaux via Ollama et LM Studio
  • Bac à sable de commandes, recherche web, examen visuel, rapport final et aperçu
  • Aucun compte
Télécharger

Cloud

Bientôt disponible

$36/ an

Tout ce qui est inclus dans Gratuit, sur toutes vos machines.

  • Tableaux synchronisés sur vos appareils
  • Un coffre-fort chiffré pour vos clés de fournisseur, transmis uniquement à l'application sur un appareil connecté
  • Facturation annuelle

Le Cloud ne peut pas encore être acheté. Rien dans l'application n'en a besoin.

Des questions, des réponses claires.

Plus d'informations dans les documentation.

Combien coûte Perfica ?

L'application est gratuite. Vous payez votre fournisseur de modèle pour ce que vos bubbles consomment, ou rien si vous utilisez des modèles gratuits ou locaux. Le Cloud, lorsqu'il sera disponible, coûtera 36 US$ par an.

Puis-je commencer sans payer pour une clé ?

Oui. Démarrer gratuitement, le premier écran de configuration, vous guide à travers une clé OpenRouter gratuite et une clé Gemini gratuite en deux minutes environ, et votre premier loop s'exécute sur des modèles gratuits. Lorsqu'un niveau gratuit est épuisé pour la journée, le loop se met en pause et redémarre tout seul. Ollama et LM Studio exécutent des modèles sur votre propre ordinateur sans aucune clé.

Mon code quitte-t-il mon ordinateur ?

Uniquement dans le cadre des invites que vos bubbles envoient au fournisseur de modèle que vous avez choisi, et sous forme de requêtes de recherche lorsqu'un agent effectue une recherche sur le web. Avec un modèle local via Ollama ou LM Studio, les invites ne quittent jamais la machine.

Que signifie « terminé » ?

Une exécution s'arrête lorsqu'elle n'a plus de travail à faire. Le rapport indique qu'elle est terminée lorsque le README donne une seule commande pour démarrer l'application, que la dernière série de tests est passée, qu'aucun bubble ne s'est terminé sur FAIL ou ERROR et que l'aperçu n'a pas planté. Tout ce qui n'atteint pas ce niveau est répertorié dans « Ce qui manque ». Il indique également si l'application est présentable, d'après l'examen visuel du Relecteur, sans que cela soit une condition pour qu'elle soit terminée.

Les agents peuvent-ils exécuter tout ce qu'ils veulent ?

Non. Chaque bubble ne détient que les outils que son rôle lui accorde, et ses outils de fichiers écrivent uniquement à l'intérieur du dossier de son loop. Lorsque le mode sandbox est actif, ses commandes y restent également. Les commandes passent par une protection qui autorise, demande ou refuse; les validations, envois et suppressions vous demandent d'abord confirmation, sauf si vous activez Full Auto.

Quels modèles puis-je utiliser ?

Anthropic, OpenAI, Google, OpenRouter et NVIDIA avec une clé, ainsi que n'importe quel modèle que vous exécutez dans Ollama ou LM Studio. Un bubble peut utiliser un modèle ou un pool allant jusqu'à huit modèles qui change lorsque l'un d'eux est occupé ou a épuisé son quota.

Pourquoi Windows m'affiche-t-il un avertissement lors de l'installation ?

Les versions ne sont pas encore signées numériquement, donc Windows SmartScreen émet un avertissement la première fois. Pour la même raison, l'application macOS ne peut pas se mettre à jour elle-même; téléchargez les nouvelles versions depuis la page des publications.

Qu'est-ce que le Cloud ?

Un abonnement annuel facultatif, à 36 US$, pour synchroniser vos tableaux entre vos appareils et conserver vos clés dans un coffre-fort chiffré. Il n'est pas encore en vente.

Donnez-lui un projet. Obtenez une application qui fonctionne.

Windows · macOS · Linux