Aller au contenu principal

Assistant Intelligent Agent

PHASE DE TEST

La fonctionnalité Agent est actuellement en phase de test (bêta). Les API et les comportements suivants peuvent être ajustés avant la version finale.

Présentation

ScriptCat v1.4 introduit le système d'Assistant Intelligent Agent, qui offre aux scripts utilisateurs une série de capacités telles que le dialogue IA, l'automatisation du navigateur, la gestion de fichiers et les tâches planifiées.

Les scripts font appel à ces capacités via l'espace de noms CAT.agent.*. Toutes les API nécessitent la déclaration des autorisations correspondantes via @grant.

Modules Fonctionnels

ModuleDéclaration de PermissionDescription
Dialogue@grant CAT.agent.conversationCréer des dialogues IA, envoyer des messages, réception en flux (streaming), outils personnalisés
Opérations DOM@grant CAT.agent.domNavigation de page, capture d'écran, clic, remplissage, défilement, surveillance du DOM
Skill@grant CAT.agent.skillsInstaller/Désinstaller/Appeler des packs d'extension Skill
Tâches Planifiées@grant CAT.agent.taskTâches planifiées Cron, écoute d'événements
Modèle@grant CAT.agent.modelConsulter les informations sur les modèles configurés (lecture seule)
Fichiers OPFS@grant CAT.agent.opfsLire et écrire des fichiers dans l'espace de travail de l'Agent
MCPConfigurer les connexions au serveur MCP (page de gestion uniquement, pas d'API de script)
Développement de SkillGuide de développement SKILL.cat.md + SkillScript

Démarrage Rapide

Un script Agent très simple :

// ==UserScript==
// @name Hello Agent
// @match *://*/*
// @grant CAT.agent.conversation
// ==/UserScript==

const conv = await CAT.agent.conversation.create();
const reply = await conv.chat("Bonjour, présente-toi s'il te plaît");
console.log(reply.content);

Architecture en bref

Le système Agent traverse plusieurs contextes isolés de l'extension du navigateur :

Script utilisateur → Sandbox (Exécution isolée)
↓ WindowMessage
Offscreen (Accès DOM)
↓ ExtensionMessage
Service Worker (Ordonnanceur central)
├── Fournisseur LLM (OpenAI / Anthropic)
├── ToolRegistry (Enregistrement et exécution des outils)
├── SkillScriptExecutor (Exécution des scripts Skill)
├── MCPClient (Client protocole MCP)
└── TaskScheduler (Ordonnanceur de tâches planifiées)

Structure de Stockage

L'Agent utilise le système de fichiers OPFS (Origin Private File System) du navigateur pour stocker les données :

agents/
├── conversations/ # Historique des dialogues
├── attachments/ # Pièces jointes (images, fichiers)
├── skills/{name}/ # Fichiers de pack Skill
│ ├── SKILL.cat.md
│ ├── scripts/
│ └── references/
├── tasks/ # Configuration des tâches et rapports d'exécution
└── workspace/ # Fichiers de l'espace de travail (répertoire pour opfs_*)

Modèles Supportés

FournisseurFormatCaractéristiques
Compatible OpenAIOpenAI Chat Completions APISupporte GPT-4o, DeepSeek et autres modèles compatibles
AnthropicAnthropic Messages APISupporte la série Claude, Mise en cache des invites (Prompt Caching)
ZhipuZhipu APISupporte les modèles de la série GLM

Ajoutez simplement le Fournisseur et la clé API dans « Configuration du modèle » sur la page de gestion pour commencer.

Écosystème Skill

Un Skill est un pack d'extension comprenant des invites, des scripts d'outils et des documents de référence, permettant d'injecter des connaissances spécialisées et des outils personnalisés dans l'Agent.

Dépôt officiel de Skills : scriptscat/skills

Contient des Skills prêts à l'emploi pour l'automatisation du navigateur, les tâches planifiées, les outils de création de Skills, et des exemples de Dialogue/DOM/Configuration.

Méthodes d'installation :

  • Installation par URL — Ouvrez directement l'URL du fichier SKILL.cat.md dans le navigateur, ScriptCat l'interceptera automatiquement et affichera la page d'installation ; vous pouvez également coller l'URL dans Gestion → Agent → Gestion des Skills.
  • Installation par script — Installation programmatique via l'API CAT.agent.skills.install().

Vérification des mises à jour :

Les Skills installés via une URL enregistrent leur source. Vous pouvez vérifier les mises à jour et mettre à niveau en un clic (basé sur la comparaison semver du champ version) dans la page de gestion.

Voir API de gestion des Skills et Guide de développement des Skills.