GitScrum / Docs
Available for VS Code, Cursor, Windsurf, and any VS Code forkInstall from Marketplace

Comment ça fonctionne

GitScrum Studio étend votre éditeur de code avec des panneaux de gestion de projet qui se comportent comme des onglets natifs de l'éditeur. Ce guide explique l'architecture, le modèle de navigation et le flux de données entre l'extension et GitScrum.


Structure de l'extension

GitScrum Studio ajoute trois points d'intégration à votre éditeur :

1. Barre d'activité → Icône GitScrum → Arborescence latérale
2. Zone de l'éditeur → Panneaux webview (onglets)
3. Barre d'état → Minuteur persistant

Ces trois éléments fonctionnent ensemble. La barre latérale est votre hub de navigation. Les panneaux sont votre espace de travail. Le minuteur suit le temps indépendamment des deux.


L'arborescence latérale

Un clic sur l'icône GitScrum dans la barre d'activité ouvre une arborescence latérale. Elle organise vos données dans une hiérarchie claire :

Nom du workspace
  └─ Nom du projet
       ├─ Plan
       │    ├─ Sprints
       │    ├─ User Stories
       │    └─ Team Standup
       ├─ Build
       │    └─ Board
       ├─ Knowledge
       │    ├─ Wiki
       │    ├─ Discussions
       │    └─ Documents
       └─ Time Tracking

Niveau workspace

Les nœuds de premier niveau représentent vos workspaces GitScrum (organisations). Chaque workspace contient les projets auxquels vous avez accès en fonction de votre rôle.

Niveau projet

Le développement d'un workspace révèle ses projets. Cliquer sur un projet le définit comme actif — cela détermine quelles données tous les panneaux affichent.

Groupes de fonctionnalités

Chaque projet organise ses fonctionnalités en trois groupes logiques :

GroupeFonctionnalitésObjectif
PlanSprints, User Stories, Team StandupPlanification et suivi des itérations de travail
BuildBoardExécution des tâches avec vues Kanban et liste
KnowledgeWiki, Discussions, DocumentsDocumentation et communication d'équipe

Time Tracking se situe au niveau racine du projet car il couvre toutes les autres fonctionnalités.


Panneaux webview

Un clic sur un élément de la barre latérale ouvre un panneau webview dans la zone de l'éditeur. Ces panneaux :

  • S'affichent comme des onglets de l'éditeur — déplacez-les, divisez-les, épinglez-les ou fermez-les comme n'importe quel onglet de fichier
  • Affichent des interfaces riches — tableaux Kanban, graphiques, formulaires et tableaux de données
  • Communiquent de manière bidirectionnelle — les actions dans le panneau déclenchent des appels API ; les données de l'API mettent à jour le panneau
  • Se rafraîchissent automatiquement — à l'intervalle configuré (par défaut : 5 minutes)

Cycle de vie des panneaux

  1. Clic sur un élément de la barre latérale → le panneau s'ouvre (ou se met au premier plan s'il est déjà ouvert)
  2. Le panneau charge les données depuis l'API GitScrum
  3. L'utilisateur interagit → les actions envoient des messages à l'extension
  4. L'extension traite → appelle l'API, met à jour le panneau avec les résultats
  5. Rafraîchissement automatique → rechargement périodique des données en arrière-plan

Réutilisation des panneaux

Les panneaux sont identifiés par workspace et projet. Ouvrir le Board pour le même projet deux fois met au premier plan le panneau existant au lieu d'en créer un doublon. Ouvrir le Board pour un projet différent crée un nouveau panneau.


Le minuteur de la barre d'état

Une icône d'horloge se trouve dans la barre d'état en bas de votre éditeur. Elle est toujours visible, quel que soit le panneau ou le fichier actif.

États du minuteur

ÉtatAffichageComportement
Inactif🕐 00:00:00Aucun minuteur en cours. Cliquez pour démarrer.
Actif`🕐 00:45:32PROJ-123`Minuteur en cours. Affiche le temps écoulé et le code de la tâche. Fond jaune.

Persistance du minuteur

Le minuteur enregistre son état dans le stockage global de l'éditeur toutes les 60 secondes. Cela signifie :

  • Fermer l'éditeur → le minuteur continue lorsque vous le rouvrez
  • Redémarrer votre ordinateur → le minuteur reprend depuis le dernier état enregistré
  • Synchronisation serveur → au démarrage, l'extension vérifie le serveur pour un minuteur actif et se synchronise

Un clic sur le minuteur de la barre d'état ouvre un menu QuickPick avec des options contextuelles :

Quand inactif :

  • ▶ Start Timer — ouvre un sélecteur de tâches
  • 📜 View Time Entries — ouvre le panneau Suivi du temps
  • 📊 Open Time Tracking Panel — ouvre les analyses

Quand actif :

  • ⏹ Stop Timer — enregistre l'entrée de temps avec un commentaire optionnel
  • 🔄 Switch Task — arrête le minuteur actuel, en démarre un nouveau
  • 🗑 Discard Timer — annule sans enregistrer
  • 📜 View Time Entries
  • 📊 Open Time Tracking Panel

Flux de données

Toutes les données transitent via l'API REST GitScrum. L'extension est un client — elle lit et écrit des données via des requêtes HTTP authentifiées.

Panneau éditeur → Backend extension → API GitScrum → Base de données
       ↑                ↓
       └── Réponse ─────┘

Authentification

L'extension stocke votre jeton d'authentification en utilisant l'API SecretStorage de l'éditeur. Chaque requête API inclut ce jeton. Lorsque le jeton expire ou que vous vous déconnectez, la barre latérale affiche les options de connexion.

Communication API

Chaque panneau dispose d'une classe de service dédiée qui gère ses appels API :

ServicePanneaux desservis
BoardServiceTableau Kanban
SprintServiceSprints
TaskDetailServiceTiroir de tâche (utilisé dans Board, Sprints, User Stories, Time Tracking)
TimeTrackingServiceMinuteur de la barre d'état, Panneau Suivi du temps
WikiServiceWiki
DiscussionServiceDiscussions

Rafraîchissement automatique

Les panneaux se rafraîchissent automatiquement à intervalles réguliers. Cliquez sur le bouton d'actualisation dans l'en-tête de n'importe quel panneau pour une mise à jour immédiate.


Le tiroir de tâche

Le tiroir de tâche est un composant partagé qui apparaît dans plusieurs panneaux — Board, Sprints, User Stories et Time Tracking. Lorsque vous cliquez sur une tâche dans l'un de ces panneaux, le tiroir s'ouvre comme un panneau latéral avec toutes les capacités d'édition :

FonctionnalitéCe que vous pouvez faire
Titre et descriptionÉdition en ligne avec support Markdown
Flux de travailChanger le statut, créer de nouveaux flux de travail
TypeAssigner un type de tâche, créer de nouveaux types
ResponsablesAssigner et retirer des membres de l'équipe
ÉtiquettesAttacher des étiquettes, créer de nouvelles étiquettes
DatesDéfinir la date de début et la date d'échéance
EffortDéfinir l'estimation d'effort (échelle de Fibonacci : 1, 2, 3, 5, 8, 13)
ChecklistsCréer des checklists, ajouter des éléments, cocher/décocher
CommentairesLire et publier des commentaires
DrapeauxBasculer les états brouillon, archivé et bloqueur
Assignation au tableauAssigner la tâche à un ou plusieurs tableaux

Le tiroir offre une expérience d'édition cohérente quel que soit le panneau depuis lequel vous avez ouvert la tâche.


Accès basé sur les rôles

L'extension respecte votre rôle dans le workspace GitScrum. Ce que vous voyez et pouvez faire dépend de vos permissions :

RôleNiveau d'accès
Agency OwnerAccès complet à toutes les fonctionnalités, paramètres du projet et données de l'équipe
ManagerAccès complet aux fonctionnalités du projet, rapports et gestion d'équipe
DeveloperGestion des tâches, suivi du temps, outils de collaboration et base de connaissances
ClientAccès en lecture seule aux données du projet assigné

Certaines actions — comme l'ouverture des paramètres du projet depuis la barre latérale — ne sont disponibles que pour les Agency Owners. Si une fonctionnalité apparaît désactivée, vérifiez votre rôle dans l'application web GitScrum.


Palette de commandes

Toutes les fonctionnalités sont accessibles depuis la palette de commandes (Ctrl+Shift+P / Cmd+Shift+P). Tapez GitScrum: pour voir toutes les commandes :

CommandeAction
GitScrum: Sign InOuvrir les options d'authentification
GitScrum: Sign OutEffacer les identifiants et se déconnecter
GitScrum: Open BoardOuvrir le panneau du tableau Kanban
GitScrum: Open SprintsOuvrir le panneau des sprints
GitScrum: Open User StoriesOuvrir le panneau des user stories
GitScrum: Open WikiOuvrir le panneau du wiki
GitScrum: Open DiscussionsOuvrir le panneau des discussions
GitScrum: Open DocumentsOuvrir le panneau des documents
GitScrum: Open Team StandupOuvrir le panneau du standup
GitScrum: Start TimerDémarrer le suivi du temps
GitScrum: Stop TimerArrêter le minuteur actif
GitScrum: Open Time TrackingOuvrir le panneau de suivi du temps
GitScrum: RefreshForcer le rafraîchissement de toutes les données
GitScrum: Create ProjectCréer un nouveau projet

Vous pouvez assigner des raccourcis clavier personnalisés à chacune de ces commandes via l'éditeur de raccourcis clavier (Ctrl+K Ctrl+S / Cmd+K Cmd+S).


Documentation associée