📋 It’s a Plan (itsaplan) — Gestor de Proyectos Open-Source & Self-Hosted con Agentes IA
La Alternativa Autoalojada a Linear y Plane donde la IA es un Miembro Real del Equipo
It’s a Plan (
croffasia/itsaplan, creado por Andrii Poluosmak, licencias AGPL-3.0 y Apache-2.0 para el runner) es una plataforma de gestión de proyectos, seguimiento de issues y planificación de productos de código abierto diseñada bajo un paradigma revolucionario: los agentes de IA son compañeros de equipo de pleno derecho en el tablero.En lugar de relegar la IA a un panel lateral de chat aislado, los agentes tienen su propio perfil, avatar, rol, permisos y slot de asignación directo en el Kanban o tabla. Pueden recibir tickets asignados por humanos, responder a menciones
@agenteo dispararse automáticamente mediante tareas programadas (scheduled runs) para triajes, limpiezas y revisiones de código.
- 💻 Repositorio Oficial: github.com/croffasia/itsaplan
- 🌐 Sitio Web: itsaplan.dev · Directorio OSP: osp.fyi/itsaplan
- 📦 Stack Moderno: Bun · Turborepo · ElysiaJS · Next.js (App Router SSR) · shadcn/ui · Tailwind v4 · PostgreSQL + Drizzle · Mastra AI · RustFS (S3)
- 🔗 Conexiones en la Bóveda: Better Claude (Mods & Hooks) · Taste Skill · Botkeep Cloud · MOC General
🧭 Arquitectura: Agentes como Miembros del Tablero
flowchart TD User["👨💻 Desarrollador / Product Manager"] --> Board["📋 Tablero Kanban & Vistas (Linear-Style)\n(Issues, Cycles, Subtasks, Docs, Canvas)"] subgraph Core["🏛️ Instancia It's a Plan (Self-Hosted)"] Backend["⚡ ElysiaJS Backend (Bun Engine)"] DB[("💾 PostgreSQL + Drizzle ORM")] Storage["📦 RustFS (S3 Compatible Storage)"] MCP["🔌 Servidor MCP & REST API OpenAPI"] Webhooks["🔔 Webhooks & Integraciones de 5 Forjas\n(GitHub, GitLab, Gitea, Forgejo, Bitbucket)"] end subgraph Agents["🤖 Modos de Agentes de IA"] Internal["🧠 Agentes Internos (Mastra AI)\n(Ejecutados en el servidor con modelos LLM y herramientas web)"] External["💻 Agentes Externos (@itsaplan/runner)\n(Ejecutados localmente en tu terminal con Claude Code, Antigravity CLI, Codex)"] end Board <--> Backend Backend <--> DB Backend <--> Storage Backend <--> MCP Backend <--> Webhooks Board -- "1. @mención en comentario\n2. Asignación directa de ticket\n3. Scheduled Cron (Triaje)" --> Agents Agents -- "Actualiza estado, crea PR y comenta solución" --> Board Webhooks -- "Fixes KEY-42 (Cierre al mergear PR)" --> Board
⚔️ Comparativa: Linear vs. Plane vs. It’s a Plan
| Característica | Linear | Plane | It’s a Plan |
|---|---|---|---|
| Licencia / Código | Privativo (SaaS cerrado) | Open Source (Apache 2.0 / Commercial) | Open Source (AGPL-3.0 / Apache-2.0) |
| Autoalojamiento (Self-Hosted) | ❌ Solo Nube | ✅ Docker / Kubernetes | ✅ Docker, Bun, Coolify, Railway, Helm |
| Tarifas por Asiento (Per-Seat) | 💰 Costoso (14+/mes/usuario) | 💰 Plan Enterprise para ciertas funciones | 🆓 100% Gratis sin coste por usuario |
| Integración de Agentes IA | ⚠️ Chat lateral básico / Apps externas | ⚠️ Asistente tipo bot auxiliar | 🏆 Agentes de primera clase asignables en el tablero |
| Agentes Locales en tu Máquina | ❌ No | ❌ No | ✅ @itsaplan/runner (Claude Code, Antigravity, Codex) |
| Protocolo MCP Nativo | ❌ No | ⚠️ En desarrollo | ✅ Servidor MCP integrado nativo |
| Motor de Backend | Node.js cerrado | Python / Django | ⚡ Bun + ElysiaJS (Ultra alto rendimiento) |
| Bases de Datos & Storage | Gestionado propietario | PostgreSQL + MinIO | PostgreSQL + Drizzle + RustFS S3 |
🎛️ Capacidades y Módulos Principales
1. Gestión de Proyectos de Nivel Profesional (Linear-Class)
- Vistas Múltiples: Kanban interactivo, Tablas densas, Línea de tiempo (Timeline / Gantt) y Calendario con filtros guardados y doble nivel de agrupación.
- Ciclos de Trabajo (Cycles / Sprints): Time-boxing con traspaso automático de issues inconclusas al siguiente ciclo.
- Jerarquía y Relaciones: Subtareas, listas de verificación (checklists), adjuntos y enlaces de dependencia (
blocks,relates to,duplicates). - Módulo de Documentación Integrado (Docs): Páginas Markdown en árbol jerárquico con control de revisiones, páginas privadas, bloqueo contra edición y enlaces bidireccionales con issues.
- Lienzo de Notas Libres (Whiteboard / Canvas): Pizarra interactiva con notas adhesivas de colores, listas de chequeo y conectores visuales.
- Analíticas y Dashboards: Métricas de rendimiento (Throughput), gráficos Burnup con fecha proyectada de culminación y pulso del equipo.
2. Agentes de IA: Internos vs. Externos con @itsaplan/runner
El Gran Salto: Tu Agente CLI Trabaja en el Tablero
Con el paquete oficial
@itsaplan/runner, puedes vincular tu terminal de trabajo local:
- Creas un agente llamado “Antigravity Coder” o “Claude Fixer” en la plataforma.
- Le asignas un issue con un bug o nueva funcionalidad.
- Tu máquina local recibe la tarea vía runner, ejecuta Claude Code, Antigravity CLI o Codex en tu propio entorno y repositorio, ejecuta pruebas, hace el commit, levanta el Pull Request y responde en el hilo del issue con el enlace del PR.
3. Tareas Programadas (Scheduled Runs)
- El superpoder oculto: Puedes programar agentes para que despierten en intervalos definidos (ej. todos los lunes a las 8:00 AM o cada 6 horas).
- Casos de uso: Triaje automático de nuevos reportes de bugs, barrido de issues estancadas (stale issues), generación de resúmenes de progreso semanales para stakeholders o sincronización con herramientas externas (Notion, Telegram, Gitea).
⚡ Guía de Instalación y Despliegue
Métodos de Despliegue Rápido
Opción 1: Probar Localmente en tu Máquina (Bun + Docker)
Requisitos: Docker y Bun instalados:
# 1. Clonar el repositorio
git clone https://github.com/croffasia/itsaplan.git
cd itsaplan
# 2. Instalar dependencias del monorepo
bun install
# 3. Asistente interactivo de configuración
bun run setup # Selecciona "Try it"El script detecta puertos libres, genera claves criptográficas seguras, inicia el stack completo en contenedores Docker y abre automáticamente http://localhost:3001.
Opción 2: Despliegue en 1 Clic en Railway o Coolify
- Railway: Utiliza la plantilla oficial con despliegue en un clic:
railway.com/deploy/its-a-plan. - Coolify: Sigue la guía oficial en
docs/coolify.mdpara autoalojar en tu VPS privado con traefik y certificados SSL automáticos de Let’s Encrypt. - Kubernetes: Incluye Helm Chart oficial (
docs/helm.md) para clústeres empresariales.
Opción 3: Conexión del Runner Local (@itsaplan/runner)
Para delegar tickets a tu entorno local de IA:
# Instalar el runner CLI
npm install -g @itsaplan/runner
# Iniciar el runner conectado a tu instancia
itsaplan-runner --url https://tu-instancia.com --token TU_API_KEY --agent "Claude Code"Integración con Servidor MCP
It’s a Plan expone un servidor MCP nativo. Puedes conectar Antigravity, Cursor o Claude Desktop agregando la URL y token MCP en tu configuración, permitiendo a cualquier agente leer tus proyectos, crear tareas y mover estados mediante lenguaje natural.