diff --git a/CHANGELOG.md b/CHANGELOG.md index 1cbed9c..a0b80ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,11 @@ y el proyecto usa [Versionado Semántico](https://semver.org/lang/es/). ### Añadido - Licencia MIT: fichero `LICENSE` y campo `license` en `package.json`. +- Documentada la descarga e instalación desde el repositorio + + (`pi install git:git.sargatxet.cloud/sargatxet/pi-new-project`) en + `README.md` e `INSTALL.md`, con actualización y desinstalación; campos + `homepage` y `repository` en `package.json`. ### Cambiado diff --git a/INSTALL.md b/INSTALL.md index 4182e4c..163e604 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -3,6 +3,8 @@ Instalación del paquete/skill `new-project` en pi, en este ordenador o en cualquier otro. +Repositorio: + ## 1. Requisitos | Componente | Versión mínima | Notas | @@ -12,23 +14,37 @@ cualquier otro. | git | cualquiera | Opcional: `--git` y autor por defecto. | | shellcheck | opcional | Para validar el script (`shellcheck new-project.sh`). | -## 2. Opción A — instalarlo como paquete de pi (recomendado) +## 2. Opción A — instalarlo como paquete de pi desde git (recomendado) -Desde el directorio que contiene `pi-new-project/`: +pi clona el repositorio y lo instala directamente: ```bash -pi install ./pi-new-project +pi install git:git.sargatxet.cloud/sargatxet/pi-new-project +# equivalente, con la URL completa: +pi install https://git.sargatxet.cloud/sargatxet/pi-new-project ``` -O desde git/npm cuando se publique: - -```bash -pi install git:github.com//pi-new-project@v0.1.0 -``` +Para fijar una versión concreta, añade una etiqueta o un commit: +`pi install git:git.sargatxet.cloud/sargatxet/pi-new-project@`. +Añade `-l` (`--local`) para declararlo solo en el proyecto actual +(`.pi/settings.json`) en lugar de en `~/.pi/agent/settings.json`. Comprueba con `pi list` y arranca pi: la skill aparecerá como `new-project` y estará disponible la orden `/modelo-proyecto`. -Para una prueba puntual sin instalarlo: `pi -e ./pi-new-project`. +Para una prueba puntual sin instalarlo: +`pi -e git:git.sargatxet.cloud/sargatxet/pi-new-project`. + +### Desde una copia local + +Si prefieres descargar antes el repositorio (para revisarlo o modificarlo): + +```bash +git clone https://git.sargatxet.cloud/sargatxet/pi-new-project.git +pi install ./pi-new-project +``` + +Una instalación local se carga desde ese directorio sin copiarlo: los cambios +(o un `git pull`) se aplican en la siguiente sesión de pi. ## 3. Opción B — copiar la skill @@ -47,6 +63,9 @@ ln -s "$PWD/pi-new-project/skills/new-project" ~/.agents/skills/new-project Rutas equivalentes: `~/.pi/agent/skills/` y, por proyecto, `.agents/skills/`. +En estos ejemplos, `pi-new-project/` es una copia del repositorio obtenida con +`git clone https://git.sargatxet.cloud/sargatxet/pi-new-project.git`. + La skill sola no incluye la orden `/modelo-proyecto` ni la herramienta `elegir_modelo_proyecto`; cópialas también (o la skill usará el plan B, `pi --list-models` + `--modelo`): @@ -56,20 +75,21 @@ mkdir -p ~/.pi/agent/extensions cp pi-new-project/extensions/modelo-proyecto.ts ~/.pi/agent/extensions/ ``` -## 4. Opción C — exportar a otro ordenador +## 4. Opción C — exportar a otro ordenador sin acceso al repositorio -No hay más que copiar el directorio; no tiene dependencias. +Si el ordenador destino tiene acceso a +, basta con la opción A. +Si no, copia el directorio; no tiene dependencias. ```bash # en el ordenador origen -tar -czf pi-new-project-0.1.0.tar.gz pi-new-project/ +tar -czf pi-new-project-0.2.0.tar.gz pi-new-project/ # en el ordenador destino -tar -xzf pi-new-project-0.1.0.tar.gz +tar -xzf pi-new-project-0.2.0.tar.gz pi install ./pi-new-project # o la opción B ``` -Alternativa sin `tar`: publicar el repositorio y usar `pi install `. ## 5. Verificación @@ -100,14 +120,20 @@ modelos y actualizar `.pi/settings.json`. ## 6. Actualización ```bash -git pull -pi update --extensions # si se instaló como paquete +pi update --extensions # instalado desde git: actualiza el clon gestionado por pi + +# instalado desde una copia local o copiado (opción B): +cd pi-new-project && git pull ``` +Si se instaló con una etiqueta o un commit fijo (`@`), `pi update` no lo +mueve: reinstala con la nueva referencia. + ## 7. Desinstalación ```bash -pi remove ./pi-new-project # si se instaló como paquete +pi remove git:git.sargatxet.cloud/sargatxet/pi-new-project # paquete desde git +pi remove ./pi-new-project # paquete desde una copia local rm -rf ~/.agents/skills/new-project # si se copió o enlazó rm -f ~/.pi/agent/extensions/modelo-proyecto.ts ``` diff --git a/README.md b/README.md index 05a6954..64aa5f3 100644 --- a/README.md +++ b/README.md @@ -65,10 +65,24 @@ El script nunca sobreescribe ficheros existentes salvo con `--force`, y admite ## Instalación -Ver [`INSTALL.md`](INSTALL.md). Resumen: copia (o enlaza) el directorio en -`~/.pi/agent/skills/` o instálalo como paquete con `pi install ./pi-new-project`. -La orden `/modelo-proyecto` solo está disponible al instalarlo como paquete (o -copiando también `extensions/`). +El repositorio está en +y se instala directamente desde ahí como paquete de pi: + +```bash +pi install git:git.sargatxet.cloud/sargatxet/pi-new-project +``` + +También puedes clonarlo e instalar la copia local: + +```bash +git clone https://git.sargatxet.cloud/sargatxet/pi-new-project.git +pi install ./pi-new-project +``` + +Ver [`INSTALL.md`](INSTALL.md) para el resto de opciones (copiar solo la skill, +exportar sin acceso al repositorio, actualizar y desinstalar). La orden +`/modelo-proyecto` solo está disponible al instalarlo como paquete (o copiando +también `extensions/`). ## Requisitos diff --git a/TODO.md b/TODO.md index 76fd548..ddb7316 100644 --- a/TODO.md +++ b/TODO.md @@ -15,12 +15,17 @@ - [ ] Detectar y completar el stack automáticamente (¿`--stack python|node|rust`?) para prellenar `INSTALL.md` y los comandos de verificación. - [ ] Valorar soporte multiidioma (`--lang es|en`) en plantillas y script. -- [ ] Publicar el paquete (git o npm) para instalarlo con `pi install `. +- [ ] Publicar etiquetas de versión (`v0.2.0`, …) para poder fijar la versión + con `pi install git:...@`. +- [ ] Valorar publicarlo también en npm (galería de paquetes de pi). - [ ] Prueba automática del script (golden test de los ficheros generados). ## Hecho - [x] 2026-10-18 — licencia MIT (`LICENSE`). +- [x] 2026-10-18 — paquete publicado en git + () e instalación con + `pi install` documentada. - [x] 2026-10-18 — modelo por defecto por proyecto: selector al crear y orden `/modelo-proyecto` para cambiarlo. - [x] 2026-10-18 — estructura del paquete, skill, script y plantillas. diff --git a/package.json b/package.json index 5e816cc..7aac93e 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,11 @@ "private": true, "license": "MIT", "description": "Paquete de pi con la skill new-project (base documental de un proyecto) y la orden /modelo-proyecto (modelo por defecto del proyecto).", + "homepage": "https://git.sargatxet.cloud/sargatxet/pi-new-project", + "repository": { + "type": "git", + "url": "git+https://git.sargatxet.cloud/sargatxet/pi-new-project.git" + }, "keywords": [ "pi-package" ],