CLI
La línea de comandos de beeuni, su modelo de autenticación, el ciclo de desarrollo y todos los comandos.
La interfaz de línea de comandos (CLI) de beeuni controla Beeuni desde una terminal: tu portátil o un sandbox de sesión. Esta página muestra el ciclo de desarrollo diario y, después, enumera todos los comandos y las opciones estables.
Instalación
curl -fsSL https://beeuni.ai/install | bash
El instalador descarga un binario precompilado para macOS y Linux. Windows no es compatible.
| Comando | Efecto |
|---|---|
beeuni update |
Vuelve a ejecutar el script de instalación y descarga el binario más reciente. |
beeuni uninstall [-y|--yes] [--keep-auth] [--keep-home] |
Elimina el binario, el shim de /usr/local/bin y el token almacenado. --keep-auth conserva el token. --keep-home conserva ~/.beeuni. |
beeuni version |
Muestra la versión de la CLI. |
Modelo de autenticación
Beeuni almacena la autenticación por host, no globalmente. Un host es un único endpoint de la API de Beeuni. Usa cloud para conectarte a Beeuni.
El archivo de configuración se encuentra en ~/.config/beeuni/config.json, con modo 0600. Anula su ruta con BEEUNI_CONFIG_FILE.
La CLI sigue una jerarquía: host → cuenta → proyecto → sesión. Inicias sesión en un host, eliges una cuenta dentro de él, eliges un proyecto dentro de esa cuenta y abres sesiones dentro del proyecto. beeuni hosts login recorre los tres primeros pasos en orden: inicia sesión, elige la cuenta y establece un proyecto predeterminado.
Cada token comienza con beeuni_pat_. Un token de usuario, procedente de beeuni login, permite ver todas las cuentas y proyectos a los que perteneces. Un token de proyecto se genera automáticamente para un sandbox de sesión y está limitado a un proyecto. Consulta Ámbito del token.
El ciclo de desarrollo
Este ciclo presupone que la CLI está instalada y que ejecutaste beeuni login. Consulta Inicio rápido para la configuración.
Vincular un repositorio
Inicia un proyecto nuevo o vincula una carpeta de repositorio existente a uno.
Para crear la estructura de un proyecto nuevo:
beeuni init my-app
cd my-appbeeuni init crea un directorio de proyecto con el starter de propósito general. Su
beeuni.yaml declara beeuni_version: 2 y ejecuta el
harness del entorno de ejecución predeterminado.
Para vincular un repositorio clonado existente a un proyecto que ya hayas creado:
beeuni projects link <project-id>Este comando escribe .beeuni/link.json en el directorio actual. Beeuni lee este archivo para encontrar tu proyecto cada vez que ejecutas un comando desde esta carpeta. Si piensas ejecutar beeuni ship primero, omite este paso. Vincula un proyecto nuevo automáticamente si no existe ninguno.
Publicar tu código
beeuni shipbeeuni ship analiza tu beeuni.yaml, confirma los cambios locales, sube tu rama y solicita cualquier secreto o conexión que falte. Ejecútalo cada vez que quieras que tus cambios locales estén en el proyecto en la nube. La primera ejecución también crea el proyecto y el repositorio en la nube si aún no has vinculado ninguno.
Ejecutar sesiones y conectarse a ellas
Inicia una sesión con una indicación:
beeuni sessions new --prompt "Build the login page" --waitCada sesión se ejecuta en su propio sandbox y en su propia rama. --wait bloquea la ejecución hasta que la sesión está lista.
Conéctate a una sesión desde tu terminal:
beeuni connectSin un id de sesión, beeuni connect (alias: attach) abre un selector de sesiones
para el proyecto vinculado: las sesiones en ejecución se conectan de inmediato, las detenidas se inician primero y + New session inicia un sandbox nuevo. Después te lleva a la TUI completa del entorno de ejecución predeterminado conectada a esa sesión. Pasa un id para omitir el selector:
beeuni connect <session-id>.
La CLI administra el binario de opencode por ti: en la primera conexión descarga la versión exacta que ejecuta el servidor de la sesión y la almacena en caché en
~/.beeuni/opencode/<version>/, para que la TUI y el servidor nunca queden desincronizados. Establece
BEEUNI_OPENCODE_BIN para forzar el uso de tu propio binario.
Una sesión en el harness pi no tiene servidor del entorno de ejecución predeterminado.
beeuni connect termina con el código 1 en ese caso y muestra el mensaje This session's runtime does not support attaching a terminal client.
Para usar un chat basado en líneas y más ligero en lugar de la TUI completa, ejecuta:
beeuni sessions chatEsto abre un chat interactivo con tu sesión más reciente. Añade un id para dirigirte a una sesión específica: beeuni sessions chat <id>.
Para usar todo el producto desde tu terminal —la lista de sesiones, el transcript y el compositor, un shell en el sandbox y las pantallas Files, Review, Apps, Customize y Account— ejecuta el cliente de terminal experimental:
beeuni tui # or: beeuni t, or beeunit
beeunit --project <id> --new --terminal # new session + sandbox shell, one commandInicia sesión con el host en el que ya estás. Consulta la página de la TUI.
Para abrir un shell sin procesar en el sandbox, sin ningún agente involucrado, ejecuta:
beeuni sessions shellMuestra tus sesiones en ejecución en cualquier momento:
beeuni sessions lsRevisar con solicitudes de cambios
Un agente abre una solicitud de cambios (CR) cuando su sesión tiene commits listos para fusionarse. Puedes enumerarlas, inspeccionarlas y fusionarlas desde la CLI.
beeuni cr ls
beeuni cr diff 1
beeuni cr merge 1beeuni cr ls enumera las solicitudes de cambios del proyecto vinculado. beeuni cr diff <cr> muestra el parche unificado. beeuni cr merge <cr> lo fusiona en la rama predeterminada del proyecto. Acepta un número de CR o su id completo.
Referencia
Comandos de autenticación
| Comando | Efecto |
|---|---|
beeuni login [--host <name>] [--api <url>] [--token <pat>] [--account <slug>] [--no-project] |
Inicia sesión en el host activo o en el host indicado. Abre un navegador de forma predeterminada; --token inicia sesión sin interfaz. --no-project omite la selección del proyecto predeterminado. |
beeuni logout [--host <name>] |
Elimina el token del host activo o del host indicado. |
beeuni whoami [--host <name>] [--json] [--token-only] |
Muestra el usuario que ha iniciado sesión y la cuenta activa. |
beeuni token [--host <name>] |
Acceso directo a beeuni whoami --token-only. |
beeuni hosts login / hosts logout / hosts whoami son las formas canónicas. login / logout / whoami son accesos directos que actúan sobre el host activo.
Hosts
| Comando | Efecto |
|---|---|
beeuni hosts ls [--json] |
Enumera todos los hosts y su estado de autenticación. |
beeuni hosts login [<name>] [--token <pat>] [--api <url>] [--account <slug>] [--no-project] |
Inicia sesión en un host. Un nombre desconocido registra primero el host. |
beeuni hosts logout [<name>] |
Elimina el token de un host. |
beeuni hosts use <name> |
Cambia el host activo. |
beeuni hosts add <name> --url <url> [--dashboard-url <url>] [--login] |
Registra un host nuevo. --login inicia sesión justo después. |
beeuni hosts rm <name> [--force] |
Elimina un host. |
beeuni hosts info [<name>] [--json] |
Muestra los detalles de un host. |
beeuni hosts current [--json] |
Muestra el nombre del host activo. |
Una URL de host remoto que comienza con http:// se normaliza a https://. La CLI nunca envía un token mediante HTTP sin cifrar a un host remoto. localhost está exento.
Cuentas
| Comando | Efecto |
|---|---|
beeuni accounts ls [--json] |
Enumera las cuentas a las que perteneces en el host activo. |
beeuni accounts use [<slug-or-id>] |
Cambia la cuenta activa. |
beeuni accounts current [--json] |
Muestra la cuenta activa. |
beeuni accounts info [<slug-or-id>] [--json] |
Muestra una cuenta. |
Miembros
Quién pertenece a la cuenta y qué rol tiene en ella. Los roles son owner,
admin y member. Los propietarios y administradores tienen el rol Manager implícito en todos los proyectos, por lo que member es el único rol que admite permisos por proyecto.
| Comando | Efecto |
|---|---|
beeuni members ls [--json] |
Enumera los miembros, los roles y el número de proyectos. |
beeuni members invite <email> --role admin|member [--project <id>:<role>] |
Invita por correo electrónico. Un usuario existente de Beeuni se añade de inmediato; a cualquier otra persona se le envía un enlace de invitación. --project se puede repetir y se aplica al aceptar. Requiere member.invite. |
beeuni members set-role <user|email> --role owner|admin|member |
Cambia el rol de una cuenta. Requiere member.update; el rol owner es exclusivo del propietario. |
beeuni members rm <user|email> [-y|--yes] |
Elimina a un miembro y revoca sus tokens. Requiere member.remove. |
beeuni members super-admin <user|email> on|off |
Concede o revoca la omisión de superadministrador. Requiere member.super_admin.grant. |
beeuni members invites ls [--json] |
Enumera las invitaciones pendientes que enviaste. |
beeuni members invites cancel <invite-id> |
Cancela una invitación pendiente. |
beeuni members invites resend <invite-id> |
Vuelve a enviar el correo y actualiza el vencimiento de 14 días. |
Un <user> es un id de usuario o el correo electrónico de alguien que ya pertenece a la cuenta.
Opciones: --account <id>, --host <name>, --json, -y.
Grupos
Un grupo de cuentas es un conjunto de personas con nombre al que asignas un rol una sola vez. Vincula un grupo a un ámbito con beeuni access grant --group <id> --role <key>; revoca la vinculación con beeuni access revoke <assignment-id>.
| Comando | Efecto |
|---|---|
beeuni groups ls [--json] |
Enumera los grupos con la cantidad de miembros y proyectos. |
beeuni groups create <name> [--description <t>] |
Crea un grupo. |
beeuni groups set <group> [--name <n>] [--description <t>|--no-description] |
Cambia el nombre o la descripción de un grupo. |
beeuni groups rm <group> [-y|--yes] |
Elimina un grupo y todas sus concesiones. |
beeuni groups members <group> [--json] |
Enumera los miembros de un grupo. |
beeuni groups add <group> <user>... |
Añade a una o más personas. |
beeuni groups remove <group> <user> |
Quita a una persona. |
beeuni groups projects <group> [--json] |
Muestra a qué proyectos tiene acceso el grupo y con qué rol. |
Un <group> es el ID de un grupo o su nombre exacto. Para leer, se necesita group.read.
create, set y add requieren group.update o group.members.manage, además de la autorización empresarial rbac. rm y remove son operaciones de limpieza y nunca requieren autorización.
Tokens
Credenciales no interactivas de la cuenta. Para leer, se necesita token.read. Todos los miembros de la cuenta pueden crear y revocar sus propias claves personales (token.personal.create, token.personal.revoke); una clave personal actúa como tú y nunca tiene más permisos que tus propios roles. Las cuentas de servicio y las claves de otras personas requieren token.create / token.revoke (propietario y administrador).
| Comando | Efecto |
|---|---|
beeuni tokens ls [--mine] [--json] |
Enumera las claves de API personales de la cuenta. --mine limita la lista a las que creaste. |
beeuni tokens new <name> [--expires <when>] [--project <id>] |
Crea una clave. El secreto se muestra una sola vez. --project la vincula a un solo proyecto, del que nunca podrá salir. |
beeuni tokens rm <token-id> [-y|--yes] |
Revoca una clave de inmediato. |
beeuni tokens apps ls [--json] |
Enumera tus aplicaciones conectadas: las aplicaciones y los clientes MCP que aprobaste con Iniciar sesión con Beeuni, en todas tus cuentas. |
beeuni tokens apps rm <client-id> [-y|--yes] [--json] |
Revoca una aplicación conectada: sus tokens dejan de funcionar de inmediato y tendrá que volver a pedirte permiso. |
beeuni tokens service-accounts ls [--json] |
Enumera las cuentas de servicio. |
beeuni tokens service-accounts new <name> [--description <t>] [--expires <when>] |
Crea una cuenta de servicio. El token de portador se muestra una sola vez. |
beeuni tokens service-accounts disable <id> |
Desactiva una cuenta de servicio: ya no podrá autorizar; para volver a usarla, elimínala y créala de nuevo. |
beeuni tokens service-accounts rm <id> [-y|--yes] |
Elimina definitivamente una cuenta de servicio. |
Una clave de API personal actúa como tú y deja de funcionar cuando termina tu membresía. Una cuenta de servicio actúa por sí misma y no hereda ningún acceso: una cuenta nueva no tiene permisos. Asígnale permisos con beeuni access grant --service-account <id> --role <key>.
--expires <when> acepta fechas ISO-8601 o una duración relativa: 30d, 12h, 6w, 1y.
Facturación
Consulta el plan, los créditos y el gasto de la cuenta activa. Solo lectura: los cambios de plan, las recargas y los métodos de pago se gestionan desde el panel.
| Comando | Efecto |
|---|---|
beeuni billing status [--json] |
Plan, créditos, puestos y suscripción. |
beeuni billing transactions [--limit <n>] [--offset <n>] [--type <a,b>] [--json] |
Historial de créditos, del más reciente al más antiguo. Tamaño de página predeterminado: 50. |
beeuni billing transactions --summary|--breakdown|--usage [--days <n>] |
Créditos que entran y salen, desglose del saldo (con vencimiento/sin vencimiento/diarios) o resumen del uso de créditos. --days define el intervalo de --summary y --usage; predeterminado: 30. |
beeuni billing costs [--since <iso>] [--until <iso>] [--json] |
Gasto de la cuenta durante un intervalo y desglose por modelo. Intervalo predeterminado: 30 días, con [from, to) UTC como límite inicial incluido y límite final excluido. |
beeuni billing costs --by project|session [--sort <k>] [--limit <n>] [--offset <n>] [--csv <file>] |
Agrupa el gasto por proyecto o sesión. --sort acepta total_desc (predeterminado), total_asc, recent o name_asc (solo --by project). --csv requiere --by. |
Filtros: --project <id>, --session <id> y --owner <id> (sesiones, con --by session). Opciones: --account <id>, --host <name>, --json.
Proyectos
Un comando resuelve «el proyecto» en este orden:
- La opción
--project. - La variable de entorno
BEEUNI_PROJECT_ID. .beeuni/link.jsonen el directorio de trabajo exacto.- El proyecto predeterminado global establecido por
beeuni projects use.
| Comando | Efecto |
|---|---|
beeuni projects ls [--all] [--query <text>] [--json] |
Enumera los proyectos de la cuenta activa. --all incluye todas las cuentas a las que perteneces. --query (alias -q) filtra por nombre, ID o repositorio. |
beeuni projects info [<id>] [--json] |
Muestra un proyecto. Predeterminado: el proyecto vinculado o el predeterminado. |
beeuni projects use [<id>] |
Establece el proyecto predeterminado global. Cambia la cuenta activa si el proyecto pertenece a otra. |
beeuni projects unset |
Borra el proyecto predeterminado global. |
beeuni projects link [<id>] |
Vincula el directorio actual a un proyecto. Escribe .beeuni/link.json. |
beeuni projects unlink |
Elimina .beeuni/link.json. |
beeuni projects open [<id>] |
Abre la página del proyecto en el panel, en el navegador. |
beeuni projects clone [<id>] [dir] |
Clona el repositorio del proyecto a través del proxy de Git autenticado de Beeuni. |
beeuni projects rm [<id>] [-y|--yes] |
Elimina un proyecto y su repositorio de Git administrado por Beeuni. No modifica los repositorios que conectaste por tu cuenta. |
beeuni projects set [<id>] [--name <n>] [--branch <b>] [--manifest <path>] [--json] |
Actualiza la configuración de un proyecto. Solo escribe los campos que indiques. Si no indicas ninguno, sale de 2. Alias: update. |
beeuni projects set [<id>] --icon <emoji>|--no-icon|--glyph <name>:<color>|--no-glyph |
Establece o quita el icono del proyecto. |
beeuni projects rename [<id>] <name> |
Alias de beeuni projects set --name <name>. |
beeuni projects features [ls] [--json] |
Enumera todas las marcas de función con su clave, estado, origen y nivel de estabilidad. |
beeuni projects features enable|disable|reset <flag> |
Activa o desactiva la anulación del proyecto, o bórrala para que la marca siga el valor predeterminado de la plataforma. |
beeuni projects cli-tokens ls [--json] |
Enumera los tokens CLI del proyecto. |
beeuni projects cli-tokens new [--name <name>] [--expires-at <iso>] |
Crea un token CLI con alcance limitado al proyecto. El secreto se muestra una sola vez. |
beeuni projects cli-tokens rm <token-id> [-y|--yes] |
Revoca un token CLI del proyecto. |
beeuni projects upgrade [<id>] [--json] |
Inicia la sesión del agente que migra un beeuni.toml v1 a un beeuni.yaml v2 y abre una solicitud de cambio. |
Un proyecto muestra un solo icono, así que al escribir --icon se borra el glifo y al escribir --glyph se borra el emoji; si se indican ambos, se rechaza la operación. Colores de glifo: grey, red, orange, yellow, lime, blue, purple, magenta. set y features requieren project.settings.write. Si la plataforma marca una función como no disponible, permanece desactivada independientemente de la anulación del proyecto.
Un token CLI de proyecto está vinculado a un solo proyecto: la API lo rechaza en cualquier otro. Un entorno aislado de sesión usa su BEEUNI_TOKEN vinculado a la sesión. cli-tokens ls requiere permiso de lectura del proyecto; new y rm requieren project.credentials.issue. Un token vinculado a una sesión no puede crear ni revocar tokens de proyecto (403), tanto si el proyecto declara agentes como si no. Un token CLI de proyecto sigue la política de PAT de la cuenta: si la cuenta exige una fecha de vencimiento, indica --expires-at; si la fecha supera la duración máxima, se devuelve 400.
beeuni projects upgrade requiere permiso de escritura en el proyecto. El agente predeterminado actualiza la base del marketplace, reescribe el manifiesto, ejecuta beeuni validate y abre una solicitud de cambio. Nunca la fusiona: una persona revisa las diferencias.
Estructura inicial del proyecto
beeuni init [project-name] [options] crea un directorio de proyecto nuevo. La plantilla inicial escribe un beeuni.yaml v2, agents/, skills/, memory/ y harnesses/opencode/. El comando puede configurar el descubrimiento de herramientas de programación locales sin cambiar el entorno de ejecución predeterminado en la nube. El comando no escribe .beeuni/link.json. beeuni ship o beeuni projects link crean ese archivo.
| Opción | Significado |
|---|---|
--name <project> |
Nombre del proyecto. |
--primary <agent> |
Agente principal. |
--agents <csv> |
Integraciones con agentes de programación locales que se configurarán. |
--force |
Configura el directorio actual en lugar de crear uno nuevo. |
--overwrite |
Sobrescribe los archivos existentes. |
--no-git |
Omite la inicialización de Git. |
-y, --yes |
No solicita confirmación. |
La selección de herramientas de programación locales no cambia el entorno de ejecución predeterminado en la nube.
beeuni init no incluye un selector de marketplace. Añadir una habilidad del marketplace es una importación del agente: inicia una sesión y pídele al agente que la importe.
Publicar
beeuni ship prepara, confirma y sube la rama actual al repositorio Git del proyecto. Ejecútalo una vez para crear el proyecto. Vuelve a ejecutarlo cuando quieras sincronizarlo. Alias: beeuni deploy.
Cada ejecución:
- Ejecuta las comprobaciones de
beeuni validate:beeuni.yamlse combina con cada archivo que enumera enimports:, los Dockerfiles del sandbox, la configuración del agente y el tamaño del repositorio (se omite con--no-verify). Un error detiene la publicación. Una advertencia nunca lo hace. - Confirma cualquier árbol de trabajo con cambios (se omite con
--no-commit). - Solicita cualquier secreto
envque falte (se omite con--no-env). - Envía la rama actual a la rama remota con el mismo nombre.
- Conecta cualquier conector declarado que aún necesite autenticación (se omite con
--no-connect).
Un origin existente de GitHub se vincula mediante la GitHub App de Beeuni. Cualquier otro origin existente se registra tal cual. Si no existe origin, se crea un repositorio git administrado por Beeuni.
| Opción | Efecto |
|---|---|
--name <project> |
Nombre visible de un proyecto nuevo. |
--account <id|slug> |
Cuenta bajo la que se creará el proyecto (solo en la primera publicación). |
--origin <managed|git-url> |
Anula la elección de origen inferida. |
--github-token <pat> |
Vincula un origen de GitHub con este token en lugar de la GitHub App. |
-m, --message <text> |
Mensaje de confirmación. |
--no-commit / --no-verify / --no-env / --no-connect |
Omite ese paso. |
-y, --yes |
No solicita confirmación. |
-n, --dry-run |
Muestra lo que ocurriría; no cambia nada. |
--project <id> / --host <name> |
Usa un proyecto o host que no sea el predeterminado. |
Apps
Apps aloja sitios estáticos, servidores, tareas y bases de datos. Cada App tiene una URL estable. Una versión contiene código y configuración; un despliegue fallido no sustituye la versión activa.
beeuni apps list
beeuni apps show main
beeuni apps connect main
beeuni apps launch --template convex --slug main
beeuni apps deploy dist --type static --spa
beeuni apps machines main
beeuni apps volumes main
Conecta Apps mediante uses y los ejemplos de beeuni apps connect. No incluyas credenciales administrativas en el código cliente.
Los recursos activos consumen créditos de la cuenta. Consulta Billing y Usage. Apps no tiene un presupuesto mensual separado.
Sesiones
Cada sesión se ejecuta en un sandbox en su propia rama.
| Comando | Efecto |
|---|---|
beeuni sessions ls [--mine|--shared|--automated] [--search <q>] [--label <label>]... [--json] |
Lista las sesiones. --label se puede repetir; una sesión debe tener todas las etiquetas indicadas. Aparece una columna ETIQUETAS si alguna sesión de la lista tiene etiquetas. |
beeuni sessions status [--all] [--json] |
Muestra todas las sesiones y lo que está haciendo su agente en este momento. Alias: overview, ps. |
beeuni sessions info <id> [--json] |
Vista detallada: estado, rama, agente, URL del sandbox. |
beeuni sessions new [--prompt "<text>"] [--agent <name>] [--model <id>] [--wait] [--connect] [--json] |
Inicia una sesión. --connect conecta la TUI del entorno de ejecución predeterminado cuando está lista (implica --wait); si no se usa en una terminal interactiva, la CLI pregunta si se quiere conectar después de crearla. --model <id> reemplaza el modelo predeterminado del proyecto; un modelo que funciona con una clave de API o una suscripción a ChatGPT usa todas las claves que puedas usar para él y las alterna. --wait espera hasta que esté en ejecución (hasta ~5 minutos). Usa --secret <id> o --no-secrets para limitar el acceso a Secret. Estos indicadores de Secret requieren un token de backend. Usa --connector <alias>=<authorization-id> o --no-connectors para configurar el acceso a Connector. Usa --require-connector <alias> para exigir autorización antes de aprovisionar. Los indicadores de ámbito se pueden repetir. Usa --context <key>=<value> para contexto de ejecución que no sea secreto. --label <label> (repetible) clasifica la sesión; --meta <key>=<value> (repetible) almacena una cadena en sus metadatos. |
beeuni sessions chat [<id>] [--prompt "<text>"] [--queue | --steer] [--new] [--agent <name>] [--json] |
Habla con el agente de una sesión. Es interactivo de forma predeterminada. Alias: talk. También funciona beeuni chat de nivel superior. --queue solo se puede usar una vez: guarda la instrucción en la bandeja de entrada persistente de la sesión y vuelve en cuanto se almacena, en lugar de enviarla al entorno de ejecución. --steer la guarda del mismo modo, y el turno en curso la lee en el siguiente paso sin detenerse. Si no hay ningún turno en curso, inicia uno. Una sesión que no permite dirigirla la ejecuta como --queue. |
beeuni sessions connect [<id>] [-- <opencode args>] |
Conecta la TUI del entorno de ejecución predeterminado al servidor del entorno de ejecución predeterminado de la sesión. También está disponible en el nivel superior: beeuni connect / beeuni attach. Si no se indica un id, abre un selector de sesiones (en ejecución, detenida con opción de reinicio o nueva). La CLI descarga automáticamente el binario de opencode correspondiente a la versión (caché: ~/.beeuni/opencode/<version>/; reemplazo: BEEUNI_OPENCODE_BIN). Una sesión de pi no tiene servidor de opencode: el comando termina con 1 y, en su lugar, indica beeuni sessions shell y beeuni sessions chat. |
beeuni tui [--host <name>] [--project <id>] [--session <id>] [--new] [--agent <name>] [--terminal] [--no-sidebar] [--mouse] [--install] [--uninstall] |
Experimental. Abre el cliente de terminal de Beeuni: sesiones, transcripción, compositor, shell del sandbox, Files, Review, Apps, Customize y Account. Alias: beeuni t y beeunit. --new crea una sesión en el proyecto al iniciar (--agent elige el agente), --terminal abre el shell del sandbox con el foco puesto en él, --no-sidebar inicia sin la barra lateral (Alt+B la muestra u oculta), --mouse permite que la aplicación controle el ratón (desactivado de forma predeterminada para que sigan funcionando la selección, la copia y los clics en enlaces de la terminal). La TUI es un binario independiente de ~80 MB; la primera vez pregunta y luego instala beeuni-tui, la versión correspondiente, en ~/.beeuni/tui/<version>/; las actualizaciones posteriores de la CLI lo actualizan sin preguntar y reutilizan el binario si no ha cambiado. --install lo hace sin preguntar; --uninstall lo elimina. Usa el host activo, a menos que --host indique otro; si no hay ninguna sesión iniciada en un host, abre su propia pantalla de inicio de sesión. ? muestra todas las combinaciones de teclas. Consulta /docs/cli#sessions. |
beeuni sessions shell [<id>] [--new] |
Abre una terminal interactiva sin procesar en el sandbox, sin agente. Se vuelve a conectar a la terminal existente de la sesión; --new siempre inicia una nueva. Alias: terminal, ssh. |
beeuni sessions shell <id> ls [--json] |
Muestra las terminales de la sesión: id, estado, comando. No requiere TTY. |
beeuni sessions shell <id> kill <pty-id> |
Termina una terminal. El shell del entorno se vuelve a iniciar en la siguiente conexión; todo lo que se esté ejecutando dentro no. |
beeuni sessions forward <id> --port <sandbox>[:<local>] |
Reenvía un puerto del sandbox a tu equipo, como en VS Code, para que puedas abrir en tu navegador http://localhost:3000 que haya mostrado un agente. --port se puede repetir; si no se indica un puerto local, se usa el mismo número si está libre o el siguiente disponible; :0 solicita un puerto efímero asignado por el sistema operativo. Reenvía tanto HTTP como WebSocket (funciona la recarga en caliente del servidor de desarrollo). Muestra una línea ⇄ localhost:N → sandbox:M por cada reenvío y permanece en primer plano hasta que se pulsa Ctrl+C. No inicia una sesión detenida: en su lugar, muestra la solución beeuni sessions restart. Alias: ports. |
beeuni sessions log [<id>] [--limit <n>] [--json] |
Muestra los mensajes recientes, en modo de solo lectura. Si la sesión está en ejecución, los lee en directo; si está detenida, los lee de la transcripción guardada al final de cada turno, así que nunca la activa solo para leerla. El origen se indica en stderr, por lo que la salida de --json no cambia. Alias: messages, history. |
beeuni sessions attachments <id> [--download <attachment-id>|--all] [--out <dir>] [--json] |
Muestra y descarga los archivos guardados de una sesión: los que adjuntaron los usuarios y las copias de los archivos que mostró el agente. Funciona aunque la sesión esté detenida: ni la lista ni los datos necesitan su sandbox. Las descargas nunca sobrescriben archivos; si el nombre ya existe, se convierte en name (1).ext. |
beeuni sessions pending <id> [--json] |
Muestra las solicitudes abiertas de permisos de herramientas o preguntas. Alias: prompts. |
beeuni sessions approve <id> [<req-id>] [--always] [--reject] [--message "<text>"] |
Responde a una solicitud de permisos. |
beeuni sessions answer <id> [<req-id>] [--option <v>]... [--text "<text>"] [--reject] |
Responde a una solicitud de pregunta. |
beeuni sessions digest [--since <7d>] [--json] |
Revisión compacta de varias sesiones. La transcripción de una sesión detenida proviene de la copia guardada y se marca como saved (y como partial si esa copia no llega hasta el primer mensaje). Alias: review, summary. |
beeuni sessions scope <id> [scope options] [--json] |
Lee o reemplaza el acceso a Secret y Connector. Alias: access. Usa --secret <id>, --no-secrets o --inherit-secrets para Secrets. Usa --connector <alias>=<authorization-id> o --no-connectors para las vinculaciones de Connector. Usa --require-connector <alias> o --no-required-connectors para los Connectors obligatorios. Las categorías proporcionadas reemplazan sus valores actuales. Las categorías omitidas no cambian. Los cambios se aplican a la siguiente instrucción. Los valores de Secret eliminados permanecen en el contexto existente si la sesión ya los había leído. |
beeuni sessions preview <id> [port] [--port <n>] [--list] [--json] |
Muestra una URL de vista previa en la que se puede hacer clic para un puerto del sandbox. Puerto predeterminado: 3000. --list muestra en su lugar los candidatos con nombre. |
beeuni sessions restart <id> |
Reinicia el sandbox de la sesión. |
beeuni sessions rename <id> <name> |
Establece el nombre de una sesión. Pasa "" para borrarlo. |
beeuni sessions update [<id>] [--label <l>]... [--unlabel <l>]... [--clear-labels] [--meta <key>=<value>]... [--unmeta <key>]... [--json] |
Cambia las etiquetas y los metadatos de una sesión. --label agrega, --unlabel elimina, --clear-labels vacía primero la lista; --meta establece una clave de cadena, --unmeta elimina una clave. Si no se indica un id, actualiza $BEEUNI_SESSION_ID, para que un agente etiquete la sesión en la que se está ejecutando. Alias: label. |
beeuni sessions rm <id>... |
Detiene y elimina una o más sesiones. |
beeuni sessions open <id> |
Abre en el navegador la página del panel de una sesión. |
beeuni sessions stop <id> [--json] |
Pausa una sesión. El sandbox se detiene donde está y se conserva el disco. Alias: pause. Requiere project.session.stop. |
beeuni sessions start <id> [--wait] [--json] |
Activa una sesión: aprovisiona un sandbox si falta, reanuda uno detenido y resuelve su entorno de ejecución. Es idempotente. Alias: wake. --wait espera hasta que esté lista (hasta ~5 min) y termina con 1 si la sesión acaba en estado fallido o detenido. |
beeuni sessions warm [--exclude <id>] [--json] |
Crea por adelantado la sesión que vas a usar, para que el sandbox ya esté listo. Reutiliza una sesión activa existente que no se esté usando. Una sesión activa permanece oculta de sessions ls hasta su primera instrucción. |
beeuni sessions model <id> <model-id> [--json] |
Cambia el modelo que ejecuta una sesión, a mitad de la sesión. Si el sandbox está activo, se redirige al nuevo modelo y se reinicia su entorno de ejecución, lo que termina el turno actual; si la sesión está detenida, guarda el valor para el siguiente inicio. Si no hay claves seleccionadas para el proveedor del nuevo modelo, la sesión obtiene todas las claves que puedas usar allí. |
beeuni sessions compact <id> [--json] |
Resume la conversación hasta ahora y continúa a partir del resumen. Una sesión cuyo entorno de ejecución no incluya session.compact termina con 1 como motivo. |
beeuni sessions queue <id> [ls] [--json] |
Muestra las solicitudes que siguen esperando en la bandeja de entrada persistente de la sesión. |
beeuni sessions queue <id> rm <prompt-id> |
Elimina una solicitud de la cola. Se rechaza (409) cuando un paso del modelo ya ha empezado a responderla. |
beeuni sessions queue <id> now <prompt-id> |
Ejecuta a continuación una solicitud en cola: vuelve a ponerla al principio de la cola, por delante del orden establecido, y libera la retención de la sesión. |
beeuni sessions queue <id> hold|release |
Retén todas las solicitudes en cola —lo que hace el botón Stop— o libera la retención. |
beeuni sessions approvals <id> [ls] [--json] |
Muestra las llamadas a conectores sujetas a aprobación por las que esta sesión espera la intervención de una persona. |
beeuni sessions approvals <id> approve|deny <execution-id> |
Permite que se ejecute una llamada a conector sujeta a aprobación, o recházala. Se informa al agente, que continúa sin ella. |
beeuni sessions files <id> <subcommand> [--json] |
Lee y edita el espacio de trabajo activo del entorno aislado: ls [<path>], status, find <query>, write <path>, touch <path>, mkdir <path>, mv <from> <to>, rm <path>. |
beeuni sessions share <id> [--mode private|project|members] [--member <id|email>] [--group <id>] [--show] [--json] |
Establece quién dentro de Beeuni puede abrir esta sesión. Sin --mode, muestra el ajuste actual y no cambia nada. --member y --group se pueden repetir. |
beeuni sessions links <id> ls [--json] |
Muestra todos los enlaces públicos creados para la sesión, del más reciente al más antiguo. |
beeuni sessions links <id> create [options] |
Crea un enlace público sin autenticación para un puerto de vista previa o un archivo del espacio de trabajo. |
beeuni sessions links <id> revoke <share-id> |
Invalida un enlace público. |
sessions queue requiere project.session.start —el mismo permiso que enviar
un mensaje. Una solicitud en cola persiste aunque se cierre el terminal y se entrega cuando la sesión puede recibirla. Añade una con
beeuni sessions chat <id> -p "…" --queue o dirige el turno en curso con
--steer. sessions queue ls muestra el DELIVERY de cada solicitud (steer,
queue o interrupt) y, si una solicitud de dirección se ejecuta como queue, el
motivo: unsupported (la sesión no puede recibir mensajes durante un turno),
not_prompter (hay otro turno de un miembro en curso) o turn_ended.
sessions approvals son persistentes: a diferencia de sessions pending, sobreviven al
reinicio del entorno aislado. Se necesita project.members.manage o ser la persona que
inició la sesión. Un agente nunca puede resolver su propia aprobación.
sessions attachments lee el almacén privado de archivos de la sesión, no su
espacio de trabajo. Los archivos se guardan ahí al enviarlos, y todos los archivos que mostró el agente se guardan ahí al final del turno.
sessions files lee el árbol de trabajo que el agente está editando en este momento, antes
de confirmar cualquier cambio; beeuni files lee el repositorio confirmado. Las rutas
se resuelven dentro de /workspace, salvo que empiecen por /workspace, /tmp,
/home o /opt. El comando activa el entorno aislado si está inactivo. Opciones:
--from <local path> (write lee este archivo en lugar de stdin), --content
(find busca en el contenido con ripgrep en vez de en los nombres de archivo), --limit <N>
(find límite de archivos) y -y para omitir la confirmación de rm.
sessions share se rige por el propietario: la API rechaza a un gestor del proyecto que
no pueda leer ya la sesión. Una sesión compartida solo se ejecuta con claves de proveedor compartidas con todo el proyecto: un modelo que se ejecutaba con tus propias claves pasa a usar las claves del proyecto para ese proveedor; si no hay ninguna clave que permita ejecutarlo, se rechaza la solicitud de compartir (409 SHARED_SESSION_NEEDS_PROJECT_KEY).
Opciones de sessions links create: --port <n> (valor predeterminado 3000; se rechazan 22, 8000
y los puertos de opencode), --path <p> (valor predeterminado /),
--preview <id> (un candidato con nombre —web, vite, dev-server, api-docs—
en lugar de --port/--path), --file <path> (comparte un archivo del espacio de trabajo
en lugar de una vista previa; siempre de solo lectura), --mode view\|interactive (valor predeterminado view;
interactive permite escrituras y websockets, y se ignora para --file),
--label <text> y --expires <iso>. Para crear un enlace se necesita ser propietario de la sesión,
porque el enlace no requiere iniciar sesión; para mostrar la lista y revocar enlaces también se acepta a un gestor del proyecto.
Dentro de un entorno aislado, BEEUNI_SESSION_ID es el id de tu propia sesión.
Solicitudes de cambio
Una solicitud de cambio (CR) fusiona una rama con otra en cualquier host de git. Es la única forma de que un agente incorpore el trabajo de una sesión a la rama predeterminada. Consulta Solicitudes de cambio.
| Comando | Efecto |
|---|---|
beeuni cr ls [--status open|merged|closed|all] [--project <id>] |
Muestra las CR. Valor predeterminado: --status open. |
beeuni cr show <cr> [--project <id>] |
Muestra una CR, incluida su vista previa de fusión. Alias: info. |
beeuni cr diff <cr> [--no-color] [--json] |
Muestra el diff unificado de una CR. |
beeuni cr open --title "<text>" [--description "<text>"] [--head <ref>] [--session <id>] [--base <ref>] |
Abre una CR. Alias: new, create. Dentro de un entorno aislado, --head y --session se establecen automáticamente de forma predeterminada. --base usa de forma predeterminada la rama predeterminada del proyecto. |
beeuni cr merge <cr> [--message "<text>"] |
Fusiona una CR abierta. Hace un avance rápido cuando es posible; de lo contrario, una fusión de tres vías. |
beeuni cr close <cr> |
Cierra una CR abierta sin fusionarla. |
beeuni cr reopen <cr> |
Vuelve a abrir una CR cerrada. Las CR fusionadas son definitivas. |
beeuni cr merge-preview <cr> [--json] |
Indica si se puede fusionar la CR y enumera todas las rutas en conflicto. Alias: preview. |
beeuni cr request-changes <cr> --message "<text>" |
Pide al agente que abrió la CR que la revise. Alias: changes. |
beeuni cr version-diff --from <ver> --into <ver> [--json] |
Resume una versión comparándola con otra antes de abrir una CR. |
request-changes registra la nota en la CR y la envía a la sesión de origen, activando su entorno aislado si está inactivo. Requiere project.review.act —el mismo permiso específico que usa el Centro de revisión, no gitops.push.
<cr> acepta un número de proyecto (3) o el id completo. Dentro de un entorno aislado, la CLI lee automáticamente el token; no hace falta iniciar sesión ni usar un enlace.
Revisión
La bandeja de revisión del proyecto contiene todo lo que espera una decisión humana: solicitudes de cambio, llamadas a herramientas de conectores cuya política exige aprobación y resultados, decisiones y lotes que los agentes envían para su aprobación. Es el equivalente del Centro de revisión del panel. Está habilitada para todos los proyectos; project.review.read y
project.review.act controlan la lectura y la gestión.
| Comando | Efecto |
|---|---|
beeuni review ls [--segment <s>] [--kind <k>] [--json] |
Muestra los elementos de la bandeja. De forma predeterminada: todos los segmentos. |
beeuni review show <item-id> [--json] |
Muestra todos los detalles de un elemento. |
beeuni review act <item-id> <verdict> [--message <text>] |
Decide sobre un elemento. --message incluye la nota. |
beeuni review bulk <verdict> <id> [<id> …] |
Decide sobre varios elementos nativos en una llamada. |
beeuni review submit --kind <k> --title <t> [options] |
Envía un resultado, una decisión o un lote para revisión. |
Veredictos: approve, reject, changes, answer, dismiss. Segmentos:
needs_you, waiting, done. Tipos: change, approval, output,
decision, batch.
El efecto de un veredicto depende del id del elemento. Para cr:<id>, approve fusiona
el cambio, reject lo cierra y changes devuelve la nota al agente
que lo abrió (se requiere --message). Para call:<id>, approve permite que se ejecute la llamada a la herramienta y reject la rechaza; una aprobación de conector no admite ningún otro veredicto: consulta primero sus argumentos con beeuni review show. Cualquier otro id se envía al endpoint de acción nativa, que admite todos los veredictos.
bulk solo actúa sobre ids nativos. Tanto las aprobaciones de conectores, que requieren revisar sus parámetros, como las solicitudes de cambio, que requieren ver su diff, se notifican y se omiten; es la misma regla que aplica la selección múltiple del panel.
Opciones de submit: --kind output\|decision\|batch (obligatorio), --title <text>
(obligatorio), --summary <text>, --risk none\|low\|medium\|high (valor predeterminado:
none), --detail <json> (un objeto JSON), --agent <name> y
--session <id> (se ignora si no corresponde a una sesión de este proyecto).
Para leer se requiere project.review.read; para emitir veredictos, project.review.act; y
submit requiere project.review.submit.
Secretos
Valores cifrados almacenados en el proyecto. De forma predeterminada, al iniciar, un secreto se inyecta como variable de entorno de texto sin formato en cada entorno aislado de sesión (exposición mediante el entorno). La entrega con aplicación de políticas —en la que el entorno aislado conserva un identificador y Beeuni sustituye el valor real fuera de él (exposición controlada en la salida y beeuni secrets call)— es experimental. Activa la marca de función secrets_egress (Settings → Feature flags) para usarla; con la marca desactivada, beeuni secrets delivery … egress devuelve 403 feature_disabled. Consulta Secrets.
| Comando | Efecto |
|---|---|
beeuni secrets ls |
Enumera los secretos por identificador y especificación del manifiesto env, e indica quién puede usar cada valor. Marca los valores obligatorios que faltan. |
beeuni secrets set NAME=VALUE ... [--identifier <id>] [--scope runtime|connector] [--only-me] |
Crea o actualiza uno o más secretos. NAME=- lee el valor desde stdin. --scope connector conserva el valor en el servidor para la pasarela del conector. --only-me hace que solo tú puedas usar el nuevo valor. |
beeuni secrets share IDENTIFIER --user <email|id|me> --group <id> --agent <name> | --everyone |
Establece quién puede usar el valor. Las personas acceden directamente o en sus propias sesiones privadas; un agente, en todas sus sesiones, incluidos los activadores. Consulta Who can use a secret. |
beeuni secrets request NAME ... [--scope runtime|connector] [--expires <min>] |
Crea un enlace para que una persona introduzca un valor que no tienes. |
beeuni secrets unset NAME ... |
Elimina secretos. |
beeuni secrets grant IDENTIFIER --agent <name> |
Permite que un agente reciba este secreto: combina el identificador con la lista secrets de ese agente en beeuni.yaml, y añade la entrada del agente si el manifiesto la omite. |
grant soluciona los casos en que ls informa que no se puede entregar un secreto. Solo amplía la lista de un agente; para reducirla o sustituirla, vuelve a escribir el conjunto completo con beeuni agents scope. There is no secrets revoke: la API no tiene ninguna ruta para eliminar un identificador concreto de una concesión. La primera concesión en un proyecto sin agentes inicia la gobernanza: desde entonces, los agentes que no figuren en el manifiesto no reciben secretos del proyecto, y el comando lo indica cuando sucede.
Env
| Comando | Efecto |
|---|---|
beeuni env pull [--out <path>] [--force] |
Escribe una plantilla .env, solo con los nombres. Los valores nunca salen de la nube. |
beeuni env push --from <path> |
Carga cada NAME=VALUE de un archivo dotenv como secreto. |
Agents
Configuración del modelo de cada agente en el proyecto vinculado.
| Comando | Efecto |
|---|---|
beeuni agents ls [--json] |
Muestra el modelo fijado de cada agente y el predeterminado de reserva. Alias: models. |
beeuni agents model <agent> <provider/model> |
Fija un modelo para un agente. |
beeuni agents model <agent> --clear |
Quita la fijación: el agente vuelve a seguir el modelo predeterminado. |
beeuni agents default <agent> |
Establece este agente como el predeterminado del proyecto. |
beeuni agents default --show [--json] |
Muestra el agente predeterminado actual. |
beeuni agents scope <agent> [--secrets all|none|A,B] [--connectors all|none|a,b] [--apps all|none|a,b] [--require-connector <slug>] |
Sustituye los secretos, conectores y Beeuni Apps que puede usar el agente. --apps acepta slugs de Apps y requiere un beeuni.yaml v2; el agente también necesita project.app.read. --require-connector se puede repetir y debe resolverse antes de que empiece una sesión. |
beeuni agents scope <agent> --show [--json] |
Muestra el ámbito actual del agente. |
beeuni agents config <agent> [--json] |
Muestra el bloque de configuración completo del agente. |
beeuni agents config <agent> --file <path> |
Sustituye el bloque por el contenido de un archivo JSON. - lee stdin. |
beeuni agents config <agent> --set <key>=<value> ... |
Cambia claves individuales con notación de puntos y las combina con la configuración existente. Se puede repetir; por ejemplo: behavior.model=glm-5.3-flash, enabled=false, connectors=["slack"]. |
Cada opción de ámbito sustituye el valor; ninguna lo combina. Un valor --set se interpreta como JSON si se puede analizar; de lo contrario, se conserva como cadena. Las fijaciones de modelo y scope se aplican al instante, sin confirmación de beeuni.yaml; default y config confirman los cambios en beeuni.yaml de la rama predeterminada del proyecto. scope requiere project.agent.write, al igual que default y config.
Tools
Las herramientas que reciben las sesiones de este proyecto, leídas desde el archivo local beeuni.yaml y sus imports. Ejecuta el comando desde la raíz del proyecto. Consulta Tools.
| Comando | Efecto |
|---|---|
beeuni tools ls [--json] |
Enumera las herramientas que reciben las sesiones: nombre, tipo (beeuni, beeuni (overridden), project) y origen (beeuni:<name> o la ruta del módulo). También enumera las herramientas de Beeuni que se han quitado del proyecto. --json muestra { manifest, tools_key, tools, removed }. |
beeuni tools eject <name> [--force] |
Copia la herramienta de Beeuni <name> en tools/<name>.ts y establece tools.<name>: tools/<name>.ts en beeuni.yaml, en el archivo donde se declara. La línea modificada termina con # ejected from beeuni:<name>; el resto de los comentarios se conserva. Si no hay una clave tools:, también enumera las otras cuatro herramientas de Beeuni, por lo que la extracción no elimina ninguna. Se niega a continuar si existe tools/<name>.ts o si la herramienta ya apunta a otro módulo, a menos que se indique --force. Se niega a aceptar un nombre que no corresponda a una herramienta de Beeuni. |
Si no hay una clave tools:, todas las sesiones reciben las cinco herramientas de Beeuni (web_search,
image_search, scrape_webpage, memory, show). Si hay una clave tools:, las sesiones reciben solo las herramientas de Beeuni que esta enumera. Para quitar una herramienta de Beeuni, elimina su línea debajo de tools: y luego ejecuta beeuni validate. Para limitar las herramientas de un agente, usa agents.<name>.tools. Códigos de salida: 0 completado; 1 rechazado (existe un archivo, un manifiesto o una importación no se puede analizar); 2 no hay manifiesto, opción desconocida o el nombre no corresponde a una herramienta de Beeuni.
Models
Qué modelos ofrece el proyecto y cuál usa inicialmente. La misma interfaz que Customize → Models en el panel. El proyecto solo guarda las excepciones al valor predeterminado del catálogo (el modelo más reciente de cada familia). La habilitación solo afecta a lo que se muestra: determina las opciones que ofrecen los selectores, nunca lo que ofrece la pasarela.
| Comando | Efecto |
|---|---|
beeuni models ls [--json] |
Enumera todos los modelos que puedes ejecutar: estado, origen, cómo se pagan (VIA: Beeuni, clave de API o ChatGPT —propio, compartido contigo o compartido con el proyecto) y proveedor. |
beeuni models enable <model-id>... |
Ofrece estos modelos. |
beeuni models disable <model-id>... |
Deja de ofrecerlos. Si se trata del modelo predeterminado del proyecto, el comando se niega con 409; cambia primero el modelo predeterminado. |
beeuni models reset |
Elimina todas las excepciones y vuelve al valor predeterminado del catálogo. |
beeuni models default [--json] |
Muestra la cadena de valores predeterminados (proyecto → cuenta → plataforma) y el valor al que se resuelve. |
beeuni models default <model-id> [--account] |
Establece el valor predeterminado del proyecto o, con --account, el de toda la cuenta. |
beeuni models default --clear [--account] |
Borra el valor predeterminado del proyecto o de la cuenta. |
Los ID de modelo son ID de protocolo de la pasarela: un ID gestionado sin prefijo (glm-5.3-flash) o un provider/model de BYOK. Copia uno de beeuni models ls --json. Las fijaciones por agente se configuran en beeuni agents model <agent> <model-id>. Para escribir se necesita project.model.write.
Channels
Administra la conexión del proyecto a una plataforma de chat. Los tokens se almacenan cifrados en los secretos del proyecto y se resuelven en el servidor; nunca se inyectan en el entorno aislado.
| Comando | Efecto |
|---|---|
beeuni channels status [--json] |
Muestra la conexión actual. |
beeuni channels connect [--wait] [--timeout <sec>] |
Conecta en un solo paso: muestra un enlace de instalación. --wait comprueba repetidamente hasta que se completa la instalación. |
beeuni channels connect --manual [--bot-token <token>] [--signing-secret <secret>] |
Modo de aplicación propia: guarda directamente un token de bot y un secreto de firma. |
beeuni channels disconnect [--platform slack|teams] |
Elimina la conexión del proyecto: la de Slack o, con --platform teams, la de Teams. |
beeuni channels manifest |
Muestra el JSON del manifiesto de la aplicación para el modo de aplicación propia. |
beeuni channels email status [--json] |
Bandeja de entrada y modo de entrega de un conector de correo electrónico. |
beeuni channels email connect [options] |
Crea una bandeja de entrada gestionada o conecta una existente de AgentMail. |
beeuni channels email disconnect |
Elimina la conexión de la bandeja de entrada. |
beeuni channels email policy [--allow <email|@domain>] [--allow-regex <re>] [--allow-all] |
Sustituye la lista de quienes pueden enviar correos al agente. |
beeuni channels bindings [ls] [--json] |
Enumera todos los canales vinculados y el agente, el modelo y la política de unión que les corresponden. |
beeuni channels bind <bindingId> [--agent <name>|--no-agent] [--model <id>|--no-model] [--policy <p>] |
Cambia un vínculo. --policy acepta owner_approval, owner_only o project_open. |
--platform slack|teams selecciona la plataforma; valor predeterminado: slack. Teams
connect imprime la URL de consentimiento de administrador de Microsoft; otorgar el consentimiento para todo el tenant
publica automáticamente la aplicación en el catálogo de Teams. Consulta Conectores.
El canal de correo electrónico usa AgentMail y necesita la marca de función agentmail_email. email connect opciones: --connector <slug> (valor predeterminado beeuni_email),
--api-key <k> (usa tu propia clave de AgentMail; - lee de stdin),
--display-name <n> (nombre del remitente en los correos salientes; por defecto, el nombre del proyecto),
--username <u> y --domain <d> (una bandeja de entrada administrada nueva), y
--inbox-id <id> con --email <addr> (adjunta una bandeja de entrada existente; ambas son
necesarias juntas). --allow se puede repetir y pone la política en modo restringido; un valor sin @, o uno con un @ inicial, se interpreta como un dominio.
--allow-all borra la lista y vuelve a aceptar a cualquier remitente.
Las escrituras de correo electrónico y bind necesitan project.connector.write.
Conectores
Conectores que un agente invoca como herramientas. add, rm y policy set editan el beeuni.yaml local; ejecuta beeuni ship para aplicarlo, a menos que pases --apply para cambiar inmediatamente el proyecto en la nube.
| Comando | Efecto |
|---|---|
beeuni connectors ls [--json] |
Enumera los conectores y su estado. |
beeuni connectors show <slug> [--json] |
Muestra las herramientas de un conector. |
beeuni connectors add <slug> --provider <p> [options] [--apply] |
Agrega un conector. |
beeuni connectors rm <slug> [--apply] |
Elimina un conector. |
beeuni connectors rename <slug> <name> |
Establece el nombre visible de un conector. |
beeuni connectors sync |
Reconcilia el catálogo a partir de beeuni.yaml incluido. |
beeuni connectors credential <slug> [value] |
Establece la credencial de un conector. |
beeuni connectors connect <slug> |
Inicia un flujo de conexión con un clic. |
beeuni connectors link <slug> [--expires <min>] |
Genera un enlace de conexión compartible para una persona. |
beeuni connectors types [--connector <a,b>] [--out <file>] |
Escribe tipos de TypeScript para cada acción invocable: un archivo declare module '@beeuni/sdk' que tipa los argumentos connectors.callAction(slug, action, args) y output. Los conectores administrados no publican ningún esquema de salida, por lo que su resultado es unknown. Sin --out, imprime en stdout. |
beeuni connectors accounts <slug> [--default <label|id>] [--json] |
Enumera las cuentas con las que pueden ejecutarse tus llamadas, junto con la identidad con la que está conectada cada una. --default fija una. |
beeuni connectors connections ls [--all] [--json] |
Enumera las conexiones con etiqueta, CONNECTED AS, propietario, WHO CAN USE (owner only, everyone o las etiquetas de concesión, con (not you) cuando la enumeras solo para administrarla), estado y valor predeterminado. |
beeuni connectors connections rename <id> <label…> |
Cambia el nombre de una conexión. Solo cambia la etiqueta; no requiere volver a autorizar. |
beeuni connectors connections share <id> [--group <id>]… [--user <email|id>]… [--everyone] |
Comparte tu propia cuenta privada: se convierte en una cuenta compartida que solo ellos pueden usar (--everyone: todo el proyecto). Necesita el permiso para administrar las conexiones del proyecto. |
beeuni connectors apps [<query>] [--category <c>] [--cursor <c>] [--limit <n>] [--json] |
Busca en el catálogo de herramientas administradas los slugs que acepta add --provider composio --app <slug>. Alias: beeuni connectors toolkits. Agrega --pipedream para el catálogo heredado. |
beeuni connectors catalog [<query>] [--cursor <c>] [--json] |
Explora el catálogo de conectores directos. Necesita la marca connectors_api_discover. |
beeuni connectors catalog show <id> [--json] |
Muestra las superficies de un registro del catálogo. |
beeuni connectors sensitive <slug> on|off |
Protege también las lecturas de este conector: cada llamada necesitará aprobación. Se aplica ahora. |
beeuni connectors owner <slug> project|user |
Quién autoriza: una conexión del proyecto o la conexión propia de cada miembro. Se aplica ahora. |
beeuni connectors authorize <slug> [--status] [--scope "<a b>"] [--client-id <id>] [--client-secret <s>] [--success-redirect <url>] [--error-redirect <url>] [--json] |
Configura OAuth 2.1 para un conector de extremo a extremo: descubre los metadatos de autorización del servidor, registra Beeuni como cliente (RFC 7591) cuando el servidor lo admite e imprime la URL para aprobar. --status informa del resultado en su lugar. |
beeuni connectors authorize <slug> --device |
Lo mismo, usando el flujo de dispositivo de OAuth 2.0 (RFC 8628): imprime un código y una URL, y luego consulta periódicamente hasta que se aprueba, se rechaza o caduca. |
beeuni connectors policy ls [--json] |
Muestra la política de ejecución de todo el proyecto. Alias: show. |
beeuni connectors policy set --default <risk|allow_all> [--apply] |
Establece el modo de ejecución predeterminado en beeuni.yaml. --apply lo establece en vivo en su lugar. |
beeuni connectors policy add <match> <allow|ask|block> [--condition <k=v>] |
Agrega una regla para todo el proyecto. Se aplica ahora. --condition la limita a un argumento coincidente y se puede repetir; k!=v la niega, y k es una ruta de puntos dentro de los argumentos de la llamada. |
beeuni connectors policy rm <match> |
Elimina una regla para todo el proyecto. Se aplica ahora. |
beeuni connectors policy <slug> ls|set <match> <allow|ask|block>|rm <match>|clear |
Administra las reglas de llamadas a herramientas de un conector. |
policy ls, show, set, add y rm son la superficie de todo el proyecto, por lo que un conector cuyo nombre coincida con uno de esos verbos debe abordarse como policy <slug> ls. Un <match> es un nombre de herramienta, un glob (send_*) o un /regex/.
Opciones de add: --name <label>, --provider <pipedream\|mcp\|openapi\|postman\|graphql\|http>, --app <slug>, --url <url>, --transport <http\|sse>, --endpoint <url>, --base-url <url>, --spec <url\|path>, --auth-type <none\|bearer\|basic\|custom>, --credential shared.
Sandboxes
Administra las imágenes de sandbox del proyecto. Una plantilla define una imagen o un Dockerfile, además de los recursos; una compilación produce la instantánea desde la que se inician las sesiones.
| Comando | Efecto |
|---|---|
beeuni sandboxes ls [--json] |
Enumera las plantillas y el estado actual del proveedor. |
beeuni sandboxes builds [--json] |
Muestra el registro de compilación reciente. |
beeuni sandboxes health [--json] |
Muestra la disponibilidad de la plantilla principal. |
beeuni sandboxes add <slug> (--image <i>|--dockerfile <p>) [options] |
Crea una plantilla personalizada e inicia una compilación. |
beeuni sandboxes update <slug> [options] |
Actualiza una plantilla. |
beeuni sandboxes build <slug> |
Activa una recompilación. |
beeuni sandboxes rebuild <slug> |
Fuerza la recompilación: elimina primero la instantánea existente. |
beeuni sandboxes rm <slug> |
Elimina una plantilla. |
beeuni sandboxes fix |
Inicia una sesión con el registro de la última compilación fallida para repararla. |
beeuni sandboxes provider [--json] |
Muestra el proveedor fijado para el sandbox del proyecto y qué proveedores ofrece este host. |
beeuni sandboxes provider <name> [--timeout <sec>] |
Fija cada sesión nueva a un proveedor. Cuando el destino necesita que se compile primero su instantánea, la API responde con una preparación y el comando la sigue hasta completarla. Valor predeterminado de --timeout: 600 s. |
beeuni sandboxes provider --clear |
Elimina la fijación y sigue el valor predeterminado de la plataforma. Alias: --unpin. |
beeuni sandboxes provider status [--json] |
Muestra la transición más reciente del proveedor y su historial. Alias: transition. |
Fijar un proveedor necesita project.settings.write.
Opciones de add/update: --name <label>, --cpu <n>, --memory <n> (GiB), --disk <n> (GiB).
Backends
Las bases de datos son Apps con volúmenes persistentes. Adminístralas y conéctalas mediante Apps.
Marketplace
Explora el marketplace de Beeuni e instala un elemento en un proyecto.
| Comando | Efecto |
|---|---|
beeuni marketplace search [query] |
Busca elementos del marketplace. |
beeuni marketplace list |
Muestra los elementos del marketplace. |
beeuni marketplace show <id-or-name> |
Muestra un elemento del marketplace. |
beeuni marketplace install <id-or-name> |
Inicia una sesión de agente que importa el elemento. |
Opciones: --query <text>, --type <type>, --source <source>, --host <name>, --project <id>, --json.
La instalación la gestiona un agente: inicia una sesión de proyecto que clona el elemento, lo lee, integra lo que encaja y abre una solicitud de cambio. No hay un mecanismo determinista para instalar, actualizar o eliminar.
Habilidades del sistema
Las habilidades del sistema de Beeuni son la referencia operativa de la plataforma, tanto para las personas como para los agentes. Abarcan sesiones, entornos aislados, el entorno de ejecución predeterminado, conectores, memoria y canales. Esta página pública es el punto de entrada; la CLI autenticada obtiene las habilidades del host en ejecución. Usa beeuni system-skills list para descubrir las habilidades disponibles y, luego, get la que necesites. La API las sirve en tiempo real, por lo que coinciden con la versión implementada en el host. No consideres actualizada una copia local.
| Comando | Efecto |
|---|---|
beeuni system-skills list |
Muestra las habilidades del sistema de Beeuni. Subcomando predeterminado. |
beeuni system-skills get <name> [--full] |
Muestra el SKILL.md actual de una habilidad. --full añade los archivos a los que hace referencia. |
beeuni system-skills path [name] |
Muestra el directorio de una habilidad en el disco dentro de este proyecto. |
Opciones: --host <name>, --json.
beeuni skills es un alias permanente para el mismo comando. Inicia sesión primero en el host con beeuni login; la API de habilidades requiere autenticación. Usa --host <name> cuando trabajes con otro host. Una página pública de documentación no puede sustituir estas instrucciones actualizadas y específicas del host.
Esta lista siempre contiene las habilidades del sistema, nunca una combinación. Las habilidades opcionales están en el marketplace: beeuni marketplace list --type skill. Para la sintaxis de los comandos, usa beeuni <command> --help; para consultar la referencia completa de la plataforma, lee beeuni system-skills get beeuni-system --full.
Conector
La interfaz del agente en el entorno aislado con todos los conectores. Cada llamada se valida, resuelve y audita en el servidor; la CLI nunca almacena credenciales de terceros. Autenticación: BEEUNI_TOKEN. La salida es JSON.
| Comando | Efecto |
|---|---|
beeuni connectors discover "<intent>" |
Busca herramientas por intención expresada en lenguaje natural. |
beeuni connectors show <connector>.<action> |
Muestra el esquema de entrada de una acción. |
beeuni connectors call <connector>.<action> '<json-args>' |
Ejecuta una herramienta. Una llamada sujeta a aprobación devuelve de inmediato su approval_url autenticado. El servidor reanuda la sesión después de una decisión de aprobación o rechazo. Pasa los argumentos grandes mediante @file.json o - (entrada estándar). |
beeuni connectors call <connector>.<action> '<json-args>' --reason "<text>" |
Describe qué hace la llamada para la persona que la aprueba cuando una política la retiene. La tarjeta de aprobación muestra esta descripción del agente junto a los argumentos. |
beeuni connectors call <connector>.<action> @args.json --attach <file> |
Prepara un archivo y añade su referencia a la matriz de adjuntos de la acción. La puerta de enlace escribe los bytes en el elemento de adjunto del proveedor. Se puede repetir --attach; --attach-path <a.b.c> indica el nombre de la matriz. Consulta Adjuntar archivos. |
beeuni connectors call <connector>.<action> '<json-args>' --out <file> |
Escribe el resultado JSON completo en <file> y muestra solo un resumen: saved_to, bytes y shape (claves, longitudes de matrices, pageInfo). Consulta Resultados grandes. |
beeuni connectors upload <file> --connector <slug> |
Prepara un archivo. Muestra ref, {"$beeuni_attachment":"<id>"}, para incluirlos en los argumentos de la llamada. |
beeuni connectors add <slug> --provider pipedream --app <app> |
Añade un conector de inmediato y luego lo conecta. |
beeuni connectors rm <slug> |
Elimina un conector del proyecto. |
beeuni connectors connect <slug> [--owner me|project] [--label <name>] |
Genera un enlace de conexión para una persona. --label sugiere un nombre para una cuenta nueva, por ejemplo, una segunda cuenta de Gmail. |
Archivos
Vista de solo lectura del repositorio git del proyecto. Opera en la rama predeterminada, salvo que --ref especifique otra rama, etiqueta o confirmación.
| Comando | Efecto |
|---|---|
beeuni files ls [<path>] |
Enumera recursivamente los archivos de una ruta. La lista se detiene en 1.000 archivos y lo indica; acótala con una ruta o usa files search. |
beeuni files cat <path> |
Imprime el contenido de un archivo. |
beeuni files search <query> [--content] |
Busca nombres de archivo o contenido de archivos con --content. |
beeuni files history <path> |
Historial de confirmaciones de un archivo. |
beeuni files branches |
Enumera las ramas. |
beeuni files commits [--path <p>] |
Enumera las confirmaciones de --ref. |
beeuni files show <sha> |
Muestra una confirmación y sus archivos modificados. |
beeuni files diff <sha> [--path <p>] |
Imprime el parche unificado de una confirmación. |
beeuni files compare <from> <into> |
Resume la diferencia entre dos referencias. |
beeuni files download -o <out.zip> |
Descarga el repositorio, o el subárbol --path, en --ref como zip. Alias: archive. |
Opciones en todos los subcomandos: --ref <ref>, --path <p>, --limit <n>, --json.
download también acepta -o, --out <file>, que es obligatorio.
Todos los subcomandos necesitan project.file.read. download además rechaza cualquier
subárbol que incluyera un agente o una habilidad fuera del ámbito asignado; un zip
no se puede filtrar durante la transmisión, así que en ese caso archiva un --path más específico.
Activadores
Un activador inicia una sesión a partir de una programación, un webhook, un evento de aplicación o un monitor (experimental). add, rm, enable, disable editan el manifiesto local; ejecuta beeuni ship para aplicarlo. pause/resume cambian un interruptor independiente del lado del servidor. Consulta Activadores.
| Comando | Efecto |
|---|---|
beeuni triggers ls [--json] |
Enumera los activadores y su estado de ejecución. |
beeuni triggers add <slug> [options] [--apply] |
Añade un activador al manifiesto. --apply lo crea en el proyecto en la nube inmediatamente: lo confirma en beeuni.yaml en main y lo reconcilia. |
beeuni triggers set <slug> [options] |
Cambia un activador activo. Solo se escriben las opciones que pases. Siempre se aplica de inmediato; no existe una forma local. Alias: update. |
beeuni triggers rm <slug> [--apply] |
Elimina un activador de beeuni.yaml o del proyecto en la nube inmediatamente con --apply. |
beeuni triggers info <slug> [--json] |
Muestra un activador. |
beeuni triggers events --connector <slug> [--json] |
Enumera los eventos que ofrece un conector, con la configuración de cada evento. |
beeuni triggers fire <slug> |
Activa manualmente un activador y espera el resultado de la ejecución: una ejecución fallida termina con un código distinto de cero y su error, y la sesión nueva de la ejecución activada se limpia (una ejecución puesta en cola en una sesión existente permanece allí). --wait <dur> limita la espera (predeterminado 90s; 0 devuelve el control en cuanto se acepta la activación). |
beeuni triggers enable <slug> [--apply] / disable <slug> [--apply] |
Activa o desactiva un activador. |
beeuni triggers pause / resume |
Desactiva o reactiva todos los activadores del proyecto en el lado del servidor. |
Opciones de add: --type <cron\|webhook\|event\|monitor> (predeterminado cron), --prompt <text> (obligatorio), --agent <name>, --cron <expr> (de 6 campos, p. ej., "0 0 9 * * 1-5"), --run-at <iso> (se ejecuta una vez en este instante en lugar de mediante cron), --timezone <tz> (UTC de forma predeterminada), --secret-env <NAME>, --name <label>, --disabled.
Opciones solo activas — válidas en add --apply y en cada set: --model <provider/model>, --session-mode <fresh\|keyed\|pinned\|reuse>, --session-key <tmpl> (agrupa una sesión por clave, p. ej., "{{ body.data.chat_jid }}"; implica keyed), --session-id <id> (la sesión en bucle de un activador pinned; debe ser la sesión de este proyecto), --session-access <private\|project\|members> (predeterminado private), --member <uuid> y --group <uuid> (repetibles; cada uno implica members), y --filter <path=value> (repetible; todos deben coincidir, p. ej., --filter body.type=push).
set acepta todas las opciones solo activas, además de --name, --prompt, --cron, --run-at, --timezone, --secret-env, --agent y --enabled true|false. --cron y --run-at son exclusivas: establecer una borra la otra. Los campos del monitor solo permiten adiciones.
Recordatorios
Un recordatorio vuelve a solicitar algo en una sesión posterior, una vez o repetidamente. Se almacena en la base de datos, no en beeuni.yaml. Dentro de una sesión, --session tiene $BEEUNI_SESSION_ID como valor predeterminado. Consulta Recordatorios.
| Comando | Efecto |
|---|---|
beeuni remind "<text>" [schedule] |
Crea un recordatorio. Igual que beeuni reminders add. |
beeuni reminders add "<text>" [schedule] |
Crea un recordatorio. Imprime su identificador y la próxima activación. |
beeuni reminders ls [--json] |
Enumera los recordatorios de la sesión. |
beeuni reminders pause <id> / resume <id> |
Desactiva o activa un recordatorio. resume lo vuelve a activar desde ahora. |
beeuni reminders rm <id> |
Elimina un recordatorio. Alias: stop, delete. |
Opciones de programación: --in <duration> o --at <iso> (primera activación; por sí sola, se activa una vez), --every <duration> (repetición, mín. 5m), --cron "<expr>" con --timezone <tz>. Otras opciones: --name <label>, --session <id> (se acepta un prefijo único), --project <id>, --host <name>, --json.
Opciones de evento (--type event): --connector <slug> y --event <TYPE> (ambas obligatorias), --config key=value (repetible, valores de cadena) y --config-json '{...}' (valores tipados). set acepta las mismas opciones. Un activador de evento rechaza --cron, --run-at, --timezone, --secret-env y las opciones de monitor. El mensaje se lee en {{ event.data.<field> }}; consulta Activadores de eventos de aplicación.
Opciones de monitor (--type monitor): --run <cmd> (comando relativo al repositorio que se supervisará; obligatorio), --mode <poll\|stream> (obligatorio; poll vuelve a ejecutarse en --interval, stream mantiene activo el comando), --interval <dur> (solo mode=poll, mínimo 30 s, p. ej., 60s, 5m) y --expect-event-within <dur> (supervisor de silencio; si no hay ningún evento dentro del intervalo, activa un evento de ciclo de vida en su lugar, mínimo 5 min, p. ej., 24h). Un monitor es un comando del repositorio que la plataforma ejecuta las 24 horas, y cada línea de stdout activa el activador. Es experimental: la plataforma solo ejecuta monitores donde está activado el indicador de función monitors.
Acceso
La interfaz de CLI de la tabla de concesiones única. Cada fila es una asignación: un principal, un rol y un ámbito, opcionalmente limitado a un objeto. Consulta Cuentas y acceso para conocer el modelo. Roles de cuenta: owner, admin, member. Roles de proyecto: manager, member.
| Comando | Efecto |
|---|---|
beeuni access assignments [--project <id>|--account|--all] [--json] |
Enumera las asignaciones de un proyecto, de la cuenta o de todas partes. |
beeuni access grant --user <id|email>|--group <id>|--service-account <id> --role <key|id> [opts] |
Crea una asignación. Imprime su identificador. |
beeuni access revoke <assignment-id> |
Revoca una asignación. |
Opciones de concesión: --project <id> (predeterminado: el proyecto vinculado), --account (toda la cuenta), --agent <name> (limita la concesión a un agente; una asignación de objeto), --connection <id> (limita el uso de una cuenta de conector compartida; la primera concesión limita la cuenta a sus beneficiarios, y revocar la última vuelve a abrirla a todo el proyecto), --everyone (concede acceso a todos los que tienen acceso al proyecto; contiene un --agent o un --connection, nunca un rol) y --expires <iso> (marca de tiempo de revocación automática). --principal filtra una lista y acepta user:<id>, group:<id>, service_account:<id>, project:<id> o pending:<email>; un identificador sin más se interpreta como un usuario. Una concesión para todos aparece como everyone. La identidad de un agente es un service_account, por lo que --service-account <id> es la forma de asignar un rol a un agente. --user acepta un correo electrónico y lo busca en el directorio de miembros de la cuenta.
beeuni access grant --user alice@corp.com --role manager
beeuni access grant --user alice@corp.com --role admin --account
beeuni access grant --group 8f3c… --role member --project 1a2b…
beeuni access grant --user alice@corp.com --agent support-bot
beeuni access grant --everyone --agent support-bot
beeuni access grant --group 8f3c… --connection 2b7e…
beeuni access revoke 4d5e…
Los verbos de miembros del proyecto son un modelo de lectura sobre las mismas asignaciones:
| Comando | Efecto |
|---|---|
beeuni access ls [--json] |
Enumera las personas con acceso al proyecto, su rol de cuenta y su rol efectivo en el proyecto. |
beeuni access invite <email> --role <r> |
Invita a alguien al proyecto. Crea una asignación pending. |
beeuni access grant <user-id> --role <r> |
Establece el rol de proyecto de un usuario. |
beeuni access revoke <user-id> |
Retira el acceso al proyecto de un usuario. |
beeuni access pending [--json] |
Enumera las invitaciones pendientes. |
beeuni access resend <invite-id> |
Reenvía el correo de invitación y renueva su vencimiento por 14 días. También muestra el enlace. |
beeuni access cancel <invite-id> |
Cancela una invitación pendiente. |
beeuni access requests ls [--json] |
Enumera las solicitudes pendientes de personas que quieren unirse a este proyecto. |
beeuni access requests approve <req-id> [--role <r>] |
Aprueba una solicitud y concede el rol de proyecto. Rol predeterminado: member. |
beeuni access requests reject <req-id> |
Rechaza una solicitud. Alias: deny. |
Todos los verbos de los dos bloques anteriores requieren project.members.manage.
Una persona, un grupo o un agente obtiene roles de Beeuni; además, un agente
lleva permisos de Beeuni en beeuni.yaml, y una sesión solo puede hacer lo que ambos
permiten. Consulta Un vocabulario, dos vinculaciones.
Auditoría
Los comandos de auditoría leen el registro centralizado de reconstrucción. Las listas de cuentas y proyectos aparecen primero con los elementos más recientes. La cronología de una sesión sigue el orden de creación
(session_sequence solo se establece en las filas escritas antes de 2026-10, que aparecen
primero). --all sigue cada cursor de continuación. ls muestra los últimos 90 días; export retrocede 365 días, y los eventos de más de 90 días provienen del archivo (consulta Retención de auditorías). La tabla muestra
el título de cada fila (EVENT, por ejemplo, «Clave de pasarela LLM revocada») junto a su
ACTION (gateway.key.revoke); --action filtra por prefijo de acción. Todas las
acciones y títulos: Acciones del registro de auditoría.
| Comando | Efecto |
|---|---|
beeuni audit ls [filters] [--all] [--json] |
Enumera los eventos de la cuenta. |
beeuni audit project <project-id> [filters] [--all] [--json] |
Enumera los eventos de un proyecto. |
beeuni audit session <session-id> --project <project-id> [--all] [--json] |
Reconstruye una sesión en orden. |
beeuni audit export [filters] --format csv|jsonl --out <file> |
Reanuda cada página de exportación en un solo archivo. |
beeuni audit webhooks ls [--json] |
Enumera los webhooks de auditoría de la cuenta. |
beeuni audit webhooks add --name <n> --url <u> [--action-prefix <p>] |
Crea uno. El secreto de firma se muestra una sola vez y se envía inmediatamente una entrega de prueba. --action-prefix entrega solo las acciones con ese prefijo. |
beeuni audit webhooks enable <webhook-id> |
Reanuda la entrega. |
beeuni audit webhooks disable <webhook-id> |
Pausa la entrega y conserva el punto de conexión. |
beeuni audit webhooks rm <webhook-id> |
Elimina un webhook de forma permanente. |
Los webhooks de auditoría transmiten el registro a un SIEM. Todos los verbos requieren account.write;
add y enable también requieren el derecho de uso empresarial. disable y rm
nunca lo requieren.
Filtros: --actor, --actor-type, --project, --session, --source,
--phase, --outcome, --action, --resource-type, --request-id,
--correlation-id, --query, --since, --until, --cursor y --limit.
Las listas y exportaciones de cuentas requieren audit.read y el derecho de uso auditAccess
de la cuenta. Las listas de todo el proyecto requieren project.members.manage porque pueden
incluir metadatos de sesiones privadas. La reconstrucción de sesiones requiere
project.session.read y visibilidad de esa sesión.
Roles
Un rol es un conjunto de permisos con nombre. Los roles del sistema (owner, admin, member
en el ámbito de la cuenta; manager, member en el ámbito del proyecto; además de agent-user, el
marcador que lleva una asignación de objeto) son referencias de solo lectura. Puedes crear y editar roles personalizados, que requieren el derecho de uso empresarial rbac.
| Comando | Efecto |
|---|---|
beeuni roles ls [--json] |
Enumera los roles del sistema y los personalizados. |
beeuni roles show <role> [--json] |
Muestra los permisos y el uso de un rol. |
beeuni roles permissions <role> [--json] |
Enumera los permisos de un rol. |
beeuni roles create <key> --name <n> [options] |
Crea un rol personalizado. |
beeuni roles edit <role> [--name <n>] [--desc <t>|--no-desc] |
Cambia el nombre o la descripción de un rol personalizado. Su clave no cambia. Requiere role.update y no permite modificar un rol del sistema. |
beeuni roles set-actions <role> --actions a,b |
Reemplaza los permisos de un rol personalizado. |
beeuni roles rm <role> |
Elimina un rol personalizado. |
beeuni roles export [--project <id>] [--out <file>] [--format toml|json] |
Vuelca los roles y las asignaciones en un archivo. |
beeuni roles import <file> |
Aplica un archivo de roles y asignaciones. |
Vincula un rol a un principal con beeuni access grant. Los verbos anteriores beeuni roles assign / unassign / assignments siguen funcionando y escriben en la misma tabla,
pero beeuni access es la forma documentada. beeuni roles actions fue reemplazado
por beeuni permissions ls.
Un rol personalizado solo agrega permisos. Beeuni no tiene reglas de denegación, así que un rol no puede retener permisos de un administrador.
Permisos
El catálogo de permisos, como datos. Una fila por acción de nivel inferior, con el ámbito en el que se decide, si se puede delegar y qué implica. Los roles se crean a partir de estas claves: beeuni roles create --actions y beeuni roles set-actions aceptan
exactamente estas claves. Alias: beeuni perms.
| Comando | Efecto |
|---|---|
beeuni permissions ls [--scope account|project] [--area <a>] [--json] |
Enumera el catálogo. |
beeuni permissions show <action> [--json] |
Muestra toda la información de una acción. |
Concesiones
Asigna un objeto del proyecto a un principal: una asignación de objeto. Los secretos y conectores residen en los agentes, así que asignar un agente a una persona le concede todo lo que ese agente declara. De forma predeterminada, el acceso a un agente está cerrado: un miembro solo puede acceder a él cuando una asignación lo incluye a él o a uno de sus grupos. beeuni access grant --agent <name> escribe la misma fila.
| Comando | Efecto |
|---|---|
beeuni grants ls [--json] |
Enumera las asignaciones de objetos y los agentes que se pueden asignar. |
beeuni grants assign <agent-name> --to <who> [--group] |
Asigna un agente a un usuario o a un grupo con --group. |
beeuni grants revoke <grant-id> |
Revoca una asignación de objeto. |
Validación del manifiesto
| Comando | Efecto |
|---|---|
beeuni validate [--file <path>] [--json] [--scopes] [--no-dockerfile-lint] |
Valida el manifiesto según el esquema canónico, comprueba con lint todos los Dockerfile de sandbox y la configuración de los agentes, y verifica el tamaño del repositorio. Resuelve primero beeuni.yaml y luego beeuni.toml. Códigos de salida: 0 válido (puede haber advertencias), 1 errores, 2 falta el archivo. beeuni ship ejecuta las mismas comprobaciones. |
beeuni schema [--version 1|2] [--url] |
Imprime el esquema JSON del manifiesto. --url imprime la URL del esquema. |
Consulta Referencia del manifiesto.
Tamaño del repositorio
Una sesión crea su configuración del agente a partir de todos los archivos que Git sigue en la confirmación base. Una sesión nueva obtiene esos archivos de su propia copia de trabajo, sin importar el tamaño. Una sesión en ejecución incorpora los cambios de la rama base mediante la instantánea del proyecto, que Beeuni Cloud compila hasta 512 MiB comprimidos; por encima de ese límite, la sesión conserva la configuración que está usando hasta que se inicia una sesión nueva. Además, todas las sesiones descargan todos los archivos. beeuni validate cuenta los archivos almacenados por Git, además de los archivos sin seguimiento que beeuni ship incluirá en la próxima confirmación, y muestra una advertencia si un archivo pesa 10 MiB o más, o si el total supera los 512 MiB. Un archivo de Git LFS cuenta como su puntero, porque la versión solo contiene el puntero. La advertencia indica cuáles son los archivos más grandes. Nunca hace que falle el comando.
Para eliminar la advertencia:
- Traslada los recursos estáticos grandes (vídeos, imágenes, conjuntos de datos, pesos de modelos) a un almacenamiento de objetos como S3, R2 o GCS, o a una CDN, y descárgalos en tiempo de ejecución.
- Añade el resultado de la compilación (
dist/,out/) a.gitignore. - Para las rutas que deban permanecer en Git pero que ningún agente lea, añade
<path> export-ignorea.gitattributes. La versión las omite, al igual que esta comprobación; una regla para un directorio abarca todo lo que contiene. El directorio de configuración del agente ybeeuni.yamlsiempre se incluyen completos.
Ámbito del token
Cada token empieza con beeuni_pat_. Un token de usuario tiene alcance en todos los proyectos de tus cuentas. Un token de proyecto tiene alcance en un solo proyecto y se inyecta automáticamente en los entornos aislados de ese proyecto. Consulta la referencia completa de familias de tokens en Entorno de ejecución de sesión.
Códigos de salida
| Código | Significado |
|---|---|
0 |
Éxito. |
1 |
La operación falló. Los diagnósticos se imprimen en stderr. |
2 |
Indicador incorrecto, subcomando desconocido o falta un argumento obligatorio. |