Démarrer une session interactive
Les sessions interactives fournissent une interface conversationnelle avec Bob directement dans ton terminal, permettant une assistance en temps réel pour tes tâches de développement.

Quand utiliser une session interactive
Les sessions interactives conviennent le mieux pour :
- Les sessions de codage exploratoires.
- Le débogage et le dépannage.
- L'apprentissage de nouveaux concepts ou technologies.
- Les tâches nécessitant plusieurs échanges.
- Les projets où tu dois réviser les changements avant qu'ils soient appliqués.
Démarrer une session interactive
Utilise la sous-commande bob chat pour démarrer une session interactive dans ton terminal.
Syntaxe
bob chat [options]Démarrer une session
Ouvre une nouvelle fenêtre de terminal.
Quand tu démarres Bob Shell pour la première fois, tu dois te connecter avec ton IBMid et accepter le contrat de licence.
Navigue jusqu'au répertoire principal de ton projet.
Exécute la commande suivante pour démarrer une session interactive :
bob chatConseils pour une utilisation efficace
- Sois précis dans tes demandes pour obtenir des réponses plus ciblées.
- Utilise les références
@pour fournir du contexte de code si nécessaire. - Pour les tâches complexes, décompose-les en étapes plus petites.
- Utilise les slash commands pour accéder rapidement aux fonctionnalités courantes.
- Quand tu travailles avec de grandes bases de code, dirige Bob Shell vers les fichiers les plus pertinents.
Utilisation de base
Interagir avec Bob Shell
- Tape tes instructions ou questions directement dans le terminal.
- Appuie sur Entrée pour envoyer ton message à Bob.
- Bob Shell répond avec son analyse et ses suggestions.
- Pour l'utilisation d'outils (comme lire ou écrire des fichiers), tu es invité à approuver ou refuser chaque action.
Approbations d'outils
Quand Bob Shell demande à utiliser un outil, une boîte de dialogue d'approbation apparaît. La boîte de dialogue offre les options suivantes :
| Option | Description |
|---|---|
| Approve Once | Autoriser cet appel d'outil spécifique à continuer. Tu seras à nouveau invité pour les appels futurs. |
Approve <group> tools for task | Autoriser tous les outils du même groupe d'outils pour le reste de la tâche. Non affiché pour les outils MCP. |
| Always Allow Command for task | Autoriser une commande shell spécifique pour le reste de la tâche. |
| Reject | Refuser l'appel d'outil. Bob Shell ne continue pas avec l'action. |
Tu peux aussi ajouter une note optionnelle lors de l'approbation ou du refus d'un appel. La note est transmise au modèle en tant que contexte supplémentaire.
Pour basculer l'approbation automatique sans ouvrir la boîte de dialogue, appuie sur Ctrl+F sur macOS ou Alt+F sur Windows, Linux et WSL.
Appuie sur Escape pour interrompre Bob pendant qu'une réponse est en cours de diffusion.
Conversations multi-tours
Bob Shell maintient le contexte tout au long de ta conversation, te permettant de :
- Poser des questions de suivi.
- Affiner des demandes précédentes.
- Construire sur des réponses antérieures.
Référencer des fichiers et ressources
Utilise le symbole @ pour référencer des fichiers de ton projet :
Explain the functionality in @src/main.jsCela indique à Bob Shell de lire et d'analyser le fichier spécifié avant de répondre.
- Les fichiers sont intégrés jusqu'à 100 Ko par fichier.
- Le contenu intégré total pour toutes les mentions
@est limité à 500 Ko. - Les répertoires affichent jusqu'à 50 entrées.
Tu peux aussi référencer des ressources Model Context Protocol (MCP) exposées par des serveurs connectés en utilisant le format server:resource-name :
@my-server:schema.jsonRéférencer des skills
Tape $ suivi du nom d'un skill pour ouvrir le sélecteur de skills et insérer une référence de skill dans ton prompt.
Voir les modifications de fichiers
Quand Bob Shell doit modifier des fichiers, il t'affiche les changements proposés dans le terminal avec une vue diff CLI.
Utiliser les slash commands
Tape / pour accéder à un menu de commandes disponibles :
- Commandes intégrées telles que
/helppour obtenir de l'aide - Commandes de changement de mode telles que
/mode ask - Commandes personnalisées que tu as créées
Pour une liste complète des commandes disponibles, consulte Slash commands dans Bob Shell.
File d'attente de messages
Quand Bob diffuse activement une réponse, tu peux mettre en file d'attente des messages supplémentaires plutôt qu'attendre. Appuie sur Tab pour mettre en file d'attente la saisie actuelle. Les messages en file d'attente sont envoyés automatiquement dans l'ordre dès que chaque tour se termine.
| Touche | Action |
|---|---|
Tab | Mettre en file d'attente la saisie actuelle (ou soumettre immédiatement si inactif) |
↑ | Déplacer le focus vers la liste de la file d'attente |
Enter | Modifier l'élément sélectionné dans la file d'attente |
Tab (dans la file d'attente) | Envoyer immédiatement l'élément sélectionné |
Delete / Backspace | Supprimer l'élément sélectionné de la file d'attente |
Shift+K / Shift+J | Réordonner l'élément sélectionné vers le haut / bas |
Pied de page de statut
Le pied de page sous le champ de saisie affiche des informations de session en direct :
| Champ | Description |
|---|---|
| Mode | Nom du mode actif (par exemple, Agent Mode) — un suffixe rouge (auto-approve) apparaît quand l'approbation automatique est activée |
| Context | Tokens utilisés par rapport à la taille de la fenêtre de contexte, avec un pourcentage |
| Cost | Coût accumulé pour la tâche actuelle en Bobcoins (🅞) |
Gestion des sessions
Reprendre une session précédente
Tu peux reprendre une session précédente au démarrage de bob chat :
bob chat --resume <task-id>
bob chat --resume latestPour trouver l'ID de tâche d'une session précédente, utilise bob --list-tasks :
bob --list-tasksSe connecter à une instance nommée
Utilise --instance-id pour te connecter à une instance nommée spécifique plutôt que d'en démarrer une nouvelle :
bob chat --instance-id my-projectFlags utilitaires généraux
Certains flags sont invoqués directement avec bob, pas avec bob chat ou bob run. Les flags suivants sont disponibles :
| Flag | Description |
|---|---|
--list-tasks [n|all] | Lister les tâches sauvegardées pour le workspace actuel et quitter. Par défaut 20. Passe un nombre ou all pour contrôler combien sont affichées. |
--limit <n> | Nombre maximum de tâches à afficher avec --list-tasks. |
--show-license | Afficher le contrat de licence IBM et quitter. |
Sortie lisible par machine
Quand stdout n'est pas un TTY — par exemple, quand tu rediriges ou canalises la sortie — --list-tasks passe d'un tableau lisible par l'humain à NDJSON, avec un objet JSON par ligne.
Chaque ligne a la forme suivante :
{"id":"<uuid>","title":"<string>","status":"<string>","workspace":"<file-uri>","updatedAt":<unix-ms>}| Champ | Type | Description |
|---|---|---|
id | string (UUID) | Identifiant unique de tâche, utilisable avec --resume |
title | string | Titre de la tâche, revenant au premier message, puis id |
status | string | Statut de la tâche (active, completed, paused) |
workspace | string (file URI) | Chemin absolu du workspace en tant qu'URI file: |
updatedAt | number | Horodatage de dernière mise à jour en millisecondes Unix |
Exemples
# Canaliser vers jq
bob --list-tasks all | jq '.id'
# Sauvegarder dans un fichier puis traiter
bob --list-tasks 100 > tasks.ndjson
# Afficher le contrat de licence
bob --show-licenseOptions
| Option | Description |
|---|---|
--instance-id <id> | Se connecter à une instance nommée spécifique plutôt que d'en démarrer une nouvelle |
--resume <task-id> | Reprendre une tâche précédente par son ID |
--resume latest | Reprendre la tâche la plus récente |
--mode <mode> | Mode de démarrage (par exemple, agent, plan, ask) |
--log-level <level> | Verbosité des logs : error, warn, info, debug, ou trace |
--auto-approve | Supprimer les invites d'approbation d'outils pour la session. N'a aucun effet dans les dossiers non fiables. |
--trust | Persister le dossier actuel comme fiable, en sautant la boîte de dialogue de confiance du premier accès. Équivalent à sélectionner manuellement « Faire confiance au dossier ». Voir Dossiers fiables. |
--team-id <id> | Exécuter sous un ID d'équipe spécifique (requis lors de l'utilisation d'une clé API de type general) |
Désinstallation
Supprime Bob Shell de ton système en utilisant la méthode appropriée à ton installation.
Démarrer une session non interactive
Les sessions non interactives permettent d'utiliser Bob Shell directement depuis la ligne de commande sans entrer dans une session interactive. À utiliser pour l'automatisation, les scripts et les tâches de traitement par lots.