Ciele

CLI de Ciele

Gestiona Ciele desde un terminal o mediante una tarea automatizada.

El comando ciele utiliza las mismas operaciones de la API que la consola de administración. La CLI es compatible con el servicio alojado y con las instalaciones autoalojadas.

Requisitos

Instalación

Compila e instala el paquete autónomo a partir de una copia local del repositorio:

pnpm --dir packages/cli pack --pack-destination ./dist
npm install --global ./packages/cli/dist/ciele-cli-*.tgz
ciele help

El archivo tarball incluye sus dependencias de tiempo de ejecución. El comando instalado ya no necesita el repositorio.

Una vez que @ciele/cli se publica en npm, npm install --global @ciele/cli instala el mismo artefacto.

Los colaboradores también pueden ejecutar node packages/cli/bin/ciele.mjs sin instalarlo.

Inicia sesión

Para el servicio alojado, ejecuta:

ciele login --key "$CIELE_API_KEY"
ciele whoami

Para una instalación autoalojada, añade su origen público:

ciele login \
  --key "$CIELE_API_KEY" \
  --base-url "https://ciele.example.edu"
ciele doctor

El comando login valida la clave antes de escribir ~/.ciele/config.json. En los sistemas compatibles, el modo de archivo es 0600.

La CLI resuelve una clave en este orden:

  1. La opción --api-key.
  2. La variable de entorno CIELE_API_KEY.
  3. El archivo de configuración guardado.

La CLI utiliza el mismo orden para --base-url, CIELE_BASE_URL y el origen guardado. El origen alojado es el valor predeterminado final.

Usa la salida de la automatización

Añade --json a un comando para obtener una salida legible por máquina.

Exit codeSignificado
0La operación se ha completado.
1El servidor ha devuelto un error.
2La entrada del comando no es válida.
3Ha fallado la autenticación.

ciele doctor verifica el descubrimiento de la API, la compatibilidad de la API, la clave, su Role y su Organization.

Comandos del asistente y de conocimiento

ciele assistants list --all
ciele assistants update <assistant-id> --file assistant-patch.json
ciele flows list <assistant-id>
ciele flows update <flow-id> --file flow-patch.json
ciele collections list <assistant-id>
ciele sources add-file <collection-id> --file handbook.pdf --assistants <assistant-id>
ciele sources get <source-id>
ciele publish status <assistant-id>

Cada comando que añade conocimiento necesita --assistants. Una Collection no tiene propietario, por lo que estos enlaces son lo único que pone el conocimiento al alcance de un Assistant. Los comandos son sources add-text, sources add-url, sources add-file, faqs add y faqs import.

Añadir conocimiento sin una Collection

Un nuevo asistente no tiene ninguna colección, porque la lista de colecciones solo muestra las colecciones que contienen sus fuentes. En ese caso, usa sources add-org. Coloca el Source en la Knowledge Library de la Organization.

ciele sources add-org --url https://example.com/help --assistants <assistant-id>
ciele sources add-org --file handbook.pdf --assistants <assistant-id>
ciele sources add-org --text "Opening hours are 09:00 to 17:00." --assistants <assistant-id>

Proporciona uno de --url, --file o --text. El comando necesita --assistants por el mismo motivo que los demás comandos add.

Enlaces de fuentes

Una Source responde por los Assistants vinculados a ella. Estos comandos leen y modifican los enlaces.

ciele sources list-org
ciele sources link <source-id> --assistants <assistant-id>,<assistant-id>
ciele sources direct-access <source-id> on --assistant <assistant-id>

sources list-org enumera todas las Sources que posee la Organization, en todos los Assistants.

sources link sustituye el conjunto de enlaces. Una lista vacía elimina todas las vinculaciones, y la Source deja de responder.

sources direct-access decide si ese Asistente concreto puede entregar el archivo original a un Visitante.

Busca en la base de conocimientos

knowledge search muestra los pasajes que coinciden con una pregunta, junto con el Document y el Source de cada pasaje. No genera ninguna respuesta.

ciele knowledge search "How do I connect Salesforce?"
ciele knowledge search "How do I connect Salesforce?" --assistant <assistant-id>
ciele knowledge search "How do I connect Salesforce?" --json

Con --assistant, la búsqueda utiliza únicamente las Sources vinculadas a ese Assistant. Sin ella, la búsqueda utiliza la Biblioteca completa. --json muestra los resultados con su clasificación, puntuación e ID.

Pregúntale a un asistente

assistants ask envía una pregunta a un Asistente publicado. El comando muestra la respuesta, las Sources que cita la respuesta y el ID de la Conversation.

ciele assistants ask <assistant-id> "How do I connect Salesforce?"
ciele assistants ask <assistant-id> "And ServiceNow?" --conversation <conversation-id>

Usa --conversation con el ID de una respuesta anterior para continuar esa Conversation. Solo la clave API que inició una Conversation puede continuarla. Con un ID diferente, la pregunta inicia una nueva Conversation.

Cada pregunta utiliza un turno del modelo y crea una Conversation. La bandeja de entrada lo muestra con la etiqueta API key cuando estableces el filtro Staff conversations en Include staff o Staff only. El comando finaliza con un código de error cuando el asistente no ha podido responder.

Comandos de Flow

Descubre qué puede contener un Flow

ciele flows catalog muestra los desencadenantes, las acciones y los tipos de condiciones de esta implementación de Ciele. También muestra qué acciones permite cada desencadenante. Léelo antes de escribir un archivo Flow. El servidor rechaza un trigger, una action o un tipo de condition que no figure en la lista.

La implementación da esta respuesta, no la CLI. Una CLI más antigua frente a una versión más reciente de Ciele muestra las nuevas listas.

ciele flows catalog

Comprueba un Flow antes de guardarlo

flows draft comprueba un cambio en un Flow. flows validate comprueba un Flow completo. Ninguno de los dos comandos guarda nada. Ambos te muestran el Flow que Ciele almacenaría.

ciele flows draft --file patch.json --summary "add a refund branch"
ciele flows validate <assistant-id> --file flow.json --rationale "own flow"

Úsalos principalmente por una razón: cuando un Flow escribe en un conector, Ciele añade una acción de revisión humana antes de esa escritura. Estos dos comandos te muestran la acción añadida. Un guardado lo hace de forma silenciosa.

Observa un flujo HTTP

Un Flow con el desencadenante HTTP mantiene un registro de cada llamada entrante.

ciele flows runs <flow-id> --limit 20

Las conversaciones no incluyen estas ejecuciones, porque una llamada entrante no es una conversación.

Comandos de Teammate

Asigna capacidades a un Teammate

Un nuevo Teammate de IA puede responder a preguntas. No puede actuar hasta que le concedas un dominio, y no realiza ningún trabajo desatendido hasta que le asignes una Routine.

ciele teammates grants <teammate-id>
ciele teammates set-grants <teammate-id> --domains improvements,knowledge
ciele teammates routines <teammate-id>
ciele teammates add-routine <teammate-id> --instruction "Triage new feedback" --cadence daily --hour 8

set-grants envía el conjunto completo de dominios cada vez. --domains "" los elimina todos. Este comando requiere una clave de API con el rol Admin o superior, ya que permite a un agente modificar tus datos. Los demás comandos de Teammate requieren el rol Editor.

Un Teammate puede tener un máximo de cinco Routines.

Configura un compañero de equipo con un solo comando

teammates create crea un compañero de equipo que responde a preguntas. No puede actuar y no realiza ningún trabajo desatendido. teammates provision ejecuta los tres pasos juntos.

ciele teammates provision --name "Triage" \
  --grants improvements \
  --routine "Triage new feedback:daily:8"

El orden es create, luego grant y, por último, schedule. Si un paso falla, el comando te indica dónde se detuvo. El compañero de equipo sigue siendo utilizable hasta ese punto.

Una clave sin el rol Admin puede crear al compañero de equipo. No puede conceder un dominio. A continuación, el comando informa de que se detuvo en el paso grants.

Proyectos y memoria

Un Project es un espacio de trabajo compartido. Un AI Teammate que está vinculado a un Project lee el documento de memoria de ese Project en cada turno.

ciele projects list
ciele projects create --name "Q4 migration"
ciele projects get <project-id>
ciele projects set-document <project-id> --file notes.md --note "after review"
ciele teammates memory <teammate-id>
ciele teammates set-memory <teammate-id> --file memory.md --note "corrected"

set-document y set-memory sustituyen el texto completo. Ciele conserva el texto anterior en el historial del documento.

Tareas

ciele tasks list --project <project-id> --status to_do,in_progress
ciele tasks list --label <label-id> --due-from 2026-11-01 --due-to 2026-11-30 --q "brief"
ciele tasks list --improvement <improvement-id> --cursor <next-cursor>
ciele tasks create --project <project-id> --title "Draft the launch brief" --due 2026-11-02
ciele tasks get <task-id>
ciele tasks update <task-id> --status in_review --assignee <user-id>
ciele tasks update <task-id> --json '{"labelIds":["<label-id>"],"blockedBy":["<task-id>"]}'
ciele tasks update <task-id> --archive
ciele tasks comment <task-id> --body "Ready for review"
ciele tasks labels
ciele tasks create-label --name "Bug" --color red
ciele tasks update-label <label-id> --color amber
ciele tasks delete-label <label-id> --yes
ciele projects milestones <project-id>
ciele projects set-milestones <project-id> --json '[{"name":"Launch","date":"2026-11-02"}]'
ciele tasks delete <task-id> --yes

set-milestones sustituye la lista completa. Para conservar un hito, envíalo de nuevo con su ID. tasks delete también elimina las subtareas, los comentarios y los archivos de la tarea. tasks update --archive oculta la tarea y sus subtareas. --restore las vuelve a mostrar. Cuando hay más tareas, tasks list muestra el cursor de la página siguiente. tasks delete-label elimina la etiqueta de todas las tareas. Las tareas se mantienen.

No existe ningún comando para tu propia capa de memoria. Una clave API actúa como el miembro que la creó, por lo que un comando aquí mostraría el documento privado de ese miembro. Accede a Settings y, a continuación, a Memory en la consola.

Comandos de Operations y Organization

ciele conversations list --assistant <assistant-id>
ciele conversations pin <conversation-id>
ciele messages feedback <message-id> --value -1
ciele improvements list
ciele memories subjects
ciele help-desks list
ciele teammates list
ciele channels list
ciele skills list
ciele quick-texts list
ciele goals list <assistant-id>
ciele alerts list
ciele organization get
ciele members list
ciele members set-role <user-id> --role-id <role-id>
ciele members set-assistants <user-id> --scope selected --assistants <assistant-id>:editor
ciele roles list
ciele roles create --name "Content reviewer" --capabilities knowledge:view,knowledge:edit
ciele roles set-defaults --member <role-id>
ciele invites list
ciele api-keys list
ciele audit-log list --action members.updateRole --from 2026-10-01
ciele providers list
ciele sso connection

Los comandos que eliminan datos requieren --yes. No se puede eliminar el flujo de comportamiento Default.

--role acepta el nombre de un Role predefinido. --role-id acepta el ID de cualquier Role, incluidos los Roles personalizados. ciele roles list muestra los ID. ciele whoami también muestra cuántas capacidades tiene la clave.

Ejecuta ciele help para cada grupo de comandos y para cada opción aceptada. Añade --file cuando un comando acepte una entrada JSON completa o un parche.

Ejemplo de comprobación de CI

export CIELE_API_KEY="ciele_sk_..."
export CIELE_BASE_URL="https://ciele.example.edu"
ciele publish status "$ASSISTANT_ID" --json

Almacena todos los valores en el almacén de secretos de CI. No escribas una clave en un archivo de workflow.

Paquetes de asistentes portátiles

Export escribe un paquete JSON versionado en la salida estándar. Import crea un nuevo asistente y devuelve un informe de las referencias de destino no resueltas.

ciele assistants export <assistant-id> > assistant.json
ciele assistants import assistant.json

Los paquetes excluyen las credenciales y los datos de Visitor. La importación requiere acceso de edición. Configura las credenciales y las referencias que faltan antes de publicar el nuevo asistente.

Exportaciones programadas de Insights

Crea una programación a partir de una definición JSON. La cadencia semanal utiliza weekday desde cero para el domingo hasta seis para el sábado.

{
  "name": "Weekly Insights",
  "kind": "insights_overview",
  "format": "csv",
  "filters": {},
  "cadence": { "kind": "weekly", "weekday": 1 },
  "hour": 8,
  "recipientMemberIds": ["member-uuid"]
}
ciele exports create --file schedule.json --yes
ciele exports list
ciele exports update <schedule-id> --file patch.json --yes
ciele exports pause <schedule-id> --yes
ciele exports resume <schedule-id> --yes
ciele exports delete <schedule-id> --yes

La cadencia mensual utiliza {"kind":"monthly","day":1}. La hora es UTC. Los destinatarios deben ser miembros activos de la organización.

En esta página