01/Documentation
Instalar Collie
La puerta de acceso requerida y la instalación para su sistema: Linux, Arch y Omarchy, Nix, macOS, Windows o como plugin de Herdr. Cubre la primera ejecución, la configuración en iPhone o Android, actualizaciones y desinstalación.
Instale Collie en el sistema, inícielo y configúrelo en el teléfono. Lea primero Seguridad: Collie expone acceso remoto por shell a la máquina por diseño.
Antes de comenzar
Collie requiere una puerta de acceso: un mecanismo que lo sirva mediante HTTPS y restrinja el acceso únicamente al usuario.
La puerta de acceso predeterminada es Tailscale. collie start ejecuta tailscale serve automáticamente, y el teléfono se conecta a Collie mediante la tailnet, la red privada de Tailscale. El resto de esta página asume el uso de Tailscale. Para usar un proxy con detección de identidad, un proxy inverso, Cloudflare Tunnel o NetBird, consulte Front doors, producto por producto.
Con Tailscale, prepare tres elementos:
- Añada el host a la tailnet instalando Tailscale en él y ejecutando
tailscale up. - Habilite los certificados HTTPS para la tailnet abriendo consola de administración y seleccionando Enable HTTPS.
- Añada el teléfono a la misma tailnet instalando la aplicación de Tailscale e iniciando sesión con la misma cuenta.
collie start finaliza con un error si HTTPS está desactivado. El teléfono también requiere HTTPS para instalar Collie en la pantalla de inicio y recibir Web Push.
Dos formas de ejecutarlo
Cada instancia de Collie pertenece a uno de dos tipos, y cada comando de esta página se detalla una vez para cada uno. Elija su columna y manténgala para el resto de la documentación.
| Plugin de Herdr | Independiente | |
|---|---|---|
| Se instaló con | herdr plugin install AltanS/collie o herdr plugin link | El script de instalación, una compilación desde el código fuente o un paquete |
| Cómo distinguirlos | herdr plugin list muestra herdr.collie | collie está en su PATH o reside en ~/.local/share/collie/current/bin/collie |
| Los verbos se escriben | herdr plugin action invoke <verb> --plugin herdr.collie | collie <verb> |
| Quién lo actualiza | La acción update | collie update o su gestor de paquetes |
Configuración .env | ~/.config/herdr/plugins/config/herdr.collie/.env (herdr plugin config-dir herdr.collie lo imprime) | ~/.config/collie/.env o la ruta de Herdr en un host que ejecuta Herdr |
| Estado | ~/.local/state/collie/ | ~/.local/state/collie/ |
collie doctor indica los archivos de configuración que esta instalación realmente lee, bajo su línea config-file.
Un plugin de Herdr sigue siendo el mismo binario collie; las acciones se reenvían a él (Acciones de Herdr). Una instalación como plugin no tiene collie en su PATH, por lo que los verbos que no tienen acción (pair, qr, logs, link, devices, stt, config) se ejecutan desde el directorio del plugin como bin/collie <verb>.
Herdr es también uno de los cinco multiplexores que Collie puede reflejar (Herdr, tmux, zellij, tuios y tern). El multiplexor a reflejar es una elección independiente (Indicar el multiplexor): un Collie independiente puede reflejar Herdr, y un plugin de Herdr puede reflejar tmux.
Requisitos
Collie se ejecuta en Linux y macOS. Windows 11 en x64 con Herdr es un host compatible, marcado aún como experimental; consulte Compatibilidad con Windows.
| Herramienta | Necesaria para | Propósito |
|---|---|---|
curl, tar, herramienta sha256 (sha256sum/shasum) | Script de instalación binaria y actualizaciones | Descargar y verificar archivos de versión. |
| Bun | Compilaciones desde el código fuente | Ejecutar el puente y compilar la interfaz web. |
| git | Compilaciones desde el código fuente y rutas de Herdr | Clonar y actualizar el repositorio. |
| Multiplexor: Herdr, tmux, zellij, tuios o tern | Todas las instalaciones | Backend reflejado configurado mediante COLLIE_MUX. tmux y zellij son experimentales en 1.0, y tuios y tern también son experimentales; consulte Configurar Collie para un multiplexor y MUX_CONTRACT.md. |
| Herdr ≥ 0.7.0 | Solo backend de Herdr | Requerido cuando COLLIE_MUX=herdr. Compruebe con herdr --version. |
| Tailscale | La puerta de acceso predeterminada | tailscale serve redirige Collie a la tailnet mediante proxy. No se requiere detrás de otra puerta de acceso. |
Nota. Collie no impone una versión mínima de tmux o zellij. Los adaptadores se probaron con tmux 3.4, tmux 3.6b y zellij 0.44.2. Se gestiona un caso particular en tmux: en un servidor que utilizawindow-size manual, versiones de tmux anteriores a la 3.7 fallan al crear una ventana. Collie bloquea la solicitud e indica que se ejecutetmux set -g window-size latest.
Dependencias opcionales, necesarias solo para estas funciones:
| Herramienta | Necesaria para |
|---|---|
| Node.js | Formatea nombres de MagicDNS en los registros. |
| systemd / launchd | Supervisión de servicios; recurre a nohup si no está disponible. |
web-push | Opcional, consulte Web Push. |
Instalación
Localice el sistema a continuación, ejecute sus comandos y continúe en Iniciarlo.
| Sistema | Método recomendado |
|---|---|
| Linux | El script de instalación |
| Arch Linux, Omarchy | Paquete collie-bin |
| NixOS o Nix en cualquier sistema | Paquete Flake |
| macOS, Apple Silicon o Intel | El script de instalación |
| Windows 11 (x64, con Herdr) | install.ps1, experimental |
| Cualquiera de estos, dentro de Herdr | Plugin de Herdr |
Linux
curl -fsSL https://colliepwa.dev/install.sh | sh
collie startEl script instala un binario precompilado para x86_64 o arm64. Independiente explica su funcionamiento y cómo fijar una versión.
collie start ejecuta el bridge como un servicio de systemd --user. Se detiene al cerrar sesión. En un servidor al que se accede por SSH, manténgalo en ejecución después de cerrar sesión y tras los reinicios:
loginctl enable-linger $USERConsulte Persistencia tras reinicios para más detalles.
Arch Linux y Omarchy
git clone https://github.com/AltanS/collie.git && cd collie/packaging/aur
makepkg -si
collie startcollie-bin aún no está en AUR ni en el repositorio de Omarchy. Por ahora, constrúyalo desde el PKGBUILD de este repositorio. Descarga el binario precompilado sin compilar. Una vez publicado, sudo pacman -S collie-bin (Omarchy) o paru -S collie-bin (AUR) reemplaza el clon.
Omarchy incluye tmux y Herdr. Debe indicar cuál replicar en el primer inicio, por ejemplo COLLIE_MUX=herdr collie start. Arch y Omarchy bajo Detalles del paquete cubren la estructura, las actualizaciones y la eliminación.
NixOS y Nix
nix profile install github:AltanS/collie#collie
collie startEsto funciona en NixOS y en cualquier sistema con Nix en x86_64-linux, aarch64-linux y aarch64-darwin. Todavía no hay un módulo de NixOS. Nix bajo Detalles del paquete contiene el resto.
macOS
curl -fsSL https://colliepwa.dev/install.sh | sh
collie startLos binarios publicados para Mac cubren Apple Silicon (macos-arm64) e Intel (macos-x64), y requieren macOS 13 o posterior, la versión mínima contra la que se enlaza su compilación de Bun. El binario de Intel utiliza el destino base de Bun, por lo que también se ejecuta en equipos Mac sin AVX2.
collie start registra un agente de launchd en ~/Library/LaunchAgents. Inicia Collie al iniciar sesión y lo reinicia si falla. También ejecuta tailscale serve, por lo que el comando tailscale debe estar en su PATH. La aplicación Tailscale para Mac puede instalar dicho comando desde sus ajustes.
Nota. Un Mac al que solo se accede mediante SSH no dispone de sesión de inicio para launchd. collie start informa de esto y ejecuta el bridge en segundo plano sin supervisión: sin reinicio ante fallos ni ejecución al iniciar sesión.macOS aún no tiene paquete. mise funciona en Mac, al igual que la salida de aarch64-darwin Nix.
Compatibilidad con Windows (experimental)
Experimental. La instalación se probó con la versión pública v1.16.0 en una máquina virtual con Windows 11, y la actualización se ensayó con copias locales de los archivos de la versión. También se ejecutó el acceso móvil mediante HTTP a través de Tailscale Serve. Aún no se han probado una actualización entre dos versiones reales ni el acceso móvil mediante HTTPS. De ahora en adelante, la comprobación de la versión exige el archivo zip para Windows. Solo el encargado del mantenimiento puede omitir esto, en el caso de una corrección urgente para Linux. "Compatible" significa que el encargado del mantenimiento es responsable del código y lo prueba; el estado "experimental" se mantiene hasta que se cumplan todas las condiciones de la página de Windows. Collie en Windows contiene la página completa.
Ejecute install.ps1. No requiere Bun, Git ni bash:
irm https://colliepwa.dev/install.ps1 | iexPara leer primero el script, guárdelo, ábralo y ejecútelo como un archivo:
Invoke-WebRequest -OutFile install.ps1 https://colliepwa.dev/install.ps1
notepad install.ps1
powershell -ExecutionPolicy Bypass -File .\install.ps1Luego abra una nueva terminal e inicie Herdr. Herdr toma el control de esa terminal, así que abra una segunda terminal o un panel de Herdr y ejecute collie start allí. De cero al teléfono contiene cada paso, incluido cómo abrir Collie en su teléfono.
Qué se debe saber antes de empezar:
- Windows 11 en x64, solo con Herdr. tmux, zellij, Windows 10 y Windows en ARM no están cubiertos.
- El binario no está firmado. SmartScreen puede solicitar confirmación antes de la ejecución y Smart App Control puede bloquearlo. Página de Windows.
- La dirección se publica manualmente. En Linux y macOS,
collie startejecutatailscale serveautomáticamente. En Windows no lo hace, por lo que debe ejecutarse manualmente: Acceder desde el teléfono detalla los pasos con Tailscale, y Variante C describe el uso de un proxy inverso. - Una máquina Windows no puede unirse a un crew en esta versión.
- Una compilación desde el código fuente requiere
bashde Git for Windows. El archivo zip no requiere ninguna cadena de herramientas. - Una copia local del código fuente nunca se actualiza sola en Windows. Cambiar a la instalación mediante el archivo zip es un paso manual único:
collie uninstall, luegoinstall.ps1. Después de eso,collie updatefunciona. En Actualizar figuran los detalles.
Independiente
El script de instalación descarga la versión más reciente en ~/.local/share/collie (COLLIE_DIR) y enlaza el binario a ~/.local/bin/collie:
curl -fsSL https://colliepwa.dev/install.sh | sh
collie startObtiene la versión estable más reciente y no modifica una instalación existente. Para actualizarla, use collie update. La fuente canónica es scripts/install.sh en el repositorio: una página de POSIX sh que nunca llama a sudo. Léalo antes de ejecutarlo:
curl -fsSL https://raw.githubusercontent.com/AltanS/collie/main/scripts/install.sh | less
curl -fsSL https://raw.githubusercontent.com/AltanS/collie/main/scripts/install.sh | shSi ~/.local/bin no está en su PATH, ejecute el binario directamente:
~/.local/share/collie/current/bin/collie versionPara fijar una versión o reparar una instalación existente (consulte Cuando collie no se ejecute):
curl -fsSL https://colliepwa.dev/install.sh | COLLIE_TAG=v1.0.0 shEl script consulta la API de GitHub para obtener las versiones, la cual aplica un límite de peticiones por dirección IP. Si devuelve HTTP 403, fije la versión como se muestra arriba o configure GH_TOKEN con un token sin permisos. Consulte Si GitHub aplica un límite de peticiones a la comprobación de versiones.
Para versiones preliminares, pase --beta. Selecciona la versión preliminar más reciente y la instalación seguirá las versiones preliminares de esa versión principal hasta el lanzamiento final (Versiones preliminares).
El mismo resultado, desde el código fuente
# 1. Clone and checkout latest stable tag
git clone https://github.com/AltanS/collie.git ~/.local/share/collie
cd ~/.local/share/collie
git checkout --detach "$(git tag --list 'v*' | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | sort -V | tail -1)"
# 2. Build runtime and UI
bash scripts/collie-ctl.sh build
# 3. Verify
bin/collie version
# 4. Optional: link to PATH
bin/collie linkUna compilación desde el código fuente requiere Bun y git. Iníciela con bin/collie start, o con collie start tras crear el enlace.
Plugin de Herdr
herdr plugin install AltanS/collie
herdr plugin action invoke start --plugin herdr.collieInicie primero el servidor Herdr (herdr o herdr server &). Esto funciona en Linux y macOS.
Para instalar desde un clon local en su lugar:
git clone https://github.com/AltanS/collie.git && cd collie
herdr plugin link "$(pwd)"
herdr plugin action invoke start --plugin herdr.colliePara una versión preliminar, instale la etiqueta con herdr plugin install AltanS/collie --ref <tag> --yes. Eso es todo para activarla (Versiones preliminares).
Desde un paquete
Un paquete es una instalación independiente gestionada por su gestor de paquetes: se instala, se actualiza y se elimina. Los comandos para cada gestor aparecen arriba y bajo Detalles del paquete, junto con mise para Linux y macOS.
Un paquete no es un plugin de Herdr. Para mostrar los botones de Collie en Herdr, enlace el árbol instalado una sola vez:
herdr plugin link /opt/collieHerdr no explora /opt, por lo que nunca detecta el paquete automáticamente. Las acciones update y update-major del plugin rechazan ejecutarse y remiten a su gestor de paquetes. Es intencionado: su gestor de paquetes administra este árbol.
Indicar el multiplexor
Collie refleja un backend: COLLIE_MUX=herdr (predeterminado), tmux o zellij.
No es necesario definirlo antes del primer inicio. start busca un socket activo de Herdr, un servidor tmux en ejecución y sesiones de zellij, muestra lo encontrado y escribe su elección en la configuración .env, creando el archivo si es necesario.
Sin un terminal interactivo, start selecciona el único backend que haya encontrado y lo notifica. Si no encuentra ninguno, o encuentra varios, se niega a iniciar e indica que configure COLLIE_MUX.
Para elegirlo con antelación, inicialice la configuración antes del primer inicio:
mkdir -p ~/.config/collie
cp ~/.local/share/collie/current/.env.example ~/.config/collie/.envEsa ruta corresponde al script de instalación; una copia del código fuente tiene .env.example en su raíz. En un plugin de Herdr, el archivo se ubica donde apunta herdr plugin config-dir herdr.collie. Luego, defina el backend y su endpoint:
COLLIE_MUX=tmux # or: zellij
# zellij instead: COLLIE_MUX_ENDPOINT_ZELLIJ=<session>
COLLIE_MUX_ENDPOINT_TMUX=/run/user/1000/collie-tmux.sockPrecaución. No ejecute esecpdespués de un inicio: sobrescribe el valorCOLLIE_MUXquestartacaba de escribir.
Edite el archivo más adelante según cambie la configuración. Consulte Configurar Collie para un multiplexor.
Iniciarlo
herdr plugin action invoke start --plugin herdr.collie # Herdr plugin
collie start # standalonestart hará lo siguiente:
- Compilar
web/distsi falta. - Iniciar el puente bajo
systemd --user(o launchd/nohup). - Ejecutar
tailscale serve --bg 8787(HTTPS :443 → 127.0.0.1:8787). - Mostrar el banner de conexión.
Primera ejecución: lo que verá
Salida de collie start (las ejecuciones de Herdr devuelven JSON; vea los registros con herdr plugin log list --plugin herdr.collie):
$ collie start
building web UI (first run)… # linked clone only; a GitHub install already built
…bun install · typecheck · vite build output…
bridge started (systemd --user: collie)
tailscale serve (https) → tailnet :443 -> 127.0.0.1:8787
✓ Collie is running · v1.0.0+b158755
service systemd --user (collie) · active
local http://127.0.0.1:8787
tailnet https://myhost.tail1234.ts.netSi la comprobación de estado falla (⚠ Collie isn't answering on :8787 yet), consulte Resolución de problemas.
El puente se ejecuta como un servicio de systemd --user o un agente launchd de macOS. Se inicia al iniciar sesión y se reinicia en caso de fallo (ARCHITECTURE.md §3). En Linux, loginctl enable-linger $USER lo mantiene en ejecución tras los reinicios (Persistencia tras reinicios).
Configure el acceso de usuarios en Configuración y el acceso de dispositivos mediante emparejamiento (collie pair).
¿Está funcionando realmente?
Verificar estado y registros:
$ collie status
✓ Collie is running · v1.0.0+b158755
service systemd --user (collie) · active
local http://127.0.0.1:8787
tailnet https://myhost.tail1234.ts.net
serve config:
https://myhost.tail1234.ts.net (tailnet only)
|-- / proxy http://127.0.0.1:8787$ collie logs # journal timestamps trimmed here
[push] disabled (no VAPID keys configured)
[bridge] listening on http://127.0.0.1:8787 (poll 1500ms)
[bridge] WARNING: COLLIE_TRUSTED_USER is empty — any tailnet device/user that reaches the bridge is checked by its pairing token alone. Set it to your tailnet login (see README → Variant A).Para restringir el acceso, configure COLLIE_TRUSTED_USER=you@example.com en .env y ejecute collie restart (Configuración). Si falta contenido en el panel, consulte Resolución de problemas.
Instalación en el teléfono
Abra Collie en el teléfono, emparéjelo y añada Collie a la pantalla de inicio.
- Confirme que la aplicación Tailscale del teléfono comparte una tailnet con el host.
- Ejecute
collie qren el host y escanee su código, o abra la URL que imprimecollie url. - Ejecute
collie pairen el host y escanee ese código QR.
El código QR de collie pair abre Ajustes → Sistema → Dispositivos vinculados con el código introducido. También se puede abrir Ajustes → Sistema → Dispositivos vinculados e introducirlo manualmente. Collie no responde a ningún dispositivo hasta que esté vinculado, por lo que el panel principal muestra Emparejar este dispositivo hasta ese momento (Emparejar un dispositivo).
Collie es una aplicación web. El navegador la añade a la pantalla de inicio sin pasar por una tienda de aplicaciones, proporcionándole un icono independiente y vista a pantalla completa.
iPhone y iPad
- Abra la URL de Collie en Safari.
- Pulse Compartir y luego pulse Añadir a la pantalla de inicio.
- Pulse Añadir.
En iOS 16.4 y versiones posteriores, Chrome, Edge y Firefox también ofrecen Añadir a la pantalla de inicio en sus menús para compartir. Si se muestra Abrir como aplicación web, manténgalo seleccionado.

Safari no proporciona un botón de instalación. En su lugar, Ajustes de Collie muestra una tarjeta Instalar con estos pasos hasta que se completen.
Nota. En iPhone o iPad, Web Push requiere iOS 16.4 o superior y solo funciona desde el icono de la pantalla de inicio. Abra Collie desde ese icono y active las notificaciones en Ajustes.
Android
- Abra la URL de Collie en Chrome.
- Vaya a Ajustes en Collie y pulse Instalación en la tarjeta superior.
Esta tarjeta aparece cuando Chrome ofrece la instalación. Si no aparece, abra el menú de Chrome (⋮) y pulse Añadir a la pantalla de inicio, luego Instalación. Algunas compilaciones de Chrome denominan a esto Instalar aplicación. Firefox y Samsung Internet usan Añadir a pantalla de inicio en sus menús principales.

Android admite Web Push dentro de las pestañas normales del navegador. La instalación solo añade el icono de inicio y el modo a pantalla completa.
Escritorio
Chrome y Edge muestran un icono de instalación en la barra de direcciones, además de la tarjeta Instalación en Configuración. En macOS, Safari 17 y versiones posteriores usan Archivo → Añadir al Dock.
Notas para cada dispositivo
- La instalación requiere HTTPS. Bajo
COLLIE_SERVE_MODE=http, los navegadores desactivan los service workers, limitando Collie a una pestaña estándar del navegador. - Las compilaciones de desarrollo (checkouts fuera de una etiqueta de lanzamiento) se instalan como Collie (dev) con un icono naranja para evitar confusiones con las versiones de lanzamiento.
- La vinculación se asocia a un solo dispositivo. Vincule cada teléfono, tableta o navegador que vaya a utilizar.
Primer inicio
Cuando Collie se abre por primera vez en un dispositivo y carga el panel, una pantalla de introducción describe la configuración. Enumera el multiplexor activo, el host reflejado, los paneles en ejecución, los paneles que requieren entrada, el recuento de máquinas del crew y su acceso de escritura.
Debajo de eso, sugiere hasta dos acciones: emparejar el dispositivo, iniciar algo, habilitar alertas o guardar Collie en la pantalla de inicio. Termina con seis tareas principales que se pueden ejecutar.
La aplicación marca esta pantalla como vista al cargar, por lo que cerrar la pestaña no la mostrará de nuevo. Se puede ver más tarde pulsando Mostrar la primera pantalla de nuevo en Configuración.
Actualizar
Un comando toma la versión más reciente de la versión principal actual.
herdr plugin action invoke update --plugin herdr.collie # Herdr plugin
collie update # standaloneColoca la nueva versión junto a la antigua, conmuta, reinicia el bridge y revierte si la nueva versión no responde.
Una instalación empaquetada se actualiza mediante su gestor de paquetes y luego requiere un reinicio, ya que el gestor de paquetes sustituye los archivos y no reinicia nada:
sudo pacman -Syu collie-bin # Omarchy; on the AUR: paru -S collie-bin
nix profile upgrade collie # Nix
mise upgrade --bump github:AltanS/collie # mise
collie restartcollie update se rechaza en una instalación empaquetada e indica ese comando en su lugar. El teléfono muestra el mismo comando donde estaría el botón de actualización.
Cambiar a una nueva versión principal es un paso independiente y consentido:
herdr plugin action invoke update-major --plugin herdr.collie # Herdr plugin
collie update --major # standaloneEl teléfono también puede realizar la actualización rutinaria: Ajustes → Sistema → Actualizaciones, un toque, y en un crew lead un toque actualiza a todos los miembros. Para la ruta desde el teléfono, la comprobación previa, la reversión, los crews y qué hacer si una actualización se bloquea, consulte Gestión y actualización.
Desinstalar
Tres pasos, en este orden. Cada uno elimina una capa y nada más.
1. Eliminar el servicio y el mapeo de puertos. Esto detiene el bridge, elimina la unidad de systemd --user (el agente de launchd en macOS) y retira el mapeo de tailscale serve de Collie. Los archivos del programa y .env se conservan.
herdr plugin action invoke uninstall --plugin herdr.collie # Herdr plugin
collie uninstall # standalone2. Eliminar el programa.
herdr plugin uninstall herdr.collie # Herdr plugin, installed from GitHub
herdr plugin unlink herdr.collie # Herdr plugin, a linked clone or a linked package
collie unlink # standalone: drop the ~/.local/bin/collie symlink
rm -rf ~/.local/share/collie # standalone: the install script's tree, or $COLLIE_DIR
sudo pacman -Rns collie-bin # package: Arch and Omarchy
nix profile remove collie # package: Nix
mise uninstall github:AltanS/collie@1.14.2 # package: mise, the version
mise unuse github:AltanS/collie # package: mise, the config lineUn clon vinculado es un checkout propio. unlink descarta el registro de Herdr y deja el directorio listo para conservarlo o eliminarlo.
3. Eliminar los archivos propios, si se desea prescindir de ellos. Nada de lo anterior toca estos elementos, por lo que una reinstalación vuelve a encontrar sus emparejamientos y sus configuraciones:
| Qué | Plugin de Herdr | Independiente |
|---|---|---|
Configuración, que contiene .env | ~/.config/herdr/plugins/config/herdr.collie/ | ~/.config/collie/ o la ruta de Herdr en un host que ejecuta Herdr |
Estado: dispositivos emparejados, archivos de crew, stt.json, folders.json | ~/.local/state/collie/ (o $COLLIE_STATE_DIR) | lo mismo |
Para pausar sin eliminar nada, stop es suficiente:
herdr plugin action invoke stop --plugin herdr.collie # Herdr plugin
collie stop # standaloneDetalles del paquete
El PKGBUILD, la expresión de Nix y sus notas residen en packaging/ dentro de este repositorio. Cada paquete incluye el binario compilado que la versión ya publica, por lo que no se compila nada en la máquina: ni Bun, ni git, ni compilación alguna. La carpeta completa de la versión se ubica bajo un mismo prefijo, con collie en el PATH mediante un enlace simbólico que apunta hacia ella. macOS aún no tiene paquete; la salida del flake aarch64-darwin es lo más cercano.
Arch
collie-bin aún no está en el AUR. El AUR ha pausado el registro de cuentas nuevas, y el paquete se publicará desde nuestra propia cuenta cuando el registro se reabra. Hasta entonces, compílelo a partir de un clon de este repositorio:
git clone https://github.com/AltanS/collie.git && cd collie/packaging/aur
makepkg -si
collie startmakepkg descarga el tarball de la versión para su arquitectura, comprueba su sha256 con el manifiesto de integridad de la versión y lo descomprime. Sin Bun, sin clonar git de ninguna otra cosa y sin compilación.
Una vez que esté en el AUR, un helper de AUR instala el mismo PKGBUILD:
paru -S collie-bin # or: yay -S collie-bin
collie startLas actualizaciones posteriores se hacen con paru -S collie-bin o yay -S collie-bin, el mismo comando con el que realizó la instalación. sudo pacman -Syu collie-bin solo funciona donde un repositorio contiene el paquete, como en Omarchy.
El paquete instala el árbol de la versión en /opt/collie y /usr/bin/collie como un symlink hacia él. README.md, CHANGELOG.md y docs/ quedan en /usr/share/doc/collie-bin/, y la licencia en /usr/share/licenses/collie-bin/. Proporciona y entra en conflicto con collie, por lo que no se pueden instalar este y un futuro paquete de fuentes a la vez. No habilita ninguna unidad de systemd: collie start escribe su propia unidad de --user, como lo hace tras cualquier instalación.
Nota. Ejecutecollie restarttras cada actualización.pacmanreemplaza los archivos y no reinicia nada, por lo que el servicio sigue ejecutando la versión anterior sobre un binario eliminado hasta que se reinicie.collie doctorlo reporta comorestart-pending, y el teléfono muestra "Collie was replaced on disk. Restart it." junto con el comando a ejecutar.
Elimínelo con los tres pasos indicados en Desinstalar: collie uninstall, luego herdr plugin unlink herdr.collie solo si se vinculó, y después sudo pacman -Rns collie-bin. pacman elimina /opt/collie y /usr/bin/collie, y nada más.
Omarchy
sudo pacman -S collie-bin
COLLIE_MUX=herdr collie startOmarchy incluye tanto tmux como Herdr, y Collie refleja un multiplexor por instalación, por lo que el primer inicio debe indicar cuál controlar: se niega a elegir entre dos que puede ver. start escribe ese nombre en el .env de Collie, que en un host con Herdr es ~/.config/herdr/plugins/config/herdr.collie/.env, y los inicios posteriores son collie start.
Eso funciona una vez que collie-bin esté en el propio repositorio de paquetes de Omarchy, y la pull request que lo añade aún no se ha fusionado. Hasta que lo esté, compile el mismo paquete desde packaging/aur con makepkg -si, como en cualquier host Arch mencionado anteriormente.
Las actualizaciones llegan luego con sudo pacman -Syu, el comando que ya se ejecuta para actualizar la máquina. No interviene ningún helper de AUR, porque pkgs.omarchy.org es un repositorio pacman real. Es el mismo PKGBUILD y la misma disposición de /opt/collie en cualquier caso.
Nota. Las actualizaciones provienen de su gestor de paquetes, y Collie no se actualizará a sí mismo aquí. En su lugar,collie updatelo rechaza. La barra de actualización del teléfono muestra "Collie x.y.z available via pacman.", y la página de Actualizaciones muestra el comando para copiar en lugar de un botón de actualización, porque el gestor de paquetes es el propietario de esa carpeta. Collie indica la formasudo pacman -Syu collie-bin, que es la nomenclatura del repositorio; en una instalación desde el AUR, ejecute su helper en su lugar. Ejecutecollie restarttras la actualización por el motivo anterior: pacman no reinicia nada.
En un crew, esta máquina nunca recibe actualizaciones desde el teléfono: el crew la lista como "espera al gestor de paquetes" y solo se actualiza cuando se ejecuta el asistente en ella.
Elimínelo con los mismos tres pasos descritos anteriormente para Arch.
Nix
nix profile install github:AltanS/collie#collie
collie startEl flake exporta packages.<system>.collie para x86_64-linux, aarch64-linux y aarch64-darwin. Descarga el tarball de la versión para esa plataforma según el sha256 en el propio manifiesto de integridad de la versión, aplica un parche al intérprete del binario en Linux e instala el árbol de la versión en <store-path>/lib/collie con bin/collie como un enlace simbólico hacia él. Ejecútelo una vez sin instalar mediante nix run github:AltanS/collie#collie -- doctor.
No se compila desde el código fuente de forma deliberada: la instalación de dependencias requiere red y una derivación de Nix no tiene acceso a ella, por lo que el paquete envuelve el binario que la versión ya publica y verifica mediante sumas de control.
Aún no existe un módulo de NixOS, solo el paquete flake, por lo que nix profile es el camino: instálelo en su perfil como se indicó anteriormente, o agregue la salida del flake a una lista home-manager o environment.systemPackages manualmente.
Nota. Las actualizaciones provienen de nix, y Collie no se actualizará a sí mismo aquí.collie updaterechaza la acción e indicanix profile upgrade collieen su lugar, y el teléfono muestra la nueva versión con ese comando donde estaría el botón de actualización.
En un crew, esta máquina nunca recibe actualizaciones desde el teléfono: el crew la lista como "espera al gestor de paquetes" y solo se actualiza cuando se ejecuta nix en ella.
Elimínelo primero con collie uninstall, luego:
nix profile remove collieEso retira la ruta del store del perfil y nada más. Los archivos propios se conservan, tal como se indica en Desinstalar.
Agentes de Home Manager en macOS
collie status
launchctl print "user/$(id -u)/herdr.collie"collie status detecta la etiqueta de la instancia tanto en gui/<uid> como en user/<uid> e informa sobre su dominio y el estado del proceso. Si ambos dominios contienen la etiqueta, informa sobre ambos; un agente de GUI detenido no oculta un agente en segundo plano en ejecución. No se requiere anulación de variables de entorno.
Para un agente de Collie existente gestionado con Home Manager, estos ajustes seleccionan el dominio en segundo plano (Home Manager 26.11 o posterior):
launchd.agents.collie = {
domain = "user";
config.Label = "herdr.collie";
};Esto es una adición a la definición de su agente, no un módulo de servicio completo. Mantenga su comando, entorno y rutas de registro configurados en Home Manager. Ejecute el puente con collie _exec-bridge, no con collie start, para que launchd supervise el puente sin que Collie reescriba el plist administrado. Mantenga las credenciales y el estado de emparejamiento fuera del Nix store. Configure el acceso inicial por separado con collie serve, o utilice configuración de external-proxy.
Para una instancia con nombre, utilice la etiqueta herdr.collie-<name> y el mismo COLLIE_INSTANCE, COLLIE_PORT y directorio de configuración en el agente y en su entorno de CLI (múltiples instancias).
Nota. Home Manager controla el ciclo de vida del servicio. Actualice o elimine su declaración y active Home Manager en lugar de ejecutarcollie start,stop,restartouninstall. Esos comandos siguen gestionando el agente del dominio de GUI de Collie; la detección de estado no transfiere la propiedad. Continúe utilizandocollie pair,devices,urlylogscon normalidad.
mise
mise use -g github:AltanS/collie@1.14.2
collie startmise use -g escribe la herramienta en ~/.config/mise/config.toml y coloca el bin/ de la versión en su PATH. El backend github obtiene el tarball de la versión para esa plataforma, por lo que funciona en Linux y macOS sin Bun y sin compilación. Todo el árbol queda bajo ~/.local/share/mise/installs/github-altan-s-collie/<version>/, incluidos web/dist y herdr-plugin.toml, y collie resuelve su propia raíz desde allí.
Obtenga una nueva versión con la misma línea mise use y una etiqueta más reciente, o permita que mise seleccione la última:
mise upgrade --bump github:AltanS/collie
collie restart--bump es el flag importante. Un 1.14.2 fijado es un rango de uno, por lo que un mise upgrade simple reporta la herramienta como actualizada y no mueve nada.
El reinicio no es opcional. Cada versión obtiene su propio directorio, y collie start fija el directorio desde el que se ejecutó dentro de la definición del servicio, por lo que el servicio sigue ejecutando la versión antigua desde el directorio antiguo hasta que se reinicie. collie restart reescribe esa definición con la nueva ruta: la unidad de systemd --user en Linux, el plist de ~/Library/LaunchAgents en macOS. Un solo comando en ambos.
Nota. Un Mac administrado únicamente por SSH no tiene dominio degui/<uid>en el que cargar un agente. En ese caso,collie startlo advierte y ejecuta un puente en segundo plano no supervisado en su lugar, sin reinicio ante fallos y sin nada al iniciar sesión.collie restartaún lo traslada al nuevo directorio.
Nota.collie updatese rechaza aquí y no indica ningún gestor de paquetes: dicecannot tell how this Collie was installed. Un árbol de mise reside dentro de su directorio personal, no contiene ningún.gitpropio y no tiene una estructura deversions/por encima, por lo que Collie no lo interpreta ni como un checkout ni como un paquete. mise gestiona las actualizaciones en esta instalación, y los dos comandos anteriores son los que la modifican.
Elimínelo primero con collie uninstall, luego:
mise uninstall github:AltanS/collie@1.14.2
mise unuse github:AltanS/collieuninstall elimina el directorio de esa versión, unuse retira la línea de la configuración. Escriba la herramienta con su nombre completo de github: en ambos casos; el nombre corto collie funciona para upgrade pero no para uninstall. Los archivos propios se conservan, tal como se indica en Desinstalar.