Agentes de equipo
Un agente en tu portátil actúa por ti, y tú apruebas sus cambios. Un agente de guardia a las 3 de la madrugada, un bot de despliegue en CI o una comprobación programada no tienen a nadie delante del teclado. Con bssh Teams, un agente así tiene su propia identidad en el equipo, aplica una política firmada por un administrador, y sus cambios los aprueban los administradores del equipo desde sus propias máquinas.
Cómo encaja todo
Sección titulada «Cómo encaja todo»- Una identidad de agente es un miembro del equipo de tipo
agent, creado por un administrador. Tiene su propia clave de dispositivo, ocupa un puesto como cualquier miembro y no puede escribir en la bóveda del equipo. - Una política firmada lo acompaña. La firma un administrador, y la pasarela rechaza una política que no esté firmada por un administrador o que sea más antigua que una ya vista, así que el servidor no puede cambiar lo que un agente puede hacer.
- La pasarela,
bssh ai serve, se ejecuta en una máquina que controlas: un bastión, una VM de operaciones, el host de tus runners de CI. Los agentes se conectan a ella por MCP sobre HTTP. No guarda claves de larga duración para ellos y contrasta cada llamada con la política firmada. - Las aprobaciones se retransmiten. Una solicitud se cifra para los dispositivos de los administradores y la firma el dispositivo del agente. El servidor la transmite sin poder leerla.
Crear un agente
Sección titulada «Crear un agente»-
En la máquina de un administrador, escribe la política que aplicará el agente, en
ai.policies(consulta Políticas), y crea el agente:bssh teams agent add platform oncall --policy oncallEl agente ocupa un puesto. bssh firma la política y escribe la credencial del agente en
~/.config/bayesian-ssh/environments/default/ai/agents/platform.oncall.json, legible solo por ti. -
Copia ese archivo al mismo sitio en la máquina de la pasarela, con modo 0600, y guarda allí los hosts que puede usar el agente, como lo harías para ti (
bssh add, o una fuente de inventario). -
Inicia la pasarela:
bssh ai serve --agent platform/oncallEscucha en
127.0.0.1:8765por defecto. Para llegar a ella desde otro sitio, ponla detrás de un proxy inverso con TLS, o pasa--listencon--allow-remote. -
Da un token al agente:
bssh ai token platform/oncall --ttl 1hLos tokens van firmados, limitados a un agente y su política, y duran 24 horas como máximo. El agente se conecta a
http://127.0.0.1:8765/mcpy envíaAuthorization: Bearer <token>.
Aprobar desde cualquier sitio
Sección titulada «Aprobar desde cualquier sitio»Cuando el agente pregunta, cada administrador del equipo ve la solicitud desde su propia máquina:
bssh teams agent pending platformbssh teams agent approve platform <solicitud> --reason "diff revisado"bssh teams agent deny platform <solicitud> --reason "después de la versión"En los hosts etiquetados en approval.two_person de la política, un cambio solo se ejecuta después de que lo aprueben dos administradores distintos. El mismo administrador aprobando dos veces cuenta una sola vez. Una solicitud sin respuesta se deniega al caducar.
Cambiar o retirar un agente
Sección titulada «Cambiar o retirar un agente»bssh teams agent list platformbssh teams agent policy platform oncall --policy oncall # firmar una política actualizadabssh teams agent remove platform oncall # libera el puestoLa pasarela comprueba cada minuto que el agente sigue en el equipo y rechaza toda llamada en cuanto se retira. Una versión nueva de la política se aplica al reiniciar la pasarela.
Lo que ve el equipo, y lo que ve el servidor
Sección titulada «Lo que ve el equipo, y lo que ve el servidor»Las llamadas, decisiones, aprobaciones y cambios del agente se suman al registro de auditoría firmado del equipo, junto a las sesiones de los miembros, con el agente como actor. Los administradores ven quién aprobó qué y verifican el registro en su propia máquina con bssh teams audit.
El servidor ve que el agente X hizo una llamada en el momento T, y quién la aprobó. Nunca ve el comando, el host, la salida ni la política: todo eso se cifra para el equipo antes de salir de la pasarela.