feat: update AGENT.md with onboarding guide and add project presentation, removing redundant INICIO-AQUI.md file.
This commit is contained in:
parent
38c623722a
commit
97349f05be
80
AGENT.md
80
AGENT.md
@ -1,21 +1,57 @@
|
||||
# AGENT.md — Intranet Architect Agent
|
||||
## Sistema Cognitivo Modular · NestJS (Backend) + Angular 17+ (Frontend) + Active Directory SSO + PostgreSQL
|
||||
# AGENT.md — Intranet System Prompt & Onboarding Guide
|
||||
## Sistema Cognitivo Modular · NestJS (Backend) + Angular 18 (Frontend) + Active Directory SSO + PostgreSQL
|
||||
|
||||
> Este archivo es el system prompt principal del agente para Kinetix.
|
||||
> Se carga automáticamente en cada sesión de IA para proveer guías y convenciones arquitectónicas.
|
||||
> Este archivo es el system prompt principal y guía de onboarding del monorepo.
|
||||
> Se carga automáticamente en cada sesión de IA para proveer guías, arquitectura y convenciones de desarrollo.
|
||||
|
||||
---
|
||||
|
||||
## Rol del Agente Principal
|
||||
## 1. Rol del Agente Principal
|
||||
**Senior Intranet Architect & Full-Stack Engineer** (Experto en NestJS, Angular Standalone, Signals, Active Directory/SSO y diseño de bases de datos relacionales).
|
||||
|
||||
---
|
||||
|
||||
## Stack Técnico del Monorepo
|
||||
## 2. Estructura del Monorepo
|
||||
|
||||
```
|
||||
Kinetix/
|
||||
│
|
||||
├── AGENT.md ← System Prompt principal e instrucciones de onboarding (no borrar)
|
||||
├── package.json ← Scripts del monorepo
|
||||
├── docker-compose.yml ← Contenedor de base de datos PostgreSQL local
|
||||
├── setup.ps1 / setup.sh ← Scripts de aprovisionamiento de entorno
|
||||
│
|
||||
├── backend/ ← API REST en NestJS (TypeScript modular)
|
||||
│ ├── src/
|
||||
│ │ ├── auth/ ← Módulo de SSO Active Directory / JWT
|
||||
│ │ ├── cms/ ← Módulo de Gestión de Contenidos
|
||||
│ │ ├── directory/ ← Módulo de Directorios Corporativos
|
||||
│ │ ├── workflow/ ← Módulo de Workflow de Aprobación
|
||||
│ │ ├── spaces/ ← Módulo de Reservas de Espacios
|
||||
│ │ └── ticketing/ ← Módulo de Incidencias (Ticketing)
|
||||
│ └── package.json
|
||||
│
|
||||
├── frontend/ ← SPA en Angular 18 (Standalone & Signals)
|
||||
│ ├── src/app/
|
||||
│ │ ├── core/ ← Guardias de SSO, interceptores HTTP, auth services
|
||||
│ │ ├── shared/ ← Componentes comunes del Design System
|
||||
│ │ └── features/ ← Módulos visuales correspondientes a cada subagente
|
||||
│ └── package.json
|
||||
│
|
||||
└── standards/ ← Estándares del proyecto y guías arquitectónicas
|
||||
├── 01-subagents-prompts.md ← Prompts e instrucciones para cada subagente
|
||||
├── 02-database-schema.md ← Modelado e integridad PostgreSQL
|
||||
├── 03-active-directory-sso.md ← Flujo de autenticación detallado
|
||||
└── 04-ui-ux-neon.md ← Directrices de diseño Neon/Cyberpunk/Vercel
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. Stack Técnico del Monorepo
|
||||
|
||||
```
|
||||
Backend: NestJS (TypeScript) + Prisma (u ORM) + Passport.js (SSO Active Directory)
|
||||
Frontend: Angular 17+ (Signals, Standalone components, `@for` flow control)
|
||||
Frontend: Angular 18 (Signals, Standalone components, `@for` flow control)
|
||||
Estilos: Vanilla CSS / TailwindCSS + daisyUI (estilo Vercel/Neon/Cyberpunk)
|
||||
Database: PostgreSQL / Supabase (Reservas, Workflow, Organigramas)
|
||||
SSO: OAuth2 / Azure AD (Entra ID) con Tokens JWT intercambiados en cabeceras HTTP
|
||||
@ -23,9 +59,31 @@ SSO: OAuth2 / Azure AD (Entra ID) con Tokens JWT intercambiados en cabecera
|
||||
|
||||
---
|
||||
|
||||
## Arquitectura de Subagentes Especializados
|
||||
## 4. Guía de Onboarding (Configuración del Entorno)
|
||||
|
||||
Para este desarrollo, el Agente Principal coordina a 5 subagentes especializados, cada uno mapeado a un módulo específico en backend (`backend/src/...`) y frontend (`frontend/src/app/features/...`):
|
||||
### Paso 1: Configurar Variables de Entorno
|
||||
Ejecuta el script de configuración correspondiente a tu sistema operativo en la raíz del proyecto para copiar la plantilla de variables de entorno y preparar el workspace:
|
||||
|
||||
```bash
|
||||
# Windows (PowerShell):
|
||||
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process; .\setup.ps1
|
||||
|
||||
# Linux / macOS (Bash):
|
||||
chmod +x setup.sh && ./setup.sh
|
||||
```
|
||||
|
||||
### Paso 2: Iniciar Base de Datos Local
|
||||
Levanta el contenedor de PostgreSQL para desarrollo local:
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
Esto creará la base de datos `kinetix_db` expuesta en `localhost:5432` y pgAdmin en `http://localhost:5050` con las credenciales configuradas en el archivo `.env`.
|
||||
|
||||
---
|
||||
|
||||
## 5. Arquitectura de Subagentes Especializados
|
||||
|
||||
El Agente Principal coordina a 5 subagentes especializados, cada uno mapeado a un módulo específico en backend (`backend/src/...`) y frontend (`frontend/src/app/features/...`):
|
||||
|
||||
1. **Agente de Gestión de Contenidos (CMS)**
|
||||
- *Dominio:* Editor de artículos corporativos (WYSIWYG/Markdown), taxonomías y buscador indexado.
|
||||
@ -40,12 +98,12 @@ Para este desarrollo, el Agente Principal coordina a 5 subagentes especializados
|
||||
|
||||
---
|
||||
|
||||
## Directrices de Desarrollo & Seguridad (Reglas de Oro)
|
||||
## 6. Directrices de Desarrollo & Seguridad (Reglas de Oro)
|
||||
|
||||
1. **Seguridad y Autenticación SSO:**
|
||||
- La autenticación se delega a Active Directory. El frontend Angular redirige al SSO y obtiene el token JWT de ID.
|
||||
- El token JWT se envía al backend NestJS en el header `Authorization: Bearer <token>`.
|
||||
- El backend valida el JWT con `passport-azure-ad` / `passport-jwt` y extrae el perfil del empleado (`user.email`, `user.roles`).
|
||||
- El backend valida el JWT con `passport-azure-ad` / `passport-jwt` y extrae el perfil del empleado (`user.email`, `user.roles`). Ninguna contraseña se almacena en el sistema.
|
||||
2. **Modularidad en NestJS:**
|
||||
- Cada subagente debe tener su propio módulo aislado (ej: `CmsModule`, `WorkflowModule`) en `backend/src/`.
|
||||
- Utilizar inyección de dependencias limpia y evitar acoplamientos innecesarios.
|
||||
|
||||
@ -1,75 +0,0 @@
|
||||
# INICIO-AQUI.md — Guía de Onboarding Kinetix Intranet
|
||||
## La guía técnica única para desarrolladores y agentes de IA
|
||||
|
||||
**Para:** Cualquier desarrollador o agente de IA que trabaje en el monorepo Kinetix.
|
||||
**Stack Principal:** Angular 17+ & NestJS + PostgreSQL.
|
||||
|
||||
---
|
||||
|
||||
## Estructura del Monorepo
|
||||
|
||||
```
|
||||
Kinetix/
|
||||
│
|
||||
├── AGENT.md ← System Prompt principal de la IA (no borrar)
|
||||
├── INICIO-AQUI.md ← Este archivo
|
||||
├── package.json ← Scripts del monorepo
|
||||
├── docker-compose.yml ← Contenedor de base de datos PostgreSQL local
|
||||
├── setup.ps1 / setup.sh ← Scripts de aprovisionamiento de entorno
|
||||
│
|
||||
├── backend/ ← API REST en NestJS
|
||||
│ ├── src/
|
||||
│ │ ├── auth/ ← Módulo de SSO Active Directory / JWT
|
||||
│ │ ├── cms/ ← Módulo de Gestión de Contenidos
|
||||
│ │ ├── directory/ ← Módulo de Directorios Corporativos
|
||||
│ │ ├── workflow/ ← Módulo de Workflow de Aprobación
|
||||
│ │ ├── spaces/ ← Módulo de Reservas de Espacios
|
||||
│ │ └── ticketing/ ← Módulo de Incidencias (Ticketing)
|
||||
│ └── package.json
|
||||
│
|
||||
├── frontend/ ← SPA en Angular 17+
|
||||
│ ├── src/app/
|
||||
│ │ ├── core/ ← Guardias de SSO, interceptores HTTP, auth services
|
||||
│ │ ├── shared/ ← Componentes comunes estilo Neon/Cyberpunk
|
||||
│ │ └── features/ ← Módulos visuales correspondientes a cada subagente
|
||||
│ └── package.json
|
||||
│
|
||||
└── standards/ ← Estándares del proyecto
|
||||
├── 01-subagents-prompts.md ← Prompts e instrucciones para cada subagente
|
||||
├── 02-database-schema.md ← Modelado e integridad PostgreSQL
|
||||
├── 03-active-directory-sso.md ← Flujo de autenticación detallado
|
||||
└── 04-ui-ux-neon.md ← Directrices de diseño Neon/Cyberpunk/Vercel
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Paso 1: Configurar el Entorno
|
||||
|
||||
Ejecuta el script de configuración correspondiente a tu sistema operativo en la raíz del proyecto para copiar la plantilla de variables de entorno y preparar el workspace:
|
||||
|
||||
```bash
|
||||
# Windows (PowerShell):
|
||||
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process; .\setup.ps1
|
||||
|
||||
# Linux / macOS (Bash):
|
||||
chmod +x setup.sh && ./setup.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Paso 2: Iniciar Base de Datos Local
|
||||
|
||||
Levanta el contenedor de PostgreSQL para desarrollo local:
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
Esto creará la base de datos `kinetix_db` expuesta en `localhost:5432` y pgAdmin en `http://localhost:5050` con las credenciales configuradas en el archivo `.env`.
|
||||
|
||||
---
|
||||
|
||||
## Paso 3: Flujo de Autenticación Integrado (Active Directory SSO)
|
||||
|
||||
1. El cliente entra en la app Angular. Si no está autenticado, el guardia de SSO lo redirige al portal institucional de Microsoft Entra ID.
|
||||
2. Al ingresar sus credenciales institucionales, se le retorna un JWT.
|
||||
3. El frontend Angular intercepta las llamadas HTTP e inyecta el JWT en la cabecera `Authorization: Bearer <JWT>`.
|
||||
4. El backend NestJS valida el token en el módulo `auth` y le da acceso a los endpoints correspondientes según su rol en la organización.
|
||||
@ -50,6 +50,7 @@
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
top: 0 !important;
|
||||
}
|
||||
.reveal .slides section.present {
|
||||
display: flex !important;
|
||||
@ -1479,7 +1480,7 @@
|
||||
backgroundTransition: 'fade',
|
||||
width: 1280,
|
||||
height: 720,
|
||||
margin: 0,
|
||||
margin: 0.025,
|
||||
minScale: 0.2,
|
||||
maxScale: 2.0,
|
||||
pdfSeparateFragments: false,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user