xonecode 0.5.0 → 0.6.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/README.md +1 -1
- package/THIRD_PARTY_NOTICES.md +32 -0
- package/apps/web/dist/assets/index-DBZTodio.js +477 -0
- package/apps/web/dist/assets/{index-BB3SamhR.css → index-rqecK6s2.css} +1 -1
- package/apps/web/dist/assets/{php-D_2--9WK.js → php-BBij3Lhc.js} +1 -1
- package/apps/web/dist/assets/{ruby-DSHSDbk1.js → ruby-Dq2YEaLo.js} +1 -1
- package/apps/web/dist/index.html +2 -2
- package/dist/agent/cloudstudio/cloudstudioClient.js.map +1 -0
- package/dist/agent/{cloudstudioMcp.js → cloudstudio/cloudstudioMcp.js} +5 -5
- package/dist/agent/cloudstudio/cloudstudioMcp.js.map +1 -0
- package/dist/agent/{descarga.js → cloudstudio/descarga.js} +3 -3
- package/dist/agent/cloudstudio/descarga.js.map +1 -0
- package/dist/agent/cloudstudio/manifiesto.js.map +1 -0
- package/dist/agent/{subida.js → cloudstudio/subida.js} +3 -3
- package/dist/agent/cloudstudio/subida.js.map +1 -0
- package/dist/agent/{zip.js → cloudstudio/zip.js} +1 -1
- package/dist/agent/cloudstudio/zip.js.map +1 -0
- package/dist/agent/{authEnDisco.js → config/authEnDisco.js} +3 -3
- package/dist/agent/config/authEnDisco.js.map +1 -0
- package/dist/agent/{catalogoModelos.js → config/catalogoModelos.js} +2 -1
- package/dist/agent/config/catalogoModelos.js.map +1 -0
- package/dist/agent/{configEnDisco.js → config/configEnDisco.js} +6 -6
- package/dist/agent/config/configEnDisco.js.map +1 -0
- package/dist/agent/{crearProyecto.js → config/crearProyecto.js} +2 -2
- package/dist/agent/config/crearProyecto.js.map +1 -0
- package/dist/agent/config/entorno.js.map +1 -0
- package/dist/agent/config/gemini.js.map +1 -0
- package/dist/agent/{modelos.js → config/modelos.js} +17 -3
- package/dist/agent/config/modelos.js.map +1 -0
- package/dist/agent/{modelosDeMotor.js → config/modelosDeMotor.js} +1 -1
- package/dist/agent/config/modelosDeMotor.js.map +1 -0
- package/dist/agent/{persona.js → config/persona.js} +1 -1
- package/dist/agent/config/persona.js.map +1 -0
- package/dist/agent/{settingsEnDisco.js → config/settingsEnDisco.js} +2 -2
- package/dist/agent/config/settingsEnDisco.js.map +1 -0
- package/dist/agent/{versionEnDisco.js → config/versionEnDisco.js} +8 -4
- package/dist/agent/config/versionEnDisco.js.map +1 -0
- package/dist/agent/dispositivos/arranqueDeEmulador.js +146 -0
- package/dist/agent/dispositivos/arranqueDeEmulador.js.map +1 -0
- package/dist/agent/{dispositivosEnMaquina.js → dispositivos/dispositivosEnMaquina.js} +93 -6
- package/dist/agent/dispositivos/dispositivosEnMaquina.js.map +1 -0
- package/dist/agent/dispositivos/hotswap.js.map +1 -0
- package/dist/agent/dispositivos/instalacionEnMaquina.js.map +1 -0
- package/dist/agent/{lanzamientoEnMaquina.js → dispositivos/lanzamientoEnMaquina.js} +1 -1
- package/dist/agent/dispositivos/lanzamientoEnMaquina.js.map +1 -0
- package/dist/agent/{paqueteDelProyecto.js → dispositivos/paqueteDelProyecto.js} +5 -5
- package/dist/agent/dispositivos/paqueteDelProyecto.js.map +1 -0
- package/dist/agent/dispositivos/procesosEnMaquina.js.map +1 -0
- package/dist/agent/{arbolDeProyecto.js → grafo/arbolDeProyecto.js} +2 -2
- package/dist/agent/grafo/arbolDeProyecto.js.map +1 -0
- package/dist/agent/{artefactosEnDisco.js → grafo/artefactosEnDisco.js} +2 -2
- package/dist/agent/grafo/artefactosEnDisco.js.map +1 -0
- package/dist/agent/{busquedaRegex.js → grafo/busquedaRegex.js} +41 -1
- package/dist/agent/grafo/busquedaRegex.js.map +1 -0
- package/dist/agent/grafo/excluirTools.js +82 -0
- package/dist/agent/grafo/excluirTools.js.map +1 -0
- package/dist/agent/{memoriaDeProyecto.js → grafo/memoriaDeProyecto.js} +1 -1
- package/dist/agent/grafo/memoriaDeProyecto.js.map +1 -0
- package/dist/agent/grafo/navegacionXone.js +198 -0
- package/dist/agent/grafo/navegacionXone.js.map +1 -0
- package/dist/agent/{perfiles.js → grafo/perfiles.js} +51 -8
- package/dist/agent/grafo/perfiles.js.map +1 -0
- package/dist/agent/{proyecto.js → grafo/proyecto.js} +207 -24
- package/dist/agent/grafo/proyecto.js.map +1 -0
- package/dist/agent/grafo/skills.js +393 -0
- package/dist/agent/grafo/skills.js.map +1 -0
- package/dist/agent/{xoneAgent.js → grafo/xoneAgent.js} +196 -67
- package/dist/agent/grafo/xoneAgent.js.map +1 -0
- package/dist/agent/navegacion/indiceEnDisco.js +21 -0
- package/dist/agent/navegacion/indiceEnDisco.js.map +1 -0
- package/dist/agent/navegacion/modeloDeProyecto.js +228 -0
- package/dist/agent/navegacion/modeloDeProyecto.js.map +1 -0
- package/dist/agent/raizDelPaquete.js +56 -0
- package/dist/agent/raizDelPaquete.js.map +1 -0
- package/dist/agent/{checkpointer.js → sesiones/checkpointer.js} +2 -2
- package/dist/agent/sesiones/checkpointer.js.map +1 -0
- package/dist/agent/sesiones/git.js.map +1 -0
- package/dist/agent/{gitSync.js → sesiones/gitSync.js} +3 -3
- package/dist/agent/sesiones/gitSync.js.map +1 -0
- package/dist/agent/{sesionGit.js → sesiones/sesionGit.js} +2 -2
- package/dist/agent/sesiones/sesionGit.js.map +1 -0
- package/dist/agent/{agentesEnDisco.js → subagentes/agentesEnDisco.js} +304 -86
- package/dist/agent/subagentes/agentesEnDisco.js.map +1 -0
- package/dist/agent/subagentes/consumoExterno.js.map +1 -0
- package/dist/agent/subagentes/escrituraDeCodex.js.map +1 -0
- package/dist/agent/{escrituraDeOpencode.js → subagentes/escrituraDeOpencode.js} +1 -1
- package/dist/agent/subagentes/escrituraDeOpencode.js.map +1 -0
- package/dist/agent/{escrituraExterna.js → subagentes/escrituraExterna.js} +6 -6
- package/dist/agent/subagentes/escrituraExterna.js.map +1 -0
- package/dist/agent/subagentes/subagenteCodex.js.map +1 -0
- package/dist/agent/subagentes/subagenteExterno.js.map +1 -0
- package/dist/agent/subagentes/subagenteOpencode.js.map +1 -0
- package/dist/agent/{aumentador.js → tareas/aumentador.js} +2 -2
- package/dist/agent/tareas/aumentador.js.map +1 -0
- package/dist/agent/{juezDeTarea.js → tareas/juezDeTarea.js} +5 -5
- package/dist/agent/tareas/juezDeTarea.js.map +1 -0
- package/dist/agent/{tareasEnDisco.js → tareas/tareasEnDisco.js} +4 -4
- package/dist/agent/tareas/tareasEnDisco.js.map +1 -0
- package/dist/agent/turno/diagnosticoDeTools.js.map +1 -0
- package/dist/agent/{guionizado.js → turno/guionizado.js} +1 -1
- package/dist/agent/turno/guionizado.js.map +1 -0
- package/dist/agent/turno/informeDeTraza.js +222 -0
- package/dist/agent/turno/informeDeTraza.js.map +1 -0
- package/dist/agent/turno/inspectorDePrompt.js +205 -0
- package/dist/agent/turno/inspectorDePrompt.js.map +1 -0
- package/dist/agent/{instantanea.js → turno/instantanea.js} +7 -2
- package/dist/agent/turno/instantanea.js.map +1 -0
- package/dist/agent/{interrupts.js → turno/interrupts.js} +2 -2
- package/dist/agent/turno/interrupts.js.map +1 -0
- package/dist/agent/turno/mensajes.js.map +1 -0
- package/dist/agent/turno/normalizar.js.map +1 -0
- package/dist/agent/{puente.js → turno/puente.js} +47 -3
- package/dist/agent/turno/puente.js.map +1 -0
- package/dist/agent/turno/resumenDeContexto.js +176 -0
- package/dist/agent/turno/resumenDeContexto.js.map +1 -0
- package/dist/agent/{resumenDeTool.js → turno/resumenDeTool.js} +15 -0
- package/dist/agent/turno/resumenDeTool.js.map +1 -0
- package/dist/agent/turno/textoDeTool.js.map +1 -0
- package/dist/agent/{turnoReal.js → turno/turnoReal.js} +38 -14
- package/dist/agent/turno/turnoReal.js.map +1 -0
- package/dist/agent/turno/verificador.js.map +1 -0
- package/dist/cli/config.js +1 -1
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/consola.js +9 -9
- package/dist/cli/consola.js.map +1 -1
- package/dist/cli/describe.js +2 -2
- package/dist/cli/describe.js.map +1 -1
- package/dist/cli/doctor.js +1 -1
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/fuentesDeDisco.js +29 -0
- package/dist/cli/fuentesDeDisco.js.map +1 -0
- package/dist/cli/main.js +37 -28
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/run.js +32 -10
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/traza.js +48 -0
- package/dist/cli/traza.js.map +1 -0
- package/dist/cli/tui/correrTui.js +4 -4
- package/dist/cli/tui/correrTui.js.map +1 -1
- package/dist/cli/verify.js +1 -1
- package/dist/cli/verify.js.map +1 -1
- package/dist/core/actos.js +1 -1
- package/dist/core/adjuntos.js +2 -2
- package/dist/core/agentes.js +145 -7
- package/dist/core/agentes.js.map +1 -1
- package/dist/core/artefactos.js +4 -4
- package/dist/core/config.js +1 -1
- package/dist/core/contextos.js +12 -1
- package/dist/core/contextos.js.map +1 -1
- package/dist/core/descargas.js +1 -1
- package/dist/core/dispositivos.js +53 -3
- package/dist/core/dispositivos.js.map +1 -1
- package/dist/core/esqueleto.js +1 -1
- package/dist/core/modelos.js +16 -3
- package/dist/core/modelos.js.map +1 -1
- package/dist/core/navegacion.js +134 -0
- package/dist/core/navegacion.js.map +1 -0
- package/dist/core/notify.js +5 -0
- package/dist/core/notify.js.map +1 -1
- package/dist/core/planDeSubida.js +1 -1
- package/dist/core/settings.js +2 -2
- package/dist/core/shellDeAgente.js +99 -0
- package/dist/core/shellDeAgente.js.map +1 -0
- package/dist/core/skills.js +158 -0
- package/dist/core/skills.js.map +1 -0
- package/dist/core/zipDeSkill.js +107 -0
- package/dist/core/zipDeSkill.js.map +1 -0
- package/dist/vendor/sqliteSaver.js +389 -0
- package/dist/vendor/sqliteSaver.js.map +1 -0
- package/dist/web/servidor/arranque.js +531 -47
- package/dist/web/servidor/arranque.js.map +1 -1
- package/dist/web/servidor/corredorDeTareas.js +3 -3
- package/dist/web/servidor/corredorDeTareas.js.map +1 -1
- package/dist/web/servidor/sesiones.js +4 -4
- package/dist/web/servidor/transporte.js +1 -1
- package/dist/web/servidor/transporte.js.map +1 -1
- package/dist/web/servidor/vestibulo.js +7 -7
- package/dist/web/servidor/vestibulo.js.map +1 -1
- package/package.json +9 -5
- package/skills/archify/SKILL.md +25 -2
- package/skills/artifacts-builder/SKILL.md +23 -0
- package/skills/xone-hotswap/SKILL.md +74 -0
- package/skills/xone-hotswap/scripts/xone-arrancar-ios +85 -0
- package/skills/xone-hotswap/scripts/xone-desplegar-android +411 -0
- package/skills/xone-hotswap/scripts/xone-hotswap +171 -0
- package/skills/xone-hotswap/scripts/xone-log-android +102 -0
- package/skills/xone-hotswap/scripts/xone-reiniciar-android +104 -0
- package/apps/web/dist/assets/index-CFYAoHdw.js +0 -477
- package/dist/agent/agentesEnDisco.js.map +0 -1
- package/dist/agent/arbolDeProyecto.js.map +0 -1
- package/dist/agent/artefactosEnDisco.js.map +0 -1
- package/dist/agent/aumentador.js.map +0 -1
- package/dist/agent/authEnDisco.js.map +0 -1
- package/dist/agent/busquedaRegex.js.map +0 -1
- package/dist/agent/catalogoModelos.js.map +0 -1
- package/dist/agent/checkpointer.js.map +0 -1
- package/dist/agent/cloudstudioClient.js.map +0 -1
- package/dist/agent/cloudstudioMcp.js.map +0 -1
- package/dist/agent/configEnDisco.js.map +0 -1
- package/dist/agent/consumoExterno.js.map +0 -1
- package/dist/agent/crearProyecto.js.map +0 -1
- package/dist/agent/descarga.js.map +0 -1
- package/dist/agent/diagnosticoDeTools.js.map +0 -1
- package/dist/agent/dispositivosEnMaquina.js.map +0 -1
- package/dist/agent/entorno.js.map +0 -1
- package/dist/agent/escrituraDeCodex.js.map +0 -1
- package/dist/agent/escrituraDeOpencode.js.map +0 -1
- package/dist/agent/escrituraExterna.js.map +0 -1
- package/dist/agent/gemini.js.map +0 -1
- package/dist/agent/git.js.map +0 -1
- package/dist/agent/gitSync.js.map +0 -1
- package/dist/agent/guionizado.js.map +0 -1
- package/dist/agent/hotswap.js.map +0 -1
- package/dist/agent/instalacionEnMaquina.js.map +0 -1
- package/dist/agent/instantanea.js.map +0 -1
- package/dist/agent/interrupts.js.map +0 -1
- package/dist/agent/juezDeTarea.js.map +0 -1
- package/dist/agent/lanzamientoEnMaquina.js.map +0 -1
- package/dist/agent/manifiesto.js.map +0 -1
- package/dist/agent/memoriaDeProyecto.js.map +0 -1
- package/dist/agent/mensajes.js.map +0 -1
- package/dist/agent/modelos.js.map +0 -1
- package/dist/agent/modelosDeMotor.js.map +0 -1
- package/dist/agent/normalizar.js.map +0 -1
- package/dist/agent/paqueteDelProyecto.js.map +0 -1
- package/dist/agent/perfiles.js.map +0 -1
- package/dist/agent/persona.js.map +0 -1
- package/dist/agent/procesosEnMaquina.js.map +0 -1
- package/dist/agent/proyecto.js.map +0 -1
- package/dist/agent/puente.js.map +0 -1
- package/dist/agent/resumenDeContexto.js +0 -30
- package/dist/agent/resumenDeContexto.js.map +0 -1
- package/dist/agent/resumenDeTool.js.map +0 -1
- package/dist/agent/sesionGit.js.map +0 -1
- package/dist/agent/settingsEnDisco.js.map +0 -1
- package/dist/agent/skills.js +0 -65
- package/dist/agent/skills.js.map +0 -1
- package/dist/agent/subagenteCodex.js.map +0 -1
- package/dist/agent/subagenteExterno.js.map +0 -1
- package/dist/agent/subagenteOpencode.js.map +0 -1
- package/dist/agent/subida.js.map +0 -1
- package/dist/agent/tareasEnDisco.js.map +0 -1
- package/dist/agent/textoDeTool.js.map +0 -1
- package/dist/agent/turnoReal.js.map +0 -1
- package/dist/agent/verificador.js.map +0 -1
- package/dist/agent/versionEnDisco.js.map +0 -1
- package/dist/agent/xoneAgent.js.map +0 -1
- package/dist/agent/zip.js.map +0 -1
- /package/dist/agent/{cloudstudioClient.js → cloudstudio/cloudstudioClient.js} +0 -0
- /package/dist/agent/{manifiesto.js → cloudstudio/manifiesto.js} +0 -0
- /package/dist/agent/{entorno.js → config/entorno.js} +0 -0
- /package/dist/agent/{gemini.js → config/gemini.js} +0 -0
- /package/dist/agent/{hotswap.js → dispositivos/hotswap.js} +0 -0
- /package/dist/agent/{instalacionEnMaquina.js → dispositivos/instalacionEnMaquina.js} +0 -0
- /package/dist/agent/{procesosEnMaquina.js → dispositivos/procesosEnMaquina.js} +0 -0
- /package/dist/agent/{git.js → sesiones/git.js} +0 -0
- /package/dist/agent/{consumoExterno.js → subagentes/consumoExterno.js} +0 -0
- /package/dist/agent/{escrituraDeCodex.js → subagentes/escrituraDeCodex.js} +0 -0
- /package/dist/agent/{subagenteCodex.js → subagentes/subagenteCodex.js} +0 -0
- /package/dist/agent/{subagenteExterno.js → subagentes/subagenteExterno.js} +0 -0
- /package/dist/agent/{subagenteOpencode.js → subagentes/subagenteOpencode.js} +0 -0
- /package/dist/agent/{diagnosticoDeTools.js → turno/diagnosticoDeTools.js} +0 -0
- /package/dist/agent/{mensajes.js → turno/mensajes.js} +0 -0
- /package/dist/agent/{normalizar.js → turno/normalizar.js} +0 -0
- /package/dist/agent/{textoDeTool.js → turno/textoDeTool.js} +0 -0
- /package/dist/agent/{verificador.js → turno/verificador.js} +0 -0
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
* proyectos; un «experto en esta app», solo en uno.
|
|
17
17
|
*/
|
|
18
18
|
import { createHash } from "node:crypto";
|
|
19
|
-
import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from "node:fs";
|
|
19
|
+
import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, rmSync, statSync, writeFileSync, } from "node:fs";
|
|
20
20
|
import { homedir } from "node:os";
|
|
21
21
|
import { join } from "node:path";
|
|
22
|
-
import { escribirAgente, fusionarAgentes, leerAgente, } from "
|
|
23
|
-
import { segmentoSeguro } from "
|
|
24
|
-
import { NOMBRE_CARPETA } from "
|
|
22
|
+
import { escribirAgente, fusionarAgentes, leerAgente, motivoDeNombreInaceptable, nombreSugerido, } from "../../core/agentes.js";
|
|
23
|
+
import { segmentoSeguro } from "../../core/settings.js";
|
|
24
|
+
import { NOMBRE_CARPETA } from "../config/configEnDisco.js";
|
|
25
25
|
const CARPETA = "agentes";
|
|
26
26
|
/** La carpeta de agentes de una raíz cualquiera. */
|
|
27
27
|
export function rutaDeAgentes(base) {
|
|
@@ -56,10 +56,29 @@ export function leerCarpetaDeAgentes(carpeta, origen) {
|
|
|
56
56
|
continue;
|
|
57
57
|
}
|
|
58
58
|
const r = leerAgente(nombre, contenido, origen);
|
|
59
|
-
if ("error" in r)
|
|
59
|
+
if ("error" in r) {
|
|
60
60
|
problemas.push(`${fichero}: ${r.error}`);
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Un nombre que no es un slug se DICE y el agente se CARGA.
|
|
65
|
+
*
|
|
66
|
+
* Rechazarlo aquí haría desaparecer un subagente que funciona, que es lo contrario de lo
|
|
67
|
+
* que hace todo este módulo — y el usuario no tendría ni el nombre para buscarlo. Quien
|
|
68
|
+
* lo rechaza es el guardado (`arranque.ts#atenderAgente`), que es el único momento con
|
|
69
|
+
* alguien delante para arreglarlo. El aviso va por `problemas`, y ahí sí encaja: esto no
|
|
70
|
+
* es un estado del agente, es trabajo pendiente sobre su fichero.
|
|
71
|
+
*
|
|
72
|
+
* Y lleva el nombre que SÍ valdría, porque un aviso que no se puede obedecer no sirve:
|
|
73
|
+
* «renómbralo a `documentador`» se arregla en el mismo formulario donde se lee.
|
|
74
|
+
*/
|
|
75
|
+
const malNombre = motivoDeNombreInaceptable(nombre);
|
|
76
|
+
if (malNombre !== undefined) {
|
|
77
|
+
const sugerido = nombreSugerido(nombre);
|
|
78
|
+
problemas.push(`${fichero}: el nombre ${malNombre}` +
|
|
79
|
+
(sugerido === undefined ? ". Renómbralo." : `. Renómbralo a \`${sugerido}\`.`));
|
|
80
|
+
}
|
|
81
|
+
agentes.push(r.agente);
|
|
63
82
|
}
|
|
64
83
|
return { agentes, problemas };
|
|
65
84
|
}
|
|
@@ -82,11 +101,15 @@ export function cargarAgentes(raizDelProyecto) {
|
|
|
82
101
|
const proyecto = raizDelProyecto === undefined
|
|
83
102
|
? { agentes: [], problemas: [] }
|
|
84
103
|
: leerCarpetaDeAgentes(rutaDeAgentes(raizDelProyecto), "proyecto");
|
|
85
|
-
// Los que se quedaron atrás
|
|
86
|
-
//
|
|
87
|
-
//
|
|
88
|
-
//
|
|
89
|
-
|
|
104
|
+
// Los que se quedaron atrás NO van a `problemas`, y eso es un cambio medido: iban, y por
|
|
105
|
+
// el mismo canal que un `.md` que no carga, así que la consola pintaba en rojo y arriba del
|
|
106
|
+
// todo dos agentes que están perfectamente. Y su frase —«bórralo si quieres el nuevo»—
|
|
107
|
+
// mandaba a usar una escapatoria que no existe: borrar uno de serie no lo resiembra (la
|
|
108
|
+
// marca recuerda que se entregó), así que dejaba sin ninguno de los dos y para siempre.
|
|
109
|
+
// Ahora el estado viaja POR AGENTE (`marcarSemilla`) y se dice en su tarjeta, que es donde
|
|
110
|
+
// está el botón que lo arregla — `restaurarAgente`. `problemas` vuelve a significar solo
|
|
111
|
+
// «este fichero no se pudo cargar»; comprobado que nadie más lo lee (`turnoReal` y los
|
|
112
|
+
// evals se quedan con `.agentes`).
|
|
90
113
|
// Y los renombrados, por el mismo canal y por la misma razón: el especialista cambia de
|
|
91
114
|
// nombre (o se va con él), y enterarse por la lista sin que nadie lo explique es la clase de
|
|
92
115
|
// sorpresa silenciosa que este módulo existe para no dar. El que se retiró se dice UNA vez
|
|
@@ -95,10 +118,33 @@ export function cargarAgentes(raizDelProyecto) {
|
|
|
95
118
|
? `${nombre}.md: se ha retirado —ese agente se llama ahora \`${ahoraSeLlama}\`— y el nuevo ya está sembrado.`
|
|
96
119
|
: `${nombre}.md: ese agente se llama ahora \`${ahoraSeLlama}\`, y el tuyo se respeta. Bórralo si quieres quedarte solo con el de serie.`);
|
|
97
120
|
return {
|
|
98
|
-
agentes: fusionarAgentes(global.agentes, proyecto.agentes),
|
|
99
|
-
problemas: [...renombrados, ...
|
|
121
|
+
agentes: marcarSemilla(fusionarAgentes(global.agentes, proyecto.agentes), desactualizados),
|
|
122
|
+
problemas: [...renombrados, ...global.problemas, ...proyecto.problemas],
|
|
100
123
|
};
|
|
101
124
|
}
|
|
125
|
+
/** ¿Es uno de los que trae xonecode? La guarda del `borrar`, y la lista de la pantalla. */
|
|
126
|
+
export function esDeSerie(nombre) {
|
|
127
|
+
return AGENTES_DE_SERIE.some((a) => a.nombre === nombre);
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* De quién es cada `.md`: ausente si lo escribió el usuario, `intacta`/`modificada` si es
|
|
131
|
+
* uno de los nuestros. Ver `AgenteCargado` para los tres estados y qué se hace con cada uno.
|
|
132
|
+
*
|
|
133
|
+
* Pura y exportada a propósito, no compuesta dentro de `cargarAgentes`: es el patrón de
|
|
134
|
+
* fallo de esta arquitectura —una regla que vive en un cierre que todos los tests doblan—, y
|
|
135
|
+
* la trampa de abajo es justo la que se queda sin probar así.
|
|
136
|
+
*
|
|
137
|
+
* **La regla es «de serie Y del GLOBAL», y el segundo requisito no es decorativo.** La
|
|
138
|
+
* siembra solo toca el global, así que un `docs.md` en `.xonecode/agentes/` DEL PROYECTO lo
|
|
139
|
+
* escribió el usuario aunque se llame igual que uno nuestro. Con `nombre ∈ AGENTES_DE_SERIE`
|
|
140
|
+
* a secas se quedaría sin botón de borrar —un fichero suyo que no puede borrar— y con un
|
|
141
|
+
* «Restaurar el de serie» que le pisaría el suyo con el global.
|
|
142
|
+
*/
|
|
143
|
+
export function marcarSemilla(agentes, desactualizados) {
|
|
144
|
+
return agentes.map((a) => a.origen === "global" && esDeSerie(a.nombre)
|
|
145
|
+
? { ...a, semilla: desactualizados.includes(a.nombre) ? "modificada" : "intacta" }
|
|
146
|
+
: a);
|
|
147
|
+
}
|
|
102
148
|
/**
|
|
103
149
|
* Escribe un agente.
|
|
104
150
|
*
|
|
@@ -119,6 +165,94 @@ export function guardarAgente(base, agente) {
|
|
|
119
165
|
mkdirSync(carpeta, { recursive: true });
|
|
120
166
|
writeFileSync(join(carpeta, `${seguro}.md`), escribirAgente({ ...agente, nombre: seguro }), "utf8");
|
|
121
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* Devuelve un agente de serie a como lo entregamos, pisando lo que el usuario tuviera.
|
|
170
|
+
*
|
|
171
|
+
* Es lo que ocupa el sitio del borrado en un agente sembrado, y existe porque el borrado
|
|
172
|
+
* NO hacía lo que la consola prometía: la marca recuerda que se entregó, así que
|
|
173
|
+
* `sembrarAgentes` no lo resiembra (ver «uno BORRADO no se resucita») — o sea que el
|
|
174
|
+
* «bórralo si quieres el nuevo» dejaba sin ninguno de los dos y para siempre.
|
|
175
|
+
*
|
|
176
|
+
* **No escribe la marca, y es deliberado.** La reanota la siembra siguiente, que corre ANTES
|
|
177
|
+
* de cualquier lectura —`cargarAgentes` la llama primero— y que ya sabe reconocer su propio
|
|
178
|
+
* hash. Escribirla aquí sería un segundo sitio donde decidir sobre la marca, y el único que
|
|
179
|
+
* podría resucitar un agente que el usuario borró a propósito: con una marca ilegible, este
|
|
180
|
+
* camino la reescribiría con una sola clave y las demás pasarían por «nunca entregadas».
|
|
181
|
+
*
|
|
182
|
+
* Devuelve si pudo, como `borrarAgente`: de algo que no es de serie no hay versión nuestra
|
|
183
|
+
* que poner, y la interfaz no puede decir «restaurado» de eso.
|
|
184
|
+
*/
|
|
185
|
+
export function restaurarAgente(base, nombre) {
|
|
186
|
+
const agente = AGENTES_DE_SERIE.find((a) => a.nombre === nombre);
|
|
187
|
+
if (agente === undefined)
|
|
188
|
+
return false;
|
|
189
|
+
const carpeta = rutaDeAgentes(base);
|
|
190
|
+
mkdirSync(carpeta, { recursive: true });
|
|
191
|
+
writeFileSync(join(carpeta, `${agente.nombre}.md`), escribirAgente(agente), "utf8");
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Renombra un subagente, escribiendo a la vez lo que se haya cambiado de él.
|
|
196
|
+
*
|
|
197
|
+
* **`renameSync` y LUEGO escribir**, nunca escribir y luego borrar: un fallo entre los dos
|
|
198
|
+
* pasos deja UN fichero —el renombrado, con el contenido de antes—, nunca dos con el mismo
|
|
199
|
+
* prompt ni cero. Al revés, una excepción entre el `write` y el `rm` deja los DOS, que es
|
|
200
|
+
* justo lo que el campo deshabilitado del formulario evitaba: dos subagentes con la misma
|
|
201
|
+
* descripción y ninguna forma de saber a cuál delega el orquestador.
|
|
202
|
+
*
|
|
203
|
+
* Las dos cosas en el mismo paso porque el formulario permite cambiar el nombre Y el resto en
|
|
204
|
+
* la misma pulsación; guardar solo una dejaría la pantalla mintiendo.
|
|
205
|
+
*
|
|
206
|
+
* **El destino ocupado es un NO**, sea de serie o del usuario: sin esta guarda, renombrar
|
|
207
|
+
* `advisor` a `docs` se llevaba por delante el `docs.md` sembrado —o el otro subagente— sin
|
|
208
|
+
* decir nada. Un caso especial para los de serie diría un motivo menos cierto.
|
|
209
|
+
*
|
|
210
|
+
* **Pero «existe» no es «es otro fichero», y eso está MEDIDO en una máquina de verdad.** APFS
|
|
211
|
+
* es insensible a mayúsculas, así que con un `Documentador.md` en disco el `existsSync` de
|
|
212
|
+
* `documentador.md` contesta SÍ —es el mismo fichero— y esta guarda rechazaba justo el arreglo
|
|
213
|
+
* que el aviso del cargador propone, que es el renombrado más común de todos. Se compara por
|
|
214
|
+
* INODO (`dev` + `ino`): si el destino ES el origen, no hay nada ocupado. En un sistema
|
|
215
|
+
* sensible a mayúsculas son dos ficheros con dos inodos, así que la comparación sigue diciendo
|
|
216
|
+
* la verdad ahí — y si el otro existe de verdad, se sigue rechazando.
|
|
217
|
+
*
|
|
218
|
+
* Que un de serie NO se pueda renombrar no se decide aquí: esto mueve un fichero, y la regla
|
|
219
|
+
* del producto vive donde ya vive la de que no se borra (`arranque.ts#atenderAgente`). Dos
|
|
220
|
+
* sitios donde decidir lo mismo es cómo uno de los dos se queda sin la regla.
|
|
221
|
+
*/
|
|
222
|
+
export function renombrarAgente(base, viejo, agente) {
|
|
223
|
+
// Antes de mover nada: el nombre viene del cliente por HTTP, y `segmentoSeguro` LANZA en
|
|
224
|
+
// vez de limpiarlo — limpiarlo guardaría el agente con un nombre que nadie pidió.
|
|
225
|
+
const seguro = segmentoSeguro(agente.nombre, "nombre de agente");
|
|
226
|
+
const carpeta = rutaDeAgentes(base);
|
|
227
|
+
const origen = join(carpeta, `${segmentoSeguro(viejo, "nombre de agente")}.md`);
|
|
228
|
+
const destino = join(carpeta, `${seguro}.md`);
|
|
229
|
+
if (!existsSync(origen))
|
|
230
|
+
return "sin-origen";
|
|
231
|
+
if (existsSync(destino) && !elMismoFichero(origen, destino))
|
|
232
|
+
return "destino-ocupado";
|
|
233
|
+
renameSync(origen, destino);
|
|
234
|
+
writeFileSync(destino, escribirAgente({ ...agente, nombre: seguro }), "utf8");
|
|
235
|
+
return "hecho";
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* ¿Las dos rutas son el MISMO fichero? Por `dev` + `ino`, no por texto.
|
|
239
|
+
*
|
|
240
|
+
* Por texto no se puede: en un sistema insensible a mayúsculas `Documentador.md` y
|
|
241
|
+
* `documentador.md` son el mismo y sus nombres no se parecen bajo `===`; y comparar en
|
|
242
|
+
* minúsculas mentiría en un sistema sensible, donde sí son dos. El inodo contesta la pregunta
|
|
243
|
+
* de verdad en los dos. Lo que no se puede mirar se da por DISTINTO, que es el lado que no
|
|
244
|
+
* pisa nada.
|
|
245
|
+
*/
|
|
246
|
+
function elMismoFichero(a, b) {
|
|
247
|
+
try {
|
|
248
|
+
const ea = statSync(a);
|
|
249
|
+
const eb = statSync(b);
|
|
250
|
+
return ea.dev === eb.dev && ea.ino === eb.ino;
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
return false;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
122
256
|
/** Borra uno. Devuelve si existía: la interfaz no puede decir «borrado» de algo que no estaba. */
|
|
123
257
|
export function borrarAgente(base, nombre) {
|
|
124
258
|
const ruta = join(rutaDeAgentes(base), `${segmentoSeguro(nombre, "nombre de agente")}.md`);
|
|
@@ -130,7 +264,7 @@ export function borrarAgente(base, nombre) {
|
|
|
130
264
|
/**
|
|
131
265
|
* Los especialistas de serie, sembrados en el GLOBAL.
|
|
132
266
|
*
|
|
133
|
-
* Dejan de ser un `Record` a fuego en `agent/perfiles.ts` y pasan a ser los mismos ficheros
|
|
267
|
+
* Dejan de ser un `Record` a fuego en `agent/grafo/perfiles.ts` y pasan a ser los mismos ficheros
|
|
134
268
|
* que puede escribir el usuario. Lo pidió él, y además arregla algo que estaba señalado
|
|
135
269
|
* como provisional en `xoneAgent.ts#promptDe` desde que se escribió: los prompts de los
|
|
136
270
|
* especialistas vivían en código con un `nombre === "planner"` dentro para las
|
|
@@ -186,7 +320,37 @@ function escribirSemilla(carpeta, marca) {
|
|
|
186
320
|
* hoy y sería una trampa mañana: borraría cualquier entrada rara que un fallo dejara en la
|
|
187
321
|
* marca. Aquí solo se retira lo que consta que renombramos.
|
|
188
322
|
*/
|
|
189
|
-
const RENOMBRADOS = {
|
|
323
|
+
const RENOMBRADOS = {
|
|
324
|
+
// Los cinco de serie pasaron a `<rol>-xone`, en inglés. El sufijo no es decoración: estos
|
|
325
|
+
// nombres viajan como `subagent_type` a los motores externos, donde el hijo tiene sus
|
|
326
|
+
// propios agentes, y ahí es lo que los distingue.
|
|
327
|
+
docs: "consultant-xone",
|
|
328
|
+
planner: "analyst-xone",
|
|
329
|
+
dev: "developer-xone",
|
|
330
|
+
mockup: "designer-xone",
|
|
331
|
+
"xone-device-tester": "device-controller",
|
|
332
|
+
/**
|
|
333
|
+
* Y el de antes se ACTUALIZA, no se deja: apuntaba a `xone-device-tester`, que ya no es de
|
|
334
|
+
* serie, así que a quien conserve un `probador.md` afinado se le habría seguido diciendo
|
|
335
|
+
* que «ese agente se llama ahora `xone-device-tester`» — un nombre que no existe. Esto se
|
|
336
|
+
* lee de un solo salto, no como una cadena.
|
|
337
|
+
*
|
|
338
|
+
* Dos claves pueden apuntar al mismo nombre nuevo sin chocar: cada entrada se resuelve por
|
|
339
|
+
* separado contra el hash de SU fichero.
|
|
340
|
+
*/
|
|
341
|
+
probador: "device-controller",
|
|
342
|
+
/**
|
|
343
|
+
* Y `tester-xone` se convirtió en `device-controller` cuando dejó de escribir pruebas para
|
|
344
|
+
* CONDUCIR el aparato: con `ejecucion: true` ya no es el que dice cómo se probaría, es el
|
|
345
|
+
* que lo hace. El nombre viejo describía lo que podía hacer cuando no tenía manos.
|
|
346
|
+
*
|
|
347
|
+
* **Se sale de la convención `<rol>-xone` a propósito**, y es decisión del usuario: lo que
|
|
348
|
+
* conduce no es propio de XOne —mañana es otro aparato con otra skill—, y el sufijo estaba
|
|
349
|
+
* para distinguir nuestros nombres de los agentes del hijo en un motor externo. Este no
|
|
350
|
+
* viaja a ninguno: con motor externo la ejecución no se concede (`puedeEjecutar`).
|
|
351
|
+
*/
|
|
352
|
+
"tester-xone": "device-controller",
|
|
353
|
+
};
|
|
190
354
|
/**
|
|
191
355
|
* Siembra los agentes de serie, y ACTUALIZA los que nadie ha tocado.
|
|
192
356
|
*
|
|
@@ -362,23 +526,25 @@ export function sembrarAgentes(base = homedir()) {
|
|
|
362
526
|
* carpeta `/artefactos/`: lo que tiene que cumplirse va donde el modelo mira SIEMPRE, no en
|
|
363
527
|
* una skill que hay que cargar.
|
|
364
528
|
*/
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
529
|
+
/**
|
|
530
|
+
* **Ya no existe, y su hueco se deja escrito a propósito.**
|
|
531
|
+
*
|
|
532
|
+
* Era un bloque de ~1.400 caracteres —cómo elegir entre `archify` y `artifacts-builder`, dónde
|
|
533
|
+
* se guarda un artefacto y qué no funciona dentro del iframe— que iba en el prompt de CUATRO
|
|
534
|
+
* especialistas y por tanto viajaba en cada una de sus llamadas, hablaran o no de diagramas. Se
|
|
535
|
+
* midió lo que costaba con `inspectorDePrompt`: en un turno normal, la cabecera es el 87 % de
|
|
536
|
+
* la petición.
|
|
537
|
+
*
|
|
538
|
+
* Nació de una lección buena: un turno leyó `archify/SKILL.md` y una referencia, se saltó
|
|
539
|
+
* `estilo.md` —donde estaba la regla— y escribió un artefacto con `localStorage` que se mató
|
|
540
|
+
* solo. Pero la conclusión correcta de eso no era «repítelo en todos los prompts», era
|
|
541
|
+
* **ponerlo en el fichero que sí se abre**: hoy la regla encabeza el cuerpo de
|
|
542
|
+
* `skills/archify/SKILL.md` y `skills/artifacts-builder/SKILL.md`.
|
|
543
|
+
*
|
|
544
|
+
* Y hay una segunda razón para no nombrar las skills aquí: `SkillsMiddleware` ya las anuncia
|
|
545
|
+
* con su descripción y su ruta, y nombrarlas otra vez —con instrucciones de uso— es lo que
|
|
546
|
+
* llevaba al especialista a cargarlas antes de saber si le hacían falta.
|
|
547
|
+
*/
|
|
382
548
|
/**
|
|
383
549
|
* La memoria del proyecto, y quién la lee y la escribe.
|
|
384
550
|
*
|
|
@@ -391,7 +557,7 @@ const MEMORIA_LEER = [
|
|
|
391
557
|
"Para una tarea sobre este proyecto, lee una sola vez `/MEMORIA_PROYECTO.md` antes de inspeccionarlo.",
|
|
392
558
|
"No la uses para preguntas generales de plataforma.",
|
|
393
559
|
].join(" ");
|
|
394
|
-
const MEMORIA_LEER_CON_HANDOFF = "Lee `/MEMORIA_PROYECTO.md` solo si la tarea NO incluye un `HANDOFF DE
|
|
560
|
+
const MEMORIA_LEER_CON_HANDOFF = "Lee `/MEMORIA_PROYECTO.md` solo si la tarea NO incluye un `HANDOFF DE ANÁLISIS`. Con handoff, no la leas: sus hechos pertinentes ya vienen resumidos.";
|
|
395
561
|
const MEMORIA_ESCRIBIR = [
|
|
396
562
|
"Al terminar trabajo relevante, actualiza esa memoria solo con hechos comprobados, decisiones aprobadas",
|
|
397
563
|
"o pendientes útiles. Nunca copies transcripciones, salidas de tools, secretos ni ficheros completos.",
|
|
@@ -404,7 +570,7 @@ const RECONOCIMIENTO_PLANNER = [
|
|
|
404
570
|
"- No repitas una lectura de la misma ruta y rango, ni hagas búsquedas genéricas como `function ` sin una hipótesis.",
|
|
405
571
|
"- Cuando puedas identificar el propósito y los módulos principales con evidencia, deja de llamar tools y responde.",
|
|
406
572
|
"- Solo amplía la exploración si el usuario pide detalle exhaustivo o si las evidencias son insuficientes o contradictorias; explica brevemente qué faltaba.",
|
|
407
|
-
"- Si el resultado alimenta un diagrama o artefacto, termina con un `HANDOFF DE
|
|
573
|
+
"- Si el resultado alimenta un diagrama o artefacto, termina con un `HANDOFF DE ANÁLISIS` compacto:",
|
|
408
574
|
" propósito; nodos; aristas `origen → destino`; evidencia `ruta:líneas`; y lagunas. No incluyas transcript ni lecturas crudas.",
|
|
409
575
|
].join("\n");
|
|
410
576
|
/**
|
|
@@ -434,105 +600,157 @@ const CONSULTA_ACOTADA_DOCS = [
|
|
|
434
600
|
].join("\n");
|
|
435
601
|
const HANDOFF_MOCKUP = [
|
|
436
602
|
"HANDOFF PARA DIAGRAMAS:",
|
|
437
|
-
"- Si la descripción de tu tarea incluye `HANDOFF DE
|
|
603
|
+
"- Si la descripción de tu tarea incluye `HANDOFF DE ANÁLISIS`, ese bloque es tu evidencia de código real.",
|
|
438
604
|
"- Úsalo como fuente para el diagrama y NO vuelvas a leer, buscar ni reconstruir las rutas ya documentadas.",
|
|
439
605
|
"- Solo inspecciona un fichero si el handoff marca una laguna o dos evidencias se contradicen; explica cuál es la laguna.",
|
|
440
606
|
].join("\n");
|
|
441
607
|
/**
|
|
442
|
-
* El
|
|
608
|
+
* El que CONDUCE el aparato. Su conocimiento del protocolo NO va aquí: va en la skill
|
|
443
609
|
* `xone-hotswap`, que son 1.100 líneas de referencia sobre las dos plataformas y se cargan
|
|
444
|
-
* solo cuando hacen falta.
|
|
445
|
-
* no
|
|
446
|
-
*
|
|
447
|
-
*
|
|
448
|
-
*
|
|
449
|
-
*
|
|
450
|
-
*
|
|
451
|
-
*
|
|
452
|
-
*
|
|
453
|
-
*
|
|
454
|
-
*
|
|
455
|
-
* medido; no acotan el agente, que es de las dos plataformas. La que dice cuál tiene qué,
|
|
456
|
-
* comando a comando, es la skill.
|
|
610
|
+
* solo cuando hacen falta. Y las reglas de método —por nombre y no por coordenadas, esperar
|
|
611
|
+
* a un control y no a un temporizador, un `result:false` es el resultado— tampoco: están en
|
|
612
|
+
* esa misma skill, y aquí se pagarían en cada llamada, dibuje o no.
|
|
613
|
+
*
|
|
614
|
+
* **Lo que queda es lo que la skill no puede saber: cómo es ESTA casa.** Dónde están sus
|
|
615
|
+
* ficheros cuando se mira el disco de verdad, dónde se deja lo que una persona va a ver, y
|
|
616
|
+
* qué hacer con un comando que no termina. Nada de eso es de XOne ni de Android: es del
|
|
617
|
+
* harness, y por eso vive en código y no en una skill que mañana se sustituye por otra.
|
|
618
|
+
*
|
|
619
|
+
* Este bloque vale para CUALQUIER agente con `ejecucion: true`, no solo para éste. Está
|
|
620
|
+
* escrito así a propósito: el día que haya un segundo, lo hereda sin copiarse.
|
|
457
621
|
*/
|
|
458
|
-
const
|
|
459
|
-
"
|
|
460
|
-
"
|
|
461
|
-
"
|
|
462
|
-
"
|
|
463
|
-
"
|
|
464
|
-
"
|
|
465
|
-
"
|
|
466
|
-
"
|
|
467
|
-
"
|
|
622
|
+
const EJECUCION_EN_LA_MAQUINA = [
|
|
623
|
+
"CONDUCES UN APARATO Y EJECUTAS COMANDOS EN ESTA MÁQUINA (`execute`).",
|
|
624
|
+
"",
|
|
625
|
+
"Los scripts de tus skills están EN EL PATH: se llaman por su nombre, sin ruta ninguna.",
|
|
626
|
+
"Los de `xone-hotswap` son `xone-reiniciar-android` (déjalo en estado conocido: es lo",
|
|
627
|
+
"primero que hay que probar si el canal no contesta), `xone-desplegar-android`,",
|
|
628
|
+
"`xone-hotswap`, `xone-log-android` (las excepciones del aparato, que es donde está el",
|
|
629
|
+
"porqué cuando algo no se pinta) y `xone-arrancar-ios`;",
|
|
630
|
+
"cualquiera con `--help` o sin argumentos te dice cómo se usa. Úsalos: hacen lo que te piden",
|
|
631
|
+
"y no hay que reescribirlos.",
|
|
632
|
+
"",
|
|
633
|
+
"`read_file`, `ls`, `glob` y `grep` ven rutas VIRTUALES —la raíz `/` es el proyecto—, así que",
|
|
634
|
+
"una ruta absoluta del disco no existe para ellas y no va a funcionar por mucho que la",
|
|
635
|
+
"reintentes. Para mirar un fichero de una skill usa `cat`, que sí ve el disco de verdad.",
|
|
636
|
+
"",
|
|
637
|
+
"CÓMO TRABAJAS, QUE ES LO QUE DECIDE SI ESTO SALE BARATO O CARO:",
|
|
638
|
+
"- UN comando, miras su salida, y entonces decides el siguiente. Nada de disparar diez a la",
|
|
639
|
+
" vez para ver cuál pega: la salida del primero cambia lo que hay que hacer después.",
|
|
640
|
+
"- Pero pide de una vez lo que sabes que vas a necesitar: lo caro no es lo que un comando",
|
|
641
|
+
" devuelve, es cada ida y vuelta, que reenvía toda la conversación. `xone-hotswap` acepta",
|
|
642
|
+
" varios comandos seguidos, y `xone-desplegar-android --captura` lanza Y captura en una.",
|
|
643
|
+
"- Si uno falla, cambia de hipótesis en vez de repetirlo. Dos intentos iguales dan lo mismo.",
|
|
644
|
+
"- No escribas ficheros sueltos en la raíz del proyecto: es la app del usuario. Lo que quieras",
|
|
645
|
+
" ENSEÑAR va a `$XONECODE_ARTEFACTOS`, y los scripts ya lo hacen por ti.",
|
|
646
|
+
"- Un comando que no termina cuelga el turno: arrancar un emulador no vuelve nunca, así que",
|
|
647
|
+
" mándalo al fondo (`… &`) y espera a una CONDICIÓN acotada, no a un número de segundos.",
|
|
468
648
|
"",
|
|
469
|
-
"
|
|
470
|
-
"-
|
|
471
|
-
"
|
|
472
|
-
"-
|
|
473
|
-
"
|
|
474
|
-
"
|
|
475
|
-
"- Si el proyecto no tiene el control que la prueba necesitaría, DILO: no inventes un nombre.",
|
|
649
|
+
"LO QUE CUENTAS:",
|
|
650
|
+
"- La salida literal de lo que corriste, no tu interpretación. Un comando que devuelve 0 no",
|
|
651
|
+
" dice que la app arrancara.",
|
|
652
|
+
"- Y no digas que hiciste un paso que no hiciste: si capturaste lo que ya había en pantalla",
|
|
653
|
+
" sin desplegar el proyecto, eso es lo que hay que contar.",
|
|
654
|
+
"- Si no pudiste comprobar algo, dilo en vez de deducirlo.",
|
|
476
655
|
].join("\n");
|
|
477
656
|
/**
|
|
478
657
|
* Los cinco. Nacieron como una mudanza de los textos que había en código; desde entonces
|
|
479
|
-
* `docs` lleva además la consulta acotada, y
|
|
480
|
-
* del protocolo hotswap
|
|
658
|
+
* `docs` lleva además la consulta acotada, y el que conduce aparatos llegó con la documentación
|
|
659
|
+
* del protocolo hotswap y pasó por dos nombres más antes de `device-controller` (ver
|
|
660
|
+
* `RENOMBRADOS`). Cada regla que
|
|
481
661
|
* se añade aquí se mide antes con los evals, porque un prompt más largo es coste en TODAS las
|
|
482
662
|
* llamadas.
|
|
483
663
|
*/
|
|
484
664
|
export const AGENTES_DE_SERIE = [
|
|
485
665
|
{
|
|
486
|
-
nombre: "
|
|
666
|
+
nombre: "consultant-xone",
|
|
487
667
|
descripcion: "Responde preguntas técnicas de la plataforma XOne (XML/.xne, JavaScript, CSS, " +
|
|
488
668
|
"eventos, patrones). Puede leer el proyecto para no contradecir el código real. " +
|
|
489
669
|
"No modifica nada.",
|
|
490
670
|
motor: "modelo",
|
|
491
671
|
soloLectura: true,
|
|
492
|
-
|
|
493
|
-
|
|
672
|
+
/**
|
|
673
|
+
* **Sin las visuales, y eso es una DECISIÓN de reparto, no un recorte a ciegas.**
|
|
674
|
+
*
|
|
675
|
+
* Cada skill asignada mete en su prompt de sistema el nombre, la descripción y la ruta que
|
|
676
|
+
* pone `SkillsMiddleware`, y la descripción de `archify` sola son ~700 caracteres de inglés
|
|
677
|
+
* sobre diagramas, ETL y Mermaid — en CADA llamada, dibuje o no. Este contesta preguntas de
|
|
678
|
+
* la plataforma; la regla del orquestador ya manda los diagramas a `designer-xone`, así que
|
|
679
|
+
* dárselas era pagar una capacidad que no le toca ejercer.
|
|
680
|
+
*/
|
|
681
|
+
skills: ["xone-development"],
|
|
682
|
+
instrucciones: `${CONSULTA_ACOTADA_DOCS}`,
|
|
494
683
|
origen: "semilla",
|
|
495
684
|
},
|
|
496
685
|
{
|
|
497
|
-
nombre: "
|
|
686
|
+
nombre: "analyst-xone",
|
|
498
687
|
descripcion: "Inspecciona el proyecto real para anclar planes y diagnósticos: estructura, " +
|
|
499
688
|
"colecciones y búsqueda de código. No modifica nada.",
|
|
500
689
|
motor: "modelo",
|
|
501
690
|
soloLectura: true,
|
|
502
691
|
skills: ["xone-spec-builder", "xone-plan-builder", "archify", "artifacts-builder"],
|
|
503
|
-
instrucciones: `${
|
|
692
|
+
instrucciones: `${RECONOCIMIENTO_PLANNER}\n\n${MEMORIA_LEER}`,
|
|
504
693
|
origen: "semilla",
|
|
505
694
|
},
|
|
506
695
|
{
|
|
507
|
-
nombre: "
|
|
696
|
+
nombre: "developer-xone",
|
|
508
697
|
descripcion: "Desarrolla: crea y modifica colecciones, escribe scripts y edita ficheros. " +
|
|
509
698
|
"Las modificaciones requieren aprobación humana.",
|
|
510
699
|
motor: "modelo",
|
|
511
700
|
soloLectura: false,
|
|
512
|
-
|
|
513
|
-
|
|
701
|
+
// `artifacts-builder` se queda: escribe documentos e informes. `archify` no, que los
|
|
702
|
+
// diagramas son de `designer-xone` y su descripción son ~700 caracteres por llamada.
|
|
703
|
+
skills: ["xone-development", "xone-debugging", "artifacts-builder"],
|
|
704
|
+
instrucciones: `${MEMORIA_LEER}\n\n${MEMORIA_ESCRIBIR}`,
|
|
514
705
|
origen: "semilla",
|
|
515
706
|
},
|
|
516
707
|
{
|
|
517
|
-
nombre: "
|
|
518
|
-
descripcion: "
|
|
519
|
-
"instalada
|
|
520
|
-
"
|
|
521
|
-
"
|
|
708
|
+
nombre: "device-controller",
|
|
709
|
+
descripcion: "CONDUCE un dispositivo o emulador LOCAL —Android o iOS— con la app host XOne " +
|
|
710
|
+
"instalada: despliega el proyecto en el aparato, lanza la app, captura la pantalla, " +
|
|
711
|
+
"lee el árbol de controles, pulsa y rellena, y consulta el log y la base de datos del " +
|
|
712
|
+
"dispositivo. Ejecuta comandos en esta máquina para conseguirlo. Delega en él " +
|
|
713
|
+
"«lánzalo», «sácame una captura», «pruébalo en el móvil». No edita ficheros del " +
|
|
714
|
+
"proyecto: para eso está developer-xone.",
|
|
522
715
|
motor: "modelo",
|
|
523
|
-
|
|
716
|
+
/**
|
|
717
|
+
* **NO es de solo lectura, y decirlo importa por dos cosas distintas.**
|
|
718
|
+
*
|
|
719
|
+
* La primera es honestidad: tiene una shell, así que puede escribir el disco entero. Una
|
|
720
|
+
* pastilla verde de «solo lectura» sobre el único agente que alcanza la máquina es
|
|
721
|
+
* exactamente el tipo de etiqueta que enseña a no mirarlas.
|
|
722
|
+
*
|
|
723
|
+
* La segunda es que ese campo DECIDE EL MODELO: `rapido` para quien solo lee, `trabajo`
|
|
724
|
+
* para quien escribe. Conducir un aparato —leer un log, entender una excepción de Rhino,
|
|
725
|
+
* decidir el siguiente comando— no es trabajo de modelo barato, y medido con uno rápido se
|
|
726
|
+
* quedaba en bucles: probaba lo mismo dos veces, mezclaba rutas virtuales con reales y
|
|
727
|
+
* tardaba tres turnos en hacer lo que hace en uno. `soloLectura` se refería a los FICHEROS
|
|
728
|
+
* y aquí se estaba leyendo como «tarea sencilla», que es otra cosa.
|
|
729
|
+
*
|
|
730
|
+
* Lo que NO cambia: sigue sin `write_file` ni `edit_file` (`TOOLS_CON_EJECUCION`), para que
|
|
731
|
+
* el camino normal de tocar el proyecto siga siendo el que pasa por la aprobación y el diff.
|
|
732
|
+
*/
|
|
733
|
+
soloLectura: false,
|
|
734
|
+
/**
|
|
735
|
+
* **El único de serie con ejecución**, y lo que concede no es «correr un comando»: una
|
|
736
|
+
* shell no pasa por `permisosDe` ni por el `virtualMode`, así que alcanza el disco
|
|
737
|
+
* entero. Se le da porque es lo único que contesta «lanza la app»: el canal del aparato
|
|
738
|
+
* es un WebSocket —`curl` no lo habla— y el despliegue es `adb` más una subida HTTP.
|
|
739
|
+
* Ninguna de las dos cosas se compone leyendo, y un prompt no las suple.
|
|
740
|
+
*/
|
|
741
|
+
ejecucion: true,
|
|
524
742
|
skills: ["xone-hotswap", "xone-debugging"],
|
|
525
|
-
instrucciones:
|
|
743
|
+
instrucciones: EJECUCION_EN_LA_MAQUINA,
|
|
526
744
|
origen: "semilla",
|
|
527
745
|
},
|
|
528
746
|
{
|
|
529
|
-
nombre: "
|
|
747
|
+
nombre: "designer-xone",
|
|
530
748
|
descripcion: "Trabajo visual: layouts, CSS y recursos. Las modificaciones requieren " +
|
|
531
749
|
"aprobación humana.",
|
|
532
750
|
motor: "modelo",
|
|
533
751
|
soloLectura: false,
|
|
534
752
|
skills: ["xone-development", "archify", "artifacts-builder"],
|
|
535
|
-
instrucciones: `${
|
|
753
|
+
instrucciones: `${HANDOFF_MOCKUP}\n\n${MEMORIA_LEER_CON_HANDOFF}\n\n${MEMORIA_ESCRIBIR}`,
|
|
536
754
|
origen: "semilla",
|
|
537
755
|
},
|
|
538
756
|
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentesEnDisco.js","sourceRoot":"","sources":["../../../src/agent/subagentes/agentesEnDisco.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,MAAM,EACN,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,cAAc,EACd,eAAe,EACf,UAAU,EACV,yBAAyB,EACzB,cAAc,GAKf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED;2EAC2E;AAC3E,MAAM,UAAU,mBAAmB;IACjC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,MAAwB;IAC5E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAChE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QACvC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,SAAiB,CAAC;QACtB,IAAI,CAAC;YACH,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,sBAAuB,CAAW,CAAC,OAAO,GAAG,CAAC,CAAC;YACxE,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACzC,SAAS;QACX,CAAC;QACD;;;;;;;;;;;WAWG;QACH,MAAM,SAAS,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACxC,SAAS,CAAC,IAAI,CACZ,GAAG,OAAO,eAAe,SAAS,EAAE;gBAClC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,oBAAoB,QAAQ,KAAK,CAAC,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,eAAwB;IACpD,+EAA+E;IAC/E,gFAAgF;IAChF,mFAAmF;IACnF,yFAAyF;IACzF,gFAAgF;IAChF,sFAAsF;IACtF,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IACxD,MAAM,MAAM,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,QAAQ,GACZ,eAAe,KAAK,SAAS;QAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;QAChC,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,UAAU,CAAC,CAAC;IACvE,yFAAyF;IACzF,4FAA4F;IAC5F,uFAAuF;IACvF,wFAAwF;IACxF,wFAAwF;IACxF,2FAA2F;IAC3F,yFAAyF;IACzF,uFAAuF;IACvF,mCAAmC;IACnC,wFAAwF;IACxF,6FAA6F;IAC7F,2FAA2F;IAC3F,2FAA2F;IAC3F,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE,CACtE,OAAO;QACL,CAAC,CAAC,GAAG,MAAM,oDAAoD,YAAY,kCAAkC;QAC7G,CAAC,CAAC,GAAG,MAAM,oCAAoC,YAAY,6EAA6E,CAC3I,CAAC;IACF,OAAO;QACL,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;QAC1F,SAAS,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAqB,EACrB,eAAkC;IAElC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,YAAsB,CAAC,CAAC,CAAE,SAAmB,EAAE;QACxG,CAAC,CAAC,CAAC,CACN,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,MAAc;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,EAAE,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AACtG,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,MAAc;IAC1D,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IACjE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACpF,OAAO,IAAI,CAAC;AACd,CAAC;AAKD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,KAAa,EAAE,MAAc;IACzE,yFAAyF;IACzF,kFAAkF;IAClF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,YAAY,CAAC;IAC7C,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC;QAAE,OAAO,iBAAiB,CAAC;IACtF,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS;IAC1C,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,MAAc;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,GAAG,cAAc,CAAC,MAAM,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC3F,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,CAAC;IACb,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,6FAA6F;AAC7F,MAAM,KAAK,GAAG,OAAO,CAAC;AAEtB,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAElD,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,MAAM,CAAC,SAAiB;IAC/B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,2FAA2F;AAC3F,SAAS,WAAW,CAAC,OAAe;IAClC,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC1F,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;YAC/E,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QACxD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,kFAAkF;QAClF,sFAAsF;QACtF,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,KAA6B;IACrE,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;AACvF,CAAC;AAkCD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,GAAqC;IACpD,0FAA0F;IAC1F,sFAAsF;IACtF,kDAAkD;IAClD,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,gBAAgB;IACrB,MAAM,EAAE,eAAe;IACvB,oBAAoB,EAAE,mBAAmB;IACzC;;;;;;;;OAQG;IACH,QAAQ,EAAE,mBAAmB;IAC7B;;;;;;;;;OASG;IACH,aAAa,EAAE,mBAAmB;CACnC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,OAAO,EAAE;IACrD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACzC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YACvE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAChC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACtD,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,KAAK,GAA2B,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IAC5D;;;;;;;;;OASG;IACH,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7F,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,IAAI,UAAU,CAAC;IAErD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,OAA2B,CAAC;QAChC,IAAI,CAAC;YACH,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,qFAAqF;YACrF,mCAAmC;YACnC,SAAS;QACX,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,kEAAkE;YAClE,IAAI,OAAO,KAAK,SAAS;gBAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;iBACrD,IAAI,OAAO,KAAK,OAAO;gBAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;iBACxD,CAAC;gBACJ,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;gBAC7B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,kFAAkF;YAClF,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;gBACvC,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACvC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;gBAC/B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,OAAO,EAAE,CAAC;YAC7G,oFAAoF;YACpF,4CAA4C;YAC5C,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YACvC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7B,SAAS;QACX,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QAC7B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAChE,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,OAAO,KAAK,SAAS;YAAE,SAAS;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,KAAK,CAAC,CAAC;QAC1C,IAAI,OAA2B,CAAC;QAChC,IAAI,CAAC;YACH,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,0FAA0F;YAC1F,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,oFAAoF;YACpF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,CAAC;YACb,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/D,SAAS;QACX,CAAC;QACD,2FAA2F;QAC3F,uDAAuD;QACvD,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACrB,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AAGH;;;;;;;GAOG;AACH,MAAM,YAAY,GAAG;IACnB,sGAAsG;IACtG,oDAAoD;CACrD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,MAAM,wBAAwB,GAC5B,uJAAuJ,CAAC;AAE1J,MAAM,gBAAgB,GAAG;IACvB,wGAAwG;IACxG,sGAAsG;CACvG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,MAAM,sBAAsB,GAAG;IAC7B,qCAAqC;IACrC,6GAA6G;IAC7G,yFAAyF;IACzF,6HAA6H;IAC7H,qHAAqH;IACrH,oHAAoH;IACpH,6JAA6J;IAC7J,oGAAoG;IACpG,gIAAgI;CACjI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;;;;;GAWG;AACH,MAAM,qBAAqB,GAAG;IAC5B,sCAAsC;IACtC,4GAA4G;IAC5G,mHAAmH;IACnH,2GAA2G;IAC3G,uGAAuG;IACvG,gHAAgH;IAChH,0GAA0G;IAC1G,qCAAqC;IACrC,sGAAsG;IACtG,kGAAkG;IAClG,kFAAkF;CACnF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,cAAc,GAAG;IACrB,yBAAyB;IACzB,2GAA2G;IAC3G,4GAA4G;IAC5G,0HAA0H;CAC3H,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;;;;;;;;GAcG;AACH,MAAM,uBAAuB,GAAG;IAC9B,sEAAsE;IACtE,EAAE;IACF,wFAAwF;IACxF,sFAAsF;IACtF,gFAAgF;IAChF,uFAAuF;IACvF,wDAAwD;IACxD,6FAA6F;IAC7F,6BAA6B;IAC7B,EAAE;IACF,8FAA8F;IAC9F,uFAAuF;IACvF,yFAAyF;IACzF,EAAE;IACF,iEAAiE;IACjE,4FAA4F;IAC5F,sFAAsF;IACtF,0FAA0F;IAC1F,2FAA2F;IAC3F,0FAA0F;IAC1F,6FAA6F;IAC7F,+FAA+F;IAC/F,0EAA0E;IAC1E,4FAA4F;IAC5F,0FAA0F;IAC1F,EAAE;IACF,iBAAiB;IACjB,4FAA4F;IAC5F,8BAA8B;IAC9B,4FAA4F;IAC5F,4DAA4D;IAC5D,2DAA2D;CAC5D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD;QACE,MAAM,EAAE,iBAAiB;QACzB,WAAW,EACT,gFAAgF;YAChF,iFAAiF;YACjF,mBAAmB;QACrB,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,IAAI;QACjB;;;;;;;;WAQG;QACH,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,aAAa,EAAE,GAAG,qBAAqB,EAAE;QACzC,MAAM,EAAE,SAAS;KAClB;IACD;QACE,MAAM,EAAE,cAAc;QACtB,WAAW,EACT,8EAA8E;YAC9E,qDAAqD;QACvD,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,SAAS,EAAE,mBAAmB,CAAC;QAClF,aAAa,EAAE,GAAG,sBAAsB,OAAO,YAAY,EAAE;QAC7D,MAAM,EAAE,SAAS;KAClB;IACD;QACE,MAAM,EAAE,gBAAgB;QACxB,WAAW,EACT,6EAA6E;YAC7E,iDAAiD;QACnD,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,KAAK;QAClB,qFAAqF;QACrF,qFAAqF;QACrF,MAAM,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC;QACnE,aAAa,EAAE,GAAG,YAAY,OAAO,gBAAgB,EAAE;QACvD,MAAM,EAAE,SAAS;KAClB;IACD;QACE,MAAM,EAAE,mBAAmB;QAC3B,WAAW,EACT,+EAA+E;YAC/E,qFAAqF;YACrF,uFAAuF;YACvF,+EAA+E;YAC/E,iFAAiF;YACjF,yCAAyC;QAC3C,KAAK,EAAE,QAAQ;QACf;;;;;;;;;;;;;;;;WAgBG;QACH,WAAW,EAAE,KAAK;QAClB;;;;;;WAMG;QACH,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC;QAC1C,aAAa,EAAE,uBAAuB;QACtC,MAAM,EAAE,SAAS;KAClB;IACD;QACE,MAAM,EAAE,eAAe;QACvB,WAAW,EACT,wEAAwE;YACxE,oBAAoB;QACtB,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,KAAK;QAClB,MAAM,EAAE,CAAC,kBAAkB,EAAE,SAAS,EAAE,mBAAmB,CAAC;QAC5D,aAAa,EAAE,GAAG,cAAc,OAAO,wBAAwB,OAAO,gBAAgB,EAAE;QACxF,MAAM,EAAE,SAAS;KAClB;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumoExterno.js","sourceRoot":"","sources":["../../../src/agent/subagentes/consumoExterno.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escrituraDeCodex.js","sourceRoot":"","sources":["../../../src/agent/subagentes/escrituraDeCodex.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* Y se reaplican aunque la configuración de opencode ya deniegue por su cuenta: esa capa es
|
|
20
20
|
* NUESTRA configuración, pero quien la aplica es él. La guarda de xonecode es código.
|
|
21
21
|
*/
|
|
22
|
-
import { diffDeLineas } from "
|
|
22
|
+
import { diffDeLineas } from "../../core/diff.js";
|
|
23
23
|
import { decisionDeEscrituraExterna, veredictoDeEscriturasExternas, } from "./escrituraExterna.js";
|
|
24
24
|
/**
|
|
25
25
|
* Las escrituras que propone un `toolCall`, o el motivo por el que no se puede decidir.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escrituraDeOpencode.js","sourceRoot":"","sources":["../../../src/agent/subagentes/escrituraDeOpencode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EACL,0BAA0B,EAG1B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAS/B;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAwC;IAC3E,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAC;IAC5B,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE,qFAAqF,MAAM,CAAC,IAAI,CAAC,EAAE;SAC5G,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAyB,EAAE,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAyC,EAAE,CAAC;YACvE,IAAI,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,MAAM;gBAAE,SAAS;YACzC,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7E,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;QAClE,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,SAA2C,EAAE,CAAC;YACzE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,MAAM,EAAE,wEAAwE,EAAE,CAAC;IAC9F,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,mBAAmB,CAAC,QAMnC;IACC,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,IAAI,QAAQ,IAAI,UAAU;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;IACnF,OAAO,6BAA6B,CAAC,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,QAOnD;IACC,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,yFAAyF;IACzF,+DAA+D;IAC/D,IAAI,QAAQ,IAAI,UAAU;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;IACnF,OAAO,0BAA0B,CAAC,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AACxF,CAAC"}
|