Communitygithub.com

FlyMyAI/flymyai

Utilisez FlyMyAI pour générer des images, vidéos et audio, appeler des services et les comptes connectés de l'utilisateur, obtenir des données web, et exécuter ou planifier des agents cloud. Chargez-le dès que FlyMyAI ou flymy.ai est mentionné.

Qu'est-ce que flymyai ?

Ce skill permet aux assistants IA d'interagir avec la plateforme FlyMyAI afin de générer du contenu multimédia (images, vidéos, audio), d'appeler des services externes via les comptes connectés de l'utilisateur, d'obtenir des données web, et d'exécuter ou planifier des agents cloud. Il est compatible avec les clients MCP (Claude Code, claude.ai, Claude Desktop) ainsi qu'avec l'API REST. Le skill guide l'assistant à travers un processus structuré : découverte des outils et des modèles via des appels comme `search_tools`, configuration des connexions, exécution d'agents, gel (freeze) des agents pour la production, et déploiement via des planifications, webhooks ou templates. Il gère également les comptes multiples, les ensembles de ressources MCP, le partage de connexions, et les serveurs MCP personnalisés. Il met l'accent sur la sécurité (ne jamais coller de clés API dans le chat), l'utilisation des schémas en direct plutôt que de deviner les champs, et la non-répétition automatique des appels ayant un état 'unknown'. Le skill inclut des instructions précises pour éviter les erreurs, comme l'utilisation de `arguments` (et non `params` ou `input`) et la gestion des clés d'opération (`operation_key`).

Compatible avec✓Claude Code✓Codex CLI✓Cursor✓Gemini CLI
npx skills add https://github.com/FlyMyAI/claude-plugins/tree/HEAD/plugins/flymyai/skills/flymyai

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

FlyMyAI - guide d'exploitation de l'assistant

Version de la plateforme : Headless Cloud 1.30.3 (2026-11-04). https://flymy.ai/changelog.md, https://flymy.ai/changelog.json. Sur connexion/actualités : whats_new(since=last_seen_version).

https://flymy.ai/skill.md et https://flymy.ai/AGENTS.md fournissent les mêmes octets. Remote Agents MCP 0.7.0-rc.69 ; SDK Python 1.2.0rc25. Vérifiez les schémas en direct et les paquets installés ; rc.69 n'est pas sur npm.

Commencez ici - vérifiez FlyMyAI ou récupérez

Un appel borné en lecture seule à whoami, tools/list ou search_tools vérifie flymyai. Ne réinstallez pas un serveur connecté. Lisez le schéma update_agent (ou autre) en direct depuis MCP tools/list avant les mutations ; ne devinez jamais les champs.

Sans outils FlyMyAI, ne prétendez pas avoir réussi, n'inventez pas d'outils et ne remplacez pas le partage natif. Utilisez :

  1. Inscription : https://app.flymy.ai/signup
  2. Connectez un service : https://app.flymy.ai/mcp-configs#notion (n'importe quel slug) ; un utilisateur déconnecté s'inscrit et atterrit là.
  3. Partagez-le là : Mes MCP -> Partager -> email et 1 à 30 jours -> envoyer (listé sur https://app.flymy.ai/mcp-configs?tab=shared). "Partager mon Notion avec via FlyMyAI" signifie ce partage MCP personnel, pas le partage propre à Notion.
  4. Ou connectez cet assistant (connexion, pas de clé) : Claude Code, claude mcp add --transport http flymyai https://mcp-agents.flymy.ai/mcp puis /mcp -> Authentifier ; claude.ai ou Claude Desktop, Paramètres -> Connecteurs -> Ajouter un connecteur personnalisé, même URL.

Les clients clés utilisent cette URL (FLYMYAI_MCP_URL) et une X-API-Key provenant d'un gestionnaire de secrets, jamais collée dans le chat. Sans MCP, utilisez REST uniquement avec un FLYMYAI_AGENTS_API_ROOT authentifié (production https://backend.flymy.ai/api/v1/agents) ; sinon signalez que la pré-vérification est bloquée. Une exécution de version candidate doit utiliser un contrat de version candidate explicite, MCP, skill et racines API Agents et ne doit jamais revenir à la production.

Découvrez les services/modèles avec search_tools/list_* d'abord. La découverte n'est pas un succès.

Guides : https://flymy.ai/use-cases/. MCP par nom, action ou catégorie, chacun avec ses actions et une demande de configuration d'assistant : https://flymy.ai/mcp/

Construire un projet

  1. whoami - FlyMyAI est connecté, et à quel compte.
  2. search_tools avec une intention en langage naturel par service, puis get_tool_schemas pour les champs exacts.
  3. Si un service n'est pas configured, add_tool ; l'utilisateur termine le lien hébergé ; confirmez avec list_configured_tools.
  4. create_agent une fois : objectif, available_tools numériques, input_schema, output_schema, model optionnel depuis list_agent_models.
  5. run_agent avec une nouvelle operation_key ; interrogez get_run jusqu'à poll_complete=true ; read_run_result si l'aperçu est tronqué.
  6. Affinez le même agent (update_agent ou append_message) jusqu'à ce que l'utilisateur accepte une exécution terminée.
  7. freeze_agent avec cet ID d'exécution ; interrogez get_compilation jusqu'à status=compiled.
  8. run_frozen avec une nouvelle operation_key et interrogez get_run avant de le déclarer prêt pour la production.
  9. Livraison : une planification (update_compilation), un webhook (triggers_v1_create), un modèle public (set_agent_public), un sous-agent d'un prospect, ou un déploiement de produit.
  10. Média : recommend_model, get_pricing, puis run_model.
SectionDocumentation
Commencez icihttps://docs.flymy.ai/agents/guides/connect-your-agent
Outils et connexionshttps://docs.flymy.ai/agents/concepts/tools
Comptes multiples et ensembles de ressourceshttps://docs.flymy.ai/agents/guides/mcp-resource-sets
Modèleshttps://docs.flymy.ai/api/models-endpoints
Agents, chaque outil MCPhttps://docs.flymy.ai/agents/guides/agent-gateway-reference
Projets, artefacts, siteshttps://docs.flymy.ai/agents/guides/projects
Intégré et reventehttps://docs.flymy.ai/agents/guides/embedded-resale
Browser Usehttps://docs.flymy.ai/mcp/browser-use
Votre propre modèle sur GPUhttps://docs.flymy.ai/cli/intro
Mainteneurs de version uniquementhttps://docs.flymy.ai/agents/guides/release-gates

Outils et connexions

  1. Appelez search_tools avec une intention en langage naturel ; lisez tool, action, runtime_name et configured. Ne téléchargez jamais le catalogue complet par intention.
  2. Appelez get_tool_schemas avec le runtime_name lorsque la recherche n'a pas intégré le schéma de requête ; n'appelez jamais une action d'écriture avec des arguments vides ou devinés pour apprendre son schéma. En cas de not_found, utilisez l'environnement d'exécution de l'agent ou arrêtez-vous.
  3. Si configuré, appelez execute_tool avec exactement tool, action, arguments et une operation_key stable appartenant à l'appelant. Pour sélectionner une instance non par défaut, transmettez son UUID public exact d'outil configuré comme connection_id ; l'omission est prise en charge uniquement lorsqu'une seule connexion éligible est sans ambiguïté. Exécutez les actions OAuth/Composio à l'intérieur d'un agent.
  4. Si non configuré, appelez add_tool avec le slug de l'outil. Il renvoie l'enregistrement de connexion exact ou des conseils avec un lien hébergé https://app.flymy.ai/mcp-configs#<slug>?connection_id=<public UUID>. Une fois que l'utilisateur a terminé, appelez list_configured_tools, faites correspondre le public_id et l'alias exacts, et inspectez is_configured, connection_status, connection_status_reason, connection_status_valid_until et connect_url. N'inventez pas de champ de réponse setup_url.
  5. Pour révoquer exactement une connexion, appelez delete_tool avec son id numérique (REST : DELETE /api/v1/agents/tools/{id}/) ; les connexions sœurs du même kit d'outils continuent de fonctionner, et la ligne révoquée échoue avant tout appel au fournisseur.

Les lignes de recherche portent également ready, access, price et la health sur 7 jours : préférez une ligne prête et saine et citez le price avant un appel payant.

search_tools({"query":"telegram list dialogs"})
get_tool_schemas({"runtime_names":["custom--telegram--telegram_list_dialogs"]})
execute_tool({"tool":"telegram","action":"telegram_list_dialogs",
  "arguments":{"query":"FlyMyAI"},"operation_key":"telegram-dialogs-<uuid>"})

Utilisez arguments ; params ou input renvoie une erreur HTTP 400. outcome=rejected signifie que FlyMyAI ou le fournisseur a refusé avant tout effet (mauvais arguments, configuration manquante, refus du fournisseur) : corrigez l'appel et envoyez-le avec une nouvelle operation_key. outcome=unknown signifie qu'il a peut-être pris effet : conciliez, ne répétez jamais automatiquement.

Sans appels d'outils MCP, POSTez {"tool":"system-utils","action":"search_tools","arguments":{"query":"...","limit":20}} puis get_tool_schemas (au plus 10 noms d'exécution) vers $FLYMYAI_AGENTS_API_ROOT/custom-tools/call/ avec X-API-KEY ; lisez result.schemas[runtime_name].request_schema et appelez le module renvoyé comme tool.

Valeur par défaut personnelle - un compte, sans configuration d'ensemble de ressources MCP

Utilisez mcp_access_mode legacy dans l'espace personnel implicite ; scoped nécessite des octrois d'ensemble explicites. Recherchez par intention, utilisez la configuration hébergée. add_tool sans alias sélectionne la connexion default idempotente. Faites correspondre mcp_tool/alias:"default" dans list_configured_tools ; mettez son id numérique dans available_tools. Exigez is_configured:true : connected est prêt ; setup_required ou reconnect_required nécessite une configuration, verification_pending une lecture en direct bornée. Signalez temporarily_unavailable, ne le contournez jamais.

N'exigez pas d'ensembles de ressources, groupes, créneaux, octrois, responsables, révisions ou mappages pour un premier flux personnel. Ajoutez la connexion exacte à un ensemble plus tard, sans reconstruire l'agent ni reconnecter le compte.

Évoluez vers des comptes multiples et des ensembles de ressources MCP

Les alias sont des étiquettes ; l'autorisation, la répartition et le gel utilisent des ID publics stables. Ajoutez chaque compte avec add_tool et un alias unique (lettres ASCII, chiffres, _, -), créez un ensemble avec create_mcp_resource_set et une operation_key appartenant à l'appelant, écrivez l'adhésion complète avec replace_mcp_resource_set_members à la révision actuelle (rechargez après 409), et octroyez-la via mcp_resource_set_ids avec mcp_access_mode:"scoped" :

support = add_tool({"mcp_tool":"gmail","alias":"support"})
rs = create_mcp_resource_set({"name":"Opérations de boîte de réception",
  "management_mode":"flymyai","operation_key":"inbox-set-<uuid>"})
rs = replace_mcp_resource_set_members({"resource_set_id":rs.public_id,
  "expected_revision":rs.revision,"members":[{"resource_type":"user_mcp_tool",
  "resource_id":support.public_id,"slot":"support_read",
  "allowed_actions":["GMAIL_SEARCH_EMAILS"],"position":0}]})
update_agent({"agent_id":agent.uuid,"available_tools":[],
  "mcp_resource_set_ids":[rs.public_id],"mcp_access_mode":"scoped"})

Un champ de pièce jointe omis est inchangé ; un tableau vide explicite efface cette relation. Incluez l'ancienne connexion default dans l'ensemble si l'agent doit la conserver, puis vérifiez avec get_agent ; sinon, la connexion directe et les octrois d'ensemble forment une union.

  • Un propriétaire peut conserver au plus 25 lignes de connexion pour un kit d'outils, y compris les lignes inactives ; is_active:false ne libère pas un emplacement, la suppression d'une ligne le fait.
  • Les ensembles de propriétaire utilisent management_mode:"flymyai" et omettent principal_id ; un mappage client utilise management_mode:"customer" avec le principal_id exact. N'envoyez jamais external_principal_id obsolète.
  • L'identité du membre est (resource_type, resource_id, slot) : la même ressource exacte peut apparaître dans plusieurs créneaux, et chaque créneau conserve son propre plafond allowed_actions. Omettre ou envoyer allowed_actions:[] signifie sans restriction, pas refuser tout ; pour une autorisation minimale, envoyez les actions de lecture exactes.
  • Une exécution d'agent limitée admet au plus 100 ensembles de ressources MCP, 500 liaisons de connecteur effectives, 100 créneaux logiques, 5 000 entrées d'actions autorisées et 1 Mio de texte d'action autorisée UTF-8. Un graphe d'autorité surdimensionné échoue fermé avant la répartition du fournisseur.
  • create_agent_group partage un ensemble entre agents. Les groupes sont plats : un enfant ou sous-agent n'hérite pas de l'autorité de connecteur de son parent.
  • Lorsque plusieurs connexions accordées peuvent exécuter une action, son schéma d'exécution nécessite _flymyai_connection : transmettez un public_id autorisé, jamais d'alias ou d'ordre de ligne. execute_tool direct utilise le connection_id exact.
  • Le gel enregistre l'adhésion à l'ensemble, les connexions, les créneaux, les plafonds et les révisions : de nouveaux comptes signifient le même UUID d'agent et le même ID de déploiement stable avec une nouvelle version gelée ; les anciennes versions et les mappages de créneaux client ne changent jamais sur place. Sans mutations de portée de ressource, conservez le comportement default et signalez-le ; ne choisissez jamais une première ligne en silence.

Les outils de liste list_configured_tools, list_mcp_resource_sets, list_mcp_resource_set_members et list_agent_groups renvoient {next_cursor, previous_cursor, results}. Utilisez page_size de 1 à 100, traitez cursor comme une chaîne imprimable opaque non vide d'au plus 1 024 points de code Unicode, et repassez le next_cursor opaque inchangé jusqu'à ce qu'il soit nul ; list_agents pagine de la même manière. La liste des outils configurés n'accepte que les filtres exacts mcp_tool et alias ; les lignes sont compactes, donc filtrez par mcp_tool ou passez view=full pour les champs de configuration. Les lignes list_mcp_resource_sets sont des résumés avec member_count et aucun membre imbriqué ; utilisez get_mcp_resource_set pour un ensemble complet borné ou list_mcp_resource_set_members pour une grande collection de membres. Les deux replace_mcp_resource_set_members et update_mcp_resource_set nécessitent la expected_revision actuelle.

Connexions partagées et vos propres serveurs MCP

Le partage MCP personnel donne au destinataire chaque action partagée d'une connexion, lectures et écritures, sur le compte du propriétaire. invite_mcp_user le partage par email ou member_id d'un membre de l'équipe après que l'utilisateur a confirmé la connexion, le destinataire et la période ; accept_mcp_invitation uniquement après que l'utilisateur a accepté de payer pour ses propres appels ; revoke_mcp_access arrête un partage. Les partages acceptés apparaissent sous shared_with_me dans list_configured_tools : vérifiez-le avant de dire qu'un service n'est pas connecté, et appelez-en un avec call_shared_mcp et une operation_key stable. Le destinataire paye ; les informations d'identification du propriétaire ne quittent jamais FlyMyAI. Les annotations d'outil indiquent quelles actions sont en lecture seule. Détails : https://docs.flymy.ai/agents/guides/mcp-personal-sharing

Pour un serveur MCP non présent dans la recherche, appelez add_mcp_server (OAuth : auth_type:"oauth", puis authorize_mcp_server, donnez à l'utilisateur son authorize_url), puis connect_mcp_server ; utilisez discovered_tools uniquement à status:"connected". Appelez-le avec call_mcp_server (server_id, action, arguments exacts, operation_key stable, envoyée comme Idempotency-Key). Détails : https://docs.flymy.ai/agents/guides/mcp-servers

Modèles - découvrez, tarifiez, exécutez

recommend_model({"description":"image d'icône plate bon marché",
  "include_schema":true,"top_n":1})
run_model({"endpoint_id":"flymyai/nano-banana",
  "input":{"prompt":"Un cercle bleu, icône plate"}})

Utilisez le point de terminaison renvoyé, les limites du schéma et le prix ; un appel payant deviné n'est pas une découverte. get_pricing donne le prix d'un modèle listé avant une exécution payante ; sur REST, GET https://backend.flymy.ai/api/v1/demo/catalog/ (pas de clé) donne à chaque modèle public un price (run_price, ou rates, tokens ou run_time basés sur l'utilisation). Les url de fichier généré expirent à url_expires_at (15 min max).

Les modèles de chat portent openai.base_url (https://api.flymy.ai/api/v1/<endpoint_id>/openai/v1) pour le SDK OpenAI avec la clé FlyMyAI comme Bearer : messages texte et image_url, stream, reasoning_effort ; pas de response_format. Guide : https://docs.flymy.ai/guides/llm-openai-compat

tools fonctionnent sur Grok 4.7, DeepSeek V4.1 Flash et Kimi K3.1 Pro. Guides : https://docs.flymy.ai/guides/ + grok-4-7, deepseek-v4-1-flash, kimi-k3-1-pro

Les modèles natifs conservent leur propre entrée et sortie via l'API model-proxy (https://backend.flymy.ai/api/v1/model-proxy/ : catalog/?endpoint_id=<owner>/<name> donne la révision du contrat, contracts/<revision>/ son schéma et son prix ; POSTez operations/ avec votre propre Idempotency-Key, puis GETez l'opération). flymyai/minimax-h3-ref2va (MiniMax H3) : une vidéo de 5 ou 10 s avec son à partir d'une invite et 1 à 12 fichiers de référence (jusqu'à 9 images, 3 clips audio ; téléchargez chacun avec POST /api/v1/agents/files/, transmettez-le...)

Skills associés