AI Agent Hub
Back to plugins
🧩

dsh-ask-user-timeout

admin-security Updated 2026.09.15

Run the following command in DeepSeek Harness:

dsh plugin install yeruizhi/dsh-ask-user-timeout

Paste the following prompt into your AI chat to install this plugin:

Run dsh plugin install yeruizhi/dsh-ask-user-timeout in your terminal and restart dsh web to activate the guard; the source code is hosted at https://github.com/yeruizhi/dsh-ask-user-timeout.

About this plugin

When the model invokes ask_user_question in DeepSeek Harness, the agent loop suspends until a human responds in the Web UI. That rendering is handled solely by the live browser composer takeover. If no tab is actively displaying the session—closed, backgrounded overnight, or the mux connection dropped—nothing renders the question and nothing ever times it out. The turn stays marked "in progress" indefinitely, and the only recourse is a manual stop that surfaces a misleading ASK_ABORTED even though the question was never presented to anyone.

dsh-ask-user-timeout is a focused guard for precisely this gap. It reuses the same deadline() primitive the official timeout-policy guard depends on, injecting a cooperative deadline (default ten minutes) around ask_user_question execution. When the deadline elapses, the tool returns a structured ASK_TIMEOUT result instead of hanging, allowing the loop to proceed and the model to re-ask or move forward. The wrapper hooks into the tools/execute extension point, targets only ask_user_question by name, delegates every other tool unchanged, and modifies neither the tool schema, output shape, nor semantics.

If you operate Harness in contexts where a browser tab is not guaranteed to stay connected—background or headless tasks, overnight sessions, flaky remote links—or simply want a safety net so a single unanswered question cannot lock the agent loop forever, this plugin is the minimal guard built for that job.

Use Cases

  • Browser tab is closed or disconnected, leaving ask_user_question unanswered and the agent loop stuck indefinitely
  • Background or headless tasks where the model poses a question with no browser session to render it
  • Overnight sessions where the mux connection drops and the question is never shown or timed out

Best For

  • Developers running Harness in headless or background mode where a browser tab is not guaranteed online
  • Ops users who want a safety net so one unanswered question cannot lock the agent loop forever
  • Teams using DeepSeek Harness over remote or unreliable network connections