OrbitWake for VS Code
Commandes
La version actuelle d’OrbitWake pour VS Code enregistre trois commandes publiques dans la Command Palette. Elles servent à connecter l’éditeur, déconnecter la session locale et transférer une sélection de code vers le panneau OrbitWake.
Commandes enregistrées
| Commande affichée | ID interne | Rôle |
|---|---|---|
OrbitWake: Connect IDE | orbitwake.connectIde | Pairer l’éditeur avec OrbitWake. |
OrbitWake: Disconnect IDE | orbitwake.disconnectIde | Supprimer le token IDE local. |
OrbitWake: Ask About Selection | orbitwake.askSelection | Préremplir Ask avec le code sélectionné. |
Ces trois commandes font partie des activationEvents de l’extension : les invoquer peut activer OrbitWake même si la vue n’était pas encore ouverte.
Ouvrir la Command Palette
Dans VS Code, ouvrez la Command Palette puis recherchez OrbitWake.
Les raccourcis standards de VS Code sont généralement :
macOS: Cmd+Shift+P
Windows: Ctrl+Shift+P
Linux: Ctrl+Shift+P
OrbitWake ne déclare actuellement aucun raccourci clavier personnalisé pour ses trois commandes.
OrbitWake: Connect IDE
Cette commande démarre le pairing de VS Code avec un workspace OrbitWake.
L’extension ouvre un champ de saisie intitulé Connect OrbitWake et demande le code provenant de OrbitWake Settings → IDEs.
Le placeholder actuel est :
ABCD-EFGH
Si l’utilisateur ferme le champ ou n’entre aucun code, la commande s’arrête sans modifier la session locale.
Ce que Connect IDE envoie
Lorsque le code est fourni, la commande appelle le endpoint de claim OrbitWake avec :
| Champ | Valeur |
|---|---|
code | Code de pairing saisi. |
deviceName | Hostname local, avec fallback Developer machine. |
editorName | VS Code. |
editorVersion | Version VS Code courante. |
machineId | SHA-256 dérivé du hostname, de la plateforme et de l’architecture. |
Après une connexion réussie
Le backend retourne un token IDE. L’extension le stocke dans VS Code SecretStorage sous sa clé interne OrbitWake.
VS Code affiche ensuite :
OrbitWake is connected to this editor.
La vue OrbitWake met ensuite à jour son état local de connexion et son résumé de contexte éditeur.
Erreurs possibles avec Connect IDE
La commande peut remonter directement les erreurs du backend, notamment un code invalide ou expiré.
Les erreurs réseau sont normalisées localement en messages comme :
OrbitWake took too long to respond. Try again.
Could not reach OrbitWake. Check your connection and try again.
Le timeout réseau de l’extension est actuellement fixé à 120 secondes.
OrbitWake: Disconnect IDE
Cette commande supprime le token OrbitWake présent dans SecretStorage local.
Elle rejette également la proposition Agent en attente dans l’extension, si une proposition existe encore.
La vue est ensuite rafraîchie pour afficher l’état local Not connected.
Disconnect local ≠ Revoke serveur
OrbitWake: Disconnect IDE agit localement dans VS Code.
La commande ne fait pas actuellement d’appel au endpoint de révocation de session OrbitWake.
Si vous voulez invalider également la session côté serveur, utilisez Settings → IDEs → Revoke dans OrbitWake.
OrbitWake: Ask About Selection
Cette commande sert à prendre la sélection courante dans l’éditeur et à la transférer vers le composer OrbitWake.
Elle commence par ouvrir la vue OrbitWake via la commande interne VS Code :
workbench.view.extension.orbitwake
Cette commande interne appartient à VS Code ; elle n’est pas une commande OrbitWake exposée dans package.json.
Préconditions de Ask About Selection
La commande a besoin :
- d’un éditeur code ouvert ;
- d’une sélection non vide ;
- d’un fichier qui n’est pas bloqué comme sensible.
Sans éditeur utilisable :
Open a code file and select text before using Ask About Selection.
Sans sélection :
Select some code before using Ask About Selection.
Ce que la commande préremplit
La sélection est injectée dans le composer sous la forme :
Explain or help with this selection:
<selected code>
La commande passe également un résumé du contexte : chemin du fichier, langage, taille de la sélection et nombre de diagnostics.
Le mode du panneau est automatiquement replacé sur Ask et le champ de saisie reçoit le focus.
Limite de sélection
Le contexte éditeur tronque actuellement la sélection à 16 000 caractères.
Le reste du fichier actif peut aussi être utilisé par Ask séparément, jusqu’à 32 000 caractères, lorsque la requête est finalement envoyée.
Fichiers sensibles
Ask About Selection passe par la même collecte de contexte que Ask.
Si le chemin correspond à un fichier sensible comme .env, un fichier de credentials, un certificat ou une clé privée, OrbitWake refuse de capturer le contexte.
La commande affiche alors un avertissement au lieu de préremplir la sélection.
Actions du panneau qui ne sont pas des commandes VS Code
Le panneau OrbitWake contient plusieurs actions interactives qui ne sont pas enregistrées dans la Command Palette.
| Action | Comportement |
|---|---|
| Ask | Choisit le mode conversation avec contexte du dernier fichier actif. |
| Agent | Choisit le mode patch multi-fichiers ; nécessite un workspace ouvert. |
| Send | Envoie la requête Ask ou Agent au backend OrbitWake. |
| Preview | Ouvre les diffs VS Code de la proposition Agent. |
| Apply | Vérifie puis applique la proposition après confirmation modale. |
| Reject | Abandonne la proposition en attente. |
| Connect / Disconnect | Déclenchent depuis le webview les mêmes opérations locales de connexion ou suppression du token. |
Raccourci d’envoi dans le panneau
Dans le composer du panneau OrbitWake, la combinaison suivante déclenche le bouton Send :
macOS: Cmd+Enter
Autres: Ctrl+Enter
Ce comportement appartient au webview OrbitWake. Il ne s’agit pas d’un keybinding global contribué à VS Code.
Commandes et mode Agent
Il n’existe actuellement aucune commande publique OrbitWake: Run Agent, Apply Patch ou Preview Patch.
Ces actions sont accessibles uniquement depuis la vue OrbitWake après avoir choisi le mode Agent.
Agent est désactivé dans le panneau lorsqu’aucun folder ou workspace VS Code n’est ouvert.
IDs internes
Pour les extensions ou automatisations VS Code qui invoquent des commandes enregistrées, les IDs actuels sont :
orbitwake.connectIde
orbitwake.disconnectIde
orbitwake.askSelection
Activation de l’extension
OrbitWake déclare quatre événements d’activation principaux :
onView:orbitwake.chat
onCommand:orbitwake.connectIde
onCommand:orbitwake.disconnectIde
onCommand:orbitwake.askSelection
Ouvrir la vue ou lancer l’une des trois commandes publiques suffit donc à charger le runtime de l’extension lorsque nécessaire.
Limites actuelles
Aucune commande OrbitWake ne lance directement une commande shell, un commit Git ou un push.
Il n’existe pas encore de commandes publiques dédiées pour changer de modèle, basculer Ask/Agent, prévisualiser un patch ou l’appliquer.
Aucun raccourci clavier global spécifique à OrbitWake n’est contribué dans package.json.
Disconnect IDE ne révoque pas automatiquement la session serveur.
Étape suivante
La prochaine page décrit les réglages et les comportements configurables actuellement disponibles dans l’extension.