Mon Workflow de Développement : VSCode + Claude + Obsidian

Dernière mise à jour le

#vscode#claude#obsidian#productivity#workflow#ai#documentation#claude-code

Pourquoi j’ai quitté GitHub Copilot

Pendant longtemps, GitHub Copilot faisait partie de mon workflow via le plan étudiant GitHub — gratuit, intégré dans VSCode, pratique. Début 2026, GitHub a revu son offre Student Pack : Copilot est devenu payant ou tellement restreint que l’accès gratuit est devenu inutilisable en pratique.

J’ai basculé sur Claude Pro (Anthropic, abonnement payant). Le changement a été brutal dans le bon sens : Claude n’est pas un outil d’autocomplétion comme Copilot, c’est un collaborateur à part entière. La différence de qualité sur les tâches complexes (architecture, debug multi-fichiers, compréhension de contexte) est significative.


Philosophie

Mon workflow repose sur 3 piliers :

  1. VSCode : éditeur central, terminal intégré, Git
  2. Claude : assistant IA via Claude Code CLI (terminal) ou claude.ai (web)
  3. Obsidian : documentation vivante, thèse, notes techniques, knowledge base

La logique : Claude remplace l’autocomplétion brute de Copilot et fait bien plus — refactoring, génération de scripts complets, review, architecture. Obsidian centralise ce que j’apprends et documente mes projets.


Stack Outils

VSCode — extensions actuelles

Claude Code (extension officielle — accès CLI depuis VSCode)
Prettier (formatage auto)
ESLint (linting JS/TS)
GitLens (Git augmenté)
Docker (gestion containers)
Remote - SSH (dev sur le homeserver)
Markdown All in One
Thunder Client (test API)
Error Lens (erreurs inline)
Todo Tree (suivi TODO)
Python (thèse, scripts homeserver)

settings.json actuels :

{
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": "explicit"
  },
  "editor.inlineSuggest.enabled": true,
  "files.autoSave": "afterDelay",
  "files.autoSaveDelay": 1000,
  "workbench.colorTheme": "Monokai Pro",
  "terminal.integrated.defaultProfile.linux": "bash",
  "editor.fontSize": 14,
  "editor.tabSize": 2
}

Claude — comment je l’utilise

Deux modes d’accès

Claude Code CLI (terminal dans VSCode) :

# Lancer Claude Code dans un projet
claude

# Claude a accès à tous les fichiers du répertoire courant
# Peut lire, éditer, créer des fichiers, exécuter des commandes

C’est le mode le plus puissant pour le dev : Claude voit le code, peut modifier des fichiers, lancer des tests, vérifier des erreurs. Pas besoin de copier-coller du code.

claude.ai (navigateur) : pour les questions ouvertes, la recherche, les explications conceptuelles, les brouillons de texte (utile pour la thèse).


Ce que Claude fait bien (que Copilot ne faisait pas)

Refactoring multi-fichiers :

“Tous les scripts Python dans scripts/ utilisent des webhooks Discord différemment — unifie le pattern en une fonction commune dans utils.py

Claude lit tous les fichiers, identifie les patterns, propose un refactoring cohérent et l’applique.

Debug avec contexte :

“Cette fonction retourne None parfois, voici les logs : […] — qu’est-ce qui cloche ?”

Copilot aurait suggéré des lignes. Claude analyse le flux, identifie la cause racine, propose un fix avec explication.

Génération de scripts complets : Scripts d’automatisation, Dockerfiles, configs nginx, scripts de backup — Claude génère du code fonctionnel à partir d’une description en langage naturel.

Review critique :

“Review ce script Python avant que je le mette en cron — cherche les cas qui peuvent faire planter le process silencieusement”

Copilot /review était superficiel. Claude identifie les vraies edge cases.


Prompts efficaces

❌ "fais moi un script python"
✅ "Écris un script Python qui scrappe WikiCFP pour les CFPs plasma medicine,
   filtre les événements futurs, et poste un résumé sur Discord via webhook.
   Gère les erreurs réseau silencieusement (print + continue, pas de crash)."

❌ "corrige l'erreur"
✅ "Cette fonction échoue avec KeyError 'deadline' sur certains résultats WikiCFP.
   Voici le traceback et la structure JSON d'un résultat qui pose problème : [...]"

❌ "explique le code"
✅ "Dans ce script, pourquoi est-ce que je déduplication par name[:40].lower()
   plutôt que par l'URL ? Est-ce que ça peut créer des faux positifs ?"

Limites à connaître

  • Pas d’accès internet en temps réel : pour vérifier une version de package ou une doc récente, je vérifie moi-même
  • Hallucinations sur les APIs : Claude peut inventer des endpoints ou des paramètres — toujours tester
  • Contexte limité sur les gros projets : sur de très grandes codebases, passer les fichiers pertinents explicitement

Obsidian — structure actuelle

📁 Vault/
├── 📂 Thèse/              ← notes quotidiennes, expériences, biblio
│   ├── Journal/
│   ├── Expériences/
│   ├── Bibliographie/
│   └── Rédaction/
├── 📂 Homeserver/         ← configs, troubleshooting, notes infra
│   ├── Docker/
│   ├── Scripts/
│   └── Incidents/
├── 📂 Dev/                ← snippets, patterns, apprentissages
│   ├── Python/
│   ├── Docker/
│   └── Linux/
├── 📂 Daily Notes/
└── 📂 Archive/

Plugins actifs :

Dataview       — requêtes sur les notes (liste tâches, expériences récentes...)
Templater      — templates dynamiques (daily note, fiche expérience...)
Calendar       — vue calendrier sur daily notes
Excalidraw     — schémas et diagrammes intégrés
Git            — auto-commit du vault (backup homeserver)
Kanban         — boards pour suivre avancement thèse

Template daily note (thèse) :

---
date: {{date}}
tags: daily
---

# {{date:dddd DD MMMM YYYY}}

## Objectifs

- [ ] 
- [ ] 

## Expériences / Dev

**Travaillé sur** :

**Résultats** :

**Problèmes** :

**Next** :

## Notes libres

Workflow intégré — exemples concrets

Scénario : nouveau script d’automatisation

  1. Définir dans Obsidian : note courte avec objectif, inputs/outputs attendus, contraintes
  2. Claude Code dans le répertoire scripts/ :

    “Écris veille_these.py — [description] — utilise uniquement la stdlib Python”

  3. Test local : python3 scripts/veille_these.py
  4. Itérer avec Claude : corrections, edge cases, log talk-claw
  5. Créer le cron via OpenClaw ou directement en config
  6. Documenter dans Obsidian : what it does, how to debug, last run notes

Scénario : bug en production

  1. Récupérer les logs : docker logs container_name ou journaux cron
  2. Passer le traceback à Claude avec le fichier concerné
  3. Appliquer le fix directement dans VSCode
  4. Note rapide dans Obsidian (daily note) : symptôme, cause, fix — utile si ça revient

Scénario : apprentissage d’un nouveau concept

  1. Claude (claude.ai) pour l’explication conceptuelle : “Explique comment fonctionne le NAT traversal de Tailscale, en partant de WireGuard”
  2. Obsidian pour la note structurée pendant la lecture
  3. Pratique dans un projet réel
  4. Mise à jour note avec ce qui a vraiment compté en pratique

Copilot vs Claude — retour d’expérience honnête

CritèreGitHub CopilotClaude Pro
Autocomplétion inlineExcellenteAbsente (pas intégré inline)
Compréhension contexte largeLimitéeTrès bonne
Tâches multi-fichiersBasiqueNatif avec Claude Code
Qualité review/debugSuperficielleApprofondie
Prix (étudiant)Gratuit → devenu inutile~20€/mois
Prix (standard)10$/mois20$/mois
Accès internetNonNon (connaissance figée)

Mon verdict : pour de l’autocomplétion rapide ligne par ligne, Copilot était plus fluide. Pour tout ce qui dépasse une ligne — comprendre un problème, générer un script entier, expliquer une architecture — Claude est dans une autre catégorie.


Ressources


Workflow version 3.0 — juillet 2026