---
read_when:
    - تغییر رفتار یا پیش‌فرض‌های نشانگر تایپ
summary: چه زمانی OpenClaw نشانگرهای در حال تایپ را نمایش می‌دهد و چگونه آن‌ها را تنظیم کنید
title: نشانگرهای تایپ
x-i18n:
    generated_at: "2026-05-10T19:39:02Z"
    model: gpt-5.5
    provider: openai
    source_hash: e26b4008f165527098ffcbf9c39ee7179149063842cc5c6aacb5b7c606eedc26
    source_path: concepts/typing-indicators.md
    workflow: 16
---

نشانگرهای تایپ هنگام فعال بودن یک اجرا به کانال گفتگو ارسال می‌شوند. برای کنترل اینکه تایپ **چه زمانی** آغاز شود از
`agents.defaults.typingMode` و برای کنترل اینکه **هر چند وقت یک‌بار** بازخوانی شود از `typingIntervalSeconds`
استفاده کنید.

## پیش‌فرض‌ها

وقتی `agents.defaults.typingMode` **تنظیم نشده باشد**، OpenClaw رفتار قدیمی را حفظ می‌کند:

- **گفتگوهای مستقیم**: به‌محض شروع حلقه مدل، تایپ بلافاصله آغاز می‌شود.
- **گفتگوهای گروهی با اشاره**: تایپ بلافاصله آغاز می‌شود.
- **گفتگوهای گروهی بدون اشاره**: تایپ فقط زمانی آغاز می‌شود که متن پیام شروع به استریم شدن کند.
- **اجراهای Heartbeat**: اگر هدف Heartbeat حل‌شده یک گفتگوی دارای قابلیت تایپ باشد و تایپ غیرفعال نشده باشد، تایپ هنگام آغاز اجرای Heartbeat شروع می‌شود.

## حالت‌ها

`agents.defaults.typingMode` را روی یکی از موارد زیر تنظیم کنید:

- `never` - هرگز نشانگر تایپ وجود ندارد.
- `instant` - تایپ را **به‌محض آغاز حلقه مدل** شروع می‌کند، حتی اگر اجرا
  بعداً فقط توکن پاسخ بی‌صدا را برگرداند.
- `thinking` - تایپ را با **اولین دلتای استدلال** شروع می‌کند (برای اجرا به
  `reasoningLevel: "stream"` نیاز دارد).
- `message` - تایپ را با **اولین دلتای متن غیر بی‌صدا** شروع می‌کند (توکن بی‌صدای
  `NO_REPLY` را نادیده می‌گیرد).

ترتیب «میزان زود فعال شدن»:
`never` → `message` → `thinking` → `instant`

## پیکربندی

پیش‌فرض سطح عامل را تنظیم کنید:

```json5
{
  agents: {
    defaults: {
      typingMode: "thinking",
      typingIntervalSeconds: 6,
    },
  },
}
```

حالت یا آهنگ ارسال را برای هر نشست بازنویسی کنید:

```json5
{
  session: {
    typingMode: "message",
    typingIntervalSeconds: 4,
  },
}
```

## نکات

- حالت `message` برای پاسخ‌های فقط بی‌صدا، وقتی کل
  payload دقیقاً همان توکن بی‌صدا باشد (برای مثال `NO_REPLY` / `no_reply`،
  با تطبیق غیرحساس به بزرگی و کوچکی حروف)، تایپ را نشان نمی‌دهد.
- `thinking` فقط زمانی فعال می‌شود که اجرا استدلال را استریم کند (`reasoningLevel: "stream"`).
  اگر مدل دلتای استدلال منتشر نکند، تایپ آغاز نمی‌شود.
- تایپ Heartbeat یک سیگنال زنده‌بودن برای هدف تحویل حل‌شده است. این تایپ
  در شروع اجرای Heartbeat آغاز می‌شود، به‌جای اینکه از زمان‌بندی استریم
  `message` یا `thinking` پیروی کند. برای غیرفعال کردن آن، `typingMode: "never"` را تنظیم کنید.
- Heartbeatها وقتی `target: "none"` باشد، وقتی هدف قابل حل نباشد،
  وقتی تحویل گفتگو برای Heartbeat غیرفعال باشد، یا وقتی
  کانال از تایپ پشتیبانی نکند، تایپ را نشان نمی‌دهند.
- `typingIntervalSeconds` **آهنگ بازخوانی** را کنترل می‌کند، نه زمان شروع را.
  مقدار پیش‌فرض ۶ ثانیه است.

## مرتبط

<CardGroup cols={2}>
  <Card title="حضور" href="/fa/concepts/presence" icon="signal">
    اینکه Gateway چگونه کلاینت‌های متصل را ردیابی می‌کند و آن‌ها را در زبانه Instances در macOS نمایش می‌دهد.
  </Card>
  <Card title="استریم و قطعه‌بندی" href="/fa/concepts/streaming" icon="bars-staggered">
    رفتار استریم خروجی، مرزهای قطعه‌ها، و تحویل ویژه هر کانال.
  </Card>
</CardGroup>
