Skip to content
Proyectos

BlackHole1/aswap has 32 GitHub stars and 4 forks. GitHot measured 0 stars in 24 hours and +3 in 7 days. Last checked 2026-11-12 07:18 UTC. Last push 2026-11-03.

Cómo se miden estas cifras

Multi-account switcher for Claude Code and Claude Desktop: claude-swap (cswap) plus a maintained patch series.

Crecimiento de estrellas medido

in 24h
0
in 7 days
+3
in 15 days
Actualización retrasada
in 1 month
Actualización retrasada

Cambios netos en períodos que se solapan, no totales diarios. Los datos no disponibles se dejan en blanco. Las estrellas indican interés, no calidad.

docs/readme/README.es.md

Original

aswap

English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Русский | Français | Español

cswap list: two accounts with their 5h, 7d and per-model usage, then cswap switch 2

Cambia entre cuentas de Claude Code con claude-swap, más un conjunto mantenido de correcciones y funciones.

cswap gestiona varias cuentas de Claude. Registra el uso de cada cuenta y puede cambiar a la que tenga más cuota disponible. aswap compila cswap a partir del código fuente original sin modificar y le aplica un pequeño conjunto de parches. Todos los comandos de cswap funcionan igual que antes.

El nombre significa account swap (cambio de cuenta).

Instalación

uv tool install aswap  # o: pipx install aswap
aswap --version

aswap acepta todos los comandos de cswap. Se instala junto a un cswap original sin modificarlo.

Para ejecutar aswap también como cswap:

aswap link    # añade un lanzador cswap junto a aswap
aswap unlink  # lo elimina

aswap link solo reemplaza un lanzador cswap creado por una instalación de aswap. Para reemplazar el cswap original, desinstálalo primero (uv tool uninstall claude-swap) o usa --force.

Para actualizar, ejecuta aswap upgrade. Llama a uv tool upgrade o a pipx upgrade, según cómo se haya instalado aswap.

Qué añade aswap

Actualizar el uso bajo demanda

cswap refresh [account ...] consulta el uso al momento, cuenta por cuenta. Si una cuenta ha alcanzado el límite de solicitudes, muestra cuándo permite el servidor el siguiente intento.

cswap refresh: one account refreshed, the other rate limited with the server retry time

Una ventana de Claude Desktop por cuenta

Claude Desktop solo admite un inicio de sesión a la vez. cswap desktop 2 abre la cuenta 2 en su propia ventana, con su propio inicio de sesión, y cswap desktop --all abre todas las cuentas. La pestaña Code de cada ventana muestra las mismas sesiones locales (excepto en Windows). El enfoque se basa en guise.

cswap desktop --all opening one Claude Desktop window per account, then cswap desktop listing both as open

Un perfil de Chrome por cuenta

Claude in Chrome usa la sesión de claude.ai del navegador, no la cuenta elegida con cswap switch (upstream #256). cswap chrome 2 abre la cuenta 2 en una copia independiente de tu perfil de Chrome. Allí la extensión funciona con la cuenta 2, y tu navegador principal conserva su propia sesión.

cswap chrome 2 opening a copy of the stock Chrome profile for account 2, cswap chrome 1 opening account 1, then cswap chrome listing both as open
  • cswap chrome --sync 2 vuelve a copiar tu perfil actual de Chrome en la cuenta 2. Cierra antes su ventana.
  • cswap config set chrome.followSwitch true trae al frente el navegador de la cuenta al ejecutar cswap switch.
  • cswap config set chrome.appPath <path> usa otro navegador basado en Chromium, como Edge o Brave.

Historial de conversaciones compartido

cswap run comparte por defecto un único historial de conversaciones entre todas las cuentas. claude --resume encuentra las conversaciones anteriores aunque hayas cambiado de cuenta (upstream #239). Para mantener un historial por cuenta, ejecuta cswap config set run.shareHistory false. No es compatible con Windows.

Correcciones de errores

  • Configuración de cuenta obsoleta. Si ~/.claude.json todavía indica la cuenta B mientras el llavero guarda el token de la cuenta A, el cswap original pide volver a iniciar sesión en A y deja de actualizar B. aswap sigue a la cuenta propietaria del token activo.
  • Archivos de historial perdidos. Cuando el cswap original fusiona el historial de un perfil en ~/.claude, elimina los archivos con el mismo nombre sin compararlos. Así se puede perder una sesión o memory/MEMORY.md. aswap aparta los archivos que difieren en history-conflicts/.
  • Versión y actualización. --version, la comprobación de actualizaciones y upgrade tienen fijado en el código el paquete claude-swap. aswap usa el paquete con el que se instaló.

Cómo se construye

upstream.json fija un commit de upstream. bun run setup clona ese commit sin cambios en cswap/. Después aplica cada parche de patches/ con git am, en el orden indicado en patches/.patches. Sigue la estructura que usa Electron para sus parches de Chromium y Node. Cada diff se mantiene pequeño y legible, y pasar a una versión más reciente de upstream consiste en hacer rebase de la serie.

Parche Cambio
Seguir al propietario de la credencial activa Corrección: configuración de cuenta obsoleta
Seguir la distribución instalada Corrección: versión y actualización
Actualizar el uso bajo demanda Función: cswap refresh
Conservar los archivos de historial al fusionar Corrección: archivos de historial perdidos
Compartir un único historial de conversaciones Función: historial de conversaciones compartido
Abrir Claude Desktop por cuenta Función: cswap desktop
Abrir Chrome por cuenta Función: cswap chrome

Cada parche es un único commit, y su mensaje explica el problema en upstream. Para compilar desde el código fuente o trabajar en los parches, consulta CONTRIBUTING.md.

Licencia

MIT, igual que claude-swap. Consulta LICENSE.

Explorar proyectos relacionados