Conversación interactiva
Descripción general
La conversación interactiva de Work se basa en el motor Agent Loop. Después de que el usuario envía un mensaje, el Agent entra en un ciclo autónomo de razonamiento-ejecución: analiza la necesidad → llama a herramientas → obtiene resultados → continúa razonando, hasta que la tarea se completa o se alcanza una condición de salida. Todo el proceso se presenta en tiempo real en la interfaz mediante eventos de streaming.
Tipos de mensaje
El flujo de mensajes de la conversación incluye los siguientes tipos:
| Tipo de mensaje | Forma de renderizado | Descripción |
|---|---|---|
| Mensaje del usuario | Burbuja alineada a la derecha | Texto y adjuntos enviados por el usuario |
| Texto del asistente | Renderizado Markdown alineado a la izquierda | Respuesta de texto del Agent, con resaltado de código, fórmulas matemáticas y tablas |
| Llamada a herramienta | Panel plegable ToolCallGroup | Nombre de la herramienta + parámetros de entrada + estado de ejecución + resultado de salida |
| Proceso de pensamiento | Bloque plegable Thinking | Proceso de razonamiento del Agent (modelos con thinking nativo, como Claude) |
| Gestión de tareas | Panel de tareas TaskPanel | Lista estructurada de tareas (pendientes/en curso/completadas) |
| Actividad de subagente | SubagentToolRow | Proceso de ejecución del subagente, con marca especial |
| Interacción de preguntas | QuestionWizard | Preguntas estructuradas que el Agent plantea al usuario |
Visualización de llamadas a herramientas
Cuando el Agent llama a una herramienta, la interfaz muestra el componente ToolCallGroup:

| Elemento visual | Descripción |
|---|---|
| Nombre de la herramienta | Identificador de la herramienta llamada (como Bash, Read File) |
| Parámetros de entrada | Parámetros que recibe la herramienta (plegables para consultar) |
| Estado de ejecución | loading (icono giratorio) / success (marca verde) / error (cruz roja) |
| Resultado de salida | Contenido devuelto por la herramienta (el contenido largo es plegable) |
Varias llamadas a herramientas se muestran agrupadas según el orden de ejecución. Las herramientas ejecutadas de forma concurrente se muestran en el mismo grupo.
Salida en streaming
La respuesta del Agent se envía a la interfaz en tiempo real mediante eventos de streaming:
| Tipo de evento | Descripción |
|---|---|
text_delta |
Fragmento de texto, se añade carácter por carácter al área de mensajes |
thinking |
Fragmento del proceso de pensamiento (compatible con el thinking nativo de Anthropic) |
tool_use_start |
Inicio de la llamada a la herramienta, muestra el nombre y los parámetros de la herramienta |
tool_result |
Resultado de la ejecución de la herramienta, actualiza el icono de estado |
error |
Información de error |
done |
Ronda completada |
El usuario puede ver el razonamiento y las operaciones del Agent en tiempo real durante la salida en streaming, ofreciendo una experiencia de ejecución transparente.
Gestión de sesiones
Crear una sesión
Haz clic en el botón "Nueva conversación" en la esquina superior izquierda o usa el atajo de teclado para crear una nueva sesión. La nueva sesión comienza desde la página de bienvenida, o puedes iniciar la conversación escribiendo un mensaje directamente.
Operaciones de la lista de sesiones
| Operación | Descripción |
|---|---|
| Buscar | Filtrar los títulos de las sesiones por palabra clave |
| Fijar | Fijar sesiones importantes en la parte superior de la lista |
| Agrupar en carpetas | Organizar las sesiones en carpetas personalizadas |
| Eliminar | Eliminar la sesión (no recuperable) |
| Renombrar | Modificar el título de la sesión |
Instantánea y recuperación de sesiones
El lado APP admite la persistencia de instantáneas de sesión para evitar la pérdida de la conversación por una interrupción accidental:
| Estrategia de instantánea | Descripción |
|---|---|
every_tool_round (predeterminado) |
Guardar después de cada llamada a herramienta |
every_round |
Guardar después de cada ronda de interacción con el LLM |
manual |
Guardar solo mediante activación manual |
Las instantáneas se almacenan como archivos JSON (escritura atómica, .tmp + rename para evitar corrupción) y se puede recuperar una sesión interrumpida mediante resumeSessionId.
Conversación local y conversación remota
En escenarios con varios nodos, las conversaciones de la lista de sesiones muestran distintos iconos de origen:
| Icono | Significado |
|---|---|
| Conversación iniciada o ejecutada por un nodo APP local | |
| Conversación ejecutada por un nodo remoto | |
| Conversación proveniente de un canal de IM (Telegram, WeChat, etc.) |
Esto ayuda al usuario a distinguir rápidamente el origen de ejecución de la conversación.
Capacidad de Agent Loop para tareas complejas
Agent Loop permite que Work maneje tareas complejas que requieren operaciones de varios pasos:
Escenario de ejemplo: el usuario pide "analizar la estructura de directorios del proyecto y generar un documento de arquitectura"
Ronda 1: el Agent llama a List Directory para explorar la estructura del proyecto
Ronda 2: el Agent llama a Glob Files para buscar archivos de configuración clave
Ronda 3: el Agent llama a Read File para leer el contenido de los archivos principales
Ronda 4: el Agent llama a Search Files para encontrar las dependencias entre módulos
Ronda 5: el Agent analiza de forma integral y genera un documento de arquitectura en Markdown
Ronda 6: el Agent llama a Write File para guardar el documento en la ruta especificada
Durante todo el proceso, el Agent decide de forma autónoma qué herramientas llamar y en qué orden ejecutarlas, sin que el usuario tenga que guiar paso a paso. El máximo predeterminado es de 25 rondas de ciclo, y el mecanismo de cortacircuito garantiza una parada automática ante anomalías.
Para más detalles técnicos, consulta Motor de ciclo del Agent.
Consejos: cómo conversar con el Agent de forma más eficaz
| Técnica | Ejemplo | Efecto |
|---|---|---|
| Objetivo claro | "Ayúdame a refactorizar la función formatDate en utils.ts para que use date-fns" | El Agent localiza con precisión el objetivo y la solución |
| Solicitud por pasos | "Primero enumera todos los archivos .tsx y luego dime cuáles usan componentes de clase" | El Agent ejecuta paso a paso, con resultados más controlables |
| Especificar la herramienta | "Por favor, usa Bash para ejecutar npm test" |
El Agent usa directamente la herramienta especificada |
| Pedir confirmación | "Primero dime tu plan y ejecútalo después de mi confirmación" | Evita que el Agent modifique archivos directamente |
| Proporcionar contexto | "Este es un proyecto React + TypeScript construido con Vite" | El Agent da sugerencias más adecuadas |
Cómo abortar una tarea en ejecución
Cuando el Agent realiza una operación que no deseas:
- Haz clic en el botón Detener en la parte inferior del flujo de mensajes (o pulsa
Esc) - El Agent se detendrá una vez completada la ejecución de la herramienta actual
- Las operaciones ya ejecutadas (como archivos ya creados) no se deshacen automáticamente
- Puedes continuar la conversación para indicar al Agent que deshaga las operaciones anteriores
Nota: el comando Bash en ejecución se terminará (se envía SIGTERM), pero los efectos de los comandos ya completados no se pueden deshacer automáticamente.
Qué hacer cuando falla una llamada a herramienta
| Motivo del fallo | Solución |
|---|---|
| Permisos insuficientes | El Agent indicará que necesita permisos; puedes permitirlo en la ventana emergente o ajustar el nivel de seguridad de la herramienta |
| El archivo no existe | Comprueba que la ruta sea correcta; puedes pedir al Agent que primero confirme la ubicación del archivo con Glob/List Directory |
| Error de ejecución del comando | El Agent normalmente analiza el error automáticamente y reintenta. Si el ciclo falla, proporciona manualmente más contexto |
| Tiempo de espera de red agotado | Herramientas de red como Web Fetch pueden fallar por problemas de red; basta con reintentar más tarde |
Documentos relacionados
- Entrada y salida multimodal — Capacidad de entrada y vista previa de archivos
- Subagente — Descomposición y delegación de tareas
- Motor de ciclo del Agent — Mecanismo de ciclo subyacente
- Compresión de contexto en 5 capas — Gestión del contexto en conversaciones largas
