Concept internals
Indicadores de escritura
Los indicadores de escritura se envían al canal de chat mientras una ejecución está activa. Usa
agents.defaults.typingMode para controlar cuándo empieza la escritura y typingIntervalSeconds
para controlar con qué frecuencia se actualiza.
Valores predeterminados
Cuando agents.defaults.typingMode no está definido, OpenClaw conserva el comportamiento heredado:
- Chats directos: la escritura empieza inmediatamente una vez que comienza el bucle del modelo.
- Chats grupales con una mención: la escritura empieza inmediatamente.
- Chats grupales sin una mención: la escritura empieza solo cuando el texto del mensaje comienza a transmitirse.
- Ejecuciones Heartbeat: la escritura empieza cuando comienza la ejecución Heartbeat si el destino Heartbeat resuelto es un chat compatible con indicadores de escritura y la escritura no está desactivada.
Modos
Define agents.defaults.typingMode con uno de estos valores:
never- ningún indicador de escritura, nunca.instant- empieza a escribir tan pronto como comienza el bucle del modelo, incluso si la ejecución luego devuelve solo el token de respuesta silenciosa.thinking- empieza a escribir en el primer delta de razonamiento (requierereasoningLevel: "stream"para la ejecución).message- empieza a escribir en el primer delta de texto no silencioso (ignora el token silenciosoNO_REPLY).
Orden de "qué tan pronto se activa":
never → message → thinking → instant
Configuración
{
agent: {
typingMode: "thinking",
typingIntervalSeconds: 6,
},
}
Puedes sobrescribir el modo o la cadencia por sesión:
{
session: {
typingMode: "message",
typingIntervalSeconds: 4,
},
}
Notas
- El modo
messageno mostrará escritura para respuestas solo silenciosas cuando toda la carga útil sea el token silencioso exacto (por ejemploNO_REPLY/no_reply, comparado sin distinguir mayúsculas y minúsculas). thinkingsolo se activa si la ejecución transmite razonamiento (reasoningLevel: "stream"). Si el modelo no emite deltas de razonamiento, la escritura no empezará.- La escritura Heartbeat es una señal de actividad para el destino de entrega resuelto. Se
inicia al comienzo de la ejecución Heartbeat en lugar de seguir el tiempo de streaming de
messageothinking. DefinetypingMode: "never"para desactivarla. - Los Heartbeats no muestran escritura cuando
target: "none", cuando el destino no se puede resolver, cuando la entrega por chat está desactivada para el Heartbeat o cuando el canal no admite escritura. typingIntervalSecondscontrola la cadencia de actualización, no la hora de inicio. El valor predeterminado es 6 segundos.