Il s'agit d'une série en 10 parties expliquant comment Apidog a développé Apidog CLI, un outil en ligne de commande pour les tests d'API et la gestion du cycle de vie des API. Lisez dans l'ordre ou accédez à n'importe quel article qui vous intéresse :
| Titre | Objectif | |
|---|---|---|
| 1 | Nous avons créé 126 outils MCP. Mais ce n'est pas la meilleure solution pour l'Agent | Découverte du problème |
| 2 | Pourquoi nous avons développé le tout nouveau Apidog CLI | Développement de l'architecture |
| 3 | La règle d'or : le CLI produit des faits, le modèle agit sur les faits | Philosophie fondamentale |
| 4 | agentHints : Apprendre aux CLI à parler aux Agents |
Sortie structurée |
| 5 | SKILL : Livrer l'expérience opérationnelle sous forme de code | Expérience opérationnelle |
| 6 | Les chiffres ne mentent pas : 30 % d'appels d'outils en moins, 25 % de jetons en moins | Résultats quantitatifs |
| 7 | Du PRD à la boucle de test : un flux de travail d'agent complet avec Apidog CLI | Tutoriel pratique |
| 8 | Pourquoi la compatibilité CI/CD est non négociable pour les outils d'agent | Perspective DevOps |
| 9 | Branche IA : des modifications de projet plus sûres avec les Agents IA | Couche de sécurité |
| 10 | Le "Spec-First" c'était hier. Bienvenue au "Skill-First". | Vision & futur |
La sortie CLI traditionnelle est destinée aux humains. Les Agents ont besoin de résultats structurés, des raisons d'échec et des suggestions d'étapes suivantes. agentHints transforme l'expérience produit en des directives lisibles par machine.
Le fossé de la sortie CLI
La sortie CLI traditionnelle est conçue pour les humains.
| Succès | Échec |
|---|---|
| Affiche "Succès" ou "Terminé" | Affiche un message d'erreur |
| Peut-être affiche la ressource créée | Peut-être affiche la trace de pile |
| L'humain lit et décide de l'étape suivante | L'humain lit et débogue |
Cela fonctionne pour les personnes. Les humains peuvent :
- Interpréter les messages vagues
- Décider quoi faire ensuite
- Se souvenir du contexte des commandes précédentes
- Appliquer des connaissances spécifiques au domaine pour continuer
Mais les Agents fonctionnent différemment.
Ce dont les Agents ont réellement besoin
Les Agents ne se contentent pas de lire les résultats. Ils doivent relier les résultats à la prochaine chaîne de tâches.
| Besoin de l'Agent | Pourquoi |
|---|---|
| Résultats structurés | Doit analyser la sortie par programmation |
| Raisons de l'échec | Besoin de détails spécifiques, pas de messages génériques |
| Suggestions d'étapes suivantes | Besoin de conseils sur ce qu'il faut faire ensuite |
Un humain voit "Ressource créée avec succès" et sait : "Je devrais probablement vérifier ce qui a été créé, puis peut-être exécuter des tests."
Un Agent voit "Ressource créée avec succès" et... n'a aucune idée de ce qu'il doit faire ensuite.
agentHints : La solution
Apidog CLI ajoute agentHints à sa sortie.
Voici à quoi ressemble une réponse typique :
{
"success": true,
"data": {
"id": "12345",
"name": "Health Check Test Case"
},
"agentHints": {
"summary": "Test case created successfully.",
"nextSteps": [
"Read the created test case back to confirm structure.",
"Add assertions if the test case needs response validation.",
"Add the test case to a test scenario for integration testing.",
"Run related tests after adding to scenario."
]
}
}Trois composants :
| Composant | Objectif |
|---|---|
success + data |
Le résultat réel |
summary |
Résumé lisible par l'humain |
nextSteps |
Suggestions d'étapes suivantes lisibles par machine |
Le problème de l'inertie d'exécution
Voici un problème réel que nous avons observé :
Après avoir créé une ressource avec succès, le modèle continue souvent directement à générer la prochaine écriture.
Exemple :
Agent: Creates test case
CLI: Returns success
Agent: Immediately creates test scenario (without reading back)
Agent: Immediately runs tests
Result: Scenario has wrong structure, tests failDans les processus métier complexes, l'exécution continue mécanique n'est pas appropriée.
L'approche la plus correcte est souvent :
- Créer la ressource
- Relire d'abord
- Confirmer la structure
- Puis procéder
Pourquoi la relecture est importante
Ignorer la relecture cause de réels problèmes :
| Problème | Cause |
|---|---|
| Mauvaises valeurs par défaut | Le serveur remplit les valeurs par défaut que l'Agent n'a pas spécifiées |
| ID associés manquants | L'importation peut générer de nouveaux ID internes |
| Variantes structurelles | Le frontend peut dépendre d'une analyse spécifique |
| Hypothèses incorrectes | L'Agent continue en se basant sur son "imagination" |
Si la structure réelle n'est pas relue, l'Agent continue facilement d'écrire en se basant sur sa propre supposition, et non sur des données réelles.
agentHints comme navigateur
agentHints transforme l'expérience produit en suggestions d'étapes suivantes lisibles par machine.
Il apparaît exactement là où l'Agent doit prendre des décisions.
Exemple après la création d'un cas de test :
{
"agentHints": {
"nextSteps": [
"Read back the created test case with --with-case-detail flag.",
"Validate any updates with cli-schema before writing.",
"Run tests after completing test scenario."
]
}
}L'Agent :
- Lit la sortie
- Analyse
agentHints - Suit
nextSteps[0]: relit le cas de test - Confirme la structure réelle
- Puis procède avec des informations précises
Transformation du rôle du CLI
Cela modifie la signification du CLI dans le flux de travail de l'Agent.
| Ancien rôle | Nouveau rôle |
|---|---|
| Exécuteur de commandes | Navigateur de flux de travail |
| Afficher le résultat | Guider l'étape suivante |
| Sortie lisible par l'humain | Structure lisible par l'Agent |
| Réponse ponctuelle | Guidance continue |
Le CLI devient un navigateur d'état léger.
Arbres de flux de travail intégrés
Apidog CLI intègre des milliers de flux de travail structurés en arbre.
Ce ne sont pas seulement des suggestions codées en dur. Elles sont :
| Caractéristique | Description |
|---|---|
| Conscientes du contexte | Les suggestions correspondent à l'opération spécifique |
| Spécifiques aux ressources | Différentes indications pour les points d'accès, les cas de test, les scénarios |
| Conscientes du flux de travail | Les suggestions reflètent les séquences typiques |
| Informées des erreurs | Différentes suggestions en cas de succès ou d'échec |
Exemple après une mise à jour réussie du scénario de test :
{
"agentHints": {
"summary": "Test scenario updated successfully.",
"nextSteps": [
"Run the test scenario to verify changes.",
"Check the test report for any failures.",
"If failures occur, read back scenario steps for debugging."
]
}
}Exemple après un échec de validation :
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Field 'comparator' has invalid value",
"details": [...]
},
"agentHints": {
"summary": "Validation failed. Fix the errors and re-validate.",
"nextSteps": [
"Review the error details in the output.",
"Adjust the JSON file based on error suggestions.",
"Re-run cli-schema validate before writing."
]
}
}Même les échecs deviennent navigables.
La boucle plus sûre avec agentHints
Traçons un flux de travail complet avec agentHints :
Step 1: Agent creates test case
↓
CLI Output: success + agentHints
↓
agentHints.nextSteps[0]: "Read back the created test case"
↓
Step 2: Agent reads back (with actual structure)
↓
CLI Output: test case structure + agentHints
↓
agentHints.nextSteps[0]: "Add assertions if needed"
↓
Step 3: Agent adds assertions (based on actual structure)
↓
CLI Output: success + agentHints
↓
agentHints.nextSteps[0]: "Run tests"
↓
Step 4: Agent runs tests
↓
CLI Output: test reportChaque étape est guidée. Pas de sauts à l'aveugle. Pas d'hypothèses.
Comparaison : Avec et sans agentHints
| Scénario | Sans agentHints | Avec agentHints |
|---|---|---|
| Après création | L'Agent continue vers la prochaine écriture | L'Agent relit d'abord |
| Après mise à jour | L'Agent suppose le succès | L'Agent vérifie la structure |
| Après validation réussie | L'Agent écrit immédiatement | L'Agent écrit, puis relit |
| Après échec de validation | L'Agent est confus à propos de l'erreur | L'Agent reçoit des suggestions de correction spécifiques |
| Après exécution du test | L'Agent voit réussite/échec | L'Agent reçoit des conseils de débogage |
Et ensuite ?
Maintenant que le CLI peut guider les Agents à travers les étapes suivantes, la question restante est :
Comment les Agents savent-ils quel flux de travail suivre en premier lieu ?
Dans la Partie 5, SKILL : Livrer l'expérience opérationnelle sous forme de code, nous explorerons comment SKILL encapsule les connaissances de flux de travail – quand utiliser les commandes, quelle séquence suivre, et quels champs ne devraient pas être devinés.
Points clés à retenir
- La sortie CLI traditionnelle est orientée vers l'humain ; les Agents ont besoin de directives structurées
- agentHints fournit un résumé + des suggestions d'étapes suivantes dans la sortie JSON
- L'inertie d'exécution pousse les Agents à ignorer la relecture ; agentHints empêche cela
- Le CLI se transforme d'exécuteur en navigateur
- Les arbres de flux de travail intégrés rendent chaque étape navigable
- Même les échecs deviennent exploitables avec agentHints
Téléchargez Apidog pour concevoir, simuler, tester et documenter les API dans un seul espace de travail. En savoir plus sur Apidog CLI pour les tests d'API en ligne de commande, l'automatisation CI et les flux de travail des Agents IA.
bouton
