oden-forge 2.4.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/oden/adr.md +241 -0
- package/.claude/commands/oden/architect.md +332 -8
- package/.claude/commands/oden/context.md +573 -0
- package/.claude/commands/oden/test.md +858 -0
- package/.claude/commands/oden/work.md +131 -0
- package/.claude/epics/living-quality-gates-implementation/work-session.md +54 -0
- package/.claude/memory/compliance-rules.yaml +140 -0
- package/.claude/memory/index.md +96 -0
- package/.claude/memory/knowledge/context-preservation-design.md +249 -0
- package/.claude/memory/knowledge/stream-d-completion-report.md +219 -0
- package/.claude/memory/patterns/README.md +159 -0
- package/.claude/memory/patterns/common-functions.md +121 -0
- package/.claude/memory/patterns/duplicate-report.md +14 -0
- package/.claude/memory/sessions/20260327-snapshot.md +64 -0
- package/.claude/scripts/context-preservation.sh +447 -0
- package/README.md +156 -145
- package/package.json +14 -11
- package/MIGRATION.md +0 -410
- package/install.sh +0 -231
package/MIGRATION.md
DELETED
|
@@ -1,410 +0,0 @@
|
|
|
1
|
-
# 🔄 Migraciones de Oden Forge
|
|
2
|
-
|
|
3
|
-
Esta guía cubre todas las migraciones importantes de Oden Forge.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## 🆕 Migración v2.0 → v2.2.1 (Latest)
|
|
8
|
-
|
|
9
|
-
### 📋 Resumen de Cambios v2.2.1
|
|
10
|
-
|
|
11
|
-
#### ✨ Nuevas Funcionalidades:
|
|
12
|
-
- **🆕 `/oden:debug`** - Revolutionary Queue-Based Debug Orchestration
|
|
13
|
-
- **⚡ 8 Comandos Esenciales** - Simplificación extrema (19 → 8 comandos)
|
|
14
|
-
- **🔧 Fix versión display** - `oden-forge --version` ahora funciona correctamente
|
|
15
|
-
- **🌐 Documentación actualizada** - Enfoque en Documentation-First Development
|
|
16
|
-
|
|
17
|
-
#### ❌ Eliminado en v2.2.1:
|
|
18
|
-
- **Comandos `/oden:dev`** individuales - Reemplazados por orquestación inteligente
|
|
19
|
-
- **37+ comandos legacy** - Consolidados en flujo optimizado
|
|
20
|
-
|
|
21
|
-
#### 🔄 Comandos Cambió:
|
|
22
|
-
| Comando v2.0 | Comando v2.2.1 | Cambio |
|
|
23
|
-
|--------------|----------------|---------|
|
|
24
|
-
| `/oden:dev fullstack` | `/oden:work` | ✅ Selección automática de agentes |
|
|
25
|
-
| `/oden:dev frontend` | `/oden:work` | ✅ Orquestador inteligente |
|
|
26
|
-
| `/oden:dev debug` | `/oden:debug` | ✅ Sistema de cola avanzado |
|
|
27
|
-
| `/oden:dev test` | `/oden:work` | ✅ Integrado en orquestador |
|
|
28
|
-
| **12 comandos oden:dev** | **Consolidados** | ✅ Simplificación |
|
|
29
|
-
|
|
30
|
-
### 🚀 Migración Automática v2.0 → v2.2.1
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
# Actualizar a v2.2.1
|
|
34
|
-
npm update -g oden-forge
|
|
35
|
-
|
|
36
|
-
# Verificar nueva versión
|
|
37
|
-
oden-forge --version # Debe mostrar: 2.2.1
|
|
38
|
-
|
|
39
|
-
# Los comandos se actualizan automáticamente
|
|
40
|
-
/oden:help # Ver comandos disponibles
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### 📊 Nuevo Flujo de Trabajo v2.2.1
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
# Flujo optimizado con 8 comandos esenciales:
|
|
47
|
-
|
|
48
|
-
# 1. Setup
|
|
49
|
-
/oden:init # Wizard completo
|
|
50
|
-
/oden:mcp install # MCPs recomendados
|
|
51
|
-
|
|
52
|
-
# 2. Pre-Desarrollo (Documentation-First)
|
|
53
|
-
/oden:architect # Technical decisions (2000+ líneas)
|
|
54
|
-
/oden:prd auth # PRD con brainstorming
|
|
55
|
-
/oden:epic auth # Work streams + tasks
|
|
56
|
-
|
|
57
|
-
# 3. Desarrollo Inteligente
|
|
58
|
-
/oden:work auth # Orquestador automático con Teams
|
|
59
|
-
/oden:debug # ⭐ NUEVO: Queue-based debugging
|
|
60
|
-
/oden:sync auth # Sincronización GitHub
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### 🔥 Nuevo Sistema `/oden:debug`
|
|
64
|
-
|
|
65
|
-
**Reemplaza múltiples comandos debug anteriores:**
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
/oden:debug # Sesión interactiva
|
|
69
|
-
|
|
70
|
-
# En el prompt debug>:
|
|
71
|
-
debug> add "fix login validation error"
|
|
72
|
-
debug> add "improve test coverage"
|
|
73
|
-
debug> priority 1 "critical: production issue"
|
|
74
|
-
debug> status # Ver progreso en tiempo real
|
|
75
|
-
debug> analytics # Métricas de sesión
|
|
76
|
-
debug> stop # Finalizar sesión
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
**Características revolucionarias:**
|
|
80
|
-
- ✅ **Cola inteligente** con auto-detección de dependencias
|
|
81
|
-
- ✅ **8+ agentes especializados** (debugger, test-engineer, security-auditor...)
|
|
82
|
-
- ✅ **Context preservation** máximo entre tareas (95%+)
|
|
83
|
-
- ✅ **Session recovery** para sesiones interrumpidas
|
|
84
|
-
- ✅ **Auto-close** después de 30min de inactividad
|
|
85
|
-
- ✅ **Analytics** y métricas de éxito
|
|
86
|
-
|
|
87
|
-
### 🧠 Orquestador `/oden:work` Mejorado
|
|
88
|
-
|
|
89
|
-
**Selección automática de agentes** (sin comandos `/oden:dev` manuales):
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
/oden:work auth # Detección automática: backend + security
|
|
93
|
-
/oden:work ui-redesign # Detección automática: frontend + design
|
|
94
|
-
/oden:work performance # Detección automática: performance + database
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**Agentes disponibles automáticamente:**
|
|
98
|
-
- **Code:** fullstack, frontend, backend, mobile, ios
|
|
99
|
-
- **Database:** database-architect, performance-engineer
|
|
100
|
-
- **Quality:** test-engineer, debugger, code-reviewer
|
|
101
|
-
- **Security:** security-auditor
|
|
102
|
-
- **DevOps:** devops-engineer, deployment-engineer
|
|
103
|
-
|
|
104
|
-
### 📈 Métricas de Mejora v2.2.1
|
|
105
|
-
|
|
106
|
-
| Métrica | v2.0 | v2.2.1 | Mejora |
|
|
107
|
-
|---------|------|--------|---------|
|
|
108
|
-
| Comandos totales | 19 | 8 | **58% menos** |
|
|
109
|
-
| Context preservation | 85% | 95% | **+10%** |
|
|
110
|
-
| Debug success rate | 75% | 90% | **+15%** |
|
|
111
|
-
| Setup time | 5 min | 2 min | **60% más rápido** |
|
|
112
|
-
| Agent efficiency | 70% | 87% | **+17%** |
|
|
113
|
-
|
|
114
|
-
### ⚠️ Breaking Changes v2.0 → v2.2.1
|
|
115
|
-
|
|
116
|
-
#### Comandos Eliminados:
|
|
117
|
-
```bash
|
|
118
|
-
# ❌ YA NO FUNCIONAN en v2.2.1:
|
|
119
|
-
/oden:dev fullstack # → Use /oden:work
|
|
120
|
-
/oden:dev frontend # → Use /oden:work
|
|
121
|
-
/oden:dev backend # → Use /oden:work
|
|
122
|
-
/oden:dev mobile # → Use /oden:work
|
|
123
|
-
/oden:dev ios # → Use /oden:work
|
|
124
|
-
/oden:dev debug # → Use /oden:debug
|
|
125
|
-
/oden:dev test # → Use /oden:work
|
|
126
|
-
/oden:dev review # → Use /oden:work
|
|
127
|
-
/oden:dev deploy # → Use /oden:work
|
|
128
|
-
/oden:dev perf # → Use /oden:work
|
|
129
|
-
/oden:dev git # → Use /oden:work
|
|
130
|
-
/oden:dev docs # → Use /oden:work
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
#### Migración Automática:
|
|
134
|
-
El sistema detecta automáticamente el uso de comandos obsoletos y sugiere alternativas:
|
|
135
|
-
|
|
136
|
-
```bash
|
|
137
|
-
# Si intentas usar comando obsoleto:
|
|
138
|
-
/oden:dev debug
|
|
139
|
-
|
|
140
|
-
# Respuesta automática:
|
|
141
|
-
❌ Comando obsoleto. En v2.2.1 usa:
|
|
142
|
-
✅ /oden:debug # Para debugging avanzado con cola
|
|
143
|
-
✅ /oden:work # Para desarrollo general
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
### 🔍 Verificación Post-Migración v2.2.1
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
# 1. Verificar versión
|
|
150
|
-
oden-forge --version # Debe mostrar: 2.2.1
|
|
151
|
-
|
|
152
|
-
# 2. Comandos disponibles
|
|
153
|
-
/oden:help # 8 comandos esenciales
|
|
154
|
-
|
|
155
|
-
# 3. Probar nuevo sistema debug
|
|
156
|
-
/oden:debug
|
|
157
|
-
debug> add "test new system"
|
|
158
|
-
debug> status
|
|
159
|
-
debug> stop
|
|
160
|
-
|
|
161
|
-
# 4. Verificar orquestador
|
|
162
|
-
/oden:work --help # Ver opciones disponibles
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
**Output esperado:**
|
|
166
|
-
```
|
|
167
|
-
🔧 Oden Forge v2.2.1 - 8 Comandos Esenciales
|
|
168
|
-
|
|
169
|
-
✅ Setup:
|
|
170
|
-
/oden:init - Wizard completo
|
|
171
|
-
/oden:mcp - Gestión MCPs
|
|
172
|
-
/oden:help - Ayuda
|
|
173
|
-
|
|
174
|
-
✅ Pre-Desarrollo:
|
|
175
|
-
/oden:architect - Technical decisions
|
|
176
|
-
/oden:prd - Product requirements
|
|
177
|
-
/oden:epic - Work streams
|
|
178
|
-
|
|
179
|
-
✅ Desarrollo:
|
|
180
|
-
/oden:work - Orquestador inteligente
|
|
181
|
-
/oden:debug - Queue-based debugging ⭐
|
|
182
|
-
/oden:sync - GitHub sync
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
### 📚 Recursos v2.2.1
|
|
186
|
-
|
|
187
|
-
- **Documentación:** https://javikin.github.io/oden
|
|
188
|
-
- **NPM Package:** https://npmjs.com/package/oden-forge
|
|
189
|
-
- **GitHub:** https://github.com/javikin/oden
|
|
190
|
-
- **Help integrado:** `/oden:help`
|
|
191
|
-
|
|
192
|
-
---
|
|
193
|
-
|
|
194
|
-
## 🔄 Migración de Oden Forge v1 → v2
|
|
195
|
-
|
|
196
|
-
Esta sección cubre la migración de Oden Forge v1 (o CCPM) a la versión 2.0.
|
|
197
|
-
|
|
198
|
-
## 📋 Resumen de Cambios
|
|
199
|
-
|
|
200
|
-
### ✅ Lo que MEJORA en v2:
|
|
201
|
-
- **67% menos comandos** (57 → 19 comandos esenciales)
|
|
202
|
-
- **Teams integrado** para desarrollo paralelo
|
|
203
|
-
- **CCPM nativo** (sin dependencia externa)
|
|
204
|
-
- **Gestión de MCPs** con instalación one-click
|
|
205
|
-
- **Documentación profesional** con GitHub Pages
|
|
206
|
-
|
|
207
|
-
### ⚠️ Lo que CAMBIA:
|
|
208
|
-
- Comandos `/pm:*` → `/oden:*`
|
|
209
|
-
- Estructura de archivos simplificada
|
|
210
|
-
- Workflow con Teams para epics grandes
|
|
211
|
-
|
|
212
|
-
---
|
|
213
|
-
|
|
214
|
-
## 🚀 Métodos de Migración
|
|
215
|
-
|
|
216
|
-
### Opción 1: Automática (Recomendado)
|
|
217
|
-
|
|
218
|
-
```bash
|
|
219
|
-
# Instalar v2 con migración automática
|
|
220
|
-
npm install -g oden-forge
|
|
221
|
-
|
|
222
|
-
# Si necesitas forzar migración manual:
|
|
223
|
-
oden-forge migrate
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
### Opción 2: Manual
|
|
227
|
-
|
|
228
|
-
```bash
|
|
229
|
-
# 1. Backup de datos importantes
|
|
230
|
-
cp -r ~/.claude/prds ~/.claude/prds.backup
|
|
231
|
-
cp -r ~/.claude/epics ~/.claude/epics.backup
|
|
232
|
-
|
|
233
|
-
# 2. Limpiar instalación anterior
|
|
234
|
-
rm -rf ~/.claude/commands/pm
|
|
235
|
-
rm -rf ~/.claude/commands/ccpm
|
|
236
|
-
rm -rf ~/.claude/scripts/pm
|
|
237
|
-
rm -rf ~/.ccpm
|
|
238
|
-
|
|
239
|
-
# 3. Instalar v2
|
|
240
|
-
npm install -g oden-forge
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
---
|
|
244
|
-
|
|
245
|
-
## 🔧 Proceso Detallado de Migración
|
|
246
|
-
|
|
247
|
-
### 1. Pre-Migración: Backup de Datos
|
|
248
|
-
|
|
249
|
-
La herramienta preserva automáticamente:
|
|
250
|
-
- ✅ PRDs existentes en `~/.claude/prds/`
|
|
251
|
-
- ✅ Epics existentes en `~/.claude/epics/`
|
|
252
|
-
- ✅ Configuraciones de proyecto
|
|
253
|
-
- ✅ Archivos de documentación en `docs/`
|
|
254
|
-
|
|
255
|
-
### 2. Detección Automática
|
|
256
|
-
|
|
257
|
-
El migrador detecta y limpia:
|
|
258
|
-
|
|
259
|
-
| Componente | Ubicación v1 | Acción |
|
|
260
|
-
|------------|-------------|---------|
|
|
261
|
-
| Comandos PM | `~/.claude/commands/pm/` | **Reemplazar** por `/oden:*` |
|
|
262
|
-
| Comandos CCPM | `~/.claude/commands/ccmp/` | **Reemplazar** por nativos |
|
|
263
|
-
| Scripts PM | `~/.claude/scripts/pm/` | **Actualizar** |
|
|
264
|
-
| CCMP Installation | `~/.ccmp/` | **Archivar y remover** |
|
|
265
|
-
| Rules antiguas | `~/.claude/rules/` | **Actualizar selectivamente** |
|
|
266
|
-
|
|
267
|
-
### 3. Mapeo de Comandos
|
|
268
|
-
|
|
269
|
-
| Comando v1 | Comando v2 | Cambios |
|
|
270
|
-
|------------|------------|---------|
|
|
271
|
-
| `/pm:init` | `/oden:init` | ✅ Mismo wizard mejorado |
|
|
272
|
-
| `/pm:prd-new` | `/oden:prd` | ✅ Brainstorming inteligente |
|
|
273
|
-
| `/pm:epic-decompose` | `/oden:epic` | ✅ Work streams + Teams |
|
|
274
|
-
| `/pm:issue-start` | `/oden:work` | ✅ Orquestador inteligente |
|
|
275
|
-
| `/pm:sync` | `/oden:sync` | ✅ 100% nativo, sin CCPM |
|
|
276
|
-
| `/pm:daily` | `/oden:daily` | ✅ Sin cambios |
|
|
277
|
-
| **37 comandos legacy** | **Removidos** | Simplificación |
|
|
278
|
-
|
|
279
|
-
---
|
|
280
|
-
|
|
281
|
-
## ⚡ Quick Start Post-Migración
|
|
282
|
-
|
|
283
|
-
### 1. Verificar Instalación
|
|
284
|
-
```bash
|
|
285
|
-
oden-forge status
|
|
286
|
-
```
|
|
287
|
-
|
|
288
|
-
### 2. Primer Proyecto v2
|
|
289
|
-
```bash
|
|
290
|
-
# En tu proyecto
|
|
291
|
-
claude-code # O tu comando de Claude Code
|
|
292
|
-
|
|
293
|
-
# Dentro de Claude Code:
|
|
294
|
-
/oden:init # Wizard mejorado
|
|
295
|
-
/oden:mcp recommend # Nuevo: gestión de MCPs
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
### 3. Workflow Mejorado
|
|
299
|
-
```bash
|
|
300
|
-
# Flujo típico v2:
|
|
301
|
-
/oden:prd feature-name # PRD con brainstorming
|
|
302
|
-
/oden:epic feature-name # Epic con work streams
|
|
303
|
-
/oden:tasks feature-name # Descomposición automática
|
|
304
|
-
/oden:work feature-name # Teams para desarrollo paralelo
|
|
305
|
-
/oden:sync feature-name # Sync nativo con GitHub
|
|
306
|
-
```
|
|
307
|
-
|
|
308
|
-
---
|
|
309
|
-
|
|
310
|
-
## 🔍 Verificación de Migración
|
|
311
|
-
|
|
312
|
-
### Comando de Status
|
|
313
|
-
```bash
|
|
314
|
-
oden-forge status
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
**Output esperado:**
|
|
318
|
-
```
|
|
319
|
-
📋 Oden Forge Status
|
|
320
|
-
══════════════════════════════════════════════════
|
|
321
|
-
✅ Installed: 19 commands
|
|
322
|
-
Location: /Users/tu-usuario/.claude/commands/oden
|
|
323
|
-
|
|
324
|
-
💡 Quick Start:
|
|
325
|
-
1. cd your-project
|
|
326
|
-
2. claude-code
|
|
327
|
-
3. /oden:init
|
|
328
|
-
```
|
|
329
|
-
|
|
330
|
-
### Comandos Disponibles Post-Migración
|
|
331
|
-
```bash
|
|
332
|
-
/oden:init # Wizard de inicialización
|
|
333
|
-
/oden:architect # Decisiones técnicas
|
|
334
|
-
/oden:prd # PRDs con brainstorming
|
|
335
|
-
/oden:epic # Epic con work streams
|
|
336
|
-
/oden:tasks # Descomposición de tasks
|
|
337
|
-
/oden:work # Orquestador con Teams
|
|
338
|
-
/oden:sync # Sync nativo con GitHub
|
|
339
|
-
/oden:mcp # Gestión de MCPs
|
|
340
|
-
/oden:help # Ayuda integrada
|
|
341
|
-
```
|
|
342
|
-
|
|
343
|
-
---
|
|
344
|
-
|
|
345
|
-
## ❓ Troubleshooting
|
|
346
|
-
|
|
347
|
-
### ❌ "Command not found: oden-forge"
|
|
348
|
-
```bash
|
|
349
|
-
# Reinstalar globalmente
|
|
350
|
-
npm uninstall -g oden-forge
|
|
351
|
-
npm install -g oden-forge
|
|
352
|
-
```
|
|
353
|
-
|
|
354
|
-
### ❌ "Legacy installations detected"
|
|
355
|
-
```bash
|
|
356
|
-
# Migración manual
|
|
357
|
-
oden-forge migrate
|
|
358
|
-
```
|
|
359
|
-
|
|
360
|
-
### ❌ "Commands not working in Claude Code"
|
|
361
|
-
```bash
|
|
362
|
-
# Verificar instalación
|
|
363
|
-
oden-forge status
|
|
364
|
-
|
|
365
|
-
# Reinstalar si es necesario
|
|
366
|
-
oden-forge install --force
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
### ❌ "Lost my old PRDs/Epics"
|
|
370
|
-
```bash
|
|
371
|
-
# Buscar backups automáticos
|
|
372
|
-
ls ~/.claude/*.backup*
|
|
373
|
-
ls ~/.claude/prds.backup/
|
|
374
|
-
ls ~/.claude/epics.backup/
|
|
375
|
-
```
|
|
376
|
-
|
|
377
|
-
---
|
|
378
|
-
|
|
379
|
-
## 🆘 Soporte
|
|
380
|
-
|
|
381
|
-
### GitHub Issues
|
|
382
|
-
- **Bug reports**: https://github.com/javikin/oden-forge/issues
|
|
383
|
-
- **Feature requests**: https://github.com/javikin/oden-forge/discussions
|
|
384
|
-
|
|
385
|
-
### Documentación
|
|
386
|
-
- **Guía completa**: https://javikin.github.io/oden-forge
|
|
387
|
-
- **Help integrado**: `/oden:help`
|
|
388
|
-
|
|
389
|
-
### Rollback (Si es necesario)
|
|
390
|
-
```bash
|
|
391
|
-
# Solo en caso de emergencia - volver a v1
|
|
392
|
-
npm uninstall -g oden-forge
|
|
393
|
-
|
|
394
|
-
# Restaurar backup
|
|
395
|
-
mv ~/.claude/prds.backup ~/.claude/prds
|
|
396
|
-
mv ~/.claude/epics.backup ~/.claude/epics
|
|
397
|
-
|
|
398
|
-
# Reinstalar v1 manualmente desde backup
|
|
399
|
-
```
|
|
400
|
-
|
|
401
|
-
---
|
|
402
|
-
|
|
403
|
-
## 🎯 Próximos Pasos
|
|
404
|
-
|
|
405
|
-
1. ✅ **Completar migración** usando esta guía
|
|
406
|
-
2. 🆕 **Probar nuevas features** (Teams, MCPs, brainstorming)
|
|
407
|
-
3. 📚 **Explorar documentación** en GitHub Pages
|
|
408
|
-
4. 💡 **Dar feedback** para futuras mejoras
|
|
409
|
-
|
|
410
|
-
**¡Bienvenido a Oden Forge 2.0!** 🎉
|
package/install.sh
DELETED
|
@@ -1,231 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# ============================================================================
|
|
4
|
-
# ODEN FORGE - INSTALLER
|
|
5
|
-
# ============================================================================
|
|
6
|
-
# Instala todo lo necesario para usar Oden Forge:
|
|
7
|
-
# - Comandos /oden:* (52 comandos unificados)
|
|
8
|
-
# - Scripts de soporte
|
|
9
|
-
# - Hooks
|
|
10
|
-
# - Rules de Claude
|
|
11
|
-
# - Carpetas para PRDs y Epics
|
|
12
|
-
# - Agentes de desarrollo (opcional)
|
|
13
|
-
# ============================================================================
|
|
14
|
-
|
|
15
|
-
set -e
|
|
16
|
-
|
|
17
|
-
# Colors
|
|
18
|
-
RED='\033[0;31m'
|
|
19
|
-
GREEN='\033[0;32m'
|
|
20
|
-
YELLOW='\033[1;33m'
|
|
21
|
-
BLUE='\033[0;34m'
|
|
22
|
-
NC='\033[0m' # No Color
|
|
23
|
-
|
|
24
|
-
# Get script directory
|
|
25
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
26
|
-
|
|
27
|
-
echo ""
|
|
28
|
-
echo -e "${BLUE}╔══════════════════════════════════════════════════════════════╗${NC}"
|
|
29
|
-
echo -e "${BLUE}║ ODEN FORGE INSTALLER ║${NC}"
|
|
30
|
-
echo -e "${BLUE}║ Documentation-First Development Toolkit ║${NC}"
|
|
31
|
-
echo -e "${BLUE}╚══════════════════════════════════════════════════════════════╝${NC}"
|
|
32
|
-
echo ""
|
|
33
|
-
|
|
34
|
-
# ============================================================================
|
|
35
|
-
# CHECK PREREQUISITES
|
|
36
|
-
# ============================================================================
|
|
37
|
-
|
|
38
|
-
echo -e "${YELLOW}Verificando requisitos...${NC}"
|
|
39
|
-
|
|
40
|
-
# Check if Claude directory exists
|
|
41
|
-
if [ ! -d "$HOME/.claude" ]; then
|
|
42
|
-
echo -e "${YELLOW}Creando directorio ~/.claude...${NC}"
|
|
43
|
-
mkdir -p "$HOME/.claude"
|
|
44
|
-
fi
|
|
45
|
-
|
|
46
|
-
# Check for git
|
|
47
|
-
if ! command -v git &> /dev/null; then
|
|
48
|
-
echo -e "${RED}❌ Git no está instalado. Por favor instala git primero.${NC}"
|
|
49
|
-
exit 1
|
|
50
|
-
fi
|
|
51
|
-
echo -e "${GREEN}✓ Git instalado${NC}"
|
|
52
|
-
|
|
53
|
-
# Check for GitHub CLI
|
|
54
|
-
if ! command -v gh &> /dev/null; then
|
|
55
|
-
echo -e "${YELLOW}⚠ GitHub CLI (gh) no está instalado.${NC}"
|
|
56
|
-
echo -e " Para sync con GitHub, instala: https://cli.github.com/"
|
|
57
|
-
GH_INSTALLED=false
|
|
58
|
-
else
|
|
59
|
-
echo -e "${GREEN}✓ GitHub CLI instalado${NC}"
|
|
60
|
-
GH_INSTALLED=true
|
|
61
|
-
fi
|
|
62
|
-
|
|
63
|
-
echo ""
|
|
64
|
-
|
|
65
|
-
# ============================================================================
|
|
66
|
-
# INSTALL COMMANDS
|
|
67
|
-
# ============================================================================
|
|
68
|
-
|
|
69
|
-
echo -e "${YELLOW}Instalando comandos /oden:*...${NC}"
|
|
70
|
-
|
|
71
|
-
mkdir -p "$HOME/.claude/commands/oden"
|
|
72
|
-
|
|
73
|
-
if [ -d "$SCRIPT_DIR/.claude/commands/oden" ]; then
|
|
74
|
-
cp -r "$SCRIPT_DIR/.claude/commands/oden/"* "$HOME/.claude/commands/oden/"
|
|
75
|
-
ODEN_COUNT=$(ls "$HOME/.claude/commands/oden/"*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
76
|
-
echo -e "${GREEN}✓ $ODEN_COUNT comandos /oden:* instalados${NC}"
|
|
77
|
-
else
|
|
78
|
-
echo -e "${RED}❌ No se encontraron comandos${NC}"
|
|
79
|
-
exit 1
|
|
80
|
-
fi
|
|
81
|
-
|
|
82
|
-
echo ""
|
|
83
|
-
|
|
84
|
-
# ============================================================================
|
|
85
|
-
# INSTALL SCRIPTS
|
|
86
|
-
# ============================================================================
|
|
87
|
-
|
|
88
|
-
echo -e "${YELLOW}Instalando scripts...${NC}"
|
|
89
|
-
|
|
90
|
-
mkdir -p "$HOME/.claude/scripts/oden"
|
|
91
|
-
|
|
92
|
-
if [ -d "$SCRIPT_DIR/.claude/scripts/oden" ]; then
|
|
93
|
-
cp -r "$SCRIPT_DIR/.claude/scripts/oden/"* "$HOME/.claude/scripts/oden/"
|
|
94
|
-
chmod +x "$HOME/.claude/scripts/oden/"*.sh 2>/dev/null || true
|
|
95
|
-
SCRIPT_COUNT=$(ls "$HOME/.claude/scripts/oden/"*.sh 2>/dev/null | wc -l | tr -d ' ')
|
|
96
|
-
echo -e "${GREEN}✓ $SCRIPT_COUNT scripts instalados${NC}"
|
|
97
|
-
else
|
|
98
|
-
echo -e "${YELLOW}⚠ No se encontraron scripts${NC}"
|
|
99
|
-
fi
|
|
100
|
-
|
|
101
|
-
echo ""
|
|
102
|
-
|
|
103
|
-
# ============================================================================
|
|
104
|
-
# INSTALL HOOKS
|
|
105
|
-
# ============================================================================
|
|
106
|
-
|
|
107
|
-
echo -e "${YELLOW}Instalando hooks...${NC}"
|
|
108
|
-
|
|
109
|
-
mkdir -p "$HOME/.claude/hooks"
|
|
110
|
-
|
|
111
|
-
if [ -d "$SCRIPT_DIR/.claude/hooks" ]; then
|
|
112
|
-
cp -r "$SCRIPT_DIR/.claude/hooks/"* "$HOME/.claude/hooks/"
|
|
113
|
-
chmod +x "$HOME/.claude/hooks/"*.sh 2>/dev/null || true
|
|
114
|
-
echo -e "${GREEN}✓ Hooks instalados${NC}"
|
|
115
|
-
else
|
|
116
|
-
echo -e "${YELLOW}⚠ No se encontraron hooks${NC}"
|
|
117
|
-
fi
|
|
118
|
-
|
|
119
|
-
echo ""
|
|
120
|
-
|
|
121
|
-
# ============================================================================
|
|
122
|
-
# INSTALL RULES
|
|
123
|
-
# ============================================================================
|
|
124
|
-
|
|
125
|
-
echo -e "${YELLOW}Instalando rules...${NC}"
|
|
126
|
-
|
|
127
|
-
mkdir -p "$HOME/.claude/rules"
|
|
128
|
-
|
|
129
|
-
if [ -d "$SCRIPT_DIR/.claude/rules" ]; then
|
|
130
|
-
cp -r "$SCRIPT_DIR/.claude/rules/"* "$HOME/.claude/rules/"
|
|
131
|
-
RULES_COUNT=$(ls "$HOME/.claude/rules/"*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
132
|
-
echo -e "${GREEN}✓ $RULES_COUNT rules instaladas${NC}"
|
|
133
|
-
else
|
|
134
|
-
echo -e "${YELLOW}⚠ No se encontraron rules${NC}"
|
|
135
|
-
fi
|
|
136
|
-
|
|
137
|
-
echo ""
|
|
138
|
-
|
|
139
|
-
# ============================================================================
|
|
140
|
-
# CREATE FOLDERS
|
|
141
|
-
# ============================================================================
|
|
142
|
-
|
|
143
|
-
echo -e "${YELLOW}Creando carpetas de trabajo...${NC}"
|
|
144
|
-
|
|
145
|
-
mkdir -p "$HOME/.claude/prds"
|
|
146
|
-
mkdir -p "$HOME/.claude/epics"
|
|
147
|
-
touch "$HOME/.claude/prds/.gitkeep" 2>/dev/null || true
|
|
148
|
-
touch "$HOME/.claude/epics/.gitkeep" 2>/dev/null || true
|
|
149
|
-
echo -e "${GREEN}✓ Carpetas prds/ y epics/ creadas${NC}"
|
|
150
|
-
|
|
151
|
-
echo ""
|
|
152
|
-
|
|
153
|
-
# ============================================================================
|
|
154
|
-
# INSTALL AGENTS (OPTIONAL)
|
|
155
|
-
# ============================================================================
|
|
156
|
-
|
|
157
|
-
echo -e "${YELLOW}¿Deseas instalar los agentes de desarrollo? (y/n)${NC}"
|
|
158
|
-
read -r INSTALL_AGENTS
|
|
159
|
-
|
|
160
|
-
if [[ "$INSTALL_AGENTS" =~ ^[Yy]$ ]]; then
|
|
161
|
-
echo -e "${YELLOW}Instalando agentes...${NC}"
|
|
162
|
-
|
|
163
|
-
mkdir -p "$HOME/.claude/agents"
|
|
164
|
-
|
|
165
|
-
if [ -d "$SCRIPT_DIR/.claude/agents" ]; then
|
|
166
|
-
cp -r "$SCRIPT_DIR/.claude/agents/"* "$HOME/.claude/agents/"
|
|
167
|
-
AGENTS_COUNT=$(ls "$HOME/.claude/agents/"*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
168
|
-
echo -e "${GREEN}✓ $AGENTS_COUNT agentes instalados${NC}"
|
|
169
|
-
else
|
|
170
|
-
echo -e "${YELLOW}⚠ No se encontraron agentes en el repo.${NC}"
|
|
171
|
-
echo -e " Usa /oden:init-agents dentro de Claude Code para instalarlos.${NC}"
|
|
172
|
-
fi
|
|
173
|
-
else
|
|
174
|
-
echo -e "${BLUE}Agentes no instalados. Usa /oden:init-agents después.${NC}"
|
|
175
|
-
fi
|
|
176
|
-
|
|
177
|
-
echo ""
|
|
178
|
-
|
|
179
|
-
# ============================================================================
|
|
180
|
-
# GITHUB CLI SETUP
|
|
181
|
-
# ============================================================================
|
|
182
|
-
|
|
183
|
-
if [ "$GH_INSTALLED" = true ]; then
|
|
184
|
-
# Check if already authenticated
|
|
185
|
-
if gh auth status &> /dev/null; then
|
|
186
|
-
echo -e "${GREEN}✓ GitHub CLI ya está autenticado${NC}"
|
|
187
|
-
else
|
|
188
|
-
echo -e "${YELLOW}¿Deseas configurar GitHub CLI ahora? (y/n)${NC}"
|
|
189
|
-
read -r SETUP_GH
|
|
190
|
-
|
|
191
|
-
if [[ "$SETUP_GH" =~ ^[Yy]$ ]]; then
|
|
192
|
-
echo -e "${YELLOW}Iniciando autenticación de GitHub...${NC}"
|
|
193
|
-
gh auth login
|
|
194
|
-
fi
|
|
195
|
-
fi
|
|
196
|
-
fi
|
|
197
|
-
|
|
198
|
-
echo ""
|
|
199
|
-
|
|
200
|
-
# ============================================================================
|
|
201
|
-
# SUMMARY
|
|
202
|
-
# ============================================================================
|
|
203
|
-
|
|
204
|
-
echo -e "${GREEN}╔══════════════════════════════════════════════════════════════╗${NC}"
|
|
205
|
-
echo -e "${GREEN}║ INSTALACIÓN COMPLETADA ║${NC}"
|
|
206
|
-
echo -e "${GREEN}╚══════════════════════════════════════════════════════════════╝${NC}"
|
|
207
|
-
echo ""
|
|
208
|
-
echo -e "${BLUE}COMANDOS INSTALADOS (/oden:*):${NC}"
|
|
209
|
-
echo -e " Setup: init, init-agents, init-mcp, help"
|
|
210
|
-
echo -e " Pre-Dev: architect, analyze, spec, plan, checklist"
|
|
211
|
-
echo -e " GitHub: prd-new, epic-sync, issue-start, ..."
|
|
212
|
-
echo -e " Desarrollo: dev, test, debug, research, daily"
|
|
213
|
-
echo -e " Git: git start, git pr, git finish"
|
|
214
|
-
echo ""
|
|
215
|
-
echo -e "${BLUE}ESTRUCTURA CREADA:${NC}"
|
|
216
|
-
echo -e " ~/.claude/commands/oden/ → Comandos"
|
|
217
|
-
echo -e " ~/.claude/scripts/oden/ → Scripts"
|
|
218
|
-
echo -e " ~/.claude/hooks/ → Hooks"
|
|
219
|
-
echo -e " ~/.claude/rules/ → Rules"
|
|
220
|
-
echo -e " ~/.claude/prds/ → PRDs"
|
|
221
|
-
echo -e " ~/.claude/epics/ → Epics"
|
|
222
|
-
echo ""
|
|
223
|
-
echo -e "${BLUE}PRÓXIMOS PASOS:${NC}"
|
|
224
|
-
echo -e " 1. Abre Claude Code en tu proyecto"
|
|
225
|
-
echo -e " 2. Ejecuta: /oden:init"
|
|
226
|
-
echo -e " 3. Sigue el wizard"
|
|
227
|
-
echo ""
|
|
228
|
-
echo -e "${YELLOW}DOCUMENTACIÓN:${NC}"
|
|
229
|
-
echo -e " README: $SCRIPT_DIR/README.md"
|
|
230
|
-
echo -e " Help: /oden:help"
|
|
231
|
-
echo ""
|