---
read_when:
    - आप चाहते हैं कि कोई एजेंट उपयोगकर्ता से एक संरचित प्रश्न पूछे
    - आप `ask_user` प्रॉम्प्ट का उत्तर दे रहे हैं या उसे डीबग कर रहे हैं
    - आपको ask_user स्कीमा, टाइमआउट या चैनल व्यवहार की आवश्यकता है
summary: संरचित मानवीय निर्णय के लिए ask_user किसी एजेंट टर्न को कैसे रोकता है
title: उपयोगकर्ता से पूछें
x-i18n:
    generated_at: "2026-07-20T07:33:02Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 32556314a34c26054c3aabfdd8ecc474cf85196e5cc71adb833face596edbd24
    source_path: tools/ask-user.md
    workflow: 16
---

`ask_user` एजेंट को मानव से एक से तीन संरचित प्रश्न पूछने और
उत्तरों की प्रतीक्षा करने देता है। यह उन निर्णयों के लिए है जो वास्तव में उपयोगकर्ता के अधिकार-क्षेत्र में आते हैं,
न कि नियमित पुष्टि या ऐसी जानकारी के लिए जिसे एजेंट अनुरोध,
कोड या किसी उपयुक्त डिफ़ॉल्ट से प्राप्त कर सकता है।

यह टूल केवल मुख्य सत्र में उपलब्ध है। सबएजेंट और अन्य गैर-प्राथमिक
रन को यह उपलब्ध नहीं होता।

## किसी प्रश्न का उत्तर देना

आप किसी भी समर्थित वार्तालाप सतह से उत्तर दे सकते हैं:

- वेब Control UI, कंपोज़र के ठीक ऊपर एक प्रश्न पैनल डॉक करता है। एकाधिक
  प्रश्नों वाले प्रॉम्प्ट के लिए, पैनल एक बार में एक प्रश्न दिखाता है और एक छोटे
  स्टेपर के माध्यम से आगे बढ़ता है। समाधान के बाद, पैनल बंद हो जाता है और चैट में
  केवल उत्तरों का संक्षिप्त सारांश रहता है।
- Telegram, Discord और Slack एकल-विकल्प,
  एकल-प्रश्न प्रॉम्प्ट के लिए नेटिव बटन रेंडर करते हैं।
- सादा-टेक्स्ट उत्तर किसी भी चैनल पर काम करता है। किसी संख्या, विकल्प लेबल
  या अपने उत्तर से जवाब दें।

OpenClaw हमेशा मुक्त-टेक्स्ट **अन्य** उत्तर सक्षम करता है। एजेंट को लिखित विकल्प सूची में
`Other` विकल्प नहीं जोड़ना चाहिए।

## प्लेटफ़ॉर्म का व्यवहार

उत्तर प्रत्येक समर्थित वार्तालाप सतह पर काम करते हैं। वेब Control UI एक
डॉक किए गए स्टेपर का उपयोग करता है, जो विस्तृत होने पर कंपोज़र को प्रतिस्थापित करता है; इसे संक्षिप्त करने पर
एक पतली प्रश्न पट्टी के नीचे पूरा कंपोज़र पुनः दिखाई देता है। iOS, macOS और Android
इनलाइन कार्ड दिखाते हैं; स्पर्श-अनुकूल अभिव्यक्ति के उद्देश्य से एकाधिक प्रश्न
एक के ऊपर एक बने रहते हैं। प्रत्येक प्लेटफ़ॉर्म सक्रिय चैट टाइमलाइन में प्रश्न-से-उत्तर
सारांश को समयबद्ध निष्कासन के बिना रखता है और **छोड़ें** हर जगह उपलब्ध है।

जो प्रॉम्प्ट नेटिव बटन का उपयोग नहीं कर सकते, जिनमें एकाधिक-प्रश्न और
एकाधिक-चयन प्रॉम्प्ट शामिल हैं, वे चैनलों पर पठनीय टेक्स्ट में सरल हो जाते हैं। Control UI
पूरा संरचित स्टेपर बनाए रखता है।

## समय-सीमा और उत्तर न मिलना

डिफ़ॉल्ट समय-सीमा 900 सेकंड है। `timeoutSeconds` को
30 से 3600 सेकंड की सीमा में सीमित किया जाता है।

यदि उत्तर आने से पहले प्रश्न की समय-सीमा समाप्त हो जाती है या उसे रद्द कर दिया जाता है, तो टूल
`status: "no_answer"` लौटाता है। इसके बाद एजेंट अपने सर्वोत्तम विवेक के अनुसार आगे बढ़ता है।
निरस्त किया गया एजेंट रन अपने लंबित Gateway प्रश्न को रद्द कर देता है।

## टूल स्कीमा

```ts
{
  questions: Array<{
    id: string; // अद्वितीय snake_case उत्तर कुंजी
    header: string; // छोटा लेबल; 12 वर्णों तक छोटा किया जाता है
    question: string; // एक वाक्य
    options: Array<{
      label: string;
      description?: string;
    }>; // 2-4 विकल्प
    multiSelect?: boolean;
  }>; // 1-3 प्रश्न
  timeoutSeconds?: number; // पूर्णांक; डिफ़ॉल्ट 900, 30-3600 तक सीमित
}
```

`multiSelect: true` के साथ, उपयोगकर्ता एक से अधिक विकल्प चुन सकता है। प्रत्येक प्रश्न के
उत्तर मान एक ऐरे के रूप में लौटाए जाते हैं।

उत्तर दिए गए परिणाम का उदाहरण:

```json
{
  "status": "answered",
  "answers": {
    "answers": {
      "deploy_target": ["Staging (Recommended)"]
    }
  }
}
```

## मॉडल मार्गदर्शन

मॉडल-सामना अनुबंध एजेंट को यह निर्देश देता है:

- केवल तभी पूछें, जब कोई ऐसा निर्णय लंबित हो जो वास्तव में उपयोगकर्ता के अधिकार-क्षेत्र में हो;
- एक प्रश्न को प्राथमिकता दें और तीन से अधिक प्रश्न न पूछें;
- अनुशंसित विकल्प को पहले रखें और उसके लेबल के अंत में `(Recommended)` जोड़ें;
- लिखित `Other` विकल्प छोड़ दें, क्योंकि मुक्त टेक्स्ट स्वतः जोड़ा जाता है;
- `no_answer` के बाद सर्वोत्तम विवेक के अनुसार आगे बढ़ें।

एजेंट को आगे बढ़ने की अनुमति पूछने या अपनी योजना की पुष्टि करने के लिए
`ask_user` का उपयोग नहीं करना चाहिए।
