xonecode 0.38.41 → 0.39.2
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/apps/web/dist/assets/{EditorDeFichero-B5qtmfKO.js → EditorDeFichero-BeWDctgN.js} +1 -1
- package/apps/web/dist/assets/{index-C6XoIOQg.js → index-B-6cDRAV.js} +20 -20
- package/apps/web/dist/assets/{php-I6JfbNBQ.js → php-D3QdOnb8.js} +1 -1
- package/apps/web/dist/assets/{ruby-DlqXDLOX.js → ruby-DDAcW-Z2.js} +1 -1
- package/apps/web/dist/index.html +1 -1
- package/dist/agent/cloudstudio/cloudstudioClient.d.ts +29 -0
- package/dist/agent/cloudstudio/cloudstudioMcp.d.ts +414 -0
- package/dist/agent/cloudstudio/conexionDeServidor.d.ts +37 -0
- package/dist/agent/cloudstudio/conexionDeServidor.js +63 -0
- package/dist/agent/cloudstudio/conexionDeServidor.js.map +1 -0
- package/dist/agent/cloudstudio/crearRama.d.ts +15 -0
- package/dist/agent/cloudstudio/crearRama.js +16 -0
- package/dist/agent/cloudstudio/crearRama.js.map +1 -0
- package/dist/agent/cloudstudio/descarga.d.ts +44 -0
- package/dist/agent/cloudstudio/manifiesto.d.ts +25 -0
- package/dist/agent/cloudstudio/ramaActiva.d.ts +24 -0
- package/dist/agent/cloudstudio/subida.d.ts +61 -0
- package/dist/agent/cloudstudio/subida.js +7 -1
- package/dist/agent/cloudstudio/subida.js.map +1 -1
- package/dist/agent/cloudstudio/validarTrasDescarga.d.ts +13 -0
- package/dist/agent/cloudstudio/zip.d.ts +13 -0
- package/dist/agent/conectores/conectoresEnDisco.d.ts +47 -0
- package/dist/agent/conectores/gestorJira.d.ts +50 -0
- package/dist/agent/conectores/gestorNotion.d.ts +45 -0
- package/dist/agent/conectores/proveedorDeConector.d.ts +43 -0
- package/dist/agent/conectores/servicioDeConectores.d.ts +112 -0
- package/dist/agent/config/authEnDisco.d.ts +43 -0
- package/dist/agent/config/catalogoModelos.d.ts +79 -0
- package/dist/agent/config/configEnDisco.d.ts +235 -0
- package/dist/agent/config/crearProyecto.d.ts +20 -0
- package/dist/agent/config/diagnosticoDeNodeEnMaquina.d.ts +44 -0
- package/dist/agent/config/ecoDeRazonamiento.d.ts +104 -0
- package/dist/agent/config/entorno.d.ts +83 -0
- package/dist/agent/config/fuentesEnRed.d.ts +12 -0
- package/dist/agent/config/gemini.d.ts +5 -0
- package/dist/agent/config/iconosEnRed.d.ts +10 -0
- package/dist/agent/config/identidadEnDisco.d.ts +27 -0
- package/dist/agent/config/modelos.d.ts +77 -0
- package/dist/agent/config/modelosDeMotor.d.ts +52 -0
- package/dist/agent/config/mudanzaEnDisco.d.ts +99 -0
- package/dist/agent/config/persona.d.ts +1 -0
- package/dist/agent/config/selectorEnMaquina.d.ts +35 -0
- package/dist/agent/config/settingsEnDisco.d.ts +206 -0
- package/dist/agent/config/versionEnDisco.d.ts +17 -0
- package/dist/agent/dispositivos/arranqueDeEmulador.d.ts +60 -0
- package/dist/agent/dispositivos/cajasDeMaqueta.d.ts +61 -0
- package/dist/agent/dispositivos/decodificarImagen.d.ts +21 -0
- package/dist/agent/dispositivos/descargaDeHerramientas.d.ts +44 -0
- package/dist/agent/dispositivos/dispositivosEnMaquina.d.ts +161 -0
- package/dist/agent/dispositivos/geometriaEnDisco.d.ts +17 -0
- package/dist/agent/dispositivos/hotswap.d.ts +194 -0
- package/dist/agent/dispositivos/instalacionEnMaquina.d.ts +156 -0
- package/dist/agent/dispositivos/juezVisual.d.ts +144 -0
- package/dist/agent/dispositivos/lanzamientoEnMaquina.d.ts +197 -0
- package/dist/agent/dispositivos/paqueteDelProyecto.d.ts +28 -0
- package/dist/agent/dispositivos/procesosEnMaquina.d.ts +154 -0
- package/dist/agent/dispositivos/recargaEnAparato.d.ts +30 -0
- package/dist/agent/dispositivos/sensorDeArranque.d.ts +42 -0
- package/dist/agent/exportarPdf.d.ts +72 -0
- package/dist/agent/grafo/aprendido.d.ts +28 -0
- package/dist/agent/grafo/arbolDeProyecto.d.ts +205 -0
- package/dist/agent/grafo/artefactosEnDisco.d.ts +35 -0
- package/dist/agent/grafo/atributosXone.d.ts +31 -0
- package/dist/agent/grafo/buscarIcono.d.ts +32 -0
- package/dist/agent/grafo/busquedaRegex.d.ts +56 -0
- package/dist/agent/grafo/codificacionDelProyecto.d.ts +7 -0
- package/dist/agent/grafo/compararCapturas.d.ts +22 -0
- package/dist/agent/grafo/copiarArtefacto.d.ts +64 -0
- package/dist/agent/grafo/criticaVisual.d.ts +60 -0
- package/dist/agent/grafo/describirImagen.d.ts +79 -0
- package/dist/agent/grafo/diferenciaDeCapturas.d.ts +33 -0
- package/dist/agent/grafo/ejecucionCancelable.d.ts +45 -0
- package/dist/agent/grafo/escriturasEnSerie.d.ts +31 -0
- package/dist/agent/grafo/excluirTools.d.ts +37 -0
- package/dist/agent/grafo/fuentesDeGoogle.d.ts +37 -0
- package/dist/agent/grafo/generarFondoSvg.d.ts +52 -0
- package/dist/agent/grafo/incorporarAdjunto.d.ts +98 -0
- package/dist/agent/grafo/lectorDeReferencias.d.ts +28 -0
- package/dist/agent/grafo/marcarCriteriosDelPlan.d.ts +47 -0
- package/dist/agent/grafo/memoriaDeProyecto.d.ts +15 -0
- package/dist/agent/grafo/navegacionXone.d.ts +60 -0
- package/dist/agent/grafo/opcionesDeFicheros.d.ts +23 -0
- package/dist/agent/grafo/perfiles.d.ts +225 -0
- package/dist/agent/grafo/proyecto.d.ts +450 -0
- package/dist/agent/grafo/skills.d.ts +181 -0
- package/dist/agent/grafo/traerDeLaMaquina.d.ts +60 -0
- package/dist/agent/grafo/unirSecciones.d.ts +20 -0
- package/dist/agent/grafo/validacionXone.d.ts +35 -0
- package/dist/agent/grafo/validarFicheroXone.d.ts +33 -0
- package/dist/agent/grafo/xoneAgent.d.ts +166 -0
- package/dist/agent/motores/motoresLocales.d.ts +87 -0
- package/dist/agent/motores/trueforge/capacidades.d.ts +183 -0
- package/dist/agent/motores/trueforge/convertirAP.d.ts +38 -0
- package/dist/agent/motores/trueforge/detencion.d.ts +70 -0
- package/dist/agent/motores/trueforge/esperas.d.ts +38 -0
- package/dist/agent/motores/trueforge/eventosTrueforge.d.ts +56 -0
- package/dist/agent/motores/trueforge/informesDeHijos.d.ts +48 -0
- package/dist/agent/motores/trueforge/medidaAutomatica.d.ts +37 -0
- package/dist/agent/motores/trueforge/medidaAutomatica.js +4 -2
- package/dist/agent/motores/trueforge/medidaAutomatica.js.map +1 -1
- package/dist/agent/motores/trueforge/memoriaDeEspecialistas.d.ts +60 -0
- package/dist/agent/motores/trueforge/memoriaTrueforge.d.ts +131 -0
- package/dist/agent/motores/trueforge/metricasTrueforge.d.ts +45 -0
- package/dist/agent/motores/trueforge/modeloExterno.d.ts +9 -0
- package/dist/agent/motores/trueforge/modeloLangchain.d.ts +69 -0
- package/dist/agent/motores/trueforge/notas.d.ts +48 -0
- package/dist/agent/motores/trueforge/proponerTareas.d.ts +30 -0
- package/dist/agent/motores/trueforge/recortes.d.ts +47 -0
- package/dist/agent/motores/trueforge/resumenSeguro.d.ts +33 -0
- package/dist/agent/motores/trueforge/sesionTrueforge.d.ts +273 -0
- package/dist/agent/motores/trueforge/sesionTrueforge.js +32 -15
- package/dist/agent/motores/trueforge/sesionTrueforge.js.map +1 -1
- package/dist/agent/motores/trueforge/skillsTrueforge.d.ts +16 -0
- package/dist/agent/motores/trueforge/toolsDeConectores.d.ts +36 -0
- package/dist/agent/motores/trueforge/toolsDeFichero.d.ts +146 -0
- package/dist/agent/motores/trueforge/toolsPropias.d.ts +38 -0
- package/dist/agent/motores/trueforge/traerDeStitch.d.ts +63 -0
- package/dist/agent/motores/trueforge/trueforge.d.ts +35 -0
- package/dist/agent/navegacion/estilosEnDisco.d.ts +41 -0
- package/dist/agent/navegacion/hechosEnDisco.d.ts +19 -0
- package/dist/agent/navegacion/indiceEnDisco.d.ts +50 -0
- package/dist/agent/navegacion/modeloDeProyecto.d.ts +86 -0
- package/dist/agent/planesEnDisco.d.ts +18 -0
- package/dist/agent/publicarPlan.d.ts +20 -0
- package/dist/agent/raizDelPaquete.d.ts +9 -0
- package/dist/agent/remoto/ngrokEnMaquina.d.ts +44 -0
- package/dist/agent/remoto/puenteWebSocket.d.ts +59 -0
- package/dist/agent/remoto/tunelNgrok.d.ts +31 -0
- package/dist/agent/renombrarSobre.d.ts +14 -0
- package/dist/agent/sesiones/adjuntosDeSesion.d.ts +64 -0
- package/dist/agent/sesiones/baseDeFichero.d.ts +9 -0
- package/dist/agent/sesiones/checkpointer.d.ts +146 -0
- package/dist/agent/sesiones/git.d.ts +66 -0
- package/dist/agent/sesiones/gitSync.d.ts +264 -0
- package/dist/agent/sesiones/memoriaDeHilo.d.ts +4 -0
- package/dist/agent/sesiones/modeloDelCambio.d.ts +7 -0
- package/dist/agent/sesiones/parcheEnTexto.d.ts +9 -0
- package/dist/agent/sesiones/sesionGit.d.ts +155 -0
- package/dist/agent/subagentes/actividadDeCodex.d.ts +8 -0
- package/dist/agent/subagentes/agentesEnDisco.d.ts +198 -0
- package/dist/agent/subagentes/consumoExterno.d.ts +83 -0
- package/dist/agent/subagentes/ejecutableEnWindows.d.ts +53 -0
- package/dist/agent/subagentes/escrituraDeCodex.d.ts +94 -0
- package/dist/agent/subagentes/escrituraDeOpencode.d.ts +67 -0
- package/dist/agent/subagentes/escrituraExterna.d.ts +419 -0
- package/dist/agent/subagentes/pluginDeSkills.d.ts +84 -0
- package/dist/agent/subagentes/subagenteCodex.d.ts +76 -0
- package/dist/agent/subagentes/subagenteExterno.d.ts +169 -0
- package/dist/agent/subagentes/subagenteOpencode.d.ts +126 -0
- package/dist/agent/tareas/aumentador.d.ts +99 -0
- package/dist/agent/tareas/juezDeTarea.d.ts +64 -0
- package/dist/agent/tareas/reflejoEnElGestor.d.ts +38 -0
- package/dist/agent/tareas/sondeoDelGestor.d.ts +49 -0
- package/dist/agent/tareas/tareasEnDisco.d.ts +141 -0
- package/dist/agent/trazaDeErroresEnDisco.d.ts +10 -0
- package/dist/agent/turno/depuracion.d.ts +1 -0
- package/dist/agent/turno/diagnosticoDeTools.d.ts +124 -0
- package/dist/agent/turno/ficherosDelProyecto.d.ts +10 -0
- package/dist/agent/turno/guionizado.d.ts +18 -0
- package/dist/agent/turno/informeDeTraza.d.ts +220 -0
- package/dist/agent/turno/inspectorDePrompt.d.ts +150 -0
- package/dist/agent/turno/instantanea.d.ts +16 -0
- package/dist/agent/turno/interrupts.d.ts +54 -0
- package/dist/agent/turno/juezDelTurnoConModelo.d.ts +26 -0
- package/dist/agent/turno/mensajes.d.ts +23 -0
- package/dist/agent/turno/normalizar.d.ts +15 -0
- package/dist/agent/turno/puente.d.ts +196 -0
- package/dist/agent/turno/registroDeFallos.d.ts +39 -0
- package/dist/agent/turno/resumenDeContexto.d.ts +269 -0
- package/dist/agent/turno/resumenDeTool.d.ts +33 -0
- package/dist/agent/turno/rubrica.d.ts +35 -0
- package/dist/agent/turno/sesionReal.d.ts +89 -0
- package/dist/agent/turno/textoDeTool.d.ts +19 -0
- package/dist/agent/turno/turnoReal.d.ts +210 -0
- package/dist/agent/turno/verificacion.d.ts +85 -0
- package/dist/agent/turno/verificador.d.ts +66 -0
- package/dist/bin.d.ts +2 -0
- package/dist/cli/acuseDeModelo.d.ts +18 -0
- package/dist/cli/aprobar.d.ts +162 -0
- package/dist/cli/config.d.ts +17 -0
- package/dist/cli/consola.d.ts +473 -0
- package/dist/cli/describe.d.ts +7 -0
- package/dist/cli/doctor.d.ts +8 -0
- package/dist/cli/fuentesDeDisco.d.ts +25 -0
- package/dist/cli/main.d.ts +291 -0
- package/dist/cli/markdown.d.ts +126 -0
- package/dist/cli/panel.d.ts +38 -0
- package/dist/cli/podar.d.ts +38 -0
- package/dist/cli/run.d.ts +30 -0
- package/dist/cli/spinner.d.ts +37 -0
- package/dist/cli/stdio.d.ts +94 -0
- package/dist/cli/tema.d.ts +68 -0
- package/dist/cli/tokens.d.ts +16 -0
- package/dist/cli/traza.d.ts +19 -0
- package/dist/cli/tui/app.d.ts +23 -0
- package/dist/cli/tui/aprobarTui.d.ts +46 -0
- package/dist/cli/tui/barra.d.ts +43 -0
- package/dist/cli/tui/correrTui.d.ts +119 -0
- package/dist/cli/tui/entrada.d.ts +14 -0
- package/dist/cli/tui/filas.d.ts +13 -0
- package/dist/cli/tui/logo.d.ts +20 -0
- package/dist/cli/tui/pielTui.d.ts +15 -0
- package/dist/cli/tui/raton.d.ts +68 -0
- package/dist/cli/tui/sidebar.d.ts +63 -0
- package/dist/cli/tui/store.d.ts +102 -0
- package/dist/cli/tui/tarjeta.d.ts +8 -0
- package/dist/cli/tui/temaInk.d.ts +67 -0
- package/dist/cli/tui/transcript.d.ts +32 -0
- package/dist/cli/verify.d.ts +9 -0
- package/dist/cli/wizardInicial.d.ts +59 -0
- package/dist/core/actos.d.ts +437 -0
- package/dist/core/adjuntos.d.ts +77 -0
- package/dist/core/agentes.d.ts +353 -0
- package/dist/core/analisisDeSesion.d.ts +63 -0
- package/dist/core/aprendido.d.ts +41 -0
- package/dist/core/artefactos.d.ts +74 -0
- package/dist/core/atributosXone.d.ts +53 -0
- package/dist/core/bitacora.d.ts +21 -0
- package/dist/core/cloudstudio.d.ts +168 -0
- package/dist/core/codificacion.d.ts +81 -0
- package/dist/core/comandoExterno.d.ts +49 -0
- package/dist/core/compararCapturas.d.ts +136 -0
- package/dist/core/conectores.d.ts +296 -0
- package/dist/core/config.d.ts +148 -0
- package/dist/core/contextos.d.ts +54 -0
- package/dist/core/convertirAP.d.ts +56 -0
- package/dist/core/copiaDeAvd.d.ts +44 -0
- package/dist/core/cssBienFormado.d.ts +22 -0
- package/dist/core/deps.d.ts +28 -0
- package/dist/core/descargas.d.ts +61 -0
- package/dist/core/descripcionDePantalla.d.ts +121 -0
- package/dist/core/descriptoresDeApp.d.ts +108 -0
- package/dist/core/diagnosticoDeNode.d.ts +51 -0
- package/dist/core/diff.d.ts +26 -0
- package/dist/core/diffDeColecciones.d.ts +54 -0
- package/dist/core/disenoVinculado.d.ts +17 -0
- package/dist/core/dispositivoDeSesion.d.ts +22 -0
- package/dist/core/dispositivoElegido.d.ts +17 -0
- package/dist/core/dispositivos.d.ts +469 -0
- package/dist/core/entrega.d.ts +341 -0
- package/dist/core/entrelazar.d.ts +48 -0
- package/dist/core/esfuerzo.d.ts +120 -0
- package/dist/core/esqueleto.d.ts +38 -0
- package/dist/core/estiloMedido.d.ts +70 -0
- package/dist/core/estilos.d.ts +76 -0
- package/dist/core/events.d.ts +218 -0
- package/dist/core/exportacion.d.ts +88 -0
- package/dist/core/fallos.d.ts +79 -0
- package/dist/core/fondosSvg.d.ts +115 -0
- package/dist/core/fotoDeColecciones.d.ts +45 -0
- package/dist/core/fuentes.d.ts +96 -0
- package/dist/core/geometriaDePantalla.d.ts +171 -0
- package/dist/core/gestorDeTareas.d.ts +295 -0
- package/dist/core/hechosDelProyecto.d.ts +70 -0
- package/dist/core/hotswap.d.ts +30 -0
- package/dist/core/iconos.d.ts +86 -0
- package/dist/core/identidadDeProveedor.d.ts +20 -0
- package/dist/core/idiomaDeLaRespuesta.d.ts +26 -0
- package/dist/core/imagenesDeDocumento.d.ts +40 -0
- package/dist/core/jsParaRhino.d.ts +3 -0
- package/dist/core/juezDelTurno.d.ts +95 -0
- package/dist/core/logDeDispositivo.d.ts +67 -0
- package/dist/core/memoria.d.ts +18 -0
- package/dist/core/metodoDeComparacionVisual.d.ts +20 -0
- package/dist/core/modelos.d.ts +198 -0
- package/dist/core/modoDeEscritura.d.ts +155 -0
- package/dist/core/motor.d.ts +43 -0
- package/dist/core/motoresLocales.d.ts +113 -0
- package/dist/core/mudanzaDeWorkspace.d.ts +112 -0
- package/dist/core/navegacion.d.ts +172 -0
- package/dist/core/notify.d.ts +77 -0
- package/dist/core/nucleoXone.d.ts +28 -0
- package/dist/core/panorama.d.ts +68 -0
- package/dist/core/paqueteDeSoporte.d.ts +100 -0
- package/dist/core/planDeSubida.d.ts +56 -0
- package/dist/core/planes.d.ts +53 -0
- package/dist/core/podaDeCheckpoint.d.ts +75 -0
- package/dist/core/ports.d.ts +1034 -0
- package/dist/core/puedeLanzarse.d.ts +181 -0
- package/dist/core/puertosDeAvd.d.ts +59 -0
- package/dist/core/recargaEnCaliente.d.ts +52 -0
- package/dist/core/referenciasDeImagen.d.ts +36 -0
- package/dist/core/remoto.d.ts +76 -0
- package/dist/core/repartoDeEncargo.d.ts +80 -0
- package/dist/core/rubrica.d.ts +78 -0
- package/dist/core/rutaVirtual.d.ts +29 -0
- package/dist/core/selectorDeCarpeta.d.ts +59 -0
- package/dist/core/serieDeEscrituras.d.ts +58 -0
- package/dist/core/settings.d.ts +421 -0
- package/dist/core/shellDeAgente.d.ts +177 -0
- package/dist/core/skills.d.ts +129 -0
- package/dist/core/stitch.d.ts +114 -0
- package/dist/core/tareas.d.ts +412 -0
- package/dist/core/tareasDelPlan.d.ts +123 -0
- package/dist/core/tareasEnElGestor.d.ts +117 -0
- package/dist/core/textos.d.ts +8 -0
- package/dist/core/topeAgotado.d.ts +55 -0
- package/dist/core/traerDeLaMaquina.d.ts +33 -0
- package/dist/core/trazaDeErrores.d.ts +83 -0
- package/dist/core/tunel.d.ts +45 -0
- package/dist/core/turno.d.ts +154 -0
- package/dist/core/validacionDeEscritura.d.ts +95 -0
- package/dist/core/verificacionDeSubida.d.ts +14 -0
- package/dist/core/version.d.ts +35 -0
- package/dist/core/xmlBienFormado.d.ts +23 -0
- package/dist/core/zipDeAdjunto.d.ts +28 -0
- package/dist/core/zipDeSkill.d.ts +74 -0
- package/dist/lib/tareaAutonoma.d.ts +36 -0
- package/dist/lib/tareaAutonoma.js +259 -0
- package/dist/lib/tareaAutonoma.js.map +1 -0
- package/dist/lib.d.ts +31 -0
- package/dist/lib.js +28 -0
- package/dist/lib.js.map +1 -0
- package/dist/vendor/hitl.d.ts +69 -0
- package/dist/vendor/skillLoaders/catalog.d.ts +27 -0
- package/dist/vendor/sqliteSaver.d.ts +22 -0
- package/dist/vendor/tokenTracking.d.ts +22 -0
- package/dist/web/servidor/arranque.d.ts +1372 -0
- package/dist/web/servidor/consolaDeTarea.d.ts +166 -0
- package/dist/web/servidor/consolaWeb.d.ts +142 -0
- package/dist/web/servidor/corredorDeTareas.d.ts +395 -0
- package/dist/web/servidor/datosDeCierre.d.ts +4 -0
- package/dist/web/servidor/interrupcion.d.ts +39 -0
- package/dist/web/servidor/pielWeb.d.ts +32 -0
- package/dist/web/servidor/puenteRemoto.d.ts +80 -0
- package/dist/web/servidor/servidor.d.ts +53 -0
- package/dist/web/servidor/sesiones.d.ts +342 -0
- package/dist/web/servidor/soporte.d.ts +65 -0
- package/dist/web/servidor/soporte.js +2 -0
- package/dist/web/servidor/soporte.js.map +1 -1
- package/dist/web/servidor/transporte.d.ts +2751 -0
- package/dist/web/servidor/vestibulo.d.ts +952 -0
- package/dist/web/servidor/visorOpenui.d.ts +33 -0
- package/package.json +9 -1
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
/** Las tools de fichero que monta deepagents sobre el backend. */
|
|
2
|
+
export declare const TOOLS_LECTURA: readonly ["ls", "read_file", "glob", "grep"];
|
|
3
|
+
export declare const TOOLS_ESCRITURA: readonly ["write_file", "edit_file"];
|
|
4
|
+
/**
|
|
5
|
+
* Lo que estas tres funciones MIRAN de verdad, y nada más.
|
|
6
|
+
*
|
|
7
|
+
* Antes pedían un `Perfil` entero. Desde que los subagentes son ficheros
|
|
8
|
+
* (`core/agentes.ts`) quien llega aquí es un `Agente`, y las dos formas comparten
|
|
9
|
+
* exactamente estos dos campos: el nombre para poder decirlo en la petición de aprobación,
|
|
10
|
+
* y si escribe o no. Pedir el tipo grande obligaría a convertir un `Agente` en un `Perfil`
|
|
11
|
+
* —o sea a inventarle campos— solo para preguntarle si puede escribir.
|
|
12
|
+
*/
|
|
13
|
+
export interface QuienDecidePermisos {
|
|
14
|
+
nombre: string;
|
|
15
|
+
soloLectura: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Las carpetas del PROYECTO donde este agente sí puede escribir, aunque sea de solo
|
|
18
|
+
* lectura. Ausente o vacía = ninguna, que es como se ha comportado siempre.
|
|
19
|
+
*
|
|
20
|
+
* Nace del documentador: su trabajo es dejar un manual en `doc/`, y sin esto la única
|
|
21
|
+
* forma de dárselo era quitarle el `soloLectura` — o sea, dejarle tocar el código
|
|
22
|
+
* entero para que pudiera escribir un `.md`. Esto parte esas dos cosas: puede escribir
|
|
23
|
+
* DONDE se le diga y en ningún otro sitio.
|
|
24
|
+
*
|
|
25
|
+
* Son rutas VIRTUALES del backend (`/doc/`), no de la máquina, y se comparan por
|
|
26
|
+
* prefijo de SEGMENTO: `/doc` no abre `/documentos`.
|
|
27
|
+
*/
|
|
28
|
+
escribeEn?: readonly string[];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* ¿Cae `ruta` dentro de `carpeta`? Por SEGMENTO y no por texto.
|
|
32
|
+
*
|
|
33
|
+
* `"/documentos/x".startsWith("/doc")` es cierto y sería un agujero: conceder `/doc`
|
|
34
|
+
* abriría cualquier carpeta que empiece igual. Se normaliza la carpeta con su barra final
|
|
35
|
+
* y se admite además la ruta exacta, para que `escribeEn: ["/doc"]` y `["/doc/"]` digan
|
|
36
|
+
* lo mismo — quien escribe un `.md` no tiene por qué saber cuál de las dos esperamos.
|
|
37
|
+
*/
|
|
38
|
+
export declare function dentroDeCarpeta(ruta: string, carpeta: string): boolean;
|
|
39
|
+
/** Lo que estructuralmente da igual quién seas: nunca se lee ni se escribe. */
|
|
40
|
+
export declare const DENEGADO_SIEMPRE: ({
|
|
41
|
+
operations: readonly ["read", "write"];
|
|
42
|
+
paths: string[];
|
|
43
|
+
mode: "deny";
|
|
44
|
+
} | {
|
|
45
|
+
operations: readonly ["write"];
|
|
46
|
+
paths: string[];
|
|
47
|
+
mode: "deny";
|
|
48
|
+
})[];
|
|
49
|
+
/**
|
|
50
|
+
* Los permisos de un perfil. **Nunca los escribas a mano.**
|
|
51
|
+
*
|
|
52
|
+
* `SubAgent.permissions` REEMPLAZA los del padre, no los fusiona. Así que cada perfil que
|
|
53
|
+
* declare permisos propios tiene que traerse las denegaciones base consigo o las pierde —
|
|
54
|
+
* y perder la de `.env` significa que un especialista «de solo lectura» puede leer las
|
|
55
|
+
* claves del usuario. Esta función es lo único que evita ese olvido.
|
|
56
|
+
*/
|
|
57
|
+
export declare function permisosDe(perfil: QuienDecidePermisos): ({
|
|
58
|
+
operations: readonly ["read", "write"];
|
|
59
|
+
paths: string[];
|
|
60
|
+
mode: "deny";
|
|
61
|
+
} | {
|
|
62
|
+
operations: readonly ["write"];
|
|
63
|
+
paths: string[];
|
|
64
|
+
mode: "deny";
|
|
65
|
+
} | {
|
|
66
|
+
operations: readonly ["write"];
|
|
67
|
+
paths: string[];
|
|
68
|
+
mode: "allow";
|
|
69
|
+
})[];
|
|
70
|
+
/**
|
|
71
|
+
* Las tools de fichero de un agente con EJECUCIÓN.
|
|
72
|
+
*
|
|
73
|
+
* `read_file` tiene que estar siempre (lo exige el middleware). Lo que NO está son
|
|
74
|
+
* `write_file` y `edit_file`: no porque no pueda escribir —con una shell puede, y fingir lo
|
|
75
|
+
* contrario sería peor que no decir nada— sino para que el camino normal de tocar el
|
|
76
|
+
* proyecto siga siendo el que pasa por la aprobación y por el diff. Quien escribe el proyecto
|
|
77
|
+
* es `developer-xone`; éste conduce un aparato.
|
|
78
|
+
*/
|
|
79
|
+
export declare const TOOLS_CON_EJECUCION: readonly ["read_file", "ls", "glob", "grep", "execute"];
|
|
80
|
+
/** Lo que este módulo mira para decidir si un agente ejecuta. */
|
|
81
|
+
export interface QuienDecideEjecucion extends QuienDecidePermisos {
|
|
82
|
+
ejecucion?: boolean;
|
|
83
|
+
motor?: string;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Si a este agente le toca la shell.
|
|
87
|
+
*
|
|
88
|
+
* Dos condiciones, y la segunda no es una formalidad: en los tres motores EXTERNOS la shell
|
|
89
|
+
* está cerrada a propósito (`Bash` denegada, la tool retirada, el sandbox `read-only`) y el
|
|
90
|
+
* hijo corre en otro proceso donde este campo no manda nada. Honrarlo ahí sería prometer una
|
|
91
|
+
* capacidad que no llega; ignorarlo en silencio, esconder que no llega. Se decide aquí, en un
|
|
92
|
+
* sitio, y la ventana de Ajustes lo cuenta.
|
|
93
|
+
*/
|
|
94
|
+
export declare function puedeEjecutar(perfil: QuienDecideEjecucion): boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Cuántas llamadas al modelo puede gastar ESTE perfil en un encargo.
|
|
97
|
+
*
|
|
98
|
+
* Se decide por `ejecucion` y **no por el nombre del agente**: `device-controller` es quien
|
|
99
|
+
* lo tiene hoy, pero una regla que nombrara a un agente se queda escrita y muerta el día que
|
|
100
|
+
* lo renombren — ya pasó con `planner`. Lo que justifica el presupuesto largo es el trabajo,
|
|
101
|
+
* no quién lo hace: el que conduce un aparato avanza en un bucle de acto→observa, y el que
|
|
102
|
+
* lee y contesta no.
|
|
103
|
+
*
|
|
104
|
+
* Pura y exportada por el patrón de fallo de siempre: compuesta dentro de `construirAgente`
|
|
105
|
+
* —que todos sus tests doblan— «el conductor lleva otro presupuesto» quedaría escrito y sin
|
|
106
|
+
* probar, y el síntoma sería el de ahora, con todo en verde.
|
|
107
|
+
*/
|
|
108
|
+
export declare function presupuestoDeLlamadas(perfil: QuienDecideEjecucion): number;
|
|
109
|
+
/**
|
|
110
|
+
* Con qué backend y con qué reglas se le montan las tools de fichero a un especialista.
|
|
111
|
+
*
|
|
112
|
+
* Existe como función PURA y exportada por el patrón de fallo de este repo: compuesto dentro
|
|
113
|
+
* de `construirAgente` —que todos sus tests doblan— «este agente lleva shell y aquél no»
|
|
114
|
+
* quedaría escrito y sin probar, y el síntoma sería el peor de todos: todo en verde y un
|
|
115
|
+
* especialista corriente con una shell, o el de dispositivos sin ella y sin error que leer.
|
|
116
|
+
*
|
|
117
|
+
* **Y `permissions` NO se pasa con un backend ejecutable.** No es una elección: deepagents
|
|
118
|
+
* LANZA (`ConfigurationError`) si se combinan, porque «los comandos alcanzan cualquier ruta
|
|
119
|
+
* independientemente de las reglas de ruta». O sea que la biblioteca se niega a sostener una
|
|
120
|
+
* barrera que no sería verdad — y esa negativa es la razón por la que esto se concede a UN
|
|
121
|
+
* agente y se declara en su fichero.
|
|
122
|
+
*/
|
|
123
|
+
export declare function montajeDeFicheros<B>(perfil: QuienDecideEjecucion, backends: {
|
|
124
|
+
normal: B;
|
|
125
|
+
conShell?: B;
|
|
126
|
+
}): {
|
|
127
|
+
backend: B;
|
|
128
|
+
permissions?: ReturnType<typeof permisosDe>;
|
|
129
|
+
tools?: typeof TOOLS_CON_EJECUCION;
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Barrera de lectura para tools propias.
|
|
133
|
+
*
|
|
134
|
+
* `FilesystemMiddleware` aplica `permisosDe()` a sus seis herramientas, pero
|
|
135
|
+
* una tool de LangChain añadida por xonecode no pasa por ese middleware. Las
|
|
136
|
+
* rutas protegidas se concentran aquí para que esas tools no abran por accidente
|
|
137
|
+
* `.env`, `.git` ni la carpeta interna del proyecto.
|
|
138
|
+
*/
|
|
139
|
+
export declare function puedeLeerRuta(ruta: string): boolean;
|
|
140
|
+
/**
|
|
141
|
+
* ¿Puede ESTE agente escribir en ESTA ruta? El espejo de `permisosDe`, como predicado.
|
|
142
|
+
*
|
|
143
|
+
* Existe porque **una tool propia no pasa por el middleware de permisos** —ya está dicho de
|
|
144
|
+
* `regex_search` y de `xone_navegacion`, que reaplican `puedeLeerRuta` a mano—, y una tool
|
|
145
|
+
* que escriba tiene el mismo deber con más consecuencias: sin esto, `copiar_artefacto`
|
|
146
|
+
* sería la puerta trasera por la que un agente de solo lectura mete ficheros en el
|
|
147
|
+
* proyecto, que es exactamente lo que `permisosDe` existe para impedir.
|
|
148
|
+
*
|
|
149
|
+
* Se mantiene en el MISMO fichero y al lado de `permisosDe` a propósito: son dos formas de
|
|
150
|
+
* la misma regla, y separarlas es cómo una se queda vieja. Si algún día divergen, lo que
|
|
151
|
+
* hay que hacer es derivar una de la otra, no añadir una tercera.
|
|
152
|
+
*/
|
|
153
|
+
export declare function puedeEscribirRuta(perfil: QuienDecidePermisos, ruta: string): boolean;
|
|
154
|
+
/**
|
|
155
|
+
* Las tools de fichero que le corresponden a un perfil.
|
|
156
|
+
*
|
|
157
|
+
* **No se le pasa a `SubAgent.tools`**: ese campo es `StructuredTool[]` —objetos, para
|
|
158
|
+
* tools propias— y darle nombres deja al especialista sin capacidades. Las de fichero las
|
|
159
|
+
* monta el `FilesystemMiddleware` desde el backend, y el solo-lectura se impone con
|
|
160
|
+
* `permisosDe()`, que la librería aplica sobre las seis.
|
|
161
|
+
*
|
|
162
|
+
* Esta función se conserva porque describe la intención y la comprueban los tests. El día
|
|
163
|
+
* que se quiera OCULTAR las de escritura (en vez de denegarlas), el sitio es la opción
|
|
164
|
+
* `tools` del `FilesystemMiddleware` — y ahí `read_file` es obligatorio en la lista.
|
|
165
|
+
*/
|
|
166
|
+
export declare function toolsDe(perfil: QuienDecidePermisos): string[];
|
|
167
|
+
/** Texto de la petición de aprobación, por tool. */
|
|
168
|
+
export declare const TEXTO_HITL: Record<string, string>;
|
|
169
|
+
/**
|
|
170
|
+
* El HITL de un perfil: **sobre las tools de FICHERO**, no sobre las de MCP.
|
|
171
|
+
*
|
|
172
|
+
* Con MCP las escrituras iban a CloudStudio y el disco local estaba denegado entero; ahora
|
|
173
|
+
* las escrituras SON el mecanismo. Si esto no se mueve, la aprobación humana desaparece en
|
|
174
|
+
* silencio y la promesa de que «las escrituras se aprueban» se queda escrita y falsa.
|
|
175
|
+
*
|
|
176
|
+
* `edit` no se ofrece como decisión: no hay interfaz para editar los argumentos antes de
|
|
177
|
+
* aprobar, así que anunciarla sería mentirle al modelo.
|
|
178
|
+
*/
|
|
179
|
+
export declare function hitlDe(perfil: QuienDecidePermisos): Record<string, ConfigDeInterrupt>;
|
|
180
|
+
/**
|
|
181
|
+
* ¿Se para el turno a preguntar por ESTA escritura?
|
|
182
|
+
*
|
|
183
|
+
* El predicado `when` de `InterruptOnConfig` (leído en `langchain/agents/middleware/hitl`:
|
|
184
|
+
* «Returns `true` to interrupt or `false` to auto-approve the tool call»), y aquí existe
|
|
185
|
+
* para una sola cosa: **una escritura que el backend va a rechazar de todas formas no puede
|
|
186
|
+
* sacar un modal de aprobación.** Pasaba, y medido: pedir un artefacto en `/artifacts/`
|
|
187
|
+
* enseñaba el diff entero con Aprobar y Rechazar, y aprobarlo no escribía nada —
|
|
188
|
+
* `sinArtefactosEnElProyecto` lo rechaza después—. Un modal cuyo único final posible es un
|
|
189
|
+
* rechazo enseña a aprobar sin mirar, que es exactamente cómo se rompe la aprobación el día
|
|
190
|
+
* que importa.
|
|
191
|
+
*
|
|
192
|
+
* **Esto NO relaja la aprobación, y esa es la parte delicada.** No se salta la pregunta para
|
|
193
|
+
* escribir: se salta para NO escribir. La condición es la MISMA función que usa la guarda del
|
|
194
|
+
* backend —`artefactoFueraDeSitio`, sobre la misma cadena—, así que las dos no pueden
|
|
195
|
+
* discrepar; si discreparan, una escritura al proyecto pasaría sin que nadie la aprobara, que
|
|
196
|
+
* es el único fallo abierto posible por aquí. `perfiles.test.ts` lo ata: para cada ruta,
|
|
197
|
+
* saltarse la pregunta implica que la guarda la rechaza.
|
|
198
|
+
*
|
|
199
|
+
* Lo que pasa después es lo que se busca: la tool corre, el backend devuelve su `{error}` con
|
|
200
|
+
* la ruta buena, y el modelo reintenta en `/artefactos/`.
|
|
201
|
+
*
|
|
202
|
+
* **Y un SEGUNDO motivo, que es de coherencia y no de relajación**: tampoco se pregunta por lo
|
|
203
|
+
* que NO ES EL PROYECTO —`/artefactos/` y `/planes/`—. No es una excepción nueva: un perfil de
|
|
204
|
+
* SOLO LECTURA ya escribe esas dos rutas sin aprobación ninguna, porque `hitlDe` le devuelve
|
|
205
|
+
* `{}` y sus `permissions` lo confinan exactamente ahí. O sea que la misma ruta no se aprobaba
|
|
206
|
+
* para el analista y sí para el desarrollador, y eso no es una barrera: es una incoherencia que
|
|
207
|
+
* se paga cara — medido, el desarrollador fue a marcar como hecha una tarea de un plan, salió
|
|
208
|
+
* un modal, se rechazó, y el plan se quedó viejo en silencio. En una tarea de fondo no hay
|
|
209
|
+
* nadie que pulse, así que el plan NUNCA se marcaría.
|
|
210
|
+
*
|
|
211
|
+
* Ninguna de las dos rutas es la app del cliente: no entran en el commit del turno, no van a
|
|
212
|
+
* git y no suben a CloudStudio. Lo que sigue intacto es lo único que importa: **por un fichero
|
|
213
|
+
* del PROYECTO siempre se pregunta**, y el test lo comprueba ruta a ruta.
|
|
214
|
+
*/
|
|
215
|
+
export declare function seDetieneEn(peticion: unknown): boolean;
|
|
216
|
+
/**
|
|
217
|
+
* La forma del `interruptOn` de una tool, declarada aquí porque deepagents la reenvía tal
|
|
218
|
+
* cual a `humanInTheLoopMiddleware` sin tipar el `when` en su propia interfaz.
|
|
219
|
+
*/
|
|
220
|
+
export interface ConfigDeInterrupt {
|
|
221
|
+
allowedDecisions: string[];
|
|
222
|
+
description: string;
|
|
223
|
+
/** Ver `seDetieneEn`. */
|
|
224
|
+
when: (peticion: unknown) => boolean;
|
|
225
|
+
}
|