@pandi-coding-agent/pandi-session
v0.2.4
Published
Extensión de Pi que agrega un dashboard /sessions independiente para descubrir sesiones Pandi locales por proyecto.
Maintainers
Readme
pandi-session
En 30 segundos
pandi-session agrega /sessions: un menú al estilo /workflow para abrir un dashboard TUI propio, listar las
sesiones Pi vivas de este proyecto, detectar registros stale y cambiar a otra sesión cuando Pi expone
ctx.switchSession.
Es independiente del runtime de workflows. Por ahora vive como una superficie separada; cualquier consolidación futura se decidirá con evidencia después.
Uso
| Comando | Qué hace |
| ------------------------------------- | ---------------------------------------------------------------------------------------- |
| /sessions | En UI abre un menú interactivo; en headless imprime la lista textual. |
| /sessions dashboard | Abre el dashboard TUI si hay UI; en modo headless imprime la lista textual. |
| /sessions list | Imprime la lista textual de sesiones del proyecto. |
| /sessions cleanup | Limpia registros stale seguros; con UI pide confirmación y en headless requiere --yes. |
| /sessions cleanup --dry-run | Lista cada archivo con acción (delete/keep) y razón, sin borrar nada. |
| /sessions cleanup --all-stale --yes | También permite borrar heartbeats stale con PID vivo; nunca borra la sesión actual. |
Teclas del dashboard
| Tecla | Acción |
| --------------------- | ------------------------------------------------------------------------ |
| ↑ / ↓ o k / j | Cambia la selección. |
| Enter / → | Cambia a la sesión seleccionada si hay transcript y ctx.switchSession. |
| C | Limpia registros stale con confirmación cuando hay UI. |
| q / Esc | Cierra el dashboard. |
Modelo de datos
La extensión escribe heartbeats propios en .pi/pandi-session/live/ para proyectos trusted; fuera de un proyecto
trusted usa el directorio global del agente, separado por hash de cwd.
Cada registro incluye pid, mode, cwd, timestamps, metadata de sessionManager y flags livianos (trusted,
idle). Una sesión se considera live cuando el PID existe y el heartbeat sigue fresco.
Instalación independiente
pi install ./extensions/pandi-sessionEl paquete publica sus archivos TypeScript de primer nivel y no depende de otros paquetes de este monorepo en runtime.
Nota: Pi ya tiene un comando interactivo integrado llamado
/session; por eso esta extensión usa el plural/sessionspara no pisarlo.
