# CLAUDE_CONFIG_DIR explicado

> Qué hace CLAUDE_CONFIG_DIR en Claude Code, qué se guarda en la carpeta, dónde guarda macOS el inicio de sesión y qué archivos se pueden compartir entre cuentas.

Source: https://ccam.dev/es/guides/claude-config-dir/ · Updated 2026-10-19

`CLAUDE_CONFIG_DIR` le indica a Claude Code qué carpeta usar en lugar de `~/.claude`. Todo lo específico de la cuenta vive ahí: el inicio de sesión, la configuración, los servidores MCP, los plugins y el historial de conversaciones. Si lo apuntas a carpetas distintas, obtienes cuentas separadas.

```sh
CLAUDE_CONFIG_DIR=~/.claude-work claude
```

## Qué hay dentro de la carpeta

Comprobado con Claude Code 2.1.302:

| Ruta | Contenido | Se puede compartir |
| --- | --- | --- |
| `.credentials.json` | Tokens de inicio de sesión (Linux), tokens OAuth de MCP | No |
| `.claude.json` | Datos de la cuenta, servidores MCP de usuario, estado por proyecto | No (los servidores MCP, por separado) |
| `settings.json` | Permisos, hooks, modelo, línea de estado, plugins | Sí |
| `CLAUDE.md` | Instrucciones globales | Sí |
| `agents/`, `commands/`, `skills/`, `plugins/` | Extensiones | Sí |
| `projects/` | Conversaciones como archivos `.jsonl`, memoria por proyecto | Sí |
| `history.jsonl` | Historial de prompts | Sí |
| `sessions/`, `shell-snapshots/`, `cache/` y otros | Estado en tiempo de ejecución | No |

## Dos detalles que suelen causar confusión

**Sin `CLAUDE_CONFIG_DIR`, `.claude.json` no está dentro de `~/.claude`.** En ese caso, Claude Code lo guarda en `~/.claude.json`, junto a la carpeta. Si empiezas a usar `CLAUDE_CONFIG_DIR=~/.claude`, Claude Code busca `~/.claude/.claude.json` en su lugar y no encuentra tu cuenta. `ccam import` resuelve esto enlazando los dos.

**En macOS, el inicio de sesión está en el Llavero, no en la carpeta.** Claude Code lo guarda con el nombre `Claude Code-credentials`, seguido de un hash corto de la ruta de la carpeta cuando `CLAUDE_CONFIG_DIR` está definido. Por eso, carpetas distintas obtienen entradas distintas en el Llavero. Si el Llavero rechaza la escritura, Claude Code recurre a `.credentials.json` en la carpeta.

## Compartir entre carpetas

Los enlaces simbólicos funcionan: Claude Code lee y escribe a través de un `settings.json` o una carpeta `projects/` enlazados y conserva el enlace. Los servidores MCP son la excepción, porque comparten `.claude.json` con el inicio de sesión; pásalos con `--mcp-config` en su lugar.

ccam se basa exactamente en estas reglas. Consulta [compartir](https://ccam.dev/es/docs/sharing.md) para ver cómo enlaza las carpetas, y [la guía de varias cuentas](https://ccam.dev/es/guides/multiple-claude-code-accounts.md) para ver el panorama general.
