xonecode 0.8.46 → 0.11.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/THIRD_PARTY_NOTICES.md +56 -0
- package/apps/web/dist/assets/index-BAyybSz-.css +1 -0
- package/apps/web/dist/assets/index-BNCMVjWv.js +485 -0
- package/apps/web/dist/assets/{php-Bx1jVads.js → php-DPbDT8rX.js} +1 -1
- package/apps/web/dist/assets/{ruby-L0I9KR6K.js → ruby-Bfvws9R8.js} +1 -1
- package/apps/web/dist/index.html +2 -2
- package/apps/web/dist/openui/visor.css +1 -0
- package/apps/web/dist/openui/visor.js +9113 -0
- package/dist/agent/exportarPdf.js +5 -1
- package/dist/agent/exportarPdf.js.map +1 -1
- package/dist/agent/grafo/arbolDeProyecto.js +67 -2
- package/dist/agent/grafo/arbolDeProyecto.js.map +1 -1
- package/dist/agent/grafo/memoriaDeProyecto.js +3 -2
- package/dist/agent/grafo/memoriaDeProyecto.js.map +1 -1
- package/dist/agent/grafo/navegacionXone.js +8 -3
- package/dist/agent/grafo/navegacionXone.js.map +1 -1
- package/dist/agent/grafo/opcionesDeFicheros.js +24 -0
- package/dist/agent/grafo/opcionesDeFicheros.js.map +1 -0
- package/dist/agent/grafo/perfiles.js +1 -1
- package/dist/agent/grafo/perfiles.js.map +1 -1
- package/dist/agent/grafo/proyecto.js +31 -15
- package/dist/agent/grafo/proyecto.js.map +1 -1
- package/dist/agent/grafo/unirSecciones.js +128 -0
- package/dist/agent/grafo/unirSecciones.js.map +1 -0
- package/dist/agent/grafo/xoneAgent.js +56 -51
- package/dist/agent/grafo/xoneAgent.js.map +1 -1
- package/dist/agent/motores/trueforge/capacidades.js +179 -0
- package/dist/agent/motores/trueforge/capacidades.js.map +1 -0
- package/dist/agent/motores/trueforge/eventosTrueforge.js +143 -0
- package/dist/agent/motores/trueforge/eventosTrueforge.js.map +1 -0
- package/dist/agent/motores/trueforge/memoriaTrueforge.js +336 -0
- package/dist/agent/motores/trueforge/memoriaTrueforge.js.map +1 -0
- package/dist/agent/motores/trueforge/metricasTrueforge.js +55 -0
- package/dist/agent/motores/trueforge/metricasTrueforge.js.map +1 -0
- package/dist/agent/motores/trueforge/modeloExterno.js +46 -0
- package/dist/agent/motores/trueforge/modeloExterno.js.map +1 -0
- package/dist/agent/motores/trueforge/modeloLangchain.js +152 -0
- package/dist/agent/motores/trueforge/modeloLangchain.js.map +1 -0
- package/dist/agent/motores/trueforge/recortes.js +121 -0
- package/dist/agent/motores/trueforge/recortes.js.map +1 -0
- package/dist/agent/motores/trueforge/sesionTrueforge.js +1062 -0
- package/dist/agent/motores/trueforge/sesionTrueforge.js.map +1 -0
- package/dist/agent/motores/trueforge/skillsTrueforge.js +14 -0
- package/dist/agent/motores/trueforge/skillsTrueforge.js.map +1 -0
- package/dist/agent/motores/trueforge/toolsDeFichero.js +265 -0
- package/dist/agent/motores/trueforge/toolsDeFichero.js.map +1 -0
- package/dist/agent/motores/trueforge/toolsPropias.js +65 -0
- package/dist/agent/motores/trueforge/toolsPropias.js.map +1 -0
- package/dist/agent/motores/trueforge/trueforge.js +45 -0
- package/dist/agent/motores/trueforge/trueforge.js.map +1 -0
- package/dist/agent/navegacion/indiceEnDisco.js +10 -1
- package/dist/agent/navegacion/indiceEnDisco.js.map +1 -1
- package/dist/agent/planesEnDisco.js +64 -0
- package/dist/agent/planesEnDisco.js.map +1 -0
- package/dist/agent/sesiones/memoriaDeHilo.js +24 -0
- package/dist/agent/sesiones/memoriaDeHilo.js.map +1 -0
- package/dist/agent/sesiones/modeloDelCambio.js +70 -0
- package/dist/agent/sesiones/modeloDelCambio.js.map +1 -0
- package/dist/agent/sesiones/sesionGit.js +14 -0
- package/dist/agent/sesiones/sesionGit.js.map +1 -1
- package/dist/agent/subagentes/actividadDeCodex.js +60 -0
- package/dist/agent/subagentes/actividadDeCodex.js.map +1 -0
- package/dist/agent/subagentes/agentesEnDisco.js +95 -5
- package/dist/agent/subagentes/agentesEnDisco.js.map +1 -1
- package/dist/agent/subagentes/escrituraExterna.js +10 -2
- package/dist/agent/subagentes/escrituraExterna.js.map +1 -1
- package/dist/agent/subagentes/subagenteCodex.js +20 -0
- package/dist/agent/subagentes/subagenteCodex.js.map +1 -1
- package/dist/agent/subagentes/subagenteExterno.js +269 -202
- package/dist/agent/subagentes/subagenteExterno.js.map +1 -1
- package/dist/agent/subagentes/subagenteOpencode.js +19 -2
- package/dist/agent/subagentes/subagenteOpencode.js.map +1 -1
- package/dist/agent/turno/diagnosticoDeTools.js +3 -0
- package/dist/agent/turno/diagnosticoDeTools.js.map +1 -1
- package/dist/agent/turno/ficherosDelProyecto.js +62 -0
- package/dist/agent/turno/ficherosDelProyecto.js.map +1 -0
- package/dist/agent/turno/informeDeTraza.js +28 -1
- package/dist/agent/turno/informeDeTraza.js.map +1 -1
- package/dist/agent/turno/puente.js +17 -1
- package/dist/agent/turno/puente.js.map +1 -1
- package/dist/agent/turno/resumenDeContexto.js +17 -4
- package/dist/agent/turno/resumenDeContexto.js.map +1 -1
- package/dist/agent/turno/resumenDeTool.js +3 -0
- package/dist/agent/turno/resumenDeTool.js.map +1 -1
- package/dist/agent/turno/sesionReal.js +2 -0
- package/dist/agent/turno/sesionReal.js.map +1 -0
- package/dist/agent/turno/turnoReal.js +55 -164
- package/dist/agent/turno/turnoReal.js.map +1 -1
- package/dist/agent/turno/verificacion.js +142 -0
- package/dist/agent/turno/verificacion.js.map +1 -0
- package/dist/cli/config.js +19 -0
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/consola.js.map +1 -1
- package/dist/cli/main.js +35 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/tui/correrTui.js +1 -1
- package/dist/cli/tui/correrTui.js.map +1 -1
- package/dist/cli/tui/transcript.js +9 -0
- package/dist/cli/tui/transcript.js.map +1 -1
- package/dist/core/actos.js.map +1 -1
- package/dist/core/agentes.js +17 -0
- package/dist/core/agentes.js.map +1 -1
- package/dist/core/artefactos.js +22 -0
- package/dist/core/artefactos.js.map +1 -1
- package/dist/core/config.js +13 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/diffDeColecciones.js +84 -0
- package/dist/core/diffDeColecciones.js.map +1 -0
- package/dist/core/exportacion.js +6 -1
- package/dist/core/exportacion.js.map +1 -1
- package/dist/core/fotoDeColecciones.js +48 -0
- package/dist/core/fotoDeColecciones.js.map +1 -0
- package/dist/core/imagenesDeDocumento.js +88 -0
- package/dist/core/imagenesDeDocumento.js.map +1 -0
- package/dist/core/memoria.js +24 -0
- package/dist/core/memoria.js.map +1 -0
- package/dist/core/motor.js +41 -0
- package/dist/core/motor.js.map +1 -0
- package/dist/core/navegacion.js.map +1 -1
- package/dist/core/notify.js +23 -5
- package/dist/core/notify.js.map +1 -1
- package/dist/core/ports.js.map +1 -1
- package/dist/core/serieDeEscrituras.js +13 -0
- package/dist/core/serieDeEscrituras.js.map +1 -1
- package/dist/core/settings.js +17 -1
- package/dist/core/settings.js.map +1 -1
- package/dist/core/tareasDelPlan.js +103 -0
- package/dist/core/tareasDelPlan.js.map +1 -0
- package/dist/core/trazaDeErrores.js +42 -3
- package/dist/core/trazaDeErrores.js.map +1 -1
- package/dist/core/turno.js +44 -4
- package/dist/core/turno.js.map +1 -1
- package/dist/web/servidor/arranque.js +204 -5
- package/dist/web/servidor/arranque.js.map +1 -1
- package/dist/web/servidor/pielWeb.js +69 -4
- package/dist/web/servidor/pielWeb.js.map +1 -1
- package/dist/web/servidor/sesiones.js +11 -0
- package/dist/web/servidor/sesiones.js.map +1 -1
- package/dist/web/servidor/transporte.js.map +1 -1
- package/dist/web/servidor/vestibulo.js +23 -2
- package/dist/web/servidor/vestibulo.js.map +1 -1
- package/dist/web/servidor/visorOpenui.js +63 -0
- package/dist/web/servidor/visorOpenui.js.map +1 -0
- package/package.json +7 -2
- package/skills/openui-builder/SKILL.md +48 -0
- package/apps/web/dist/assets/index-GRwyotMV.js +0 -478
- package/apps/web/dist/assets/index-_cBVqq54.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unirSecciones.js","sourceRoot":"","sources":["../../../src/agent/grafo/unirSecciones.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import { createDeepAgent, createFilesystemMiddleware } from "deepagents";
|
|
2
2
|
import { MAPA_DEL_PROYECTO, fichaDeAgente, promptDeAgente, repartirSkills } from "../../core/agentes.js";
|
|
3
|
+
import { REGLA_DE_ESCRITURAS_EN_PARALELO } from "../../core/serieDeEscrituras.js";
|
|
3
4
|
import { RunnableLambda } from "@langchain/core/runnables";
|
|
4
5
|
import { AIMessage } from "@langchain/core/messages";
|
|
5
6
|
import { MemorySaver } from "@langchain/langgraph";
|
|
6
7
|
import { backendDeAgente, entornoDeLaShellDelProyecto } from "./proyecto.js";
|
|
7
8
|
import { permisosDe, hitlDe, montajeDeFicheros, presupuestoDeLlamadas, puedeEjecutar } from "./perfiles.js";
|
|
8
9
|
import { crearBusquedaRegex } from "./busquedaRegex.js";
|
|
10
|
+
import { OPCIONES_BUSQUEDA_FICHEROS } from "./opcionesDeFicheros.js";
|
|
9
11
|
import { crearNavegacionXone } from "./navegacionXone.js";
|
|
10
12
|
import { crearCopiarArtefacto } from "./copiarArtefacto.js";
|
|
13
|
+
import { crearUnirSecciones } from "./unirSecciones.js";
|
|
11
14
|
import { estilosDeDisco, indiceEnDisco } from "../navegacion/indiceEnDisco.js";
|
|
12
15
|
import { readFileSync } from "node:fs";
|
|
13
16
|
import { join } from "node:path";
|
|
14
17
|
import { crearCriticaVisual } from "./criticaVisual.js";
|
|
18
|
+
import { textoDeFalloExterno } from "../subagentes/subagenteExterno.js";
|
|
15
19
|
import { crearTraerDeLaMaquina } from "./traerDeLaMaquina.js";
|
|
16
20
|
import { invocarVisualConModelos } from "../dispositivos/juezVisual.js";
|
|
17
21
|
import { inventarioDelProyecto } from "../subagentes/escrituraExterna.js";
|
|
@@ -205,11 +209,13 @@ export const DESCRIPCIONES_FICHEROS = {
|
|
|
205
209
|
"escrito fuera de ella acaba dentro de la app XOne del usuario. La ruta",
|
|
206
210
|
"`/MEMORIA_PROYECTO.md` es exclusivamente",
|
|
207
211
|
"para hechos confirmados, decisiones y pendientes útiles; no guardes transcripciones ni secretos.",
|
|
212
|
+
REGLA_DE_ESCRITURAS_EN_PARALELO,
|
|
208
213
|
].join(" "),
|
|
209
214
|
edit_file: [
|
|
210
215
|
"Modifica un fichero existente del proyecto en una ruta absoluta.",
|
|
211
216
|
"No modifiques `/skills`: son instrucciones de solo lectura. Para actualizar la memoria",
|
|
212
217
|
"usa solo `/MEMORIA_PROYECTO.md` y conserva su contenido útil.",
|
|
218
|
+
REGLA_DE_ESCRITURAS_EN_PARALELO,
|
|
213
219
|
].join(" "),
|
|
214
220
|
grep: [
|
|
215
221
|
"Busca texto LITERAL (no regex) de forma progresiva para ahorrar contexto.",
|
|
@@ -222,29 +228,8 @@ export const DESCRIPCIONES_FICHEROS = {
|
|
|
222
228
|
"Varias búsquedas independientes van en el MISMO mensaje, igual que las lecturas.",
|
|
223
229
|
].join(" "),
|
|
224
230
|
};
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
*
|
|
228
|
-
* DeepAgents 1.13 incorpora `max_count` y `output_mode` en `grep`. El valor por
|
|
229
|
-
* defecto de la librería (1.000) sigue siendo demasiado generoso para un agente
|
|
230
|
-
* que explora proyectos XOne: 100 resultados bastan para localizar candidatos y
|
|
231
|
-
* el modelo puede subirlo explícitamente en una búsqueda excepcional.
|
|
232
|
-
*
|
|
233
|
-
* A partir de 6k tokens la salida se conserva bajo `/large_tool_results/` y se
|
|
234
|
-
* sustituye por una referencia paginable. Así una lectura o búsqueda accidental
|
|
235
|
-
* no consume toda la ventana antes de que actúe el resumen de conversación.
|
|
236
|
-
*
|
|
237
|
-
* **Esa carpeta se monta FUERA del proyecto** (`core/descargas.ts`,
|
|
238
|
-
* `agent/grafo/proyecto.ts#backendConDescargas`), y hasta el 10-09-2026 no: la escribe la librería
|
|
239
|
-
* llamando al backend directamente, esa ruta no estaba montada en ninguna parte y caía en el
|
|
240
|
-
* `FilesystemBackend` de la raíz. Medido en el AppDemo real del usuario, 26 KB de salida
|
|
241
|
-
* cruda de una tool dentro de la app XOne y commiteados. Bajar este tope no era el arreglo:
|
|
242
|
-
* el desalojo es la función, el fallo era el sitio.
|
|
243
|
-
*/
|
|
244
|
-
export const OPCIONES_BUSQUEDA_FICHEROS = {
|
|
245
|
-
grepMaxCount: 100,
|
|
246
|
-
toolTokenLimitBeforeEvict: 6_000,
|
|
247
|
-
};
|
|
231
|
+
// Vive en su propio módulo para que el motor TrueForge la lea sin arrastrar el grafo entero.
|
|
232
|
+
export { OPCIONES_BUSQUEDA_FICHEROS } from "./opcionesDeFicheros.js";
|
|
248
233
|
/**
|
|
249
234
|
* El agente real.
|
|
250
235
|
*
|
|
@@ -341,40 +326,57 @@ export async function construirAgente(opciones) {
|
|
|
341
326
|
externos.push({
|
|
342
327
|
name: agente.nombre,
|
|
343
328
|
description: fichaDeAgente(agente),
|
|
344
|
-
runnable: RunnableLambda.from(async (entrada) => {
|
|
329
|
+
runnable: RunnableLambda.from(async (entrada, config) => {
|
|
345
330
|
// La tarea es el último mensaje que le pasa el orquestador. El hijo no comparte
|
|
346
331
|
// transcript —es un proceso aparte, con su propia sesión—, así que lo que no venga
|
|
347
332
|
// en esa descripción no existe para él: es la misma regla del handoff que el prompt
|
|
348
333
|
// del orquestador ya impone entre especialistas.
|
|
349
334
|
const ultimo = entrada.messages?.at(-1);
|
|
350
335
|
const tarea = typeof ultimo?.content === "string" ? ultimo.content : String(ultimo?.content ?? "");
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
336
|
+
/**
|
|
337
|
+
* Un motor que FALLA se DEVUELVE como la respuesta del hijo, y saneado
|
|
338
|
+
* (`textoDeFalloExterno`): lanzado, el `ToolNode` de LangChain lo convertía en un
|
|
339
|
+
* `ToolMessage` con el `error.message` CRUDO —la ruta de la máquina incluida— que lee el
|
|
340
|
+
* modelo, sale en el chat y se guarda. La cancelación sí se relanza: no hay respuesta que dar.
|
|
341
|
+
*/
|
|
342
|
+
let texto;
|
|
343
|
+
try {
|
|
344
|
+
texto = await opciones.subagenteExterno.correr({
|
|
345
|
+
motor,
|
|
346
|
+
cwd: opciones.raiz,
|
|
347
|
+
/**
|
|
348
|
+
* Sus instrucciones MÁS el inventario del proyecto. Ese añadido no es un lujo: un
|
|
349
|
+
* hijo de Claude Code no tiene ninguna herramienta para listar carpetas —medido—,
|
|
350
|
+
* así que sin él lee a ciegas nombres inventados y concluye que el proyecto está
|
|
351
|
+
* vacío. Se le dice lo que el harness ya sabe, que es el patrón de `/adjuntos/`.
|
|
352
|
+
*/
|
|
353
|
+
instrucciones: `${promptDeAgente(agente, repartirSkills(agente, catalogoDeSkills))}\n\n${inventarioDelProyecto(opciones.ficheros)}`,
|
|
354
|
+
tarea,
|
|
355
|
+
// El modelo del producto que pida su `.md`, si pide alguno. Ausente = el que el
|
|
356
|
+
// agente externo use por su cuenta, que es lo de siempre.
|
|
357
|
+
...(agente.modelo === undefined ? {} : { modelo: agente.modelo }),
|
|
358
|
+
/**
|
|
359
|
+
* Lo que diga su `.md`, y nada más. Es la PRIMERA de dos puertas: con esto en
|
|
360
|
+
* cierto, cada escritura pasa además por la política de la sesión y por las
|
|
361
|
+
* guardas de ruta (`agent/subagentes/escrituraExterna.ts`). Un agente de solo lectura no
|
|
362
|
+
* llega a preguntar.
|
|
363
|
+
*/
|
|
364
|
+
permitirEscritura: !agente.soloLectura,
|
|
365
|
+
// Para poder decir QUIÉN pide la escritura en la petición de aprobación: la tool
|
|
366
|
+
// es la misma para todos los especialistas, así que sin esto el diff diría
|
|
367
|
+
// «alguien quiere escribir». Es el papel del `[dev]` que `hitlDe` mete en la
|
|
368
|
+
// descripción de un interrupt del grafo.
|
|
369
|
+
agente: agente.nombre,
|
|
370
|
+
// La cancelación del turno, si la librería la propaga hasta aquí: con ella, Parar MATA
|
|
371
|
+
// al hijo en vez de dejarlo escribiendo con el turno cerrado. Sin ella, lo de antes.
|
|
372
|
+
...(config?.signal === undefined ? {} : { senal: config.signal }),
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
catch (error) {
|
|
376
|
+
if (config?.signal?.aborted === true)
|
|
377
|
+
throw error;
|
|
378
|
+
texto = textoDeFalloExterno(motor, error);
|
|
379
|
+
}
|
|
378
380
|
return { messages: [new AIMessage(texto)] };
|
|
379
381
|
}),
|
|
380
382
|
});
|
|
@@ -431,6 +433,9 @@ export async function construirAgente(opciones) {
|
|
|
431
433
|
perfil,
|
|
432
434
|
})]
|
|
433
435
|
: []),
|
|
436
|
+
// Y unir un documento escrito por secciones (`unirSecciones.ts`), con la misma condición de
|
|
437
|
+
// DATO: escribe sin aprobación, así que solo a quien tiene carpetas abiertas con `escribeEn`.
|
|
438
|
+
...((perfil.escribeEn ?? []).length > 0 ? [crearUnirSecciones({ raiz: opciones.raiz, perfil })] : []),
|
|
434
439
|
],
|
|
435
440
|
//
|
|
436
441
|
// Las tools de fichero las monta el `FilesystemMiddleware` a partir del backend, y
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xoneAgent.js","sourceRoot":"","sources":["../../../src/agent/grafo/xoneAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xoneAgent.js","sourceRoot":"","sources":["../../../src/agent/grafo/xoneAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAe,MAAM,uBAAuB,CAAC;AACtH,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAoB,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,aAAa,EAA4B,MAAM,eAAe,CAAC;AACtI,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,gCAAgC,CAAC;AAElG,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9H,OAAO,EAAE,mBAAmB,EAAoB,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EACL,6BAA6B,GAG9B,MAAM,+BAA+B,CAAC;AA0EvC;;;;;;;;;;;;GAYG;AACH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAwB,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAExG,MAAM,UAAU,iBAAiB,CAAC,OAA0B;IAC1D,MAAM,GAAG,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IACxE,OAAO;QACL,0EAA0E;QAC1E,yFAAyF;QACzF,sDAAsD;QACtD,iBAAiB;QACjB,uFAAuF;QACvF,yFAAyF;QACzF,EAAE;QACF,2FAA2F;QAC3F,yFAAyF;QACzF,2FAA2F;QAC3F,2FAA2F;QAC3F,iFAAiF;QACjF,sFAAsF;QACtF,yEAAyE;QACzE,6FAA6F;QAC7F,6FAA6F;QAC7F,uEAAuE;QACvE,yFAAyF;QACzF,4DAA4D;QAC5D,OAAO,CAAC,MAAM,KAAK,CAAC;YAClB,CAAC,CAAC,wIAAwI;YAC1I,CAAC,CAAC,sCAAsC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iHAAiH;QAClM;;;;;;;;WAQG;QACH,2FAA2F;QAC3F,4FAA4F;QAC5F,4FAA4F;QAC5F,2FAA2F;QAC3F,iCAAiC;QACjC,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,eAAe,CAAC;YACzC,CAAC,CAAC,qLAAqL;YACvL,CAAC,CAAC,EAAE;QACN;;;;;;;;;;;;;;;;;;;;WAoBG;QACH,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC;YAC1C,CAAC,CAAC,4lBAA4lB;YAC9lB,CAAC,CAAC,EAAE;QACN;;;;;;;;;;;;;;;;;WAiBG;QACH,wiBAAwiB;QACxiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA6BG;QACH,GAAG,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,mBAAmB,CAAC;YAC/C,CAAC,CAAC,+uCAA+uC;YACjvC,CAAC,CAAC,EAAE;QACN,0FAA0F;QAC1F,6FAA6F;QAC7F,yFAAyF;QACzF,8EAA8E;QAC9E,sBAAsB;QACtB,oFAAoF;KACrF;SACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;SACvB,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,UAAU,EAAE;QACV,uDAAuD;QACvD,qFAAqF;QACrF,qFAAqF;QACrF,kEAAkE;QAClE,sFAAsF;QACtF,0FAA0F;QAC1F,wFAAwF;QACxF,wEAAwE;QACxE,0CAA0C;QAC1C,kGAAkG;QAClG,+BAA+B;KAChC,CAAC,IAAI,CAAC,GAAG,CAAC;IACX,SAAS,EAAE;QACT,kEAAkE;QAClE,wFAAwF;QACxF,+DAA+D;QAC/D,+BAA+B;KAChC,CAAC,IAAI,CAAC,GAAG,CAAC;IACX,IAAI,EAAE;QACJ,2EAA2E;QAC3E,kEAAkE;QAClE,iEAAiE;QACjE,2FAA2F;QAC3F,2FAA2F;QAC3F,wFAAwF;QACxF,wEAAwE;QACxE,kFAAkF;KACnF,CAAC,IAAI,CAAC,GAAG,CAAC;CACZ,CAAC;AAEF,6FAA6F;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE;;;;;;;;;;;;;;GAcG;AACH,yFAAyF;AACzF,SAAS,SAAS,CAAC,IAAY,EAAE,MAAc;IAC7C,MAAM,EAAE,GAAG,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3C,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAA2B;IAC/D,yFAAyF;IACzF,uFAAuF;IACvF,mEAAmE;IACnE;;;;;;;;;;OAUG;IACH,MAAM,YAAY,GAAiB,QAAQ,CAAC,UAAU,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvF;;;;;;OAMG;IACH,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExE,MAAM,OAAO,GAAG;QACd,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;QACjF,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;KAC5E,CAAC;IACF,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzC;;;;;;;OAOG;IACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,eAAe,CAAC;YACd,GAAG,OAAO;YACV,SAAS,EAAE;gBACT,OAAO,EAAE,2BAA2B,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;aAClF;SACF,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,gFAAgF;IAChF,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAE,EAAE,CAC3C,QAAQ,CAAC,OAAO;QACd,CAAC,CAAC;YACE,6BAA6B,CAC3B,QAAQ,CAAC,OAAO,EAChB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,CAC1E;SACF;QACH,CAAC,CAAC,EAAE,CAAC;IAET,yFAAyF;IACzF,kEAAkE;IAClE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAElF;;;;;;;;;;;OAWG;IACH,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAqB,CAAC;QAC3C,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAAE,SAAS;QACnE,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC,MAAM;YACnB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,OAAqC,EAAE,MAAiC,EAAE,EAAE;gBAC/G,gFAAgF;gBAChF,mFAAmF;gBACnF,oFAAoF;gBACpF,iDAAiD;gBACjD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,MAAM,KAAK,GAAG,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;gBACnG;;;;;mBAKG;gBACH,IAAI,KAAa,CAAC;gBAClB,IAAI,CAAC;oBACH,KAAK,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC;wBAC7C,KAAK;wBACL,GAAG,EAAE,QAAQ,CAAC,IAAI;wBAClB;;;;;2BAKG;wBACH,aAAa,EAAE,GAAG,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,OAAO,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;wBACnI,KAAK;wBACL,gFAAgF;wBAChF,0DAA0D;wBAC1D,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;wBACjE;;;;;2BAKG;wBACH,iBAAiB,EAAE,CAAC,MAAM,CAAC,WAAW;wBACtC,iFAAiF;wBACjF,2EAA2E;wBAC3E,6EAA6E;wBAC7E,yCAAyC;wBACzC,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,uFAAuF;wBACvF,qFAAqF;wBACrF,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;qBAClE,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI;wBAAE,MAAM,KAAK,CAAC;oBAClD,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC5C,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9C,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO;SAChC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC;SACnC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAChB,yFAAyF;QACzF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE;YACzC,MAAM,EAAE,OAAO;YACf,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;SAChD,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAClD,OAAO;YACP,IAAI,EAAE,MAAM,CAAC,MAAM;YACnB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,YAAY,EAAE,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YAC9E,iFAAiF;YACjF,uEAAuE;YACvE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAC/C,wFAAwF;YACxF,sFAAsF;YACtF,mFAAmF;YACnF;;;;;;;;;;;eAWG;YACH,KAAK,EAAE;gBACL,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACpC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;gBACnE;;;;;;;;;;mBAUG;gBACH,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;oBAC1E,CAAC,CAAC,CAAC,oBAAoB,CAAC;4BACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,mBAAmB,EAAE,QAAQ,CAAC,UAAU,CAAC,OAAO;4BAChD,MAAM;yBACP,CAAC,CAAC;oBACL,CAAC,CAAC,EAAE,CAAC;gBACP,4FAA4F;gBAC5F,8FAA8F;gBAC9F,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACtG;YACD,EAAE;YACF,mFAAmF;YACnF,oFAAoF;YACpF,2EAA2E;YAC3E,+EAA+E;YAC/E,sEAAsE;YACtE;;;;eAIG;YACH,GAAG,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC;YACpF,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC;YAC3B,kFAAkF;YAClF,gFAAgF;YAChF,qFAAqF;YACrF,oDAAoD;YACpD,UAAU,EAAE;gBACV,0BAA0B,CAAC;oBACzB,kFAAkF;oBAClF,4EAA4E;oBAC5E,GAAG,QAAQ;oBACX,sBAAsB,EAAE,sBAAsB;oBAC9C,GAAG,0BAA0B;iBAC9B,CAAC;gBACF,kFAAkF;gBAClF,yEAAyE;gBACzE,yCAAyC;gBACzC,yFAAyF;gBACzF,qFAAqF;gBACrF,oFAAoF;gBACpF,+EAA+E;gBAC/E,sFAAsF;gBACtF,8EAA8E;gBAC9E,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC5F,qFAAqF;gBACrF,gEAAgE;gBAChE,WAAW,EAAE;gBACb,kFAAkF;gBAClF,iFAAiF;gBACjF,sFAAsF;gBACtF,sFAAsF;gBACtF,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACtC,qBAAqB,EAAE;gBACvB,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;gBACnC,wFAAwF;gBACxF,wFAAwF;gBACxF,yEAAyE;gBACzE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;aAC3C;YACD,mFAAmF;YACnF,sFAAsF;YACtF,oFAAoF;YACpF,mFAAmF;YACnF,wEAAwE;YACxE,gFAAgF;YAChF,qFAAqF;YACrF,2EAA2E;YAC3E,KAAK,EACH,MAAM,CAAC,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACxF,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC;SAChE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC;QACrB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC;QAC3C,YAAY,EAAE,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC;QACjD,OAAO;QACP;;;;;;;;;;;;;;;WAeG;QACH;;;;;;;;;;;WAWG;QACH,KAAK,EAAE;YACL,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;YACnE,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,kBAAkB,CAAC;wBACjB,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAC9B,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;wBAC1D,OAAO,EAAE,uBAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC;qBACnD,CAAC;oBACF;;;;;;;uBAOG;oBACH,qBAAqB,CAAC;wBACpB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,OAAO;wBACpC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;qBAC3C,CAAC;iBACH,CAAC;SACP;QACD,WAAW,EAAE,MAAM,CAAC,sBAAsB,CAAC;QAC3C,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,IAAI,WAAW,EAAE;QACxD,qFAAqF;QACrF,oFAAoF;QACpF,0EAA0E;QAC1E,2DAA2D;QAC3D,UAAU,EAAE;YACV,0BAA0B,CAAC;gBACzB,OAAO;gBACP;;;;;;;;;;;;;;;;;;;;;;;;mBAwBG;gBACH,WAAW,EAAE,UAAU,CAAC,sBAAsB,CAAC;gBAC/C,sBAAsB,EAAE,sBAAsB;gBAC9C,GAAG,0BAA0B;aAC9B,CAAC;YACF,kFAAkF;YAClF,iFAAiF;YACjF,GAAG,iBAAiB,CAAC,OAAO,CAAC;YAC7B,wFAAwF;YACxF,uFAAuF;YACvF,uFAAuF;YACvF,gEAAgE;YAChE,YAAY,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;YACnD,iFAAiF;YACjF,uFAAuF;YACvF,kFAAkF;YAClF,kDAAkD;YAClD,WAAW,CAAC,6BAA6B,CAAC;YAC1C,qBAAqB,EAAE;YACvB;;;;;;;;;eASG;YACH,GAAG,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS;gBACpC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC/D,GAAG,iBAAiB,CAAC,aAAa,CAAC;YACnC,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;SAC3C;QACD,SAAS,EAAE;YACT,GAAG,UAAU;YACb,GAAG,QAAQ;YACX;gBACE,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,6HAA6H;gBAC1I,YAAY,EAAE,4GAA4G;gBAC1H,KAAK,EAAE,EAAE;aACV;SACF;QACD,8DAA8D;KACxD,CAAC,CAAC;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,WAAgC;IAC5E,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC;AACrG,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,WAAgC,EAChC,cAA2B;IAE3B,OAAO,CAAC,GAAG,EAAE,EAAE;QACb,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,cAAc,EAAE,EAAE,CAAC;IACrB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Las CAPACIDADES del motor TrueForge: su sistema de plugins (`AgentCapability`), una pieza por
|
|
3
|
+
* responsabilidad —ficheros, tools propias, ejecución, recortes, fecha, instrucciones—.
|
|
4
|
+
*
|
|
5
|
+
* Antes se componían a mano dentro de `abrirSesionTrueforge`, y la nota de «qué tools tienes» de
|
|
6
|
+
* cada hijo se mantenía aparte con una lista escrita: cada tool nueva había que añadirla en dos
|
|
7
|
+
* sitios, y la vez que no se hizo el hijo leía cuatro nombres y veía seis. Aquí **cada pieza
|
|
8
|
+
* declara las tools que añade**, y la nota sale de esa lista (`toolsDe`): hay un solo sitio.
|
|
9
|
+
*
|
|
10
|
+
* Y **qué piezas lleva cada especialista lo decide una función** (`capacidadesDelEspecialista`)
|
|
11
|
+
* sobre lo que declara su `.md`, con la misma partición que deepagents. Es lo que deja probar el
|
|
12
|
+
* reparto sin levantar un hilo.
|
|
13
|
+
*/
|
|
14
|
+
import { NOOP_AGENT_TRACING, ToolSet, currentDateTime, openUI } from "./trueforge.js";
|
|
15
|
+
import { permisosDe } from "../../grafo/perfiles.js";
|
|
16
|
+
import { fuenteDeEjecucion, fuenteDeFicheros, TOOLS_DE_FICHERO, TOOLS_DE_LECTURA, TOOLS_QUE_ESCRIBEN, } from "./toolsDeFichero.js";
|
|
17
|
+
import { fuenteDeLangchain } from "./toolsPropias.js";
|
|
18
|
+
import { presupuestoDelPaso } from "./recortes.js";
|
|
19
|
+
/** Las tools que NO piden aprobación: las de lectura, las propias y la shell del conductor. */
|
|
20
|
+
export const SIN_APROBACION = { enableTools: ["@all"], disableTools: [], preloadTools: [], requireApprovalForTools: [] };
|
|
21
|
+
/** Las que escriben PARAN el turno hasta que alguien decida, como el HITL de deepagents. */
|
|
22
|
+
export const CON_APROBACION = { enableTools: ["@all"], disableTools: [], preloadTools: [], requireApprovalForTools: [...TOOLS_QUE_ESCRIBEN] };
|
|
23
|
+
/** Las tools de FICHERO sobre nuestro backend, acotadas por `reglas`. */
|
|
24
|
+
export function capacidadDeFicheros(opciones) {
|
|
25
|
+
return {
|
|
26
|
+
nombre: "ficheros",
|
|
27
|
+
tools: opciones.tools,
|
|
28
|
+
capability: {
|
|
29
|
+
systemToolSets: [
|
|
30
|
+
new ToolSet({
|
|
31
|
+
source: fuenteDeFicheros({ backend: opciones.backend, reglas: opciones.reglas, tools: opciones.tools }),
|
|
32
|
+
selectors: opciones.conAprobacion ? CON_APROBACION : SIN_APROBACION,
|
|
33
|
+
preload: true,
|
|
34
|
+
}),
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/** Las tools propias de xonecode (`xone_navegacion`, `regex_search`…), adaptadas. */
|
|
40
|
+
export function capacidadDePropias(tools, backend) {
|
|
41
|
+
return {
|
|
42
|
+
nombre: "propias",
|
|
43
|
+
tools: tools.map((t) => t.name),
|
|
44
|
+
capability: {
|
|
45
|
+
systemToolSets: [new ToolSet({ source: fuenteDeLangchain(tools, backend), selectors: SIN_APROBACION, preload: true })],
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/** `execute`: la shell del que la declara en su `.md`, y de nadie más. */
|
|
50
|
+
export function capacidadDeEjecucion(conShell) {
|
|
51
|
+
return {
|
|
52
|
+
nombre: "ejecucion",
|
|
53
|
+
tools: ["execute"],
|
|
54
|
+
capability: { systemToolSets: [new ToolSet({ source: fuenteDeEjecucion(conShell), selectors: SIN_APROBACION, preload: true })] },
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* El presupuesto de un PASO entero (`recortes.ts#recortarPaso`), que el recorte por resultado no
|
|
59
|
+
* ve: varias respuestas en paralelo que caben solas pero no juntas. No añade tools.
|
|
60
|
+
*/
|
|
61
|
+
export function capacidadDeRecortes(backend) {
|
|
62
|
+
return { nombre: "recortes", tools: [], capability: { toolResponseProcessors: [presupuestoDelPaso(backend)] } };
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* `get_current_datetime` de la librería: la fecha en UTC, para que «hoy» o «hace tres días» no se
|
|
66
|
+
* lo invente el modelo. No da la zona horaria local, y no se le atribuye.
|
|
67
|
+
*/
|
|
68
|
+
export function capacidadDeFecha() {
|
|
69
|
+
return { nombre: "fecha", tools: ["get_current_datetime"], capability: currentDateTime({ tracing: NOOP_AGENT_TRACING }) };
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Lo que OpenUI tiene que saber de ESTE harness, y que su prompt no dice. Va en CÓDIGO —en el
|
|
73
|
+
* prompt de quien tiene la skill `openui-builder`— porque vale para cualquier usuario y el modelo
|
|
74
|
+
* no siempre abre un `SKILL.md` (la lección medida de `artifacts-builder`, ver `agentesEnDisco.ts`):
|
|
75
|
+
* el prompt de la librería le pide que emita el bloque en su RESPUESTA, y la de un especialista
|
|
76
|
+
* la lee el orquestador. Y «elige UNO» porque se midió lo contrario: un turno real escribió el
|
|
77
|
+
* mismo panel en `.html` y en `.openui`, pagando el caro además del barato. Lo demás —cuándo usarlo
|
|
78
|
+
* y cómo no fallar— vive en la skill, que el usuario puede copiar y editar como cualquier otra.
|
|
79
|
+
*/
|
|
80
|
+
export const REGLAS_DE_OPENUI = [
|
|
81
|
+
"OpenUI en xonecode: el programa NO va en tu respuesta —la lee el orquestador, no una persona—. Escríbelo con `write_file` en `/artefactos/<nombre>.openui` (con su valla ```openui o sin ella); así se anuncia y se ve en la pestaña Artefactos.",
|
|
82
|
+
"- Se ve en un iframe SIN RED: hornea los datos literales (no hay `Query()` ni `Mutation()`), sin imágenes de fuera, y las acciones no hacen nada.",
|
|
83
|
+
"- Elige UNO: o este `.openui` o un HTML de `artifacts-builder`, nunca el mismo artefacto en los dos formatos.",
|
|
84
|
+
"- Cuándo usarlo y los fallos que evitar: la skill `openui-builder`.",
|
|
85
|
+
].join("\n");
|
|
86
|
+
/** El nombre de la skill que TRAE OpenUI: quien la tiene recibe la tool que la skill necesita. */
|
|
87
|
+
export { SKILL_DE_OPENUI } from "../../../core/agentes.js";
|
|
88
|
+
import { SKILL_DE_OPENUI } from "../../../core/agentes.js";
|
|
89
|
+
/**
|
|
90
|
+
* OpenUI para quien tiene la skill `openui-builder`: la tool de la librería que carga sus
|
|
91
|
+
* instrucciones BAJO DEMANDA (unos 5.000 tokens que no viajan en cada llamada) y, al lado, las
|
|
92
|
+
* reglas del harness. **La skill explica y esto monta lo que la skill necesita**, igual que un
|
|
93
|
+
* builder del usuario: lo decide la skill que declara su `.md`, no el nombre de otra skill.
|
|
94
|
+
*/
|
|
95
|
+
export function capacidadDeOpenui() {
|
|
96
|
+
const base = openUI({ preload: false, tracing: NOOP_AGENT_TRACING });
|
|
97
|
+
return {
|
|
98
|
+
nombre: "openui",
|
|
99
|
+
tools: ["get_openui_instructions"],
|
|
100
|
+
capability: {
|
|
101
|
+
...base,
|
|
102
|
+
instructionBuilders: [
|
|
103
|
+
...(base.instructionBuilders ?? []),
|
|
104
|
+
(b) => void b.addSection("openui-en-xonecode", REGLAS_DE_OPENUI, true),
|
|
105
|
+
],
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Las instrucciones de un HIJO en su prompt de SISTEMA. La librería IGNORA el `instruction` de un
|
|
111
|
+
* hijo (`buildInstruction`, `!this.parent`): a su sistema solo llegan los `instructionBuilders`.
|
|
112
|
+
* En el primer mensaje, una compactación —que sustituye el contexto entero— se las llevaría.
|
|
113
|
+
*/
|
|
114
|
+
export function capacidadDeInstrucciones(texto) {
|
|
115
|
+
return {
|
|
116
|
+
nombre: "instrucciones",
|
|
117
|
+
tools: [],
|
|
118
|
+
capability: {
|
|
119
|
+
instructionBuilders: [(b) => void b.addSection("especialista", texto, true)],
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/** Las tools que suman unas piezas, en orden: de aquí sale la nota del hijo. */
|
|
124
|
+
export function toolsDe(capacidades) {
|
|
125
|
+
return capacidades.flatMap((c) => [...c.tools]);
|
|
126
|
+
}
|
|
127
|
+
/** Las `AgentCapability` que recibe TrueForge. */
|
|
128
|
+
export function capabilitiesDe(capacidades) {
|
|
129
|
+
return capacidades.map((c) => c.capability);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Qué CLASE de especialista es, por lo que declara su `.md` — la partición de deepagents
|
|
133
|
+
* (`perfiles.ts#toolsDe` y `montajeDeFicheros`):
|
|
134
|
+
* - quien EJECUTA: lectura + `execute`, y nada de escribir (la shell no pasa por los permisos,
|
|
135
|
+
* así que el camino normal de tocar el proyecto sigue siendo el de la aprobación);
|
|
136
|
+
* - quien solo lee: las seis SIN aprobación, porque `permisosDe` lo confina a lo que no es el
|
|
137
|
+
* proyecto —`/artefactos/` y `/planes/`, que es donde el analista deja su plan—: en deepagents
|
|
138
|
+
* `hitlDe` le devuelve `{}` por lo mismo;
|
|
139
|
+
* - el resto: las seis, con `write_file`/`edit_file` pidiendo aprobación y `permisosDe` acotando
|
|
140
|
+
* (`escribeEn` incluido).
|
|
141
|
+
*/
|
|
142
|
+
export function clasesDeTools(agente) {
|
|
143
|
+
if (agente.ejecucion === true)
|
|
144
|
+
return "ejecuta";
|
|
145
|
+
return agente.soloLectura ? "lee" : "escribe";
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Las piezas de un especialista —o del hijo genérico, si el nombre no es de ninguno—, sin sus
|
|
149
|
+
* instrucciones: esas se escriben con la lista de tools que salga de aquí.
|
|
150
|
+
*/
|
|
151
|
+
export function capacidadesDelEspecialista(agente, nombrePedido, deps) {
|
|
152
|
+
// Un nombre inventado da un hijo de SOLO LECTURA sin shell: no tumba el turno ni se lleva la escritura.
|
|
153
|
+
if (agente === undefined) {
|
|
154
|
+
return [
|
|
155
|
+
capacidadDeFicheros({ backend: deps.backend, reglas: permisosDe({ nombre: nombrePedido, soloLectura: true }), tools: TOOLS_DE_LECTURA, conAprobacion: false }),
|
|
156
|
+
capacidadDeRecortes(deps.backend),
|
|
157
|
+
capacidadDeFecha(),
|
|
158
|
+
];
|
|
159
|
+
}
|
|
160
|
+
const clase = clasesDeTools(agente);
|
|
161
|
+
const reglas = permisosDe(agente);
|
|
162
|
+
const propias = deps.propias(agente);
|
|
163
|
+
return [
|
|
164
|
+
capacidadDeFicheros({
|
|
165
|
+
backend: deps.backend,
|
|
166
|
+
reglas,
|
|
167
|
+
tools: clase === "ejecuta" ? TOOLS_DE_LECTURA : TOOLS_DE_FICHERO,
|
|
168
|
+
conAprobacion: clase === "escribe",
|
|
169
|
+
}),
|
|
170
|
+
...(propias.length > 0 ? [capacidadDePropias(propias, deps.backend)] : []),
|
|
171
|
+
...(clase === "ejecuta" ? [capacidadDeEjecucion(deps.conShell())] : []),
|
|
172
|
+
capacidadDeRecortes(deps.backend),
|
|
173
|
+
capacidadDeFecha(),
|
|
174
|
+
// OpenUI lo trae su skill: quien la declara recibe la tool. Solo en nuestro motor —un hijo
|
|
175
|
+
// externo no pasa por estas capabilities, y la skill le dice que sin la tool no lo use—.
|
|
176
|
+
...(agente.skills.includes(SKILL_DE_OPENUI) ? [capacidadDeOpenui()] : []),
|
|
177
|
+
];
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=capacidades.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capacidades.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/capacidades.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GAGnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAwB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAA2B,MAAM,eAAe,CAAC;AAS5E,+FAA+F;AAC/F,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC;AACzH,4FAA4F;AAC5F,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,uBAAuB,EAAE,CAAC,GAAG,kBAAkB,CAAC,EAAE,CAAC;AAE9I,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CAAC,QAKnC;IACC,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,UAAU,EAAE;YACV,cAAc,EAAE;gBACd,IAAI,OAAO,CAAC;oBACV,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAU;oBAChH,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc;oBACnE,OAAO,EAAE,IAAI;iBACd,CAAC;aACH;SACF;KACF,CAAC;AACJ,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,KAAiC,EAAE,OAA2B;IAC/F,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/B,UAAU,EAAE;YACV,cAAc,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;SAChI;KACF,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,oBAAoB,CAAC,QAA0F;IAC7H,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,KAAK,EAAE,CAAC,SAAS,CAAC;QAClB,UAAU,EAAE,EAAE,cAAc,EAAE,CAAC,IAAI,OAAO,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;KAC1I,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA2B;IAC7D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,sBAAsB,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC;AAClH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,sBAAsB,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAU,EAAE,CAAC;AACrI,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,kPAAkP;IAClP,mJAAmJ;IACnJ,+GAA+G;IAC/G,qEAAqE;CACtE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,kGAAkG;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAGlE,CAAC;IACF,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,CAAC,yBAAyB,CAAC;QAClC,UAAU,EAAE;YACV,GAAG,IAAI;YACP,mBAAmB,EAAE;gBACnB,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC;gBACnC,CAAC,CAA6E,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,IAAI,CAAC;aACnJ;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa;IACpD,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,KAAK,EAAE,EAAE;QACT,UAAU,EAAE;YACV,mBAAmB,EAAE,CAAC,CAAC,CAA6E,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SACzJ;KACF,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,OAAO,CAAC,WAAiC;IACvD,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,cAAc,CAAC,WAAiC;IAC9D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,MAAiD;IAC7E,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAChD,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAChD,CAAC;AAWD;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAA0B,EAC1B,YAAoB,EACpB,IAAiC;IAEjC,wGAAwG;IACxG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,mBAAmB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAC9J,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,gBAAgB,EAAE;SACnB,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO;QACL,mBAAmB,CAAC;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB;YAChE,aAAa,EAAE,KAAK,KAAK,SAAS;SACnC,CAAC;QACF,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC;QACjC,gBAAgB,EAAE;QAClB,2FAA2F;QAC3F,yFAAyF;QACzF,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { detalleDe } from "../../turno/resumenDeTool.js";
|
|
2
|
+
const HILO_RAIZ = "main";
|
|
3
|
+
/** Las tool calls de un mensaje completo del asistente: nombre y argumentos. */
|
|
4
|
+
function llamadasDe(mensaje) {
|
|
5
|
+
const tc = mensaje?.tool_calls;
|
|
6
|
+
if (!Array.isArray(tc))
|
|
7
|
+
return [];
|
|
8
|
+
return tc.flatMap((t) => {
|
|
9
|
+
const nombre = t.function?.name;
|
|
10
|
+
if (typeof nombre !== "string")
|
|
11
|
+
return [];
|
|
12
|
+
let args = {};
|
|
13
|
+
try {
|
|
14
|
+
args = JSON.parse(t.function?.arguments ?? "{}");
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
args = {};
|
|
18
|
+
}
|
|
19
|
+
return [{ nombre, args }];
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
/** Cómo dice TrueForge que un hilo agotó su tope de llamadas, en el `error` de su `agent.done`. */
|
|
23
|
+
const TOPE_AGOTADO = /iteration limit of (\d+)/;
|
|
24
|
+
/**
|
|
25
|
+
* El tope que agotó un hilo, si ESTE evento es ese corte; `undefined` si no. Vale para el raíz y
|
|
26
|
+
* para cualquier hijo, y existe para la traza: sin él, un especialista cortado por el tope era
|
|
27
|
+
* indistinguible de uno que terminó —medido: la traza decía «cortes: 0» con un documentador que
|
|
28
|
+
* se quedó en exactamente 30 llamadas a mitad de un manual—.
|
|
29
|
+
*/
|
|
30
|
+
export function topeAgotadoDe(evento) {
|
|
31
|
+
const e = evento;
|
|
32
|
+
if (e?.type !== "internal.agent.done" || e.status !== "error" || typeof e.error !== "string")
|
|
33
|
+
return undefined;
|
|
34
|
+
const tope = TOPE_AGOTADO.exec(e.error);
|
|
35
|
+
return tope === null ? undefined : Number(tope[1]);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* De quién es lo que llega por un hilo. El raíz es el orquestador; cualquier otro, un
|
|
39
|
+
* especialista, con su nombre solo si la sesión lo conoce — sin resolutor, o con un hilo que no
|
|
40
|
+
* sabe, el nombre se CALLA en vez de rellenarse con el id del hilo.
|
|
41
|
+
*/
|
|
42
|
+
function origenDelHilo(hilo, especialistaDe) {
|
|
43
|
+
if (hilo === HILO_RAIZ)
|
|
44
|
+
return { rol: "orquestador" };
|
|
45
|
+
const nombre = especialistaDe?.(hilo);
|
|
46
|
+
return nombre === undefined ? { rol: "especialista" } : { rol: "especialista", nombre };
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Un evento de TrueForge → cero o más eventos de dominio, y el uso si trae una llamada al modelo
|
|
50
|
+
* terminada (para que quien corre el turno lo sume al contador).
|
|
51
|
+
*/
|
|
52
|
+
export function traducirEvento(evento, especialistaDe, pensamientos) {
|
|
53
|
+
const e = (evento ?? {});
|
|
54
|
+
const hilo = e.thread_id ?? HILO_RAIZ;
|
|
55
|
+
const delRaiz = hilo === HILO_RAIZ;
|
|
56
|
+
switch (e.type) {
|
|
57
|
+
case "model.message.delta": {
|
|
58
|
+
const pensado = typeof e.reasoning_content === "string" ? e.reasoning_content : "";
|
|
59
|
+
if (!delRaiz) {
|
|
60
|
+
// Sin colchón no hay dónde juntarlo, y a trozos se mezclaría: se calla, como antes.
|
|
61
|
+
if (pensado !== "" && pensamientos !== undefined)
|
|
62
|
+
pensamientos.set(hilo, (pensamientos.get(hilo) ?? "") + pensado);
|
|
63
|
+
return { eventos: [] };
|
|
64
|
+
}
|
|
65
|
+
const salida = [];
|
|
66
|
+
if (pensado !== "") {
|
|
67
|
+
salida.push({
|
|
68
|
+
tipo: "razonamiento",
|
|
69
|
+
texto: pensado,
|
|
70
|
+
...(e.id === undefined ? {} : { msgId: e.id }),
|
|
71
|
+
origen: { rol: "orquestador" },
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
if (typeof e.content === "string" && e.content !== "") {
|
|
75
|
+
salida.push({ tipo: "token", texto: e.content, ...(e.id === undefined ? {} : { msgId: e.id }) });
|
|
76
|
+
}
|
|
77
|
+
return { eventos: salida };
|
|
78
|
+
}
|
|
79
|
+
case "internal.agent.context.append": {
|
|
80
|
+
// El mensaje COMPLETO del asistente: de aquí salen sus tools —con los argumentos ya
|
|
81
|
+
// enteros, no a trozos— y el uso de la llamada.
|
|
82
|
+
const salidas = Array.isArray(e.output) ? e.output : [];
|
|
83
|
+
const eventos = [];
|
|
84
|
+
let uso;
|
|
85
|
+
const origen = origenDelHilo(hilo, especialistaDe);
|
|
86
|
+
// Lo que el hijo pensó para ESTE mensaje, entero y antes de las tools que decidió.
|
|
87
|
+
const pensado = pensamientos?.get(hilo);
|
|
88
|
+
if (pensado !== undefined) {
|
|
89
|
+
pensamientos.delete(hilo);
|
|
90
|
+
if (pensado.trim() !== "")
|
|
91
|
+
eventos.push({ tipo: "razonamiento", texto: pensado, origen });
|
|
92
|
+
}
|
|
93
|
+
for (const m of salidas) {
|
|
94
|
+
for (const { nombre, args } of llamadasDe(m)) {
|
|
95
|
+
const detalle = detalleDe(nombre, args);
|
|
96
|
+
eventos.push({ tipo: "tool", nombre, ...(detalle === undefined ? {} : { detalle }), origen });
|
|
97
|
+
}
|
|
98
|
+
const u = m?.usage;
|
|
99
|
+
if (u !== undefined) {
|
|
100
|
+
uso = {
|
|
101
|
+
input: (uso?.input ?? 0) + (u.input_tokens ?? 0),
|
|
102
|
+
output: (uso?.output ?? 0) + (u.output_tokens ?? 0),
|
|
103
|
+
cache: (uso?.cache ?? 0) + (u.cache_read_tokens ?? 0),
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return { eventos, ...(uso === undefined ? {} : { uso }) };
|
|
108
|
+
}
|
|
109
|
+
case "agent.context.overwrite": {
|
|
110
|
+
// La compactación: una llamada al modelo que también se paga. Su uso viene en el evento y
|
|
111
|
+
// no en un mensaje del contexto, así que sin esto el resumen sería gratis en el contador.
|
|
112
|
+
const u = e.usage;
|
|
113
|
+
if (u === undefined)
|
|
114
|
+
return { eventos: [] };
|
|
115
|
+
return { eventos: [], uso: { input: u.input_tokens ?? 0, output: u.output_tokens ?? 0, cache: u.cache_read_tokens ?? 0 } };
|
|
116
|
+
}
|
|
117
|
+
case "internal.agent.done": {
|
|
118
|
+
// Un subagente que falla lo dice su padre, que recibe el error como respuesta de tool.
|
|
119
|
+
// El RAÍZ que falla se dice aquí: un turno que se rompe no puede cerrar en silencio.
|
|
120
|
+
if (!delRaiz || e.status !== "error")
|
|
121
|
+
return { eventos: [] };
|
|
122
|
+
const detalle = typeof e.error === "string" ? e.error : "error del motor";
|
|
123
|
+
// El TOPE de llamadas no es un fallo del motor: es un corte, y se dice como tal — con cuántas
|
|
124
|
+
// y con lo que se puede hacer. Sin esto se leía «el motor falló» con el texto en inglés.
|
|
125
|
+
const tope = TOPE_AGOTADO.exec(detalle);
|
|
126
|
+
if (tope !== null) {
|
|
127
|
+
return {
|
|
128
|
+
eventos: [
|
|
129
|
+
{
|
|
130
|
+
tipo: "aviso",
|
|
131
|
+
texto: `⚠ el orquestador agotó su tope de ${tope[1]} llamadas en este turno: lo hecho hasta aquí se queda como está; pide que siga si hace falta`,
|
|
132
|
+
severidad: "grave",
|
|
133
|
+
},
|
|
134
|
+
],
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return { eventos: [{ tipo: "aviso", texto: `⚠ el motor TrueForge falló: ${detalle}`, severidad: "grave" }] };
|
|
138
|
+
}
|
|
139
|
+
default:
|
|
140
|
+
return { eventos: [] };
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=eventosTrueforge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventosTrueforge.js","sourceRoot":"","sources":["../../../../src/agent/motores/trueforge/eventosTrueforge.ts"],"names":[],"mappings":"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"}
|