# Variable d'environnement : `CLAUDE_CODE_NO_FLICKER=1`

- **URL source** : Aucune (variable mentionnée hors contexte par le user)
- **Source probable** : Documentation Claude Code interne / changelog / discussion communautaire
- **Date d'accès** : 2026-05-23
- **Type** : Configuration / Variable d'environnement
- **Thématique** : Claude Code, UX terminal, dev tooling

## Résumé exécutif

`CLAUDE_CODE_NO_FLICKER=1` est une variable d'environnement non-documentée publiquement (au moment de l'accès) qui semble désactiver un comportement de rafraîchissement/clignotement de l'interface TUI de Claude Code dans le terminal. Utile sur certains terminals lents (iTerm2 avec rendering GPU off, terminaux SSH, tmux sessions multiplexées) où le flicker peut être inconfortable.

## Hypothèse de fonctionnement

Claude Code est un TUI Node.js qui re-render fréquemment (chaque token streamé, chaque animation de spinner). Sur certains terminaux :
- Le `clear-and-redraw` provoque un blanchiment perceptible
- Les diff incrémentaux mal gérés peuvent flasher
- Sur tmux/SSH, la latence accentue ce flicker

Quand `CLAUDE_CODE_NO_FLICKER=1` est positionné, le code TUI probable :
1. Désactive l'`alternate screen buffer` switching
2. Réduit le taux de re-render des spinners (passage de ~60Hz à ~10Hz)
3. Bufferise les sorties pour réduire les writes terminal

## Comment l'utiliser

### Fish (shell du user)
```fish
# Session courante seulement
set -gx CLAUDE_CODE_NO_FLICKER 1

# Persistant
set -Ux CLAUDE_CODE_NO_FLICKER 1
```

### Bash/Zsh (référence)
```bash
export CLAUDE_CODE_NO_FLICKER=1
```

### Per-invocation
```fish
CLAUDE_CODE_NO_FLICKER=1 claude
```

## Quand l'activer

| Contexte | Recommandation |
|----------|----------------|
| iTerm2 / Ghostty / Warp local moderne | Probablement inutile |
| Terminal Apple Terminal.app | À tester, OUI possible |
| SSH session distante | OUI recommandé |
| tmux/screen session | OUI recommandé |
| VS Code integrated terminal | OUI possible |
| Linux TTY (sans X) | OUI |
| CI/CD logs (non-interactif) | INUTILE, déjà non-TTY |

## Pertinence pour ElevaSEO

**Aucune pertinence SEO directe**. C'est une amélioration UX du tooling.

**Pertinence indirecte** :
- Le user utilise massivement Claude Code (cf. setup CLAUDE.md global, RTK, hooks, Vercel, etc.)
- Sessions longues sur écrans externes → confort visuel
- Pas de raison de ne pas l'activer dans la config Fish persistante

## ⚠️ Méfiance / Bullshit detector

- **Variable non-documentée publiquement** au moment de l'écriture (mai 2026). Anthropic peut la retirer ou la renommer.
- **Effet placebo possible** : sur les terminaux modernes, le flicker peut déjà être imperceptible. Tester avec/sans avant de croire à la différence.
- **Risque de masquer un bug** : si le flicker est dû à un terminal mal configuré (GPU off, mauvaise font), la vraie fix est ailleurs.

## Investigation suggérée

```fish
# Chercher la mention de la variable dans la doc/sources Claude Code
gh search code "CLAUDE_CODE_NO_FLICKER" --repo anthropics/claude-code
# Ou
rg "CLAUDE_CODE_NO_FLICKER" ~/.claude/

# Tester l'effet
time claude --version  # avec et sans la variable
```

## Variables Claude Code apparentées (référence)

(À confirmer par doc officielle au moment d'usage — la liste évolue)

| Variable | Effet probable |
|----------|----------------|
| `CLAUDE_CODE_NO_FLICKER` | Désactive flicker terminal (objet de cette note) |
| `CLAUDE_CODE_USE_BEDROCK` | Route via AWS Bedrock |
| `CLAUDE_CODE_USE_VERTEX` | Route via Google Vertex AI |
| `ANTHROPIC_API_KEY` | Auth API directe |
| `DISABLE_TELEMETRY` | Coupe la télémétrie |
| `DEBUG=claude:*` | Logs debug |

## Liens externes mentionnés

Aucun lien fourni dans le contexte. À chercher :
- https://docs.claude.com/en/docs/claude-code (doc officielle)
- https://github.com/anthropics/claude-code (issues/sources)
