docs(help): bring the user guide back in line with the current app The help was written on 2026-10-14 and about forty user-visible changes merged since without touching it, so several pages described controls that no longer exist: Missions still listed four playbooks and a Save step for preferences that now save on each change, the depth editor kept its old names, notifications still had their former switches, and voice input pointed to a microphone button that is not in the composer. Every English page was re-checked claim by claim against the current labels (English UI messages) and behaviour, then the nine translations were updated to match, using each locale's own UI labels. Notable corrections: Missions (Compare two models, autosaving defaults with Apply to / Global / Reset, Subsession nesting depth, prepared hand-offs, retired-task interrupts, the named causes of "Mission Control is unavailable", standalone server support); conversations and history (reasoning/tool durations, token lines adding up the cleanup selection, presets including Nothing, timeline markers following Message content, in-place reveal of long text, Open in session, focus after send, Queue message / Steer now, Retrying); settings (notification routing table and defaults, Stats, Mode, info tips, Server setting badge, localized native menus); shortcuts (72 actions, Clear shortcut, Ctrl/Cmd+K); voice (More actions entries, Save status); files (live Workspace refresh, Show 200 more); OpenCode, install, server and updates (2.1.1 recommended, OpenCode 2 beside an older installation, version card first, private loopback listener for Missions, preview releases offered once all builds are published); providers, integrations, browser, SideCars, desktop and remote pages. Translations also repaired older drift, mainly the project-tab closing passages. The Chat settings table header (Default state, its title, item column, the thinking row and its accessible label) was still English in eight locales; it is now translated so the help can cite what users see. AGENTS.md now asks every PR changing user-visible behavior to update the affected help pages in the same PR, since CI validates structure and links but not whether the text still matches the UI; it also corrects the needs-input notification default. USER_HELP.md no longer claims native menus stay English. Validation: npm run test:help (all ten locales, 25 pages, heading ids unchanged), a full help build, and the i18n and transcript-visibility unit tests.
12 KiB
Conversations
CodeNomad présente les sessions natives OpenCode comme des conversations, avec une hiérarchie pour le travail délégué et des commandes distinctes pour votre prochain envoi.
Les messages affichent du Markdown, du code, des diffs et les images de résultats d’outils prises en charge. La copie de texte, la recherche dans l’historique complet et la voix utilisent des projections textuelles, pas les octets des images intégrées. Contenu des messages change la visibilité sans supprimer les parties enregistrées ; Historique distingue les commandes d’affichage du nettoyage.
Les en-têtes de raisonnement et d’outils indiquent la durée de chaque étape, comptée en direct pendant son exécution ; les durées inférieures à une seconde ne sont pas affichées. Lorsque Tokens est affiché dans Contenu des messages (le préréglage Tout l’affiche), chaque message d’agent se termine par une seule ligne de tokens et de coût après son texte final. Cette ligne additionne le message et les messages contenant les outils et raisonnements que couvre son action Supprimer les outils et raisonnements de cette réponse, dans la transcription chargée ; dépliez-la pour les comptes de raisonnement et de cache. Les étapes qui n’ont exécuté que des outils n’ont pas de ligne propre.
Trouver des conversations et naviguer
- Sélectionnez une ligne sous Sessions, ou utilisez Nouvelle session pour démarrer une conversation parente.
- Dépliez le chevron d’un parent pour voir ses sous-sessions. Un chevron replié affiche l’état le plus urgent de ses descendants : en attente de saisie, actif ou récemment terminé (inactif) ; son infobulle les compte.
- Utilisez Rechercher des sessions…, Sessions principales / Sous-sessions, le filtre de worktree et le tri Activité, Nom ou Worktree pour réduire la liste.
- Utilisez Retour et Avancer dans la barre latérale pour revisiter les conversations affichées.
La navigation normale est hiérarchique ; les résultats de recherche/filtre sont des entrées à plat avec l’identité et le worktree propres à chaque conversation. Une sous-session qui commence à travailler n’est révélée automatiquement que sous la famille de la conversation active. Replier cette branche annule cette révélation automatique pour les descendants actuellement en cours.
Retour/Avancer est un historique de visites par onglet de projet et par fenêtre, pas l’ordre de la liste. Il reste en mémoire, ignore les conversations indisponibles/supprimées et n’est pas restauré après redémarrage. Sélectionner une nouvelle conversation après un retour remplace le parcours suivant. Session précédente / Session suivante dans la palette parcourent plutôt la liste visible.
Choisir Agent, Modèle et Réflexion
- Utilisez les sélecteurs d’agent et de modèle du pied de la zone de saisie avant l’envoi.
- Si le modèle expose des variantes, sélectionnez son effort de Réflexion ; Par défaut laisse la valeur native par défaut.
- Envoyez le prochain prompt et vérifiez les métadonnées agent/modèle de la réponse pour diagnostiquer un résultat.
Une nouvelle conversation démarre avec l’agent qu’OpenCode résout comme agent par défaut, qu’un plugin peut définir, sauf si vous en choisissez un autre. Les infobulles des sélecteurs indiquent leurs raccourcis.
Ces choix d’exécution concernent les envois suivants, pas les réponses antérieures. Lire un ancien passage dans la chronologie ne remplace pas les choix actuels de la zone de saisie par les métadonnées historiques. La visibilité des modèles, les favoris et les connexions fournisseurs se gèrent dans Fournisseurs.
Brouillons et pièces jointes
- Rédigez dans la conversation sélectionnée. Changer de conversation conserve son brouillon au lieu de l’envoyer.
- Choisissez Joindre un fichier… dans le menu Plus d'actions de la zone de saisie, ou déposez ou collez, pour des fichiers de cet appareil ; ou tapez
@pour sélectionner des fichiers du projet, agents ou compétences. - Vérifiez les étiquettes des pièces jointes et retirez tout ce qui n’est pas destiné au prochain envoi.
| Entrée | Source et effet |
|---|---|
| Pièce jointe de l’appareil | Le sélecteur, le dépôt ou le presse-papiers lit des octets depuis l’appareil exécutant l’interface ; ce n’est pas un chemin serveur |
Référence de projet @ |
Résolue dans le projet/la Location de la conversation sur le backend, y compris son worktree |
| Mention d’agent | Joint la référence de l’agent sélectionné plutôt que de modifier les messages passés |
| Compétence | Recherche les compétences de la Location par nom/description et joint une sélection de compétence retirable |
Les fichiers de l’appareil doivent être lisibles et respecter le budget de pièces jointes : au maximum 5 Mio chacun, 10 fichiers et 20 Mio au total. Un fichier refusé n’est pas joint ; lisez l’avis au lieu de supposer que toute la sélection a réussi.
Choisir une compétence retire le jeton @query et ajoute une étiquette. L’envoi efface cette sélection de la zone de saisie, pas les instructions déjà enregistrées par OpenCode avec le message envoyé. Les messages historiques conservent les étiquettes de compétences. Retirer une compétence pendant la modification d’un prompt en attente la laisse retirée de l’envoi de remplacement.
Sur ordinateur, l’envoi place le focus clavier sur la conversation : les flèches, les touches de défilement par page et Espace la font défiler ; taper un caractère revient à la zone de saisie avec ce caractère. Effacer le texte du prompt dans Plus d'actions (par défaut Ctrl/Cmd+K) efface le brouillon de la zone de saisie.
Les brouillons sont un état de travail côté client, pas des messages natifs partagés. La restauration au démarrage peut conserver l’état de saisie pris en charge, mais ne considérez pas un brouillon non envoyé ou une pièce jointe comme une sauvegarde, ni comme disponible sur un autre appareil. Enregistrez le texte important avant d’effacer les données de démarrage ou de fermer un client dont la restauration est désactivée ; voir Bureau.
Commandes et mode shell
- Tapez
/et sélectionnez une commande personnalisée découverte, puis fournissez ses arguments. - Pour une commande shell directe, tapez
!au début d’une zone de saisie vide pour entrer en Mode shell. - Envoyez la commande. Pour quitter le mode shell sans l’exécuter, utilisez Échap, ou Retour arrière dans un champ vide.
Seuls les noms de commandes slash connus passent par le chemin des commandes personnalisées ; un /text inconnu est un prompt ordinaire. Les commandes personnalisées utilisent leur définition native. Les pièces jointes fichier/image ne sont pas envoyées par ce chemin et restent disponibles pour un prompt ultérieur ; le texte collé utilisé dans les arguments est résolu dans ceux-ci.
Le mode shell exécute une demande shell native de session, et ne demande pas au modèle de proposer une commande. Il peut modifier des fichiers et démarrer des processus sur l’hôte d’exécution. Les paramètres d’environnement du profil s’appliquent avant le prochain prompt, la prochaine commande personnalisée ou demande shell ; ils ne redémarrent pas un service existant. Voir Intégrations et Configuration d’OpenCode.
Orienter, mettre en file et modifier les suivis
- Dans Paramètres → Général, activez Mettre les prompts envoyés en file d’attente pour mettre en file les suivis envoyés pendant que la session travaille ; laissez-le désactivé (par défaut) pour orienter la tâche en cours.
- Pendant que la session travaille, envoyez un suivi avec ce comportement. Pour l’autre comportement, choisissez Mettre le message en file d'attente ou Injecter maintenant dans le menu Plus d'actions de la zone de saisie, ou utilisez le raccourci d’envoi alternatif (par défaut Alt+Enter sous Windows et Linux, Cmd+Shift+Return sous macOS ; voir Raccourcis).
- Dans la file de prompts, utilisez Injecter maintenant, Remettre en file, Modifier le prompt en attente ou Retirer le prompt en attente tant que l’entrée est encore en attente.
| Livraison | Effet |
|---|---|
| Orienter | Entrée d’orientation native pour l’exécution en cours |
| Mettre en file | Suivi natif en file, conservé pour traitement ultérieur |
Au repos, un envoi ordinaire utilise le chemin immédiat normal quel que soit ce réglage, et l’alternative de Plus d'actions n’est pas disponible. La modification restaure un prompt en attente et ses pièces jointes retirables dans la zone de saisie ; Annuler la modification quitte ce mode. Un prompt déjà consommé par OpenCode n’est plus une entrée en attente modifiable. Retirer une entrée n’annule pas le travail déjà effectué.
Si une mise à jour de file échoue, inspectez la file actuelle avant de réessayer. L’admission ne prouve pas que le modèle a consommé un suivi, et une reconnexion n’autorise pas à le soumettre à nouveau.
Poser une question annexe avec /btw
- Envoyez
/btw your questiondans une conversation existante, ou/btwpour ouvrir la fenêtre de question annexe. - Lisez la réponse, utilisez Copier la réponse, ou choisissez Annuler la question pendant son attente.
- Fermez la fenêtre une fois terminé.
C’est une demande au modèle distincte utilisant le contexte de la session. Elle n’exécute pas de boucle d’outils, n’effectue pas d’actions et n’ajoute pas sa question/réponse à la conversation. Les pièces jointes fichier/image restent dans la zone de saisie ; le texte collé utilisé dans la question est inclus comme texte. Ce n’est ni une nouvelle conversation durable ni un autre moyen de distribuer du travail.
Fermer annule la demande annexe en attente sans interrompre la session principale. Quitter la conversation active efface cette fenêtre éphémère ; copiez d’abord ce dont vous avez besoin. Les réponses vides/erreurs apparaissent ici plutôt que comme messages de transcription.
Bifurquer, annuler et récupérer une exécution échouée
- Sur un message, choisissez Bifurquer après ce message pour créer une conversation après ce point sans remplacer l’originale.
- Pour annuler, examinez attentivement Annuler les changements jusqu'ici (supprime les messages). La palette propose Annuler le dernier message et Rétablir le dernier message pour l’annulation en cours.
- Si l’exécution échoue, consultez Erreur de session, l’erreur de réponse et les détails Échec de l'envoi avant d’envoyer à nouveau.
La bifurcation copie le contexte de conversation jusqu’au point sélectionné ; elle ne crée pas de worktree Git et n’isole pas les fichiers. Le retour en arrière n’est pas une simple navigation. Vérifiez les effets sur les fichiers et la limite d’annulation avant de continuer ; utilisez une bifurcation pour une discussion alternative sans réécrire le parcours initial.
Un statut Nouvelle tentative avec un compte à rebours signifie qu’OpenCode réessaie de lui-même après une erreur du fournisseur ; attendez ou arrêtez la session plutôt que d’envoyer à nouveau. Un envoi échoué restaure le brouillon et les pièces jointes tentés si cela n’écrase pas une saisie plus récente. Une exécution échouée peut déjà avoir exécuté des outils : vérifiez Fichiers, les demandes en attente et l’activité native avant de réessayer. Recharger les messages ou Recharger la session lit l’état ; aucun des deux ne demande de répéter une modification. Arrêter la session interrompt l’exécution, sans annuler les changements aux fichiers ou aux services externes.