Boîte à outils d'exécution Node.js

Comment y accéder : Barre latérale principale > « Agents » > Sélectionner un agent > Onglet « Toolkits » > « Code & Development » > « Node.js Code Execution »
- Ouvrez votre agent > Onglet « Toolkits » > Catégorie « Code & Development » > Recherchez la boîte à outils « Node.js Code Execution ».
- Cliquez sur « Add to Agent » pour Node.js Code Execution, puis sur « Configure ». Cliquez sur « Save ».
Boîte à outils d'exécution Node.js
Exécutez du code Node.js/JavaScript dans un environnement sandbox sécurisé avec prise en charge des packages NPM et des fonctionnalités de gestion de fichiers. Optimisé pour les charges de travail JavaScript/TypeScript, les intégrations API, le traitement JSON, les opérations asynchrones et l'automatisation web.
Configuration de la boîte à outils Node.js

Configurez l'environnement sandbox Node.js. Cette boîte à outils permet à l'agent d'exécuter du code Node.js/JavaScript, de télécharger des fichiers et de gérer des fichiers dans le sandbox.
Informations de sécurité
- Le code Node.js s'exécute dans un environnement sandbox sécurisé et isolé
- Chaque session de chat dispose de son propre sandbox dédié avec un état persistant
- Les fichiers téléchargés dans le sandbox sont isolés des autres utilisateurs et projets
- Les sandboxes sont automatiquement nettoyés à la fin de la session
Outils disponibles (5/5)
Exécution de code :
- Execute Code : Exécute du code Node.js/JavaScript dans un environnement sandbox sécurisé
Gestion de fichiers :
- Search Files : Recherche des fichiers dans la base de connaissances pour les télécharger dans le sandbox
- Upload File : Télécharge des fichiers depuis la base de connaissances vers le sandbox Node.js
- List Files : Liste tous les fichiers actuellement disponibles dans le sandbox
- Create Download URL : Crée des URLs de téléchargement sécurisées pour les fichiers dans le sandbox
Cas d'utilisation
- Intégration API : Appel des API REST et gestion des flux OAuth.
- Traitement JSON : Analyse et transformation de structures de données JSON.
- Automatisation web : Extraction de contenu de sites web et automatisation de formulaires.
- Transformation de données : Conversion entre formats (CSV, JSON, XML, YAML).
Exemple de code
Vous trouverez ci-dessous un exemple de script Node.js démonstrant l'utilisation de packages NPM, la vérification des dépendances et le pattern requis module.exports avec une fonction point d'entrée main() :
const _ = require("lodash");
const PACKAGES = ["lodash", "@google-cloud/bigquery", "axios"];
const isPackageInstalled = (packageName) => {
try {
require.resolve(packageName);
return true;
} catch (e) {
return false;
}
};
const getPackageVersion = (packageName) => {
if (!isPackageInstalled(packageName)) return {
isInstalled: false,
version: null,
message: "Package is not installed",
package: packageName,
};
const version = require(`${packageName}/package.json`).version;
return {
isInstalled: true,
version,
message: `Package is installed with version ${version}`,
package: packageName,
};
};
const test = () => {
return _.map(PACKAGES, (pkg) => getPackageVersion(pkg));
};
async function main(inputText, maxLength = 100, options = {}) {
/**
* Main function that will be executed
*
* @param {string} inputText - The text to process
* @param {number} maxLength - Maximum length of output (default: 100)
* @param {object} options - Additional processing options (default: {})
*/
return { data: test() };
}
// The entry point function will be called with the arguments you define
module.exports = { main };
Points clés de l'exemple
- Point d'entrée : La fonction
main()est le point d'entrée, exportée viamodule.exports = { main }. - Packages NPM : Utilisez
require()pour importer les packages installés (par ex. lodash, axios, @google-cloud/bigquery). - Vérification des packages : Utilisez
require.resolve()pour vérifier si un package est disponible dans le sandbox. - Prise en charge asynchrone : La fonction principale peut être asynchrone pour gérer les appels API et les opérations sur fichiers.
- Paramètres : Définissez des paramètres avec des valeurs par défaut (par ex.
maxLength = 100,options = {}) pour une entrée flexible. - Format de retour : Retournez les résultats sous forme d'objet (par ex.
{ data: ... }) pour une sortie structurée.