Files
pi-new-project/README.md
T

103 lines
4.0 KiB
Markdown

# pi-new-project
Paquete de [pi](https://pi.dev) que genera la base documental de un proyecto
nuevo: `AGENTS.md`, `README.md`, `CHANGELOG.md`, `TODO.md`, `INSTALL.md` y
`.gitignore`, listos para versionar y con las secciones de reglas reservadas
para acordarlas después. Al crear el proyecto, el usuario elige el **modelo por
defecto** de entre los disponibles; se guarda en `.pi/settings.json` y se puede
cambiar en cualquier momento con la orden `/modelo-proyecto`.
## Contenido
```text
pi-new-project/
├── package.json # manifiesto de paquete pi
├── README.md # este documento
├── INSTALL.md # instalación en otro ordenador
├── CHANGELOG.md
├── TODO.md
├── LICENSE # licencia MIT
├── scripts/
│ └── publicar-dist.sh # publica la versión instalable en pi-new-project-dist
├── extensions/
│ └── modelo-proyecto.ts # orden /modelo-proyecto y herramienta elegir_modelo_proyecto
└── skills/
└── new-project/
├── SKILL.md # instrucciones para el agente
├── scripts/new-project.sh # andamiaje (bash, sin dependencias)
├── templates/ # plantillas con {{MARCADORES}}
└── references/plantillas.md # qué es cada documento
```
## Uso
En una sesión de pi, pide crear un proyecto nuevo; la skill `new-project` se
activa sola. También puedes forzarla:
```text
/skill:new-project crea el proyecto "gestor-gastos" en ~/src/gestor-gastos
```
O ejecutar el script directamente:
```bash
skills/new-project/scripts/new-project.sh --help
skills/new-project/scripts/new-project.sh \
--nombre "Gestor de gastos" \
--descripcion "API para registrar y consultar gastos personales" \
--git ~/src/gestor-gastos
```
### Modelo por defecto del proyecto
- **Al crear el proyecto**: la skill llama a la herramienta
`elegir_modelo_proyecto`, que muestra los modelos disponibles (los que tienen
credenciales en pi) para que elijas uno.
- **Dónde se guarda**: en `<proyecto>/.pi/settings.json` (`defaultProvider` y
`defaultModel`). pi lo aplica en cada sesión nueva iniciada en ese
directorio, siempre que el proyecto sea de confianza (`/trust`).
- **Para cambiarlo**: dentro del proyecto, `/modelo-proyecto` abre el selector;
`/modelo-proyecto proveedor/id` lo fija directamente (con autocompletado).
Conserva los demás ajustes del fichero y activa el modelo en la sesión actual.
- **Sin pi**: `new-project.sh --modelo proveedor/id destino` (lista con
`pi --list-models`).
El script nunca sobreescribe ficheros existentes salvo con `--force`, y admite
`--dry-run` para revisar antes.
## Instalación
Para usarlo, instala la **versión de distribución**
(<https://git.sargatxet.cloud/sargatxet/pi-new-project-dist>), que contiene solo
los ficheros que necesita pi (`package.json`, `LICENSE`, `extensions/` y `skills/`):
```bash
pi install git:git.sargatxet.cloud/sargatxet/pi-new-project-dist
# o una versión fija:
pi install git:git.sargatxet.cloud/sargatxet/pi-new-project-dist@v0.3.0
```
Este repositorio (<https://git.sargatxet.cloud/sargatxet/pi-new-project>) es el
de desarrollo. Para modificar el paquete, clónalo e instala 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
- pi 1.3.0+ (la extensión usa la API de extensiones y `typebox`, incluidos en pi).
- `bash` 4+ y `git` (opcional, solo para `--git` y el autor por defecto).
- El script no usa Python, Node ni dependencias externas: es `bash` con
biblioteca estándar.
## Licencia
Distribuido bajo la licencia MIT. Ver [`LICENSE`](LICENSE).