Aller au contenu principal

Mes meilleures pratiques pour Claude Code

Écrit à la main

Partage de mon experience avec Claude Code — 10 conseils essentiels, guide complet des commandes slash et configuration des commandes personnalisees pour ameliorer votre efficacite en programmation IA

·9 min de lecture

Apres une utilisation intensive de Claude Code pour la programmation assistee par IA, j'ai elabore un flux de travail de developpement efficace. Ces meilleures pratiques pour Claude Code couvrent la gestion de session, le mode planification, le controle de version, l'assurance qualite et la revue de code.

Conseils essentiels pour Claude Code

  1. Effectuez une seule tache par session, utilisez /clear apres chaque tache pour eviter la compression du contexte.
  2. Pour toute modification allant au-dela d'une simple edition d'un seul fichier, utilisez systematiquement le mode planification. Pour les taches plus complexes, adoptez l'approche basee sur les specifications.
  3. Utilisez think, think hard, ultrathink pour que Claude consacre davantage de temps a reflechir aux problemes complexes.
  4. Utilisez git apres chaque modification — creez une nouvelle branche pour chaque tache, puis fusionnez une fois terminee.
  5. Utilisez les Claude Code Hooks et les chaines d'outils pre-commit pour garantir la qualite du code — ne comptez pas sur Claude pour les verifications de formatage.
  6. Si un probleme n'est pas resolu apres quelques echanges, ouvrez simplement une nouvelle session.
  7. Lorsqu'une tache tourne vraiment mal, executez git checkout . pour revenir au dernier commit et recommencer.
  8. Utilisez worktree pour travailler simultanement sur plusieurs taches, puis laissez Claude Code les fusionner. Cependant, le plus souvent, j'ouvre plusieurs fenetres pour travailler en parallele sur differents projets (par exemple, le frontend et le backend d'une meme fonctionnalite).
  9. Claude Code ne sert pas uniquement a programmer — il est egalement excellent pour la recherche et la collecte d'informations.
  10. Lancez simplement claude --dangerously-skip-permissions pour lui accorder toutes les permissions. Je n'ai rencontre aucun probleme jusqu'a present.
  11. Apres avoir termine chaque tache, ouvrez une nouvelle fenetre et utilisez le Subagent de revue de code pour effectuer une revue de code.

Guide complet des commandes slash de Claude Code

Les commandes slash de Claude Code sont des outils essentiels pour ameliorer l'efficacite de programmation. Voici les commandes slash les plus couramment utilisees et comment les employer :

/init

  1. Initialise un fichier CLAUDE.md pour documenter le contexte du projet, les exigences, les contraintes, etc.
  2. Personnellement, j'execute cette commande une fois que le projet est en cours depuis un certain temps.

/memory

  1. Permet de consulter et gerer la memoire persistante personnelle ou au niveau du projet, c'est-a-dire le contenu du fichier CLAUDE.md.
  2. Vous pouvez l'invoquer rapidement depuis le terminal en utilisant #.
  3. Chaque fois que je rencontre un element pouvant servir de contrainte generale lors du developpement, je l'ajoute. Vous pouvez simplement demander a Claude de l'ajouter apres chaque modification.

/add-dir

  1. Ajoute tous les fichiers d'un repertoire specifie au contexte de Claude, permettant la coordination entre plusieurs projets.
  2. Personnellement, je copie simplement le chemin dans le terminal et je dis a Claude d'y regarder — j'utilise rarement cette commande car cela oblige Claude a effectivement consulter les fichiers.
  3. Si vous coordonnez frequemment entre projets, vous pouvez inscrire les chemins directement dans CLAUDE.md puisqu'ils seront preserves apres chaque /clear.

/clear

  1. Efface le contexte de la session en cours et demarre une nouvelle tache.
  2. Utilisez cette commande apres chaque tache terminee — ne laissez pas le contexte grossir excessivement, sous peine de compression automatique.
  3. Ne vous inquietez pas de perdre des informations. Les elements importants doivent figurer dans CLAUDE.md — apres tout, une session est dediee a une seule tache.

/compact

  1. Compresse le contexte de la session en cours en conservant les points essentiels tout en poursuivant la tache.
  2. Je n'utilise pratiquement jamais cette commande de maniere proactive, car la compression fait perdre des details et degrade la qualite des reponses subsequentes.
  3. Si une tache est vraiment trop volumineuse, vous devriez la decomposer en taches plus petites plutot que de compresser le contexte.

/mcp

  1. Permet de controler et gerer les MCP.
  2. Les MCP les plus couramment utilises sont Context7 et chrome-devtools-mcp.

/agent

  1. Permet de consulter et gerer l'utilisation des Subagents.
  2. Vous pouvez utiliser des agents predefinis provenant de depots d'agents sur GitHub.
  3. Le SubAgent le plus couramment utilise est /code-review-ai:ai-review, principalement pour la revue de code.

/hooks

  1. Permet de consulter et gerer les Claude Code Hooks.
  2. Par exemple, le formatage automatique du code apres chaque completion.
    {
      "hooks": {
        "Stop": [
          {
            "hooks": [
              {
                "type": "command",
                "command": "cd \"$CLAUDE_PROJECT_DIR\" && make format",
                "timeout": 60
              }
            ]
          }
        ]
      }
    }
  3. Par exemple, les notifications systeme apres chaque completion de message.
    {
      "hooks": {
        "Notification": [
          {
            "matcher": "",
            "hooks": [
              {
                "type": "command",
                "command": "terminal-notifier -title '🚀 通知' -subtitle '需要你的指令' -message 'Claude 正等待下一步操作' -sound 'Pop' -execute '/usr/local/bin/code /Users/wyx/code'"
              }
            ]
          }
        ],
        "Stop": [
          {
            "matcher": "",
            "hooks": [
              {
                "type": "command",
                "command": "terminal-notifier -title '✅ 通知' -subtitle '任务已完成' -message '当前任务已完成' -sound 'Pop' -execute '/usr/local/bin/code /Users/wyx/code'"
              }
            ]
          }
        ]
      }
    }

/tasks

  1. Liste et gere les taches en arriere-plan. Vous pouvez les declencher rapidement avec !.
  2. Je les declenche rarement manuellement — je prefere ouvrir une nouvelle fenetre pour verifier l'etat d'execution et copier les erreurs moi-meme.

/export

  1. Exporte le contenu de la session en cours.
  2. Utile lorsque vous devez analyser le contenu avec un autre outil d'IA — exportez et collez-le dans d'autres outils d'IA.

Partage de commandes personnalisees

Claude Code prend en charge les commandes personnalisees — il suffit de rediger des fichiers md et de les placer dans le repertoire ~/.claude/commands/.

/commit

# Commit Message 生成规范

你是一位资深的软件工程师和代码审查专家,专注于生成高质量、符合 Git Conventional Commits 规范的提交信息,并且执行git add和git commit命令,不执行git push操作。

## 核心任务

根据用户提供的代码变更(diff)或暂存区内容,执行以下分析并生成提交信息:

1. **原子性分析 (Atomic Check)**:
    * 首先分析代码变更是否过于复杂或包含多个不相关的改动。
    * 如果包含多个逻辑独立的改动(例如同时修改了 UI 和后端 API,且两者无直接依赖),**请优先建议用户拆分提交**,并给出拆分建议。
    * 如果改动是原子的(Atomic),则继续生成提交信息。

2. **生成提交信息 (Commit Generation)**:
    * 严格遵循 **Conventional Commits** 格式。
    * **语言要求**: 提交信息的标题(Subject)和正文(Body)必须使用**中文**
    * **最后说明**:这个commit是谁提交的,例如"由Claude AI助手生成"。

    * **格式结构**:

        ```text
        <emoji> <type>(<scope>): <subject>

        <body>
        ```

## 详细规则

### 1. Header 格式

* **Emoji**: 根据改动类型选择最准确的表情符号(见下表)。
* **Type**: 使用标准的英文类型(如 `feat`, `fix`),保持工具兼容性。
* **Scope** (可选): 用英文括号包裹,简短说明改动影响的模块或文件名。
* **Subject**: 简练的**中文**描述,不超过 50 个字符,不要以句号结尾。

### 2. Body 内容 (至关重要)

正文部分必须清晰分段,包含以下两部分:
* **What (做了什么)**: 使用无序列表 (`- `) 详细列出具体的代码改动点。
* **Why (为什么做)**: 解释改动的动机、解决的问题或带来的优化。

### 3. 类型映射表 (Type/Emoji Mapping)

| Type | Emoji | 含义 | 适用场景 |
|:---|:---|:---|:---|
| **feat** | ✨ | 新功能 | 引入新特性或功能 |
| **fix** | 🐛 | 修复 Bug | 修复生产环境或开发中的错误 |
| **docs** | 📝 | 文档 | 仅修改文档 (README, API doc) |
| **style** | 💄 | 格式/样式 | 代码格式化、UI 微调 (不影响逻辑) |
| **refactor** | ♻️ | 重构 | 代码结构调整,既不修 Bug 也不加功能 |
| **perf** | ⚡️ | 性能 | 提升性能的改动 |
| **test** | ✅ | 测试 | 增加或修改测试代码 |
| **build** | 📦 | 构建 | 构建系统或外部依赖变动 |
| **ci** | 👷 | CI/CD | CI 配置文件或脚本变动 |
| **chore** | 🔧 | 杂项 | 其他琐碎改动 |

## 输出示例

**输入**: 用户修改了登录逻辑,增加了验证码校验,并修复了一个空指针报错。

**输出**:

✨ feat(auth): 增加登录时的验证码校验机制

-`LoginController` 中集成验证码服务
- 更新前端登录表单,增加验证码输入框
- 🐛 fix: 修复 `UserParams` 解析时的空指针异常

**原因 (Why):**
为了防止暴力破解攻击,提高账户安全性,因此引入强制验证码流程。同时顺带修复了测试中发现的潜在崩溃问题。

---

**注意**:
*   你可以执行提交commit的命令,但是最终的git push操作由用户执行,因为最终的提交信息需要用户确认。
*   最终输出只需包含建议的 Commit Message 内容,不需要额外的寒暄。

***

Mot de la fin

Ces meilleures pratiques pour Claude Code reposent principalement sur mon experience en developpement backend — les strategies d'optimisation pour le frontend sont encore en cours d'exploration.

Si vous souhaitez approfondir comment garantir la qualite du code avec la programmation assistee par IA, consultez Controle qualite en programmation IA : 5 lignes de defense pour la qualite du code, qui detaille le systeme de defense a 5 niveaux dans la programmation avec Claude Code.

Ces conseils et pratiques pour Claude Code continuent d'evoluer, et je mettrai cet article a jour regulierement.

Lectures complementaires

Commentaires