Releases: Nebur692/claude-code-remote-control-unraid-plugin
Release list
v2026.07.25.6
English
The "Connect to session ID" field went blank again after every page reload, so reconnecting to the same session meant re-typing or re-picking it from the history list every time. The last id you connected with is now saved to this plugin's own config on the flash share and pre-fills the field automatically.
Español
El campo "Connect to session ID" se vaciaba de nuevo tras cada recarga de la página, así que reconectar a la misma sesión implicaba volver a escribirlo o elegirlo del historial cada vez. El último id al que te conectaste ahora se guarda en el propio config del plugin en el flash share y rellena el campo automáticamente.
v2026.07.25.5
English
Two fixes:
- Replaced the previous release's "wipe the plugin tree before every install" hack with Unraid's actual intended mechanism: each deployed FILE now carries a child SHA256 element with the hash of its real on-disk content. Unraid's installer already supports this — if a deployed file's hash doesn't match, it deletes and redeploys it; if it matches, it's left alone untouched. Same end result (Update actually redeploys changed files, for every install) but without touching files that didn't change, and without briefly removing the whole plugin tree during every future update. Verified by replicating the installer's own file_exists+SHA256+INLINE/base64 logic against a sandbox: stale files get unlinked and rewritten, unchanged files get skipped, a fresh install writes everything.
- Fixed two identically-labeled "View live logs" links on the Settings page (one for the install/update log, one buried inside the Remote Control box for its own supervisor log) that made it impossible to tell which was which. Both now live together under the "Logs" section, labeled "Install / Update log" and "Remote Control log".
Español
Dos arreglos:
- Sustituido el hack de la release anterior ("borrar el árbol del plugin antes de cada instalación") por el mecanismo real que ya soporta el instalador de Unraid: cada FILE desplegado ahora lleva un hijo SHA256 con el hash de su contenido real en disco. Si el hash no coincide con el fichero en disco, Unraid lo borra y redespliega solo; si coincide, lo deja intacto. Mismo resultado (Actualizar redespliega de verdad los ficheros cambiados, para cualquier instalación) pero sin tocar los que no cambiaron ni borrar el árbol entero en cada futura actualización. Verificado replicando la lógica file_exists+SHA256+INLINE/base64 del propio instalador contra un sandbox: los ficheros obsoletos se borran y reescriben, los que no cambiaron se saltan, y una instalación nueva escribe todo.
- Arreglados dos enlaces "View live logs" con la misma etiqueta en la página de Settings (uno para el log de instalación/actualización, otro escondido dentro de la caja de Control Remoto para su propio log de supervisor) que hacían imposible distinguir cuál era cuál. Ahora ambos viven juntos bajo una sección "Logs", etiquetados "Install / Update log" y "Remote Control log".
v2026.07.25.4
English
Fixes "Update" on the Plugins page (and any repeat plugin install) silently deploying nothing new. Unraid's own installer only writes a FILE's target path if it doesn't already exist, and none of this plugin's FILE elements carried a checksum to force a refresh — so every previous update only ever re-registered the .plg definition itself while every actual script/page/icon stayed frozen at whatever was first installed, no matter the version shown. Added a cleanup step (a Run-only FILE with no Name=, which isn't subject to that existence check) that removes the deployed plugin tree before every install/update so the files below are always redeployed fresh. Does not touch settings, session history, or auth data under /boot/config/plugins/claude-code/. If you're reading this from an older install, one more Update now fully applies — this fix ships in the same install run it fixes.
Español
Corrige que "Actualizar" en la página de Plugins (y cualquier plugin install repetido) no desplegara nada nuevo en silencio. El propio instalador de Unraid solo escribe la ruta destino de un FILE si todavía no existe, y ningún elemento FILE de este plugin llevaba un checksum que forzara su refresco — así que cada actualización anterior solo volvía a registrar la definición del .plg mientras cada script/página/icono real se quedaba congelado en lo que se instaló la primera vez, sin importar la versión mostrada. Se añadió un paso de limpieza (un FILE solo-Run sin Name=, que no está sujeto a esa comprobación de existencia) que borra el árbol desplegado del plugin antes de cada instalación/actualización, para que los ficheros de abajo siempre se redesplieguen frescos. No toca ajustes, historial de sesiones ni datos de autenticación bajo /boot/config/plugins/claude-code/. Si estás leyendo esto desde una instalación anterior, una Actualización más ya aplica esto del todo — este arreglo se despliega en la misma instalación que corrige.
v2026.07.25.3 - Remote Control session history & recovery
English
Three improvements to Remote Control (introduced in 2.0.0):
- Fixed it getting silently stuck forever on a session archived on the claude.ai side. Resuming an archived session doesn't fail the way "no session yet" does — it exits with "Session failed: Process exited with error" every single time, so the supervisor was retrying the same dead session forever instead of recovering. It now gives up after 3 consecutive failures like that, starts a fresh session automatically, and shows a clearly worded notice on the Settings page (bilingual) so you know it happened.
- Added a session history: every session id Remote Control ever connects to (fresh or resumed) is now logged to the flash share with its timestamp and working directory, and shown as a table on the Settings page.
- Added a "Connect to session ID" field on the Settings page (with the history above as autocomplete suggestions) so you can stop the current session and reconnect to any specific past session id — including one pasted from claude.ai/code — instead of always resuming only the most recent one. Falls back to a fresh session automatically if that id can't be resumed either.
Español
Tres mejoras al Control Remoto (introducido en la 2.0.0):
- Arreglado que se quedara colgado en silencio para siempre en una sesión archivada en el lado de claude.ai. Reanudar una sesión archivada no falla como "sin sesión todavía" — sale con "Session failed: Process exited with error" cada vez, así que el supervisor reintentaba la misma sesión muerta sin parar en vez de recuperarse. Ahora se rinde tras 3 fallos consecutivos de ese tipo, arranca una sesión nueva automáticamente, y muestra un aviso bilingüe claro en la página de Settings para que sepas que ha pasado.
- Añadido un historial de sesiones: cada id de sesión a la que Control Remoto se conecta (nueva o reanudada) queda registrado en el flash share con su marca de tiempo y directorio de trabajo, y se muestra como tabla en la página de Settings.
- Añadido un campo "Connect to session ID" en Settings (con el historial de arriba como sugerencias de autocompletado) para detener la sesión actual y reconectar a cualquier id de sesión pasado concreto — incluido uno pegado desde claude.ai/code — en vez de retomar siempre solo la más reciente. Si tampoco se puede reanudar ese id, cae automáticamente a una sesión nueva.
2.0.0 - Remote Control
English
New Remote Control section on the Settings page: runs claude remote-control as a supervised background process, so you can drive a Claude Code session on this NAS from claude.ai/code or the Claude mobile app — outbound HTTPS only, nothing opened inbound.
- Always resumes the same ongoing session in its configured directory (
--continue), falling back to a fresh session only the very first time. - Only starts when you click Start on the Settings page — never launched automatically at boot.
- Auto-respawns on transient exits (e.g. Anthropic's documented ~10min network-outage timeout).
- Defaults to
/root/claude-remote-controlrather than/rootitself, since Unraid never persists workspace trust for a home directory. - Requires a claude.ai OAuth login (Pro/Max/Team/Enterprise) — API key auth isn't supported by this Anthropic feature.
Verified live end-to-end: a fresh session was created, cleanly stopped, and correctly resumed via --continue on restart with the exact same session ID.
Español
Nueva sección Control Remoto en la página de Settings: ejecuta claude remote-control como un proceso en segundo plano supervisado, para controlar una sesión de Claude Code en este NAS desde claude.ai/code o la app móvil de Claude — solo conexiones HTTPS salientes, nada abierto hacia adentro.
- Siempre retoma la misma sesión en curso en su directorio configurado (
--continue), y solo arranca una sesión nueva la primera vez. - Solo arranca cuando pulsás Iniciar en Settings — nunca se lanza solo al arrancar Unraid.
- Se reinicia solo ante caídas transitorias (por ejemplo, el timeout de ~10 min por corte de red que documenta Anthropic).
- Usa por defecto
/root/claude-remote-controlen vez de/rootdirectamente, porque Unraid nunca recuerda la confianza del workspace para un directorio home. - Requiere haber iniciado sesión con OAuth de claude.ai (Pro/Max/Team/Enterprise) — esta función de Anthropic no admite autenticación por API key.
Verificado en vivo de punta a punta: se creó una sesión nueva, se detuvo limpiamente, y al reiniciar retomó correctamente la misma sesión vía --continue con idéntico ID.
1.3.1
English
Fixes the Update action from 1.3.0 itself: claude update downloads the new version but only repoints the running claude binary if that file is a symlink the native installer manages — on this plugin it's a plain copy restored from the appdata cache, so the CLI left the live binary untouched even after a "successful" update. update-claude.sh now applies the newest version under ~/.local/share/claude/versions/ itself. Verified live: claude --version correctly shows the new version after clicking Update, and survives a reboot.
Español
Corrige la propia acción de Actualizar de la 1.3.0: claude update descarga la versión nueva pero solo repunta el binario en ejecución si ese fichero es un symlink gestionado por el instalador nativo — en este plugin es una copia simple restaurada desde el caché de appdata, así que la CLI dejaba el binario en ejecución intacto incluso tras una actualización "exitosa". update-claude.sh ahora aplica él mismo la versión más nueva de ~/.local/share/claude/versions/. Verificado en vivo: claude --version muestra correctamente la versión nueva tras pulsar Actualizar, y sobrevive a un reinicio.
1.3.0
English
- Fixed the "View live logs" link never appearing — it was hidden until the log file existed, which only ever happened on an actual Unraid reboot. Now always shown.
- Added a real Update Claude Code action: runs the CLI's own
claude updateand re-caches the result, since the previous "Reinstall" button could never actually fetch a newer release (it's a no-op once Claude Code already works), and any manual update would otherwise be silently reverted on the next reboot. - Reinstall and Update now both log to the file the live-log link follows.
Español
- Arreglado que el enlace "Ver logs en vivo" nunca aparecía — estaba oculto hasta que existía el fichero de log, y eso solo pasaba tras un reinicio real. Ahora siempre se muestra.
- Añadida una acción real de Actualizar Claude Code: ejecuta el propio
claude updatede la CLI y cachea el resultado, ya que el botón "Reinstalar" anterior nunca podía traer una versión nueva (no hace nada si Claude Code ya funciona), y cualquier actualización manual se revertía en silencio en el siguiente reinicio. - Reinstalar y Actualizar ahora escriben ambos en el fichero que sigue el enlace de log en vivo.
1.2.1
English
Fixes misleading help text on the Settings page's Logs box: it claimed clicking "Reinstall" would create the log file, but Reinstall calls install-claude.sh directly, not rc.claude-code (the only script that writes to the log). Only an actual reboot creates it.
Español
Corrige un texto de ayuda engañoso en la sección Logs de la página de Settings: decía que al pulsar "Reinstalar" se creaba el log, pero Reinstalar llama directo a install-claude.sh, no a rc.claude-code (el único script que escribe el log). Solo un reinicio real lo crea.
1.2.0
English
- Plugins tab now shows "Claude Code Remote Control" with a real bilingual description instead of the bare word "claude-code".
- Added a "Logs" section to the Settings page: a "View live logs" link that streams
/var/log/claude-code-install.login real time, using Unraid's nativeopenTerminal()mechanism (same as Docker/VMs/NUT).
Español
- La pestaña Plugins ahora muestra "Claude Code Remote Control" con una descripción bilingüe real en vez de la palabra pelada "claude-code".
- Añadida una sección "Logs" en la página de Settings: un enlace "Ver logs en vivo" que sigue en tiempo real
/var/log/claude-code-install.log, usando el mecanismo nativoopenTerminal()de Unraid (el mismo que Docker/VMs/NUT).
1.1.1
English
Fixes v1.1.0's launch= attribute: it was Settings/claude-code needs the Settings/ prefix regardless of the page's own Menu= value — verified against every other installed plugin (dynamix.system.stats, ca.cleanup.appdata, user.scripts, nut-dw), all of which use Menu="Utilities" but launch="Settings/<Page>". v1.1.0 used Utilities/claude-code, a dead link.
Español
Corrige el atributo launch= de la v1.1.0: necesita el prefijo Settings/ sin importar el valor de Menu= de la propia página — verificado contra todos los demás plugins instalados (dynamix.system.stats, ca.cleanup.appdata, user.scripts, nut-dw), todos con Menu="Utilities" pero launch="Settings/<Page>". La v1.1.0 usaba Utilities/claude-code, un enlace roto.