openclaw - ✅(Solved) Fix Make typing indicator TTL configurable and increase default to 5 minutes [1 pull requests, 1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#71999Fetched 2026-04-27 05:36:16
View on GitHub
Comments
1
Participants
2
Timeline
4
Reactions
0
Author
Timeline (top)
cross-referenced ×2closed ×1commented ×1

Long-running Telegram tasks can appear to have stopped because the typing indicator stops after about 2 minutes. Please consider increasing the default typing TTL to 5 minutes and making it configurable.

Root Cause

Long-running Telegram tasks can appear to have stopped because the typing indicator stops after about 2 minutes. Please consider increasing the default typing TTL to 5 minutes and making it configurable.

Fix Action

Fixed

PR fix notes

PR #72009: Make typing indicator TTL configurable

Description (problem / solution / changelog)

Summary

  • Increase the default typing indicator TTL from 2 minutes to 5 minutes.
  • Add configurable typingTtlSeconds support via session config and agent defaults.
  • Document the new setting and regenerate the base config schema.

Closes #71999

Tests

  • pnpm config:schema:check
  • node scripts/test-projects.mjs src/auto-reply/reply/typing-persistence.test.ts src/auto-reply/reply/reply-utils.test.ts src/config/schema.help.quality.test.ts
  • pnpm tsgo:test:src

Changed files

  • docs/concepts/typing-indicators.md (modified, +7/-2)
  • docs/gateway/config-agents.md (modified, +2/-1)
  • src/auto-reply/reply/get-reply.ts (modified, +4/-0)
  • src/auto-reply/reply/typing-persistence.test.ts (modified, +19/-0)
  • src/auto-reply/reply/typing.ts (modified, +1/-1)
  • src/config/schema.base.generated.ts (modified, +18/-0)
  • src/config/schema.help.quality.test.ts (modified, +1/-0)
  • src/config/schema.help.ts (modified, +2/-0)
  • src/config/schema.labels.ts (modified, +1/-0)
  • src/config/types.agent-defaults.ts (modified, +1/-0)
  • src/config/types.base.ts (modified, +1/-0)
  • src/config/zod-schema.agent-defaults.ts (modified, +1/-0)
  • src/config/zod-schema.session.ts (modified, +1/-0)

Code Example

typingTtlMs = 2 * 60_000

---

{
  "session": {
    "typingIntervalSeconds": 6,
    "typingTtlSeconds": 300
  }
}
RAW_BUFFERClick to expand / collapse

Summary

Long-running Telegram tasks can appear to have stopped because the typing indicator stops after about 2 minutes. Please consider increasing the default typing TTL to 5 minutes and making it configurable.

Current behavior

Telegram sendChatAction("typing") indicators expire after a few seconds, so OpenClaw refreshes them periodically via session.typingIntervalSeconds (default appears to be 6 seconds).

However, the typing keepalive has a hardcoded TTL of about 2 minutes:

typingTtlMs = 2 * 60_000

After that TTL is reached, the typing loop stops even if the agent task is still running. For complex tasks that take several minutes, Telegram no longer shows any “typing…”/input indicator, which makes the task look stalled or terminated from the user's perspective.

Proposed change

  1. Increase the default TTL from 2 minutes to 5 minutes.
  2. Expose it as a config option, for example:
{
  "session": {
    "typingIntervalSeconds": 6,
    "typingTtlSeconds": 300
  }
}

Naming alternatives could be typingIndicatorTtlSeconds or typingKeepaliveTtlSeconds if that is clearer.

Rationale

  • 2 minutes is too short for moderately complex tasks such as code edits, web/article summarization, multi-tool work, or slow model responses.
  • 5 minutes still prevents infinite typing loops if a task gets stuck.
  • Making the TTL configurable lets users choose the right tradeoff:
    • shorter TTL for noisy/high-volume group chats
    • longer TTL for private assistant sessions and long-running tasks

Optional guardrails

  • Keep a safe maximum, e.g. 15 minutes.
  • Preserve the current typingIntervalSeconds behavior separately from the overall TTL.
  • Consider different defaults for direct chats vs group chats if needed.

extent analysis

TL;DR

Increase the default typing TTL to 5 minutes and make it configurable to prevent the typing indicator from stopping prematurely for long-running tasks.

Guidance

  • Review the current typingTtlMs value and consider increasing it to 5 minutes (300 seconds) as proposed.
  • Expose the typingTtlMs value as a configurable option, such as typingTtlSeconds in the session configuration, to allow users to adjust the TTL according to their needs.
  • Consider implementing a maximum safe limit for the TTL, such as 15 minutes, to prevent infinite typing loops.
  • Preserve the existing typingIntervalSeconds behavior to maintain the current typing indicator refresh rate.

Example

{
  "session": {
    "typingIntervalSeconds": 6,
    "typingTtlSeconds": 300
  }
}

Notes

The proposed change aims to balance the need for a longer typing indicator TTL with the risk of infinite typing loops. The configurable TTL allows users to choose the optimal value for their specific use case.

Recommendation

Apply the proposed workaround by increasing the default typing TTL to 5 minutes and making it configurable, as this addresses the issue of premature typing indicator stoppage for long-running tasks.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - ✅(Solved) Fix Make typing indicator TTL configurable and increase default to 5 minutes [1 pull requests, 1 comments, 2 participants]